Traffic Shaping – Is Limiting Download Traffic Helpful or Harmful?

bufferbloatroutingtraffic-shaping

I use traffic shaping in MonoWall (BSD) to great advantage with my home connection. It has been quite some time since I've had any kind of issues where user interaction with the internet has seen any annoyance caused by anything on the local network.

I've read some traffic shaping theory documentation, and the usefulness of shaping upload cannot be argued. But, I'm at a crossroads as to whether I should use limitations on download or not.

The opposed schools of thought are:

  1. If traffic has made it across the network/internet to arrive at your router, to drop or delay any part of it is misguided at best, and an insult/damage to the network (in forcing it to resend things) at worst.
  2. If some services/machines are "over-demanding" data, then some of that returned data is probably already being dropped upstream before it gets to the router, which can cause bad things, like DNS responses and ACKs being dropped.

So, all that said, does implementing shaping on downloads make sense, or is it wasteful over-control?

Best Answer

The main reason you may want to use incoming traffic shaping is to prevent the bufferbloat problem. If your Internet connection is ADSL or Cable Internet, and the upstream device has large buffers (it usually does), what happens is that latency goes through the roof once your link is fully saturated. Therefore you cannot use latency-critical services like VoIP at the same time as you're downloading stuff, etc.

In this scenario, shaping incoming traffic to about 90% of your maximum available incoming bandwidth lets you keep the latency at manageable level, without affecting your overall throughput much.

Related Question