In this article, you will learn the difference between bandwidth and throughput.
Let’s get started.
What is Network Bandwidth?
Bandwidth is the maximum amount of data that can be transmitted through a link, from a source to a destination. Bandwidth is not a real-time measurement, it refers to the overall capacity of a network link. When you monitor bandwidth usage it is typically measured by megabits per second (Mbps) or gigabits per second (Gbps).
Let’s look at some examples to better understand bandwidth.
In the picture above, the blue link between PC1 and PC2 has a network bandwidth of 400 megabits per second (Mbps). This simply means it has the overall capacity to transmit data at 400 Mbps. This doesn’t mean data will always transmit that much data at once, it just means it can.
Let’s look at an example of a highway to better illustrate bandwidth.
Above the highway can handle 10 care per second, this represents its bandwidth (max capacity). This doesn’t mean the road will always have 10 cars per second going across it, it just means the road has the ability to handle 10 cars per second.
When shopping for an internet connection, service providers will often market their speeds by saying speeds up to. What you need to know is you will not always get the speeds advertised but that it has the ability to handle that much bandwidth.
Hopefully, that helps you understand what bandwidth is. Now let’s move on to throughput.
What is Network Throughput?
Throughput is the measurement of actual data that is transmitted between two networked devices. Throughput can also be referred to as data transfer rate and is measured in bits per second (bps)
Bandwidth vs Throughput
If you started at the beginning of this article you probably already know the difference between bandwidth and throughput. To summarize:
- Bandwidth = Maximum amount of data that can be transmitted.
- Throughput = Actual amount of data being transmitted between two devices.
The easiest example to illustrate this is with a highway.
The highway can transmit 10 cars per second (bandwidth) but only 7 cars are being transmitted (throughput). At any given second the highway can have more or fewer cars traveling on it up to a max of 10 cars per second.
Now let’s look at bandwidth vs throughput on a network diagram.
This network has a 10 Gbps connection from the PC all the way to the internet. When the PC downloads a file from the internet it only has a throughput of 100000 kbps (100 Mbps). The PC is only using 1 percent of the bandwidth.
So the big question is, I have 10 Gbps connections why am I not downloading or transferring at this speed? There are many factors that can affect the throughput of your network and I’ll cover this in the next section.
What can affect Network Throughput?
I have a 1 gig connection but my download speed is slow.
This is very common, throughput is often lower than bandwidth. This can be frustrating but again it’s very common. Below are the top reasons your throughput is lower than bandwidth.
Other Users and Devices Consuming Bandwidth
It’s important to understand that in networks you are not the only user on it. So you will probably never see the throughput you might expect unless you are connected when no one else is (middle of the night maybe).
The diagram above is showing how multiple computers are using a 1 Gbps connection. 1 Gbps is the total bandwidth available and it must be shared amongst all the devices. Every computer cannot download at 1 Gbps at the same time as that would be 3 Gbps which that much bandwidth is not available.
Typically devices get what bandwidth is available. So if PC1 is downloading a file and using 100 Mbps this means there are 900 Mbps available bandwidth for PC2 and PC3.
This is one of the main factors that affect throughput. PC2 might be downloading a huge file and consuming 600 Mbps of the bandwidth, leaving only 400 for the other devices.
Network Equipment that causes a Bandwidth Bottleneck
To get the max throughput from your connections all the equipment from end to end needs to have the same connection.
The diagram above has 10 Gbps connections from the computers -> Switch -> Router but from the router to the firewall it’s only a 1 Gbps connection. This creates a bottleneck and slows down network performance. The devices will never have an internet connection faster than 1 Gbps due to this bottleneck.
Firewalls Can have a Huge Impact on Throughput
Firewalls are designed to analyze the traffic as it enters and leaves your network, this can add latency and impact throughput.
Below is a typical traffic flow with a firewall installed.
- PC1 sends a request to the internet
- The firewall gets the request
- The firewall sends it to the analyzing engine to run various checks
- When done processing the analyzing engine sends it back to the firewall
- The firewall forwards the traffic
As you can see the firewall must process the traffic before it forwards the request to the internet. This adds latency which can slow down network speeds.
The best thing to do is properly size your firewall so it has enough horsepower to process network traffic without adding a big delay.
Faulty or Improperly Configured Network Equipment
Faulty equipment such as a bad network cable or a failing network card will crush network performance. Faulty equipment will drop packets, add latency and cause errors while transmitting the traffic.
In addition, improperly configured equipment can have a major performance hit on your network. For example, if your ISP provides a 1 Gbps connection to their router but if you connect it to a 100 Mbps interface, you just created a bottleneck.
How to Monitor Network Bandwidth and Throughput
You can check individual devices such as a network interface card but this doesn’t give you the whole picture. You need to monitor your router, switches, firewalls, and both the ingress (inbound) and egress(outbound) connections. Below are some recommended tools that make monitoring bandwidth and throughput easy.
iPerf is a command line tool that is designed to measure bandwidth on IP networks. Its primary function is for tuning the TCP windows size but it also works great for testing throughput and the max achievable bandwidth. See my list of iperf examples complete with screenshots and step-by-step instructions.
Note: iPerf is used for running single tests on a single interface, it is not a tool that will monitor the network 24/7. If you want to continuously monitor bandwidth and throughput then check out the rest of this list.
Network Performance Monitor
SolarWinds Network Performance Monitor (NPM) is a popular bandwidth and throughput monitoring tool. SolarWinds is a leader in the network performance monitoring space with over 300,000 customers. What I like best about NPM is its easy-to-use dashboard, you can quickly get a glance at your entire network from a single page.
Another great tool to monitor bandwidth and throughput is the Paessler PRTG network monitor. PRTG monitor has a great auto-discover feature to quickly add devices you want to monitor the bandwidth and throughput for. PRTG can read traffic from your router and display the results in a simple graph to easily see bandwidth usage.
Network Bandwidth Analyzer Pack
The Network bandwidth Analyzer pack (BAP) is the ultimate tool to track bandwidth, throughput, and monitor network performance. With BAP you can track bandwidth issues down to the application and user level.
- Easily find bandwidth hogs
- Visual hop by hop analysis
- Monitor bandwidth and throughput patterns
- Get alerts and reports
I hope you enjoyed this article on bandwidth vs throughput.
As an administrator of a network, it is important to understand the difference and how to troubleshoot network performance problems. The problem might be slow download speeds and you need to know if it is a bandwidth or throughput problem.
Investing in a network monitoring tool can really make your life easier. Just make sure to monitor all of your network devices and both the inbound and outbound connections to see the full details.