Date: Wed, 12 Nov 1997 04:22:46 -0800 From: David Greenman <dg@root.com> To: Emmanuel.Duros@sophia.inria.fr Cc: questions@FreeBSD.ORG Subject: Re: rfc1323, cannot make it work! Message-ID: <199711121222.EAA06752@implode.root.com> In-Reply-To: Your message of "Wed, 12 Nov 1997 11:33:27 %2B0100." <199711121033.LAA11000@chouette.inria.fr>
next in thread | previous in thread | raw e-mail | index | archive | help
>I have two FreeBSD stations (A & B) interconnected by a 3.4MBps broadcast >satellite link. The RTT is about 330 ms. From A to B it takes 300ms and >from B to A 30 ms. > >A runs FreeBSD 2.2.2-RELEASE and B runs 2.2.1-RELEASE. > >The maximum data rate I can get when I download a big file is 50 Kbyte/s. >This is the maximum data rate I can reach with a 330ms RTT and a default >tcp windows size of 16kbytes -> In one seconde the server can send >16*(1/0.330) = 50 Kbyte/s. Every Ack beeing generated by the client every >330 ms. > >According to rfc1323, increasing the size of the send and receive tcp >buffers we can normally obtain a much better data rate. > >On both hosts A & B, I set net.inet.tcp.rfc1323 to 1 and >net.inet.tcp.{recv|send}space with values ranging from 16384 to >65536. With a 65Kbyte window we should theoritically get close to >200Kbyte/s > >Using ftp and the netperf tool, I could not see any improvement >as far as the data rate is concerned. > >Furthermore, whatever the value of rfc1323 (0 or 1) and even if I set >the size of tcp buffer to 4096, I still get a 50 Kbyte data rate?!?!? > >I still have not understood why and I would appreciate any hint >on this!!! Try setting the send/recvspace very early in the startup sequence - before any network device initialization occurs. I seem to recall that the actual window size that is used is associated with the clone (host) route that is generated on the first TCP connect, and ends up sticking around after that. This is also the same reason why using setsockopt(SO_SNDBUF) in an application to change the amount of buffering doesn't work (this is clearly a bug, but noone has had any interest in fixing it). As for rfc1323, which should allow for windows greater than 64K. I don't know if that works or not; I've never heard one way or the other. -DG David Greenman Core-team/Principal Architect, The FreeBSD Project
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199711121222.EAA06752>