Traffic shaping with “netem delay” works ok, but limits upload bandwidth to 330KB/s. Why

bandwidthlinux-kerneltraffic-shaping

I'm using Ubuntu 9.04 and the kernel 2.6 build-in NETEM tool to delay traffic.

After I apply:

tc qdisc add dev eth0 root netem delay 100ms

The upload bandwidth can't go further than 330KB/s and I have a 100Mbit connection.

How can I fix this so that my upload bandwidth is still full.
Thanks!

Best Answer

This is probably because the OS must be able to queue the packets for 0.1 seconds - it sounds like there is a buffer that fits 33kB.

Try tweaking the TCP stack memory usage settings, see this article on what to change - Table 1. Kernel tunable parameters for TCP/IP stack performance is probably the one you need to be looking at.