From owner-freebsd-net@FreeBSD.ORG Tue Dec 1 20:47:27 2009 Return-Path: Delivered-To: net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4F9011065676 for ; Tue, 1 Dec 2009 20:47:27 +0000 (UTC) (envelope-from julian@elischer.org) Received: from outD.internet-mail-service.net (outd.internet-mail-service.net [216.240.47.227]) by mx1.freebsd.org (Postfix) with ESMTP id 388848FC1B for ; Tue, 1 Dec 2009 20:47:27 +0000 (UTC) Received: from idiom.com (mx0.idiom.com [216.240.32.160]) by out.internet-mail-service.net (Postfix) with ESMTP id B4EB9961CA; Tue, 1 Dec 2009 12:47:26 -0800 (PST) X-Client-Authorized: MaGic Cook1e X-Client-Authorized: MaGic Cook1e Received: from julian-mac.elischer.org (h-67-100-89-137.snfccasy.static.covad.net [67.100.89.137]) by idiom.com (Postfix) with ESMTP id 77FB32D6011; Tue, 1 Dec 2009 12:47:26 -0800 (PST) Message-ID: <4B1580E2.4080006@elischer.org> Date: Tue, 01 Dec 2009 12:47:30 -0800 From: Julian Elischer User-Agent: Thunderbird 2.0.0.23 (Macintosh/20090812) MIME-Version: 1.0 To: Brett Glass References: <200912011952.MAA12927@lariat.net> In-Reply-To: <200912011952.MAA12927@lariat.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: net@freebsd.org Subject: Re: Question regarding netgraph and threading X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Dec 2009 20:47:27 -0000 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"