Linux 16 Useful Bandwidth Monitoring Tools to Analyze Network Usage in Linux

16 Useful Bandwidth Monitoring Tools to Analyze Network Usage in Linux

 

Are you having problems monitoring your Linux network bandwidth usage? Do you need help? It’s important that you are able to visualize what is happening in your network in order to understand and resolve whatever is causing network slowness or simply to keep an eye on your network.

Read Also20 Commad Line Tools to Monitor Linux Performance

In this article, we will review 16 useful bandwidth monitoring tools to analyze network usage on a Linux system.

If you are looking to manage, troubleshoot or debug your Network, then read our article – A Linux Sysadmin’s Guide to Network Management, Troubleshooting and Debugging

The tools listed below are all open source and can help you to answer questions such as “why is the network so slow today?”. This article includes a mix of small tools for monitoring bandwidth on a single Linux machine and complete monitoring solutions capable of handling a few number of hosts on a LAN (Local Area Network) to multiple host even on a WAN (Wide Area Network).

ManageEngine Netflow Analyzer

 

ManageEngine NetFlow Analyzer is a flow-based bandwidth monitoring solution that offers multi-vendor support. It monitors your network, analyzes traffic patterns, and detects and diagnoses bandwidth hogs.

You can track the traffic patterns in your network over any period of time, and drill down further into the device, interface, application, and user-level details. With its traffic shaping abilities, NetFlow Analyzer helps you identify network anomalies in real-time and troubleshoot them before they affect your end-users.

With its customizable reports, NetFlow Analyzer also helps you predict and plan your bandwidth requirements. You can create, schedule, and generate comprehensive bandwidth analysis reports in just a few clicks.

ManageEngine Netflow Analyzer
ManageEngine Netflow Analyzer

1. vnStat – A Network Traffic Monitor

VnStat is a fully-featured, command line-based program to monitor Linux network traffic and bandwidth utilization in real-time, on Linux and BSD systems.

Vnstat Network Traffic Monitor Tool
Vnstat Network Traffic Monitor Tool

One advantage it has over similar tool is that it logs network traffic and bandwidth usage statistics for later analysis – this is its default behavior. You can actually view these logs even after system reboots.

Install VnStat in Linux

# yum install epel-release  [On RHEL/CentOS]
# yum install vnstat

# apt install vnstat   [On Debian/Ubuntu]

2. iftop – Displays Bandwidth Usage

iftop is a simple, easy to use, real time top-like command line based network bandwidth monitoring tool, used to get a quick overview of network activities on an interface. It displays network usage bandwidth updates every 2, 10 and 40 seconds on average.

Iftop Display Bandwidth Usage
Iftop Display Bandwidth Usage

Install iftop in Linux

# yum install epel-release  [On RHEL/CentOS]
# yum install iftop

# apt install iftop   [On Debian/Ubuntu]

3. nload – Displays Network Usage

nload is a another simple, easy to use command-line tool for monitoring network traffic and bandwidth usage in real time. It uses graphs to help you monitor inbound and outbound traffic. In addition, it also displays information such as the total amount of transfered data and min/max network usage.

nload - Monitor Network Usage
nload – Monitor Network Usage

Install nload in Linux

# yum install epel-release  [On RHEL/CentOS]
# yum install nload

# apt install nload   [On Debian/Ubuntu]

4. NetHogs – Monitor Network Traffic Bandwidth

NetHogs is a tiny top-like, text-based tool to monitor real time network traffic bandwidth usage by each process or application running on a Linux system. It simply offers real time statistics of your network bandwidth usage on a per-process basis.

NetHogs - Monitor Network Usage Per User
NetHogs – Monitor Network Usage Per User

Install NetHogs in Linux

# yum install epel-release  [On RHEL/CentOS]
# yum install nethogs

# apt install nethogs       [On Debian/Ubuntu]

5. bmon – Bandwidth Monitor and Rate Estimator

bmon is also a straightforward command line tool for monitoring network bandwidth utilization and a rate estimator, in Linux. It captures network statistics and visualizes them in a human friendly format so that you can keep an eye on your system.

Bmon - Bandwidth Monitor and Rate Estimator
Bmon – Bandwidth Monitor and Rate Estimator

Install Bmon in Linux

# yum install epel-release  [On RHEL/CentOS]
# yum install bmon

# apt install bmon          [On Debian/Ubuntu]

6. Darkstat – Captures Network Traffic

Darkstat is a small, simple, cross-platform, real-time, efficient web-based network traffic analyzer. It is a network statistics monitoring tool that works by capturing network traffic, computes usage statistics, and serves the reports over HTTP in a graphical format. You can also use it via the command line to get the same results.

Darkstat - Captures Network Traffic
Darkstat – Captures Network Traffic

Install Darkstat in Linux

# yum install epel-release  [On RHEL/CentOS]
# yum install darkstat

# apt install darkstat      [On Debian/Ubuntu]

7. IPTraf – An IP Network Monitor

IPTraf is an easy to use, ncurses-based and configurable tool for monitoring incoming and outgoing network traffic passing through an interface. It is useful for IP traffic monitoring, and viewing general interface statistics, detailed interface statistics and so much more.

IPTraf - Network Statistics Utility
IPTraf – Network Statistics Utility

Install IPTraf in Linux

# yum install epel-release  [On RHEL/CentOS]
# yum install iptraf

# apt install iptraf        [On Debian/Ubuntu]

8. CBM – (Color Bandwidth Meter)

CBM is a tiny command line utility for displaying current network traffic on all connected devices in colored output in Ubuntu Linux and its derivatives such as Linux Mint, Lubuntu and many others. It shows each connected network interface, bytes received, bytes transmitted and total bytes, allowing you to monitor network bandwidth.

CBM - Monitor Network LAN Usage
CBM – Monitor Network LAN Usage

Install Color Bandwidth Meter in Linux

# yum install epel-release  [On RHEL/CentOS]
# yum install cbm

# apt install cbm           [On Debian/Ubuntu]

9. Iperf/Iperf3 – Network Bandwidth Measurement Tool

Iperf/Iperf3 is a powerful tool for measuring network throughput over protocols such as TCP, UDP and SCTP. It is primarily built to help in tuning TCP connections over a particular path, thus useful for testing and monitoring the maximum achievable bandwidth on IP networks (supports both IPv4 and IPv6). It requires a server and a client to perform tests (which reports the bandwidth, loss, and other useful network performance parameters).

Iperf3 - Network Performance and Tuning
Iperf3 – Network Performance and Tuning

Install Iperf3 in Linux

# yum install epel-release  [On RHEL/CentOS]
# yum install iperf3

# apt install iperf3        [On Debian/Ubuntu]

10. Netperf – Network Bandwidth Testing

Netperf is similar to iperf, for testing network performance. It can help in monitoring network bandwidth in Linux by measuring data transfer using either TCP, UDP. It also supports measurements via Berkeley Sockets interface, DLPI, Unix Domain Sockets and so many other interfaces. You need a server and a client to run tests.

Netperf - Network Bandwidth Testing
Netperf – Network Bandwidth Testing

For installation instruction, check out project github page.

11. SARG – Squid Analysis Report Generator

SARG is a squid log files analyzer and internet bandwidth monitoring tool. It produces useful HTML reports with information including but not limited to IP addresses, and total bandwidth usage. It is a handy tool for monitoring internet bandwidth utilization by individual machines on a single network.

Sarg - Squid Network Analysis Report Generator
Sarg – Squid Network Analysis Report Generator

For installation instruction and usage, check out our article – How to Install SARG to Monitor Squid Internet Bandwidth Usage.

12. Monitorix – System and Network Monitoring Tool

Monitorix is a lightweight system resources and network monitoring application, designed for small Linux/Unix servers and also comes with amazing support for embedded devices.

It helps you monitor network traffic and usage statistics from unlimited number of network devices. It supports IPv4 and IPv6 connections, includes packet traffic and traffic error graphs, and supports up to 9 qdiscs per network interface.

Monitorix - System and Network Monitoring Tool
Monitorix – System and Network Monitoring Tool

Install Monitorix in Linux

# yum install epel-release  [On RHEL/CentOS]
# yum install monitorix

# apt install monitorix     [On Debian/Ubuntu]

13. Cacti – Network Monitoring and Graphing Tool

Cacti is a fully functional, web based network graphing PHP application with an intuitive, easy to use interface. It uses MySQL database for storing data collected network performance data, used to produce customized graphing. It is a frontend to RRDTool, useful for monitoring small to complex networks with thousands of devices.

Cacti - Network Monitoring and Graphing Tool
Cacti – Network Monitoring and Graphing Tool

For installation instruction and usage, check out our article – How to Install Cacti – A Network Monitoring and Graphing Tool.

14. Observium – Network Monitoring Platform

Observium is a fully-featured network monitoring platform with an elegant and powerful, robust yet simple and intuitive interface. It supports a number of platforms including, Linux, Windows, FreeBSD, Cisco, HP, Dell and many others, and includes autodetection of devices. It helps users to gather network metrics and offers intuitive graphing of device metrics from collected performance data.

Observium - Network Monitoring Platform
Observium – Network Monitoring Platform

For installation instruction and usage, check out our article – How to Install Observium – A Complete Network Management and Monitoring System.

15. Zabbix – Application and Network Monitoring Tool

Zabbix is a feature-rich, commonly used network monitoring platform, designed in a server-client model, to monitor networks, servers and applications in real time. It collects different types of data that are used for visual representation network performance or load metrics of the monitored devices.

It is capable of working with well known networking protocols such as HTTP, FTP, SMTP, IMAP and many more, without the need to install additional software on the monitored devices.

Zabbix - Monitoring Solution for Linux
Zabbix – Monitoring Solution for Linux

For installation instruction and usage, check out our article – How to Install Zabbix – A Complete Network Monitoring Solution for Linux.

16. Nagios – Monitors Systems, Networks and Infrastructure

Nagios is a robust, powerful, feature-rich and widely used monitoring software. It allows you to monitor local and remote network devices and their services from a single window.

It offers bandwidth monitoring in network devices such as switches and Routers via SNMP thus enabling you to easily find out over utilized ports, and pin point possible network abusers.

Read Also13 Linux Network Configuration and Troubleshooting Commands

In addition, Nagios also helps you to keep an eye on per-port bandwidth utilization and errors, and supports fast detection of network outages and protocol failures.

Nagios - IT Infrastructure Monitoring Tool
Nagios – IT Infrastructure Monitoring Tool

For installation instruction and usage, check out our article – How to Install Nagios – A Complete IT Infrastructure Monitoring Solution for Linux.

Summary

In this article, we have reviewed a number of useful network bandwidth and system monitoring tools for Linux. If we’ve missed to include any monitoring tool in the list, do share with us in the comment form below.

0 (0)
Article Rating (No Votes)
Rate this article
Attachments
There are no attachments for this article.
Comments
There are no comments for this article. Be the first to post a comment.
Full Name
Email Address
Security Code Security Code
Related Articles RSS Feed
How to enable automatic security updates on CentOS 7 with yum-cron
Viewed 2343 times since Fri, Oct 26, 2018
RHEL: Multipathing basics
Viewed 8520 times since Sat, Jun 2, 2018
OpenSSL: Find Out SSL Key Length – Linux Command Line
Viewed 6533 times since Mon, Feb 18, 2019
RHEL: udev rules basics
Viewed 8164 times since Sat, Jun 2, 2018
RHEL: iSCSI target/initiator configuration on RHEL7
Viewed 10746 times since Sat, Jun 2, 2018
RHEL: Bonding network interfaces
Viewed 3507 times since Sat, Jun 2, 2018
Using etckeeper with git
Viewed 6654 times since Sun, Jun 3, 2018
OpenSSL – sprawdzanie czy klucz pasuje do certyfikatu
Viewed 2547 times since Thu, May 24, 2018
Linux An introduction to swap space on Linux systems
Viewed 2250 times since Thu, Jan 23, 2020
Secure NTP with NTS
Viewed 8197 times since Sun, Dec 6, 2020