1.4 HTTP와 관계가 깊은 프로토콜 IP/TCP/DNS

1.4.1 배송을 담당하는 IP

IP는 네트워크 계층에 해당된다. IP와 IP 주소는 다르며 IP는 프로토콜의 명칭이다. IP의 역할은 패킷을 상대방에게 전달하는 것이다. 전달하기까지 IP주소와,MAC주소 요소가 중요 역할을 한다. IP는 각 노드에 부여된 주소를 가리키고 MAC 주소는 각 네트워크 카드에 할당된 고유의 주소이다. IP주소는 MAC 주소와 연관되어 있다. IP주소는 변경가능하며 MAC주소는 변경 불가능 하다.

IP 통신은 MAC주소에 의존해서 통신한다. 인터넷 통신에서 여러 대 컴퓨터와 네트워크 기기를 중계해서 상대방에게 도착한다. 중계하는 동안에 다음으로 중계할 곳의 MAC 주소를 사용하여 목적지에 찾아간다. 이때 ARP라는 프로토콜이 사용된다.

ARP는 주소를 해결하기 위한 프로토콜 중 하나이며, 수신지의 IP 주소를 바탕으로 MAC 주소를 조사할 수 있다. 목적지까지 중계를 하는 도중에 컴퓨터와 라우터 등의 네트워크 기기는 목적지에 도착하기까지 대략적인 목적지만 알고 있다. 이 시스템을 라우팅이라고 한다. 결국 어떤 컴퓨터나 네트워크 기기도 인터넷 전체를 상세하게 파악하고 있지 못한다.

1.4.2 신뢰성을 담당하는 TCP

TCP는 대용량의 데이터를 보내기 쉽게 작게 분해하여 상대에게 보내고, 정확하게 도착했는지 확인하는 역할을 한다.

TCP는 트랜스포트 계층에 해당한다. 신뢰성 있는 바이트 스트림 서비스를 제공한다. 바이트 스트림 서비스란 용량이 큰 데이터를 보내기 쉽게 TCP 세그먼트라고 불리는 단위 패킷으로 작게 분해하여 관리하는 것이고, 신뢰성 있는 서비스는 상대방에게 보내는 서비스를 말한다.

상대에게 확실하게 데이터를 보내기 위해 TCP는 "쓰리웨이 핸드셰이킹"이라는 방법을 사용한다. 패킷을 보내고 나서 바로 끝내지 않고, 보내졌는지 여부를 상대에게 확인한다. 이것은 SYN/ACK라는 TCP 플래그를 사용한다.

송신측에서는 최초 SYN 플래그로 상대에게 접속함과 동시에 패킷을 보내고 수신측은 SYN/ACK 래그로 송신측에 접속함과 동시에 패킷을 수신한 사실을 전한다. 마지막으로 송신측이 ACK 플래그를 보내 패킷 교환이 완료되었음을 전한다.

이 과정에서 어디선가 통신이 끊어지면 TCP는 그와 동시에 같은 순서로 패킷을 재전송한다.

Last updated