네트워크 기초
IPv4 헤더의 TTL(Time To Live)의 역할로 올바른 것은?
- A패킷을 보낸 뒤 응답이 돌아올 때까지의 시간을 기록하여 TCP의 재전송 시점을 정한다
- B라우터를 지날 때마다 1씩 줄이고 0이 된 패킷을 버림으로써, 경로 루프에서 패킷이 계속 도는 것을 막는다
- C값이 큰 패킷일수록 라우터에서 우선하여 전달하게 한다
정답과 해설 보기
정답: B. 라우터를 지날 때마다 1씩 줄이고 0이 된 패킷을 버림으로써, 경로 루프에서 패킷이 계속 도는 것을 막는다
TTL은 이름에 '시간'이 들어 있지만, 실제로는 라우터를 지날 때마다 1씩 줄이는, 통과할 수 있는 라우터 수(홉 수)의 상한으로 사용됩니다. 0이 되면 라우터는 그 패킷을 버리고 송신자에게 ICMP 시간 초과 메시지를 돌려보냅니다. 그래서 설정 오류 등으로 경로가 루프를 이루어도 패킷이 영원히 계속 돌지는 않습니다. 예를 들어 TTL을 64로 보낸 패킷은 라우터를 3대 지나면 61이 되어 도착합니다. traceroute는 TTL을 1, 2, 3…으로 늘리면서 보내고, 각 라우터가 돌려보내는 시간 초과 메시지로 경로를 조사합니다. IPv6에서는 같은 역할의 필드를 홉 제한(Hop Limit)이라고 합니다.