> On 6 May, 2016, at 22:14, David Lang <[email protected]> wrote:
> 
> On Fri, 6 May 2016, Jonathan Morton wrote:
> 
>>> On 6 May, 2016, at 21:50, David Lang <[email protected]> wrote:
>>> 
>>> what IP id are you referring to? I don't remember any such field in the 
>>> packet header.
>> 
>> It’s the third halfword.
> 
> half a word is hardly enough to be unique across the Internet, anything that 
> small would lead to lots of attackes that inserted garbage data into threads.

It doesn’t need to be globally unique.  It merely identifies, in conjunction 
with src/dst address pair (so 80 bits in total), a particular sequence of 
fragments to be reassembled into the original packet.  If the fourth halfword 
is zero (or has only the Don’t Fragment bit set), the IP ID field has no 
meaning.  Hence the entire second word can be considered fragmentation related.

I agree that it’s not a very robust mechanism; it breaks under extensive packet 
reordering at high packet rates (circumstances which are probably showing up in 
iperf tests against flow-isolating AQMs).  It would be better not to have 
fragmentation at the IP layer at all.  But it’s not as bad as you say; it does 
work for low packet rates, which is all it was intended for.

Here’s my preferred reference diagram:  https://nmap.org/book/tcpip-ref.html

 - Jonathan Morton

_______________________________________________
Cake mailing list
[email protected]
https://lists.bufferbloat.net/listinfo/cake

Reply via email to