Time Exceeded
ICMP Type 11 Time Exceeded is sent when a packet is discarded because its TTL (Time to Live) reached zero in transit. Code 0 is sent by routers when TTL expires. Code 1 is sent by the destination host when fragment reassembly times out. Type 11 Code 0 is the mechanism that makes traceroute work.
Description
ICMP Time Exceeded is the mechanism underlying traceroute. The traceroute tool sends packets with TTL=1, 2, 3, ... incrementing by one each round. When a router decrements TTL to zero, it discards the packet and sends ICMP Type 11 Code 0 back to the source. The source records the router's IP address and round-trip time. By collecting these responses for TTL=1 through the number of hops, traceroute builds a path map to the destination.
Code 1 (Fragment Reassembly Time Exceeded) is sent by the destination host when it receives some but not all fragments of a datagram within the reassembly timeout. The partial fragments are discarded. This code appears when large fragmented packets are partially lost in transit, causing reassembly failures.
ICMP Type 11 must not be blocked for traceroute and PMTU Discovery to function correctly.
Common Causes
- –TTL expired in transit – router decremented TTL to zero (code 0)
- –traceroute probe with intentionally low TTL reaching an intermediate router (code 0)
- –Fragment reassembly timeout – not all fragments arrived within the deadline (code 1)
- –IP fragment lost in transit causing incomplete reassembly (code 1)
Codes
| Code | Name |
|---|---|
| 0 | Time to Live Exceeded in Transit |
| 1 | Fragment Reassembly Time Exceeded |