This preview shows page 1. Sign up to view the full content.
Unformatted text preview: d. Here we see six ARP requests in 4.3 ms.
The Host Requirements RFC states that ARP should save at least one packet, and this should be
the latest packet. That's what we see here.
Another unexplained anomaly in this output is that svr4 sends back seven ARP replies, not
The final point worth mentioning is that tcpdump was left to run for 5 minutes after the final
ARP reply was returned, waiting to see if svr4 sent back an ICMP "time exceeded during
reassembly" error. The ICMP error was never sent. (We showed the format of this message in
Figure 8.2. A code of I indicates that the time was exceeded during the reassembly of a
The IP layer must start a timer when the first fragment of a datagram appears. Here "first"
means the first arrival of any fragment for a given datagram, not the first fragment (with a
fragment offset of 0). A normal timeout value is 30 or 60 seconds. If all the fragments for this
datagram have not arrived when the timer expires, all these fragments are discarded. If this were
not done, fragments that never arrive (as we see in this example) could eventually cause the
receiver to run out of buffers.
There are two reasons we don't see the ICMP message here. First, most Berkeley-derived
implementations never generate this error! These implementations do set a timer, and do discard
all fragments when the timer expires, but the ICMP error is never generated. Second, the first
fragment-the one with an offset of 0 containing the UDP header-was never received. (It was the
first of the five packets discarded by ARP.) An implementation is not required to generate the
ICMP error unless this first fragment has been received. The reason is that the receiver of the
ICMP error couldn't tell which user process sent the datagram that was discarded, because the
transport layer header is not available. It's assumed that the upper layer (either TCP or the
application using UDP) will eventually time out and retransmit.
In this section we've used I...
View Full Document
- Spring '12