Have you ever used the term bandwidth? Probably. Have you ever used the term network throughput? Maybe. Have you used them interchangeably? Most likely. So let’s see where we get these mixed up.
Namely, let’s look at the key differences between network throughput and bandwidth. And while we’re at it, let’s cover the fundamentals of throughput and how to measure it, so you can keep your network flowing efficiently and cleanly.
Network throughput vs. bandwidth in the real world
Imagine this scenario from many years ago: I was working with a client and they had a strange problem with a very slow response on their network. I’d been asked to look into the problem and help them solve it. They had a few servers, and several dozen workstations, running at about 100Mbps (which was more than enough at that time). They’re going through a good switch onto a 1Gbps link. The client says, “Why is this slow? I have plenty of bandwidth.”
In this case, it didn’t take long to discover there was a server with a bad NIC card. It was spewing broadcast packets across the network and causing network congestion.
But this scenario above perfectly illustrates the difference between network throughput and bandwidth. The client was right: they had plenty of bandwidth (100Mbps) for what they were doing. But their throughput was down to about 1Mbps because of the bad NIC card causing congestion.
So bandwidth and throughput are two very different things. Let’s look closer at which is which.
What is network throughput?
Throughput is the actual amount of traffic flowing from a specific individual source or group of sources to a specific destination or group of destinations at a specific point in time. This is an important point: Throughput is how much actual traffic is flowing when you do a real-time measurement or the rate of data delivery over a specific period of time. It can be measured in packets per second, bytes per second, or bits per second. In our example, we used Mbps, megabits per second.
In the example above, we said the client had a connection with a bandwidth of 100Mbps, so if you were to tell me their throughput was 100Mbps, you’d be mistaken. The throughput in the example would be around 1Mbps as we measured it. Take a look at this article on basic networking terms right here. This has an excellent discussion of the automotive traffic analogy to understand networking throughput and bandwidth.
Let’s carry that analogy forward a little more. Imagine you’re on a highway and all of a sudden, a presidential motorcade comes by. What do they do? They literally stop traffic on the highway until the motorcade is securely and safely passed, effectively dropping the throughput on the highway to nothing. This can cause a ripple of traffic delays way down the line, which in turn can cause delays and slowdowns at on-ramps and intersections. Visual delays and even traffic collisions can occur, making the congestion even more pronounced. So now, your normally speedy throughput has been brought down to a crawl.
This is exactly what was happening on the client’s network. He was having a traffic congestion issue and didn’t even know it. He wasn’t seeing anything wrong on his network. He was just seeing his users operating slowly. He had no way of knowing where, why, or how this was occurring.
Next, let’s look at throughput testing and measurement, and how this all fits together.
How is network throughput measured?
There are a variety of ways to measure network throughput. First, many endpoints such as a Windows or Mac workstation have built-in tools for measuring network throughput. You can see an example of the network throughput on my Mac from Activity Monitor and my Windows workstation from Resource Monitor below.
While these tools are great for looking at the throughput of a specific device, it’s more valuable to use a tool that gives you real-time measurements in a variety of situations and possible simulations of different traffic conditions at different points of your network. You want to be able to look at different segments of your network and isolate those if needed. You want to do benchmark testing, so you know exactly what they are doing in different situations, then be able to compare in times of troubleshooting and stress.
Importance of network throughput testing
It can’t be stated too strongly how important network throughput testing is. Our example above had been happening, undiagnosed, for a long time, causing VoIP connection problems and errors, and inefficiency in their applications. Some applications were starting to show real performance problems, causing end-user frustrations.
So, having testing capability up and running before there’s a problem is key. Being able to benchmark the current network performance profile, then detect when throughput changes, is critical to having an efficient and effective network. Measuring, testing, and benchmarking your network gives you this capability.
What affects network throughput?
Let’s discuss some of the prime drivers to network throughput problems, and what we can do about them.
Packet loss or errors
Let’s start with our example. When the bad NIC card started spewing out erroneous broadcast packets across the network, it created an error condition in the Ethernet CSMA/CD protocol. This error then caused the Ethernet to go into a back-off condition. This back-off condition was like a ripple effect on the segment and caused the link to go slower and slower. It was kind of like the delay on a highway when a car crash is on the side of the road. All the “rubber-neckers” slow down.
Many times, there are limitations pre-set to manage the amount of throughput on a network. A good example is how voice traffic normally gets priority on a segment. This may cause limitations on other types of traffic in the same segment. Or, think about your ISP provider. While the exact same cable is often used to provide 100Mbit/s, 500Mbit/s, or 1Gbit/s services, the throughput is often limited to a service plan that you pay for.
Latency is a common performance problem. It’s the delay that’s inherent in the network, such as on the medium, the switch, or the router (at lower levels of the OSI model). This results in a lower throughput at higher levels of the OSI model, as the underlying infrastructure can only go so fast. If the road is in bad shape, the cars simply have to slow down.
Also a common issue, congestion will occur on any network when there are simply too many packets for the network to handle. In the example above, the errors from the bad NIC card caused congestion, and in turn, the congestion caused the Ethernet protocol to slow down. Sometimes you just have too many devices or too many packets sending at the same time. This can occur often during certain periods of time or certain times in the calendar. It’s an excellent application for network throughput testing and benchmarking to track these issues and correct these problems.
Jitter is a condition of delay variation. There are many types of applications that not only need good throughput but also need it to be predictable and reliable. Good examples of this are voice and video traffic. If the delay has a lot of jitter, then the end application will not perform correctly. You’ll see dropped calls, frozen video, or reset connections.
Throughput vs. bandwidth: What’s the difference?
While we often use the terms interchangeably, it’s important to remember that bandwidth is not the same as throughput. Remember when the client told you they had plenty of bandwidth? This was true. They did. What they didn’t have was throughput.
To reiterate: Their bandwidth, defined as the theoretical maximum amount of traffic that a given link can support, was 100Mbps. This is 100 million bits per second on the wire, the complete capacity that his network could theoretically handle. However, there were multiple issues on this network affecting it.
The primary issue was the excessive congestion, which in turn caused the actual amount of traffic being passed through a link to drop below 1 million bits per second. So, the bandwidth was 100 million bits per second and the throughput was 1 million bits per second.
One other thing to note: The purpose of network management software and network throughput testing is to optimize the network on an ongoing basis. And when you’re measuring throughput, remember what layer of the OSI model you are operating at. There’s overhead and control traffic introduced at each layer of the OSI model, that unfortunately, you can’t do without! Therefore, it’s important to optimize your performance on a continuous basis. Let’s look at how to do that.
6 Top Tips for optimizing throughput
How do we optimize our throughput? What are the actionable steps we can take to make an investment in networking technology pay off?
Measure your performance
Measure and keep measuring. If you don’t know where you are, then you don’t have any idea what to do to get to your goals. Start an organized and comprehensive network throughput testing program, using your network monitoring tools, to truly understand what you’re dealing with. This will help you establish baselines.
Understand traffic flows
Once throughput is measured, you need to be able to visualize and understand your traffic flows. Traffic flows tell you about traffic patterns within your network. How much of your traffic is internal? Is there a seasonal component to it? How about daily, weekly, or hourly patterns? Is there latency-sensitive traffic on your network? What about your network equipment? Is it optimized for your network? There are many fine-tuning and performance options on all these variables that can affect your throughput.
Segment your network
Just like you have separate lanes on highways, and special through traffic lanes in certain sections, you need to segment your network correctly to ensure your network performs at optimum throughput.
What does your security look like?
Remember, security is a factor in every area of your network. Are you having any network security issues? Do you understand how security issues such as malware and DOS attacks affect your network? You should. Stay current on the latest issues.
What are your endpoints?
Do you understand how your endpoints affect your network throughput? Endpoints such as slow servers may impact your network throughput. How are they being used? Are their configurations preventing them from reaching their maximum throughput? Are they set up correctly?
What are your applications?
Do you understand how your applications affect your network throughput? Applications such as VoIP or video services (both conferencing and streaming) can slow a network down quite a bit. How are they being used? Are they hogging all your bandwidth? Are they allowed in corporate access policies? What about your quality of service (QoS) settings? All of these will affect throughput.
Maximizing network throughput: next steps
Now that we understand network throughput and bandwidth, and understand how to measure both, what do we do next?
First, start planning a network testing and baselining strategy. Think about how you’re going to quantify your network. Where do most of the problems occur? Do you have network diagrams to help you document your network? What changes have you made recently?
Once you finish planning, it’s time to start measuring. Network throughput testing is next. Take an ordered approach, and work through your entire network. As you go through it, take inventory of everything, so you know where the problem children are, as well as the high performers. Then you can start to tune up your performance. Make small changes incrementally and continue doing network testing to see how it affects your performance.
The important thing is to get started as soon as you can. Traffic is flowing through your network every day. Problems are brewing and occurring without your knowledge. Take a careful look at what your network is doing, then start measuring it with network throughput testing. Get your baseline going and build a plan on how to start working through your issues. Then you’ll know how to recreate your successes.
Ready to start getting accurate, real-time information on your network throughput and other traffic measurements? Try Auvik FREE for 14-days.
how to calculate the queue length and bandwidth of the intermediate nodes in MANET?