Flow ID, LACP, and igb

Luigi Rizzo rizzo at iet.unipi.it
Thu Aug 29 17:40:42 UTC 2013


On Thu, Aug 29, 2013 at 1:42 AM, Alan Somers <asomers at freebsd.org> wrote:

> On Mon, Aug 26, 2013 at 2:40 PM, Andre Oppermann <andre at freebsd.org>
> wrote:
>
> > On 26.08.2013 19:18, Justin T. Gibbs wrote:
> >
> ...
>
> >> Are there other checksums we should be looking at in addition to FNV?
> >>
> >
> > siphash24() is fast, keyed and strong.
> >
> I benchmarked hash32 (the existing hash function) vs fnv_hash using both
> TCP and UDP, with 1500 and 9000 byte MTUs.  At 10Gbps, I couldn't measure
> any difference in either throughput or cpu utilization.  Given that
> siphash24 is definitely slower than hash32, there's no way that I'll find
>

with these large MTUs the packet rate is too low to see the
difference between the various functions.
Just as a data point, the jenkins hash used in the
netmap code takes at most 10-15ns (with data in cache) on the
i7-2600 CPUs i was using in my tests.

I think the way to tell which hash is faster is to run the
function in a tight loop, rather than relying on input traffic.

Then of course there are cache misses that impact heavily
the cost of the function, but that is an orthogonal issues
that exists for all hashes.

cheers
luigi


More information about the freebsd-net mailing list