33

Can anyone introduce me a Mac OS X application that monitors all network activity such as what applications are now connected to the internet and how much bandwidth they use (I mean show bandwidth separately for each application)?

1

11 Answers 11

19

If you don't want to buy any fancy GUI software, you can try nettop in Terminal.app

Use the arrow keys or w or s keys for scrolling. Use -n option to disable IP address reverse resolution.

Example of an output:

                                                               interface           state      packets in        bytes in
iTunes.35506                                                                                           0           0 B
    tcp6 *.3689<->*.*                                                             Listen
    tcp4 *:3689<->*:*                                                             Listen
    tcp4 *:57929<->*:*                                                            Listen
Last.fm.35511                                                                                          0           0 B
    tcp4 127.0.0.1:33367<->*:*                                       lo0          Listen
    tcp4 127.0.0.1:32213<->*:*                                       lo0          Listen
Spotify.35589                                                                                        380         227 KiB
    tcp4 192.168.2.18:57621<->192.168.2.15:52137                     en1     Established             194          34 KiB
    tcp4 *:57621<->*:*                                                            Listen
    tcp4 *:49858<->*:*                                                            Listen
    tcp4 192.168.2.18:58339<->193.182.8.12:4070                      en1     Established             186         192 KiB
    tcp4 127.0.0.1:4371<->*:*                                        lo0          Listen
    tcp4 127.0.0.1:4381<->*:*                                        lo0          Listen

Pretty awesome right? Best of all, nettop is embedded in OSX (well at least in Mountain Lion).

3
  • This is perfect, and if you press the <kbd>d</kbd> key, you can toggle between cumulative totals and the "diff" mode (how much each app used in the last second). Jan 14, 2013 at 17:00
  • 2
    press c-for simplified view for more help h Apr 2, 2014 at 18:38
  • 3
    Is there any way nettop can real-time sort such that processes using the most (current snapshot instead of historical) bandwidth are listed first? Nov 17, 2014 at 14:39
14

Rubbernet looks good.

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.

enter image description here

1
  • This app is exactly what the OP is asking for. It works. Apr 25, 2012 at 6:19
6

Try LittleSnitch:

A firewall protects your computer against unwanted guests from the Internet. But who protects your private data from being sent out? Little Snitch does!

enter image description here

3
  • 2
    I have LittleSnitch but it just show what application use internet don't show BW for each application
    – Am1rr3zA
    Oct 3, 2009 at 21:12
  • 1
    it does show which apps are currently using bandwidth which at times is enough...
    – rogerdpack
    Jan 15, 2012 at 1:47
  • 1
    You can click on the application in the window and it shows the graph of the network usage per application.
    – Gray
    Mar 31, 2016 at 14:49
4

Rubbernet is something that does everything you ask for. HOWEVER be warned. It is expensive, and it does not come with the features you'd expect for in basic freeware, let alone an expensive piece of software for monitoring usage. Limitations include:

  • loses all measured data when laptop sleeps
  • loses all measured data when VPN status changes
  • no "total measure" on the summary page: only the individual amounts used per app
1
  • Furthermore, the support is non-existent. No documentation, no response to tickets... Oct 29, 2012 at 20:58
4

In OSX 10.9 simply use the built in Activity Monitor:

http://support.apple.com/kb/HT5890?viewlocale=en_US&locale=en_US

1
  • 1
    Unfortunately I can't get it to show recent network bandwidth usage per application. Were you able to?
    – Gray
    Mar 31, 2016 at 14:53
2

If you have some Command Line know how, there are some Unix tools you may be able to take advantage of.

iftop: Won't give you a per application breakdown but it will give you a breakdown by remote host. This means that you can at least see who you're sending information too and how much. It's also installable via DarwinPorts.

nethogs: This one may not run on OS X, though it would be more informative. Unfortunately, it's probably a moot point.

You can also check out this other question for more information: Bandwidth Usage in Linux.

1
  • nethogs on ubuntu is my best friend... I am searching similar for mac. Apr 2, 2014 at 18:40
2

As of version 4, iStat Menus shows the bandwidth usage of the top 5 applications.

enter image description here

1

I just tried out Little Snitch, having the same basic problem (it seems) as the OP, and having been so disappointed with rubbernet (I weep for my $40).

Little Snitch is exactly what the OP asks for, and has every feature I can dream of in exploring related problems to those implied by the OP's question.

It does report the total bandwidth used by each application individually, and even presents a graph of any selected application or group of applications! Once you realise that you can select one or more rows in the Network Monitor graph, and ask for the collated info of those by presing the info button, it is simple to use. It survives changes of network status seamlessly.

It has a demo that lasts 3 hours, so you can't go wrong.

I think it is the perfect answer to the OP's question.

1
  • Incidentally, it's "outbound firewall" feature just showed me that I am running an app that is phoning home rather unexpectedly! Oct 31, 2012 at 1:52
0

Hard to use, originally called Ethereal, there's Wireshark.

I never used it myself, but I've tried in the past and it does just about anything.

If you want just to see general bandwidth, use Activity Monitor.

0

If you are using Lion or Mountain Lion I would suggest Icefloor

If you are using Snow Leopard I would suggest NoobProof

They are both free to use and will accomplish your needs

5
  • The description doesn't look like these show individual applications' bandwidth. Can you confirm this feature exists, maybe post a screenshot?
    – Daniel Beck
    Dec 16, 2012 at 12:58
  • @Daniel Beck - In the Noobproof description it states you can tune the bandwidth manage black lists and create self-configuration tools called injectors.
    – Simon
    Dec 16, 2012 at 13:10
  • I only found "Limiting bandwidth" which is different from "showing actually used bandwidth", which is what the OP asks for. Could you please be more specific?
    – Daniel Beck
    Dec 16, 2012 at 13:12
  • @Daniel Beck - In the 1st paragraph 7th line down it states you can tune the bandwidth
    – Simon
    Dec 16, 2012 at 13:13
  • Tuning here means you can set how much network bandwidth can be used by a process I think. That has nothing to do with showing how much a process naturally uses, for instance to see if a certain application is very active when not be explicitly used, or to search for a rootkit/virus/malware. May 30, 2014 at 22:55
0

Shameless plug: I had the same need and couldn't find anything that was quite right, so I wrote one. Please take a look at AppTerrain (https://noisycatlabs.com), available on the Mac app store. I'm very pleased with how it turned out and keep it running in the background all the time. I'm actively updating this app so feature requests are welcome!

Apologies for resurrecting an old question but I stumbled upon this in my search so I wanted add my update. Thanks!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .