Date: Tue, 01 Dec 2009 16:33:25 -0700 From: Brett Glass <brett@lariat.net> To: Julian Elischer <julian@elischer.org> Cc: net@freebsd.org Subject: Re: Question regarding netgraph and threading Message-ID: <200912012333.QAA16055@lariat.net> In-Reply-To: <4B1580E2.4080006@elischer.org> References: <200912011952.MAA12927@lariat.net> <4B1580E2.4080006@elischer.org>
next in thread | previous in thread | raw e-mail | index | archive | help
At 01:47 PM 12/1/2009, Julian Elischer wrote: >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. In the case of a PPTP session, the data (ignoring the control session for the moment) flows from the interface (as GRE packets) through PPP (also implemented in netgraph) to an "ng" pseudo-interface, where it enters the ordinary FreeBSD IP stack. There isn't a user process listening on a socket anywhere in that path, so I assume that the netgraph kernel thread has to handle all of the work of encryption, decryption, handshaking, etc. Am I incorrect about this? I am concerned that the performance of a single core will be the bottleneck. --Brett Glass P.S. -- By the way, when I compiled netgraph into the kernel to begin my test, I began to get the message WARNING: attempt to domain_add(netgraph) after domainfinalize() each time the system boots. Why? Does it have anything to do with the fact that I compiled netgraph itself in, but did not compile in all of the modules I might be using?
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200912012333.QAA16055>