That could be a kernel limitation. What kernel are you running?

Todd Fujinaka
Software Application Engineer
Networking Division (ND)
Intel Corporation
todd.fujin...@intel.com
(503) 712-4565

-----Original Message-----
From: Derek Ditch [mailto:de...@criticalstack.com] 
Sent: Tuesday, June 21, 2016 10:57 AM
To: Skidmore, Donald C <donald.c.skidm...@intel.com>
Cc: e1000-devel@lists.sourceforge.net
Subject: Re: [E1000-devel] Support for Symmetric RSS Hashing?

Don,

Thanks for the suggestion. I hadn’t noticed the “hkey” argument to ethtool -X 
before. However, it appears my hardware doesn’t support it (though I could be 
doing it wrong).

sudo ethtool -X ens5 hkey 
6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A
Cannot get RX flow hash indir size and key size: Operation not supported

$ sudo lspci -nn -s 05 -v
00:05.0 Ethernet controller [0200]: Intel(R) 82599 10 Gigabit Dual Port Network 
Connection [8086:10fb] (rev 01)
        Subsystem: Hewlett-Packard Company HP Ethernet 10Gb 2-port 560SFP+ 
Adapter [103c:17d3]
        Physical Slot: 5
        Flags: bus master, fast devsel, latency 0, IRQ 10
        Memory at fea00000 (32-bit, non-prefetchable) [size=1M]
        I/O ports at c080 [size=32]
        Memory at febd0000 (32-bit, non-prefetchable) [size=16K]
        Expansion ROM at feb00000 [disabled] [size=512K]
        Capabilities: [40] Power Management version 3
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
        Capabilities: [70] MSI-X: Enable+ Count=64 Masked-
        Capabilities: [a0] Express Endpoint, MSI 00
        Capabilities: [e0] Vital Product Data
        Kernel driver in use: ixgbe

This NIC is passed through as a physical function via SR-IOV, but it doesn’t 
seem to work on the host either.
—
Derek Ditch
de...@criticalstack.com
GPG: 0x2543A3B5

> On 20Jun 2016, at 11:50, Skidmore, Donald C <donald.c.skidm...@intel.com> 
> wrote:
> 
> Hey Derek,
> 
> Why can't you just change the RSS hash key to whatevery you want it to be via 
> ethtool -X?
> 
> Thanks,
> -Don Skidmore <donald.c.skidm...@intel.com>
> 
> 
>> -----Original Message-----
>> From: Derek Ditch [mailto:de...@criticalstack.com]
>> Sent: Sunday, June 19, 2016 9:20 PM
>> To: e1000-devel@lists.sourceforge.net
>> Subject: [E1000-devel] Support for Symmetric RSS Hashing?
>> 
>> I’ve been using and recommending Intel NICs for years for network 
>> sensor platforms. I’m a huge user of Bro (http://bro.org 
>> <http://bro.org/>) and also leveraged Suricata for signature-based 
>> detections. Lately, I’ve started working with trying to get away from 
>> PF_RING as my hardware interface layer due to additional 
>> complications of out-of-kernel bolt-ons. I’ve really enjoyed the 
>> performance achieved using AF_PACKET for applications that support 
>> it. In Bro (and Suricata and now netsniff-ng), in order to support 
>> FANOUT_HASH mode provided by the kernel, the packets are spread across 
>> multiple processes. The problem is that these applications need symmetric 
>> hashing of the connections.
>> The current ixgbe driver does not provide this guarantee in its RSS hashing.
>> Recent changes in the kernel further made this a problem by accepting 
>> the hardware calculated hash, when available (for performance 
>> reasons, this would be great, unless you needed symmetric hashing).
>> 
>> I ran across several discussions where an ixgbe driver was patched to 
>> support this, and also ran across this blog post [1] that used DPDK 
>> to override the driver hash. Can we just update the hash key in the 
>> mainline driver so that we get both good distribution of connections 
>> and symmetric hashing? It basically comes down to swapping out the 
>> hash key to ensure the first 32-bits (src ip) match the second 
>> 32-bits (dst ip) and the next 16-bits (src port) match the following 
>> 16-bits (dst port). A published paper provides a key change that 
>> modifies the standard Toeplitz hash function, which does not provide these 
>> guarantees.
>> 
>> So…  Can we just have a better hash function in hardware (via the 
>> driver) that feeds RSS (and now AF_PACKET)?
>> 
>> Thanks!
>> 
>> [1] http://galsagie.github.io/2015/02/26/dpdk-tips-1/
>> <http://galsagie.github.io/2015/02/26/dpdk-tips-1/>
>> —
>> Derek Ditch
>> de...@criticalstack.com
>> GPG: 0x2543A3B5
> 

------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to