Java 웹 프로그래밍

TCP/IP, DNS, URI, URL

irerin07 2019. 4. 25. 16:30
728x90

TCP/IP

4 Layers

 

Application layer

Host Destination간의 통신 규약을 정한다.

네트워크 상에서 유저 서비스를 제공하거나 어플리케이션 데이터를 전송하기 위해 규약들이 포함된다.

HTTP

FTP

SMTP

DHCP

 

Transport Layer

유저간 통신(end to end) 열어주고 정보의 구조나 네트워크에 관계없이 메시지 전송 서비스를 제공한다.

오류 검출 정정(error Control)

검출 전달자가 수신자에게 전달하는 동안 노이즈나 다른 장애로 인한 오류를 감지하는

정정- 오류를 감지하고 원본 데이터를 다시 구축하는 .

네트워크 분할(Network Segmentation)

흐름제어(Flow Control) – 네트워크 사이에 흐르는 데이터의 속도를 조절하여 Fast Sender Slow Receiver 과도하게 데이터를 전송하지 않게한다.

혼잡 제어(Network Congestion) – 네크워크로 들어가는 정보 소통량을 조절하여 네트워크가 혼잡해지지 않게 조절하는 .

TCP 패킷이 빠짐없이 순서대로 들어오도록 한다.

 

Internet Layer

여러 네트워크에 패킷 전달을 책임진다.

전송자의 주소와 수신자의 주소를 가지고 있다(IP등의 형태)

어느 네트워크에나 패킷을 전송할 있게 하고 패킷들이 목적지에 도착할 있도록 한다.

 

Link Layer

같은 링크에 연결되어 있는 호스트 간에 패킷을 전송할 있게 한다.

 

전달 계층을 지나며 해당하는 HEADER 추가가 되며

수신 계층을 지나며 해당하는 HEADER 벗겨진다.

 

 

http://www.practicalnetworking.net/series/packet-traveling/osi-model/#osi-layer-23

 

Mac 주소가 필요한 이유

DNS 도메인 주소를 컴퓨터가 이해할 있는 주소(IP주소) 변경하기 위해 사용된.

 

DNS 사용되는 이유는 301이나 302같은 Redirect 코드가 들어 왔을 주소를 다시 IP주소로 변경하여 새로운 IP주소로의 TCP/IP 연결을 만든다.

 

SYN – SYN ACK – ACK – ESTABLISHED

 

https://www.inetdaemon.com/tutorials/internet/tcp/3-way_handshake.shtml

 

URI

리소스를 나타하는 조금 모호한 표현식. 여러 캐릭터들이 모인 문자열로 되어있다.

Eg. 내 이름 - 나를 나타내지만 나를 찾는데는 큰 도움이 되지 못한다.

URL

리소스를 찾을 있는 주소를 나타낸다.

Eg. 내 주소 - 나를 찾기위해서는 내 주소를 알아야 한다.

https://dev.to/flippedcoding/what-is-the-difference-between-a-uri-and-a-url-4455

 

 

728x90