Subject: RE: your mail

From: Jeff Parker <[email-masked]>
Date: Tue, 2 Jul 2002 10:14:07 -0400

> A hash is  a function that maps  some sequence of octets into 
> a sequence of integers.  If you want to split  traffic over 
> six paths, while ensuring that all packets  with the  same 
> bottom label  travel the  same path, you  need a
> function that maps  a 20 bit quantity  into a number from 
> 1-6.   There is no need to maintain state of any kind.

Eric -

There are many functions that map your octets onto the range
from 1 to 6.  Based on the distribution of your octets 
(i.e. the flows you expect to see) you might have different
functions if you tried to spread the load evenly.  
Wouldn't you need some state to remember which function you 
picked?

- jeff parker
- axiowave networks

---

From: Eric Rosen <[email-masked]>
Date: Tue, 02 Jul 2002 10:41:03 -0400

Jeff> There are many functions that map your octets onto the range
Jeff> from 1 to 6.  Based on the distribution of your octets 
Jeff> (i.e. the flows you expect to see) you might have different
Jeff> functions if you tried to spread the load evenly.  
Jeff> Wouldn't you need some state to remember which function you 
Jeff> picked?

I think the usual implementation technique is to pick a function and compile
it into the code ;-)

---

From: "Miguel Angel Chana" <[email-masked]>
Date: Tue, 2 Jul 2002 16:31:59 +0200

Hello:

Comments in-line:

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]On Behalf Of Jeff
> Parker
> Sent: Tuesday, July 02, 2002 4:14 PM
> To: [email-masked]'; Shahram Davari
> Cc: 'Eric Osborne'; George Sheng; [email-masked]; [email-masked]
> Subject: RE: your mail 
> 
> 

Not at all, you use the same function for all the packets 
traversing the box. If the hashing function produces many
collisions, just pick another one more suitable, but this choice
has to be done only once, not per packet. 

Regards