Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 01 Dec 2009 12:47:30 -0800
From:      Julian Elischer <julian@elischer.org>
To:        Brett Glass <brett@lariat.net>
Cc:        net@freebsd.org
Subject:   Re: Question regarding netgraph and threading
Message-ID:  <4B1580E2.4080006@elischer.org>
In-Reply-To: <200912011952.MAA12927@lariat.net>
References:  <200912011952.MAA12927@lariat.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Brett Glass wrote:
> All:
> 
> I have several large PPTP servers which are currently using ppp(8) and 
> PoPTop (a userland PPTP server daemon which is, unfortunately, GPLed). 
> They're having trouble under heavy loads, and so I'd like to switch to 
> mpd5. However, even though mpd5 handles network connections in the 
> kernel, via netgraph, I am worried about performance.
> 
> As far as I can see, all netgraph operations are performed by a single 
> kernel thread named "ng_queue", while ppp(8) and PoPToP use many 
> processes and thus can distribute their work among multiple CPU cores.
> 
> Is netgraph able to multithread, or is there a way to make it do so?

well, not all work is done by that thread. It is the
backup-doer-of-things, but many netgraph operations are done in the
context of a caller such as teh user of a socket.

netgraph is more efficient than the user layer however because it
doesn't have to cross the kernel boundary to process the work.

why not just try it?


> 
> --Brett Glass
> 
> _______________________________________________
> freebsd-net@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4B1580E2.4080006>