Bandwidth Limiter Overview
What is network bandwidth?
Network bandwidth is the maximum data throughput in a specific segment of a digital communication system. For example, a wireless access point rated at 300 Mbps network bandwidth, will support data transiting through the access point at a rate no greater than 300 Mbps. Higher performance devices with data flowing through the access point would be "bandwidth limited" by the access point.
Network bandwidth is not the same thing as the type of product ISPs offer to their clients. First, service providers, such as web hosting companies, offer two, different, but confusingly similar services:
When an ISP, like Comcast, talks about bandwidth limit they mean it! If the ISP offers "100megabits/second", the ISP ensures the link does not go any faster than the rate the customer has purchased, even over very short periods of time.
When an ISP discusses a package based on bandwidth consumption accumulated over a time period (usually one month) measured typically in gigabytes, this is really a data cap. This means there's a limit on the total amount of data that a user may transport on the circuit during a given period of time, and there is usually a different value for inbound to the user vs outbound.
Why would you want to limit network bandwidth with a bandwidth limiter?
Give priority to certain traffic for a better user experience
Certain traffic on the Internet is highly time sensitive (voice communication) whereas other traffic is not (email). Thus it makes sense to give priority to the packets carrying the time sensitive traffic. Several techniques are available to facilitate this prioritization scheme, e.g. QoS, DiffServ, RSVP.
In this case, one is not actually limiting bandwidth, as much as shaping and managing that bandwidth. The voice vs. email example illustrates that there can be good reasons to do so.
Impose quotas on users
Many free network services suffer from the situation of a tiny minority of bad actors abusing the service. A coffee shop, for example, may offer free WiFi for its customers. One customer may decide to stream a movie to his laptop utilizing 99% of coffee shop's available bandwidth. The WiFi service will then be unusable for the other customers. A bandwidth limiter will prevent the bad actor from abusing the service by setting download and upload limits for all users.
Avoid network congestion
When the amount of network data sent across a network segment exceeds the bandwidth of the segment, the result can be a congested network. Ideally networks should be designed and properly provisioned to avoid this occurence. However, several types of network attacks can deplete bandwidth, unplanned publicity can increase traffic to a particular site, and so on.
Certain types of bandwidth limiters can alleviate a congested network situation, however, the first step is to determine the source of the congestion. A network monitoring system should reflect the base line and the current deviation from the baseline. A network analysis tool would facilitate further investigation to find the route cause.
Should I use a bandwidth limiter to verify the performance of my app or device?
No. A bandwidth limiter is typically used in a production network to manage, shape, or control the network traffic and the users.
For situations where you want to do pre-deployment testing to verify that your app or device will operate properly in bandwidth limited environments, you are best off with a network simulator.
The network simulator allows you to precisely replicate the most common bandwidth limited situations in your lab, before you deploy your app or device. In this way you can pinpoint problem areas with your app or device, correct them, then re-test.
If you are not familiar with how this works, please review Executive Overview of Network Emulators
IWL offers the Maxwell family of network emulators: Maxwell Pro and KMAX
A comprehensive white paper: Rate Limitation vs Bandwidth Limitation