We all wish our network have infinite bandwidth but, unfortunately, they never do. In fact, although things have improved on that front in recent years, congestion is still the biggest problem of every network. Congestion happens when the actual bandwidth approaches or exceeds what’s available. As a rule of thumb, network administrators seek to keep bandwidth utilization below 70% of the available bandwidth. SO, on a 1 Gb/s interface, there should never be more than 700 Mb/s. The best way to keep that from happening is by keeping a close eye on the actual network traffic. This is done with a bandwidth monitoring tool and this is what today’s article is all about. We’re revealing the five best free bandwidth monitoring tools we could find.
But before we tell you about the actual tools we’ve found, we’ll pause briefly and explain the different methods that can be used to monitor bandwidth, As you’ll see, there are mainly three of them. And once you have a better understanding of how monitoring is done, you’ll be in a better position to fully appreciate the different features of the tools we’re about to introduce.
Why Monitor Bandwidth
As explained earlier, congestion is the number one enemy of networks. You may think of a network as a highway where congestion is similar to traffic jams. But unlike automobile traffic which one can easily view, network traffic happens within cables, switches, and routers where it remains invisible. This is where network bandwidth monitoring tools can come in handy. They give network administrators the visibility they need to keep things running smoothly. After all, isn’t it what expected of them?
Another reason to monitor network bandwidth utilization is capacity planning. It’s an undeniable fact that users, systems, and processes will tend to increase their usage of networks over time. No matter what bandwidth your current circuits are capable of, chances are they’ll eventually need to be increased. And by monitoring bandwidth utilization, you’ll always know what circuit needs to be upgraded and when.
How Is It Done?
There are several ways that can be sued to monitor network bandwidth utilization. The first is to capture packets at a given point on the network. You can also use SNMP to poll devices for interface statistics and finally, you can have devices that support it send out NetFlow of S-Flow information. Let’s briefly examine how each one work.
Packet capture used to be the number one way of analyzing network traffic. Not so much anymore. It is still used a lot to pinpoint specific network issues but it’s rarely used for bandwidth monitoring anymore. With packet capture, every data packet in and/or out of a specific device’s interface is captured and decoded.
Since when monitoring bandwidth, we’re not really interested in the content of each packet but only its size, this method is a huge overkill which is why it has fallen out of favor.
The Simple Network Management Protocol–or SNMP–is a huge and very complex protocol that can be used to remotely monitor, configure and modify many different types of networking equipment. The only thing simple about it is its name. Implementing it is a complex task. Each SNMP-enabled devices make a certain number of parameters available. Some are read-only, others are modifiable.
Of particular interest when it comes to bandwidth monitoring are two values. They are usually available for each network interface of an SNMP-enabled device. The two values are bytes in and bytes out. By reading these values periodically, you can compute the number of bytes per unit of time which is exactly what bandwidth is.
A few other SNMP parameters can be interesting in a network monitoring context. In particular, there is the number of interface input and output errors. Similar to what’s being done with bytes in and out, these values can be used to compute the number of errors per second, a figure that tells you a lot about the general health of a network link.
Originally developed by Cisco Systems, NetFlow is, as its name suggests, a network flow analysis system. Devices that support NetFlow–or it’s multiple cousins such as J-flow or S-flow–collect information about each data flow–hence the name–which they then sent to a NetFlow analyzer.
For more information about Flow Analysis you could read more in our NetFlow Collectors and Analyzers article.
The Best Free Bandwidth Monitoring Tools
Now that we’re familiar with the different ways that we can monitor traffic, let’shave a look at five of the best free bandwidth monitoring tools you can find. Being free tools, some might be limited in their capacity and some–actually, most of them–might require quite a bit of configuration to get them working to your liking.
Every network administrator should know SolarWinds. The US-based company has been making great network administration tools for about 20 years. The company has acquired an excellent reputation for making so great free tools that are distributed in a no-strings-attached fashion. SolarWinds also makes several commercial tools that are among the best on the market. Its flagship product, the Network Performance monitor is a complete monitoring solution that can be scaled to networks of pretty much any size.
One of SolarWinds’ best free tools–and our number one pick–is the SolarWinds real-time bandwidth monitor. The software, which runs on Microsoft Windows, uses SNMP to poll multiple network devices and gets traffic statistics from their various interfaces. The results are shown visually on graphs depicting each interface’s usage statistics.
Configuring the tool is a simple matter of providing a device’s IP address or hostname and SNMP parameters such as SNMP version and community string. The real-time bandwidth monitor then displays a list of available interfaces on the chosen device also with some basic data about them.
Selecting a specific interface by clicking it reveals a graphic displaying the inbound and outbound bandwidth usage on the selected interface. You can also set alerting thresholds to be notified whenever usage exceeds a predefined limit on any interface
There are some limitations to this free tool. For instance, only one device can be configured at a time. Also, usage history is only kept for 60 minutes. This makes the tool a great asset for troubleshooting purposes but probably not for long-term utilization evolution surveying. For a more comprehensive package, the SolarWinds Bandwidth Analyzer Pack can be purchased.
The SolarWinds real-time bandwidth monitor is distributed as a bundle along with the SolarWinds network analyzer, another great free tool that you can use to monitor NetFlow-enabled devices. That tool will let you drill down by conversation, application, endpoints or protocol which the real-time bandwidth monitor won’t.
You can get the bundle with both the Free Real-time Bandwidth Monitor AND the Network Analyzer by visiting https://www.solarwinds.com/free-tools/network-analyzer-bandwidth-monitoring-bundle
2. ManageEngine SNMP Bandwidth Monitoring Software
ManageEngine is self-described as a company that “has complete and easy solutions for even your most difficult IT management problems, from keeping your business safe to ensuring high availability to making your users happy.” This is a bold statement but it describes the company quite well. ManageEngine is well-known for its high-quality tools including several tools aimed at monitoring different aspects of networks.
And just like SolarWinds, ManageEngine is also famous for its free tools. Of particular interest in the context of this article is the SNMP Bandwidth Monitoring Software. It is offered as part of ManageEngine’s free OpUtils bundle, a huge pack of some 16 network management utilities. It runs on both Windows and Linux and the free edition allows monitoring up to 10 devices and their interfaces.
Setting the tool up, just like it’s almost always the case, requires several steps. You first specify a subnet to scan and some SNMP parameters to use. The tool will then discover devices on the specified subnet. Once the devices are discovered, you can view their interface’s statuses from the inventory tab. You can also display graphs of network speed and bandwidth usage.
For each interface, you can generate reports of bandwidth usage over the past 12 hours to one month. Furthermore, you can set alerting thresholds and be notified by email or SMS text messages whenever they are reached.
The ManageEngine SNMP Bandwidth Monitoring Software is ideal if your network is small with no more than 10 devices. If you manage a bigger network, ManageEngine also has paid version with no device limitation that you may want to try. To make it easier, ManageEngine offers a free 30-day evaluation version of its full OpsUtil software. In fact, the free version is first installed as a 30-day trial and revert to limited features after the trial period ends.
The Multi Router Traffic Grapher, or MRTG as it’s usually called, is a totally free and open source bandwidth monitoring and graphing system. It’s been around since 1995 but it is still in widespread usage, despite the fact that the latest version is already some five years old.
MRTG is developed by Swiss developer Tobi Oetiker. It is mostly written in Perl and the full source code is easily available, enabling anyone to customize it to their specific needs. Some parts of the system are written in C for faster execution. It is available for both Windows and Linux. Although configuration and initial setup are somewhat more complicated than what you’d experience with other monitoring systems, documentation is readily available.
The main components of MRTG are a Perl script that reads SNMP data from target devices and a C program that takes the data, stores it in a round-robin database and create web pages with bandwidth utilization graphs. Actually, MRTG doesn’t only monitor bandwidth. It can also monitor, log, and graph any SNMP parameter.
Installing MRTG is a multi-step process and requires that you first install and configure Perl first. Furthermore, running MRTG as a Windows service–certainly something one would want– requires some further manipulations including some registry modifications. Once installed, you configure the software by editing its configuration file. This is possibly something every Linux admin might be familiar with but people with only Windows expertise could experience a steeper learning curve.
You can download the latest version of MRTG directly from the developer’s website. It is available as a .zip file for windows or a tarball for Linux. As of this writing, the latest stable release is 2.17.4.
While MRTG might not be the most user-friendly monitoring system, it is likely the most flexible one. Being written in Perl means that pretty much anyone can modify and adapt it to his exact needs. And the fact that it’s the first monitoring system and that it is still around is a testament to its value.
Cacti can be viewed as a distant cousin of MRTG. And if you look at any of Cati’s graphs, you’ll find that the resemblance to MRTG’s is striking. It’s no surprise since Cacti is built upon RRDTools which is a direct descendant of Cacti.
Cacti is just as flexible and versatile as MRTG but it is a more polished product with a great web-based user interface that makes configuring it very simple and intuitive. it is a complete network graphing package which uses RRDTool, a data logging and graphing tool from Tobi Oetiker who also brought us MRTG. Cacti comprises a fast poller, advanced graph templates, several acquisition methods, and user management features. It is just as good for smaller LAN installations as ts is for complex networks with thousands of devices over multiple sites.
To better understand Cacti, let’s talk about RRDtool for a moment. According to its developer “RRDtool is the OpenSource industry standard, high-performance data logging and graphing system for time series data. RRDtool can be easily integrated into shell scripts, Perl, Python, Ruby, Lua or Tcl applications.” RRDtool is a direct descendant of MRTG.
In a nutshell, Cacti is a frontend to RRDTool. It stores the necessary data to create graphs and populate them with data in a MySQL database. It is entirely written in PHP driven. Cacti lets you maintain Graphs, Data Sources, and Round Robin Archives in a database and also handles the data gathering. And there is SNMP support for those used to creating traffic graphs with MRTG. As a matter of fact, Many Cacti users are former MRTG users and it is how I got into Cacti when I needed to replace MRTG with something that was easier to install and use. Cacti can be downloaded directly from the company’s website
Last but certainly not least is the Paessler Router Traffic Grapher or PRTG. The German company offers a great monitoring solution to is somewhat similar to Cacti or MRTG–it’s no wonder the product’s acronym so closely resembles MRTG’s–but with a more polish and professional feel to it.
According to Paessler, you can set up PRTG and be up and running in a couple of minutes. Our experience shows that it might take you a bit longer than that to get it completely configured to your liking and monitoring all your devices but we have to admit that setting the product up was an exceptionally easy experience.
Feature-wise, PRTG is an impressive product. For starters, the product comes with several different user interfaces. There’s a native Windows enterprise console, an Ajax-based web interface as well as mobile apps for Android and iOS. And the different interface makes full use of each device’s capabilities. For example, PRTG allows you to print QR code labels that you can affix to your devices. Then, scanning the code from the mobile app will quickly take you to the device’s graphs.
And talking about graphs, PRTG leaves nothing to be desired. It can not only monitor and graph bandwidth utilization but also many more parameters using SNMP, WMI, NetFlow, and Sflow. It also has some amazing reports that can be viewed as HTML or PDF or exported to CSV or XML to be processed externally. The reports can be run on-demand or be scheduled to run automatically.
The Paessler website lets you download two different versions of PRTG. You can choose either the free version of the free 30-day trial version. The former will limit you to monitoring up to 100 sensors. In PRTG parlance, a sensor is each parameter that you want to monitor. For example, monitoring bandwidth on each port of a 48-port switch will require 48 sensors. And if you also want to monitor the switch’s CPU and memory loads, you’ll need two more sensors. As you can see, they can quickly add up.
Which One Should I use?
This is the answer everyone seems to be seeking but it is one of the toughest questions to answer. We really like the SolarWinds real-time bandwidth monitor. It packs a lot of features, it works very well and it’s not to complicated to set up. It is also a great introduction to other tools that are available from SolarWinds. Once you’ve tried one, you’ll want to have a look at more. As for the other products on our list, they are all great products as well and choosing one will often be a matter of personal taste. For a totally free solution that can scale up to any size of installation, MRTG and Cati are hard to beat. For a more polished look and if you’re managing a smaller network, the offers from ManageEngine and Paessler are great too.
Bandwidth monitoring systems are amongst the most useful tools to a network administrator. And with many free options available, there’s no reason not to start using them right now. Whichever of these systems you decide to try, you’ll get an invaluable insight into what’s going on on your network. Many of these tools take some efforts to get them going but we can assure you that they will more than likely be well-rewarded efforts.