[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1371550627.3252.243.camel@edumazet-glaptop>
Date: Tue, 18 Jun 2013 03:17:07 -0700
From: Eric Dumazet <eric.dumazet@...il.com>
To: Daniel Borkmann <dborkman@...hat.com>
Cc: James Yonan <james@...nvpn.net>, netdev@...r.kernel.org
Subject: Re: UDP "accept" proposed
On Tue, 2013-06-18 at 11:52 +0200, Daniel Borkmann wrote:
> On 06/18/2013 10:48 AM, James Yonan wrote:
> [...]
> > This is a disaster from a performance perspective because you can't take a UDP server that
> > binds to a single port and efficiently scale it up across multiple threads or processors
> > because you must operate off a single socket.
Well not with current linux ;)
> > But this would be a huge performance win for UDP servers (I'm thinking about OpenVPN in
> > particular) because making the kernel smarter about dispatching UDP datagrams would make it
> > much easier to develop scalable UDP servers on Linux.
>
> So SO_REUSEPORT that was added in 3.9 by Tom Herbert wouldn't
> help in your case (+ f.e. steering flows to CPUs locally) ?
>
> https://lwn.net/Articles/542629/
Yes, but no need for particular steering.
Incoming UDP message will match the 'connected socket' and will be
delivered to the socket.
RFS will then automatically do the right thing
( Documentation/networking/scaling.txt )
Note that if you have a lot of sockets bound to the same port,
this fix is needed :
http://git.kernel.org/cgit/linux/kernel/git/davem/net.git/commit/?id=c87a124a5d5e8cf8e21c4363c3372bcaf53ea190
--
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