Date: Wed, 19 Mar 2003 01:45:23 -0800 From: Luigi Rizzo <rizzo@icir.org> To: mooring@Lnxw.com Cc: Borje Josefsson <bj@dc.luth.se>, freebsd-hackers@FreeBSD.ORG Subject: Re: High CPU usage on high-bandwidth long distance connections. Message-ID: <20030319014523.A87669@xorpc.icir.org> In-Reply-To: <20030318132831.P6615@newbast.lynuxworks.com>; from emooring@Lnxw.com on Tue, Mar 18, 2003 at 01:28:31PM -0800 References: <200303181951.h2IJpTKl001940@dc.luth.se> <20030318132831.P6615@newbast.lynuxworks.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Mar 18, 2003 at 01:28:31PM -0800, Ed Mooring wrote: ... > I had something vaguely similar happen while I was porting the FreeBSD > 4.2 networking stack to LynxOS. It turned out the culprit was sbappend(). > It does a linear pointer chase down the mbuf chain each time you do > a write() or send(). With a high bandwidth-delay product, that chain > can get very long. > > This topic came up on freebsd-net last July, and Luigi Rizzo provided > the following URL for a patch to cache the end of the mbuf chain, so > sbappend() stays O(1) instead of O(n). the patch was only for UDP though. I think the poster was seeing the problem with TCP (which is also affected by the same thing). cheers luigi > http://docs.freebsd.org/cgi/getmsg.cgi?fetch=366972+0+archive/2001/freebsd-net/20010211.freebsd-net > > The subject of the July thread was 'the incredible shrinking socket', if > you want to hunt through the archives. > > Hope this helps. > > -- > Ed Mooring (mooring@lynuxworks.com) > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-hackers" in the body of the message To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030319014523.A87669>
