TCP window scaling and broken routers

Something to be aware of when you upgrade to 2.6.8.1, TCP window scaling and broken routers:

In the 2.6.7 kernel, the default scale factor is zero; in Linus’s BitKeeper tree and the 2.6.7-mm kernels, instead, it has been increased to seven. This change has brought the broken router behavior to light; suddenly people running current kernels are finding that they cannot talk to a number of systems out there. One of the higher-profile affected sites is packages.gentoo.org. Gentoo users are, unsurprisingly, not pleased.

In the mean time, anybody running a current kernel who is having trouble connecting to a needed site can work around the problem with a command like:

echo 0 > /proc/sys/net/ipv4/tcp_default_win_scale

or by adding a line like:

net.ipv4.tcp_default_win_scale = 0

to /etc/sysctl.conf.

Comments are closed.