Hi! I'm not sure if this is the right venue for this question, so feel free to
redirect me.
I'm trying to put some "additional information" on client-generated packets to
direct them to specific queues of a X540-AT2 nic (server running on Linux);
i.e., some type of client-directed queue balancing.
So far, I've tried the following with no luck (any ideas?):
* VLAN tag:
Assigning separate VLAN tags for each target queue has as a result that my
server receives no packets, since it's listening on the main NIC interface
which has no VLAN tags assigned. Is there a way to drop them once received, so
that they'll only be used for "queue balancing"?
* TOS field (bits 8-15 of IPv4 header):
When I use ethtool to direct packets to each queue based on the TOS field, the
nic seems to ignore it (TOS is always 0 on the rules):
$ sudo ethtool -U em2 flow-type tcp4 tos 1 action 10
Added rule with ID 2045
$ ethtool --show-ntuple em2
16 RX rings available
Total 1 rules
Filter: 2045
Rule Type: TCP over IPv4
Src IP addr: 0.0.0.0 mask: 255.255.255.255
Dest IP addr: 0.0.0.0 mask: 255.255.255.255
TOS: 0x0 mask: 0xff
Src port: 0 mask: 0xffff
Dest port: 0 mask: 0xffff
VLAN EtherType: 0x0 mask: 0xffff
VLAN: 0x0 mask: 0xffff
User-defined: 0x0 mask: 0xffffffffffffffff
Action: Direct to queue 10
* user-def:
I've also tried with user-def to overcome the TOS field "problem", but it
seems I can only use that on the last two bytes:
$ sudo ethtool -U em2 flow-type tcp4 user-def 2 action 10
Added rule with ID 2045
$ ethtool --show-ntuple em2
16 RX rings available
Total 1 rules
Filter: 2045
Rule Type: TCP over IPv4
Src IP addr: 0.0.0.0 mask: 255.255.255.255
Dest IP addr: 0.0.0.0 mask: 255.255.255.255
TOS: 0x0 mask: 0xff
Src port: 0 mask: 0xffff
Dest port: 0 mask: 0xffff
VLAN EtherType: 0x0 mask: 0xffff
VLAN: 0x0 mask: 0xffff
User-defined: 0x2 mask: 0xffffffffffffff00
Action: Direct to queue 10
And when I try to match some other bytes, it's simply ignored (user-defined is
always zero and the mask is full):
$ sudo ethtool -U em2 flow-type tcp4 user-def 2 m 0xf0ffffffffffffff
action 10
Added rule with ID 2045
$ ethtool --show-ntuple em2
16 RX rings available
Total 1 rules
Filter: 2045
Rule Type: TCP over IPv4
Src IP addr: 0.0.0.0 mask: 255.255.255.255
Dest IP addr: 0.0.0.0 mask: 255.255.255.255
TOS: 0x0 mask: 0xff
Src port: 0 mask: 0xffff
Dest port: 0 mask: 0xffff
VLAN EtherType: 0x0 mask: 0xffff
VLAN: 0x0 mask: 0xffff
User-defined: 0x0 mask: 0xffffffffffffffff
Action: Direct to queue 10
Thanks!
Lluis
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
E1000-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel® Ethernet, visit
http://communities.intel.com/community/wired