TCP tuning blues

Nicholas Leippe nick at
Mon Oct 30 11:02:40 MST 2006

This weekend I had my wireless ISP service (Digis) upgraded to their newer 
canopy equipment, offering a *4Mbps service.  Unfortunately I cannot seem to 
get any benefit from it.

The installer hooked his XP laptop directly to the bridge and saw 4Mbps on 
repeated speed tests (both and speedtests).

However, directly from either my firewall (redhat, 2.4.18 kernel, eepro100 
driver) or my desktop (gentoo, 2.6.17 kernel, tulip driver), I can barely get 
above 1Mbp with the same tests. I've gone over the tcp tuning guides, used 
iperf, and cannot figure out what I'm missing.

as per the tuning guides, in /proc/sys/net I've played with:
core/rmem_max -> 16777216
core/wmem_max -> 16777216
ipv4/tcp_rmem -> 4096 87380 16777216
ipv4/tcp_wmem -> 4096 87380 16777216
ipv4/tcp_rfc1337 -> 1
ipv4/tcp_sack -> 0

I've never had to really do anything to get TCP to 'just work' before.  I get 
91Mbps+ on my local 100BT just fine (8% overhead as expected).

Any ideas?

*BTW, for anyone looking at Digis, their recent ads are wildly false. They 
advertise "speeds up to 7Mbps, but when you actually get the documents to 
sign it says "7Mbps (combined)", meaning 4.5down + 2.5 up, or whatever it 
actually is.  Worse, when I initially talked to their sales and asked about 
real-world performance he said, "well, when it's busy it can drop down to 
around 6.5, but is nearly always above 6", further implying that the 7 was in 
one direction.  Regardless, $40/month is still a good price for 4Mbps service 

More information about the PLUG mailing list