Network Traffic Throttling – How ISPs Limit Bandwidth

bandwidthlayer4qosroutingtcp

I have tried to find the answer on how network throttling works e.g. by ISP when they limit your access to say 100 Mbps. As far as I know TCP/IP itself does not have any mechanisms for that, so it is probably something on top of the protocol that interferes with the packets.

My guess is that the packets received from the server are not sent directly to the client, but wait in some kind of throttling queue and the server does not send the next packet until the confirmation is received. I am not really a big expert on this, but would like to understand how this happens or maybe some good reference to how it works in simple terms, without too deep details (conceptual overview).

P.S. Not sure if throttling is protocol dependent, perhaps it's the same techniques that are used for others.

Best Answer

This really has nothing to do with TCP, or any other layer-4 protocol.

For the most part, this is done simply through policing (dropping) any inbound packets that would exceed the bandwidth limit. Outbound packets could be policed or shaped to a specific bandwidth. Shaping does use queues, but queues are finite and fairly small, not like the buffering you see for watching a video, and when a queue gets full, the traffic to be queued gets dropped. There are multiple shaping strategies. ISPs tend to want things simple, and most probably just use policing.

The whole QoS concept is far too large to explain in this site. There are entire books on QoS that have chapters on policing and shaping. You could do some further research on those concepts.

How each ISP does this type of thing may vary from ISP to ISP, and networks not under your control are off-topic here, so we can't tell you what any particular ISP does for this.

Related Topic