This page is the repository of TCP
Linux kernel 2.4 patches.
After patching your kernel, you need to compile it again enabling "IP :TCP
Westwood support" in the "Networking Options". I suggest not to enable
" IP : TCP Westwood statistics" (used just for collecting statistics by using
a user-space tool suite I coded named westwood-utils) and "IP : TCP Westwood
debug" (which currently does nothing).
After compiling, TCP Westwood+ is not enabled by default but you need
to do it through the sysctl tcp_westwood.
echo 1 > /proc/sys/net/ipv4/tcp_westwood
By echoing 0 and 1 in this sysctl, you may switch between TCP classical
implementation and Westwood+ one.
As you could see, there are two different flavours of the patch : the "stable"
ones and the "test" ones. There's a really little difference between these
two series. In fact, the "test" patches avoid introducing instructions in the
Linux TCP implementation. Unfortunately, it could lead to few problems
if we try to switch from NewReno to Westwood+ during a data transfer.
In fact, the socket related to this data transfer could find an uninitialized
read/write spinlock. If you're conscious of it you can use these patches but
I suggest to use "stable" ones which avoid this behaviour.