Date: Tue, 14 Sep 2010 18:05:12 +0200 From: Andre Oppermann <oppermann@networx.ch> To: Ian FREISLICH <ianf@clue.co.za> Cc: freebsd-net@freebsd.org, freebsd-current@freebsd.org, Fabien Thomas <fabien.thomas@netasq.com> Subject: Re: TCP loopback socket fusing Message-ID: <4C8F9D38.9020100@networx.ch> In-Reply-To: <E1OvSUd-0000mU-0l@clue.co.za> References: <A9862681-6A4D-43A3-9A26-C71A54CF86F0@netasq.com> <4C8E0C1E.2020707@networx.ch> <E1OvSUd-0000mU-0l@clue.co.za>
next in thread | previous in thread | raw e-mail | index | archive | help
On 14.09.2010 12:12, Ian FREISLICH wrote: > Fabien Thomas wrote: >> Great, >> >> This will maybe kill the long time debate about "my loopback is slow vs >> linux" >> To have the best of both world what about a socket option to >> enable/disable fusing: >> can be useful when you need to see some connection "packetized". > > To chime in, I had a "slow" loopback issue earlier this week. It > turned out the problem was caused by delayed ack on the loopback > where the client didn't need to transmit any data to the server. > It delayed each packet from the server by 100ms. After patching > the server to: > > setsockopt(desc->accept_fd, IPPROTO_TCP, TCP_NODELAY,&x, sizeof(x)); > > It's now faster than on linux. > > Perhaps this is one of the causes of "my loopback is slow vs linux". > > FWIW, I couldn't find a way to turn off dealyed_ack on just loopback > interface. Good point. You can't at the moment but it certainly makes a lot of sense. Let me see what I can come up with. -- Andre
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C8F9D38.9020100>