On 7/31/19 4:43 PM, Shahaf Shuler wrote:
Wednesday, July 31, 2019 3:31 PM, Adrien Mazarguil:
Subject: Re: [dpdk-dev] [PATCH 1/2] ethdev: add symmetric toeplitz hash
support
On Wed, Jul 31, 2019 at 03:08:19PM +0300, Andrew Rybchenko wrote:
On 7/25/19 7:57 AM, simei wrote:
From: Simei Su <simei...@intel.com>
Currently, there are DEFAULT,TOEPLITZ and SIMPLE_XOR hash funtion.
To support symmetric hash by rte_flow RSS action, this patch adds
new hash function "Symmetric Toeplitz" which is supported by some
hardware.
Isn't it a question of key to achieve symmetry?
I.e. hash algorithm (function) is still the same - Toeplitz, but hash
key makes the result symmetric (i.e. equal for flows in both
directions - swap transport ports and IPv4/6 addresses).
This is only an option when src/dst are known in advance.
When doing RSS, HW implementations (such as Mellanox's) implement a
modified Toeplitz XOR'ing src with dst resulting in the same hash both ways
regardless of the key.
Just to stand correct it was a bug on Mellanox kernel driver that was fixed.
Now the RSS is spec complaint (non-symmetric).
Andrew is correct one can have a special key that will make the RSS symmetric,
however it is good to have this option for the user to explicitly request
symmetric function (w/o any restriction on the key).
I think we need a definition what is behind SYMMETRIC_TOEPLITZ here.
If I'd like to test it and check, I need to know an algorithm in order
to know what to expect.
Also it is important to make it the same for all NIC vendors: what
should algorithm be in order to say that it is symmetric Toeplitz?