netmap: understanding pkg-gen.c
Ryan Stone
rysto32 at gmail.com
Thu Oct 3 17:05:42 UTC 2013
On Thu, Oct 3, 2013 at 2:51 AM, hiren panchasara
<hiren.panchasara at gmail.com> wrote:
> What/where is the exact logic/code of how card determines what traffic goes
> to what queue?
> Is it based on DST-MAC always?
RSS is based off of a hash of the 4-tuple (src/dst ip, src/dst port).
Note that this is very dependent on the hardware's ability to parse
the packet. The hardware supported by ixgbe only understands vlan
encapsulation, so if you use any other type of L2 encapsulation (e.g.
MPLS, PPPoE, etc) RSS will not be able to balance your traffic across
multiple queues. Layer 3 encapsulations like GRE are not supported
either, but the hardware will be able to parse the packet up to the
outer IP header and will load balance based on the src/dst address of
the outer IP.
The ixgbe hardware of course will understand unencapsulated TCP/IP or
UDP/IP in ethernet. All hardware supports IPv6 as well as IPv4.
More information about the freebsd-net
mailing list