Sign up ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

First of all, I am on a slow Internet connection and it really makes me mad if something gets downloaded in background (like automatic update of any software) without my knowledge.

How can I monitor my network traffic sorted according to the "which binary file is using how much"? I can find the total transfer rate in "System Monitor" in Gnome, but what if I want to find for individual process. There are softwares like netmonitor in Windows, but how can I achieve that in UBUNTU LINUX.

GUI application will be nice, command line software will also be fine.. I tried searching on Google because I actually didnt get any relevant search.

share|improve this question

migrated from Jan 22 '10 at 16:16

This question came from our site for professional and enthusiast programmers.

6 Answers 6

Here's a great article about bandwith monitoring in Ubuntu. There is a big list of apps with an in-depth look into each one. Link

share|improve this answer
I want an application which tells which binary file is using the bandwidth.. How do I do that –  shadyabhi Jan 23 '10 at 4:48
up vote 2 down vote accepted

I asked the same qestion of reddit and got nice replies.

share|improve this answer

Googling it gives me pyshaper. It looks something like what you are looking for. Here is a How-To

share|improve this answer
No, this is not what the question was asking for. This is a traffic shaping tool. Not monitoring. –  erik Mar 11 '13 at 20:12

you can use iftop utility for detecting traffic based on ports. And also later find which process is using that port.

share|improve this answer

Since you asked for a GUI application and there doesn't seem to be one here, I'd like to point you to one.. SeaLion. Great timeline, easy setup as well. You can monitor both your network and CPU usage, memory, etc. used by different process. Advantage mainly lies in the timeline which lets you go back in time to check older outputs.

Simple and useful. There are others though, like Nagios, Splunk, etc; SeaLion's my favourite.

share|improve this answer

The best solution I'd found is NetHogs, and in Ubuntu/Fedora it is available under nethogs package.

On newer kernels, you most probably have to provide the network interface name, since it expects eth0 but it is not there (use ip link show to find interfaces available). In my case the ethernet is p19p1. Thus NetHogs is invoked via:

$ sudo nethogs p19p1

NetHogs is utility similar to top, supports several intractive keyboard commands, and command-line switches. See screenshot:

NetHogs screenshot

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.