ciarfella@shug.enet.dec.com (Paul Ciarfella) (12/01/90)
RFC 1122 says that ICMP messages must not be generated as a
result of receiving non-initial fragments of a datagram.
But, what happens if reassembly of a datagram times out
and the initial fragment was never received. Does this
mean that I cannot send an ICMP Time Exceeded given that
I don't have the initial fragment?
Thanks,
Paul C
---------------------------------------------------------------------------
Paul Ciarfella Digital Equipment Corporation Littleton, MA
---------------------------------------------------------------------------
Disclaimer : My opinions are my own. | When in doubt, mumble.
Address : ciarfella@shug.dec.com
---------------------------------------------------------------------------barmar@think.com (Barry Margolin) (12/01/90)
In article <17727@shlump.nac.dec.com> ciarfella@shug.enet.dec.com (Paul Ciarfella) writes: > RFC 1122 says that ICMP messages must not be generated as a > result of receiving non-initial fragments of a datagram. > But, what happens if reassembly of a datagram times out > and the initial fragment was never received. Does this > mean that I cannot send an ICMP Time Exceeded given that > I don't have the initial fragment? Correct. ICMP error messages are supposed to contain the first N data octets from the IP datagram that caused the error. This allows the recipient of the ICMP error to determine which higher-level protocols got the error, and report the error back to the appropriate entities. If you haven't received the first fragment then you can't have the first N data octets, so you won't be able to construct a useful error datagram. If you don't receive the initial fragment then the sender will simply behave as if no fragments made it to you, presumably timing out and perhaps retransmitting. -- Barry Margolin, Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar