Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Possible Duplicate:
Application for monitoring all applications that are using the internet in Mac OS X
Bandwidth monitor for Mac OS X?

Is there any way to find out which process using how much internet bandwidth on Mac OS X Lion? I'm on mobile internet now, which is not very fast, so it would be nice if I can tell that for example, Chrome using 10kB/s, and Skype using 2kB/s.

I can see the total amount of traffic in Activity Monitor, but it is not enough for me.

I'd like to use an existing application, not interested to write an app like this. And I'm not interested in the actual traffic, only the number of bytes transferred and received by each processes.

share|improve this question

migrated from stackoverflow.com Nov 5 '11 at 12:11

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

marked as duplicate by slhck Nov 13 '12 at 9:34

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

    
Finally I've modified iftop's source to produce an output which can be parsed with awk, and can be merged with lsof. Now I can see the bandwidth usage by processes in a hacky way... –  psmith Nov 23 '11 at 9:38
1  
Would you care to share? –  Henno Apr 10 '13 at 9:01

2 Answers 2

up vote 22 down vote accepted

Mac OS X Lion (10.7.x) contains a command called nettop that gets you most of the way there. Be sure to check the man page to learn the navigation keys and note the d key for toggling delta display. Not quite the kB/s display you were looking for, but close perhaps.

I'd be interested in hearing if this works better or worse for you than your iftop/awk/lsof hack.

Update: Also, be sure to make your terminal window...
R       E       A       L       L       Y       W       I       D       E.
nettop has lots of columns that it won't draw and won't even tell you about if your terminal window is too narrow.

share|improve this answer
1  
You can also use/press c-for collapsed view for more press h-help –  netsmertia Apr 2 at 18:35

I prefer Rubbernet app for this. It gives a really great breakdown per application. You can also use it to remotely monitor network machines.

Here is the description from the website:

Real-time network dashboard

Rubbernet provides real-time monitoring so you can keep an eye on the exact state of your live network connections. With the Activity sidebar, you'll be able to see which applications are currently communicating over your network. When connections are idle, they will dim to let you know that traffic has stopped.

App bandwidth usage

Rubbernet provides a breakdown of per-app network usage, so you can quickly detect apps that phone home, connect to certain servers without your knowledge, or blame the app that's slowing down your network.

Live graphs

Real-time charting displays download and upload transfer rates for all active apps on all monitored Macs. Visualize your network usage and get a bead on network hogs before they get out of control.

Remote monitoring

Monitor all computers on your network from one Rubbernet instance on your Mac. No need to get up and open Rubbernet on a remote Mac to see its network statistics. Unlike other network monitoring tools, there is no complicated setup. It takes just a second to install or uninstall the necessary tools for Rubbernet to work. After that, they sit quietly in the background and provide the app with live data with minimal resource consumption.

Multi-user support

Have multiple user accounts on your Macs? Rubbernet automatically assigns every incoming and outgoing connections to the users they belong to.

share|improve this answer
    
A little bit more information on the application, especially on how it meets the needs laid out in the question would make this a better answer. –  ChrisF Nov 13 '12 at 12:10

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