더북(TheBook)

패킷이 누락되는 데에는 TTL이 0이 되는 것 말고 다른 이유도 있다. 예를 들어 많은 양의 패킷이 라우터의 NIC에 소화할 수 없을 정도로 쏟아져 들어오면 NIC가 패킷을 그냥 무시해 버릴 수도 있다. 또는 NIC가 여러 개 장착된 라우터에 패킷이 들어오는데, NIC 중 하나가 이들 패킷 전부를 외부로 전달하여야 하는 경우, 그 NIC가 처리를 감당할 수 있을 정도로 빠르지 않다면 패킷 중 일부가 누락될 수 있다. 이처럼 IP 패킷이 발신지로부터 목적지까지 이동하는 와중에 누락될 수 있는데, 이외에도 누락의 이유엔 여러 가지가 있을 수 있다. 그런 고로 IPv4를 포함, 네트워크 계층의 모든 프로토콜은 비신뢰성 프로토콜로 취급한다. 이는 IPv4 패킷이 발신되었다 하여 목적한바 수신자에게 반드시 전달된다는 보장이 없다는 뜻이다. 패킷이 도착한다 해도, 원래 보낸 순서대로 도착한다는 보장도 없고, 단 한 번만 전달된다는 보장도 없다. 네트워크가 혼잡하다 보면 라우터가 패킷 하나는 이쪽 경로로 라우팅하고, 같은 목적지의 다른 패킷은 다른 쪽 경로로 라우팅할 수 있다. 경로는 저마다 길이가 다를 것이고 그러다 보니 나중에 보낸 패킷이 먼저 도착할 수도 있다. 어떤 경우엔 똑같은 패킷이 여러 경로로 동시에 전달될 수도 있는데, 그중 하나가 먼저 도착하고 나머지가 나중에 또(!) 도착하는 경우도 생긴다. 즉, 비신뢰성 프로토콜은 전달 여부 및 전달 순서를 보장해주지 않는다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.