Download speed and TCPIP window sizing

Nicolas Gieczewski nicolas at nixsoftware.com
Thu May 31 15:38:01 UTC 2007


On Thu, 31 May 2007 22:06:39 +0800, Pang <freebsd at laws.ms> wrote:
>   Recently, I have leased a rack in Asianetcom and some bandwidth.
> However, the speed for my curcuit is substantially slower than my
> provider's company site.
> [...]
> *This server is using FreeBSD 6.2 patch 4 with Apache in the port tree.
> The kernel is custom built but I haven't made any modification in sysctl
> 
>   I have asked many techs in Asianetcom and they blamed on TCPIP window
> sizing.

I used to have the same problem with my FreeBSD dedicated servers in the U.S. when I was living in South America with a latency of ~200 ms. Given identical hardware and connectivity, I could max out my download speed when downloading from a server running Linux, but would get no more than 100-150 KB/s when downloading from an otherwise identical FreeBSD box.

The solution was to increase the size of the TCP send window on the FreeBSD server to about 128 KB--the default of 32 KB turned out to be way too small.

# sysctl net.inet.tcp.sendspace=131072

After modifying this value, you need to restart any processes (e.g. Apache) that you want to take advantage of the change.

Hope it helps.



More information about the freebsd-questions mailing list