From: Tom Herbert <t...@herbertland.com> Date: Fri, 1 Jul 2016 14:16:54 -0700
> On Fri, Jul 1, 2016 at 2:07 PM, David Miller <da...@davemloft.net> wrote: >> From: Tom Herbert <t...@herbertland.com> >> Date: Fri, 1 Jul 2016 13:52:58 -0700 >> >>> Why are symmetric hashes required? >> >> Because they want load balancing, such that one flow only can overrun >> one single socket not all of the ones in the fanout. >> > I'm still missing it. Why is this any different than what we need with > something like SO_REUSEPORT? Because local sockets only demux on RX packets for a flow so they don't need a symmetric hash, and in fact wouldn't even notice if the hash was symmetric or not. Programs like suricata that are operating as a bump in the stack see both directions of traffic for a flow and therefore for them whether the hash is symmetric is an issue.