How to Monitor Network Bandwidth Using the bmon Command in Linux

What is bmon?

While tools like netstat or ss are great for analyzing specific connections, they don’t provide an easy way to visualize total network throughput. bmon (Bandwidth Monitor) is a lightweight, ncurses-based command-line utility for Linux that displays real-time bandwidth statistics, packet rates, and historical traffic graphs for all network interfaces simultaneously.

Step 1: Install bmon

The bmon utility is not installed by default on most systems, but it is readily available in standard package repositories.

On Debian/Ubuntu systems:

sudo apt update && sudo apt install bmon -y

On RHEL/CentOS systems (requires the EPEL repository):

sudo yum install epel-release -y

sudo yum install bmon -y

Step 2: Launch the bmon Interface

To start monitoring your network traffic, simply type the command:

bmon

The terminal will instantly split into three main sections. The top pane lists all available network interfaces (like eth0, wlan0, and lo) alongside their current RX (receive) and TX (transmit) speeds in bytes per second.

Step 3: Analyze the Visual Graphs

Use the Up and Down arrow keys to select a specific network interface in the top pane. When an interface is highlighted, the middle pane will generate a real-time ASCII bar graph displaying the traffic flow for that specific adapter over the last few minutes. It displays two graphs: one for inbound traffic (RX) and one for outbound traffic (TX).

Step 4: View Detailed Statistics

The bottom pane provides highly granular statistics for the currently selected interface. Press the d key to toggle this detailed view on and off. Here you can see total bytes transferred since boot, packet drop counts, collision statistics, and multicast packet counts, which are invaluable for diagnosing low-level network issues.

Step 5: Change the Unit of Measurement

By default, bmon displays data in Bytes per second (Bps). However, most network administrators prefer to read bandwidth in bits per second (bps) to match ISP advertised speeds.

To launch bmon and force it to display measurements in bits (using base 10 calculations), use the following flag:

bmon -b

To exit the application and return to your terminal at any time, simply press the q key.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.