lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sat, 04 Sep 2010 16:31:04 +0200
From:	Eric Dumazet <eric.dumazet@...il.com>
To:	Chetan Loke <chetanloke@...il.com>
Cc:	Bhavesh Davda <bhavesh@...are.com>,
	"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
	"pv-drivers@...are.com" <pv-drivers@...are.com>,
	"therbert@...gle.com" <therbert@...gle.com>
Subject: Re: [Pv-drivers] rps and pvdrivers

Le samedi 04 septembre 2010 à 10:02 -0400, Chetan Loke a écrit :
> On Sat, Sep 4, 2010 at 9:51 AM, Eric Dumazet <eric.dumazet@...il.com> wrote:
> >
> > If packets have same rxhash, (same src IP, dst IP, src port, dst port),
> > they are directed on a single CPU, and this might explain you cannot
> > handle the load, RPS or not.
> 
> I tried incrementing the src-macs from the load-generator. Or only the
> above 4-tuple entries are used?
> 

MAC addresses are not used to compute rxhash

> 
> >
> > cat /proc/net/softnet_stat
> >
> 
> cat /proc/net/softnet_stat
> 0655cb87 006dd31b 00096a78 00000000 00000000 00000000 00000000
> 00000000 00000000 00000dbe
> 0042feec 00000000 0008ae33 00000000 00000000 00000000 00000000
> 00000000 00000000 00000000
> 
> cat /proc/net/softnet_stat
> 065d444e 006e669d 00097565 00000000 00000000 00000000 00000000
> 00000000 00000000 00000dbe
> 0042ff8c 00000000 0008b83f 00000000 00000000 00000000 00000000
> 00000000 00000000 00000000
> 
> cat /proc/net/softnet_stat
> 066a6fcf 006fefd9 000988c9 00000000 00000000 00000000 00000000
> 00000000 00000000 00000dbe
> 004300bd 00000000 0008c945 00000000 00000000 00000000 00000000
> 00000000 00000000 00000000
> 
> 
> 
> > RPS is good to handle multiple flows, because it can distribute load on
> > several cpus. But with a single flow, I guess it might be not that
> > useful.
> 
> For single flow if it doesn't improve performance that's fine. But it
> should atleast work as good as N-2(2.6.33).
> 

Nope. Because if each packet goes through two cpus instead of one before
being queued to socket queue, you pay overhead and memory trafic between
these cpus.

This is the reason why RPS is not automatically switched on. It might be
slower on some workloads.


For UDP trafic, single flow, RPS is not a win, because UDP stack is
quite small.



--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists