如何确定进程在Linux中使用了多少带宽


11

有时,我发现使用gnome-system-monitor的带宽使用率高达300kbit / s。我只是不知道是什么原因造成的。我想知道在使用我的网络时有什么过程或程序吗?

我将ssh放入不同的机器和服务器中,我真的希望能够在这些机器和服务器上监视带宽使用情况。了解人们使用哪些实用程序来查看正在使用的带宽以及哪些应用程序/程序/进程/或线程将非常有用。我什至不知道从哪里开始寻找。

我发现的两个小程序是不够的。bmonbwm-ng 以及wireshark数据包嗅探器)之类的工具是过大的。我想要中间的东西,最好是基于文本控制台的东西。

Answers:


11

您可以使用

iptraf

要么

iftop -P

以确定占用您大量带宽的连接。连接由一对(localip:port,remoteip:port)标识。然后,您可以使用

netstat -tunp

查找哪个进程使用该连接。但是,通常,您仅通过查看端口就可以确定什么服务是负责的,例如,如果连接localip:80在本地使用其可能是您的Web服务器;-)


11

好吧,这里iftop只是显示源和目的地,而不显示引起流量的程序。

编辑:

刚发现nethogs。它正是您想要的。


0

Iftop

它可以很好地显示正在使用带宽的哪个IP /主机。它可以将信息隔离到单个程序或端口。

须藤Iftop

一旦运行,您可以使用H或?访问帮助菜单。有很多有用的选择

Host display:                          General:
 n - toggle DNS host resolution         P - pause display
 s - toggle show source host            h - toggle this help display
 d - toggle show destination host       b - toggle bar graph display
 t - cycle line display mode            B - cycle bar graph average
                                        T - toggle cummulative line totals
Port display:                           j/k - scroll display
 N - toggle service resolution          f - edit filter code
 S - toggle show source port            l - set screen filter
 D - toggle show destination port       L - lin/log scales
 p - toggle port display                ! - shell command
                                        q - quit
Sorting:
 1/2/3 - sort by 1st/2nd/3rd column
 < - sort by source name
 > - sort by dest name
 o - freeze current order

iftop, version 0.17

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.