Mark
Mark

Reputation: 6464

IP fragmentation

I've encountered the following statement somewhere in the net: "Although theoretically only 8 bytes of L4 info may be guaranteed in a fragment, assume complete L4 info is available...". I don't understand how possible that only 8 bytes of a transport are guaranteed in a fragment, as the IP fragment can't be less than 46 bytes (minimum payload size for Ethernet frame), and this includes 20 bytes of IP header and 20bytes of TCP header (not considering variable-lngth options), UDP will be less.

Thus for the first IP fragment we always can expect IP header at tcp header, while other fragments will carry only IP header + payload.

I believe I'm missing something, but I still can't understand why only 8 bytes can be guaranteed in a fragment? I would appreaciate if someone helps to clarify this issue. Thanks !

Mark

Upvotes: 0

Views: 614

Answers (1)

David Schwartz
David Schwartz

Reputation: 182753

Imagine a router receives a TCP packet containing one more byte of data than will fit in the MTU of the destination network. It must split on an 8-byte boundary because that's an IP fragmentation rule.

It won't split into more than two fragments because that would be silly. So it must include at least one byte of data in the first fragment..

Thus the minimum number of data bytes you can place in the first fragment of an IP datagram is 8.

Upvotes: 2

Related Questions