Subject: Re: kernel ip_randomid() and libc randomid(3) still "broken"
To: <>
From: David Laight <david@l8s.co.uk>
List: tech-net
Date: 11/17/2003 23:23:05
On Mon, Nov 17, 2003 at 03:01:57PM -0800, Jonathan Stone wrote:
> 
> 
> >Then include the port number in the hash function.
> 
> 
> No. We can't do that, it violates RFC-791 (and thus  RFC-1122,
> per the  references to RFC-791 on fragmentation and reassembly).

Yes - my brain failed!

The ip_id cannot depend on anything other than the pair of ip addresses
(although you can use id = 0 for everything with DNF set).

If traffic between a pair of hosts might wrap the ip_id in a short
time, about all you can do is to re-use ip_ids that you have had
replies to before those that appearto have lost fragments.  Of course
this is hard and difficult and require breaking protocol layer
boundaries all over the place.  And still won't help if the network is
duplicating a few % of the packets (probably the worst error...).

	David

-- 
David Laight: david@l8s.co.uk