[ovs-discuss] Issue with symmetric flow hashing in 'flow_hash_symmetric_l4' when including MACs

Ben Pfaff blp at nicira.com
Thu Jun 25 01:05:26 UTC 2015


On Tue, Jun 23, 2015 at 03:30:46PM -0500, Jeroen van Bemmel wrote:
> 'flow_hash_symmetric_l4' in flow.c currently includes L2 information (
> MAC addresses and VLAN ID) in the hash. However, in certain cases (
> e.g. flow to a VRRP IP address on a router ), the MAC addresses for
> the return flow are not symmetrical ( because a virtual MAC is used
> for VRRP, whereas a physical interface MAC is used for the return
> packet )
> 
> Why are the MAC addresses included in the hash for IP flows?

This is something of a legacy hash function that we shouldn't change
because it's used to coordinate OVS instances running on different
nodes.  That's why it's one of the few places where we're still using
Jenkins hash instead of the better murmurhash.

I'd have no problem introducing a new L4 symmetric hash function that we
can use in places where it's possible to configure a particular hash
function, but we shouldn't change this one.



More information about the discuss mailing list