Linux下如何按进程实时统计网络带宽利用率

2023-04-12 03:29:00 利用率 实时 网络带宽

在Linux下,我们可以通过使用“sar”命令来按进程实时统计网络带宽利用率。

首先,我们需要使用“ifconfig”命令来查看当前网络接口的信息:

$ ifconfig

eth0 Link encap:Ethernet HWaddr 00:0C:29:6F:8D:9A

inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0

inet6 addr: fe80::20c:29ff:fe6f:8d9a/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:25 errors:0 dropped:0 overruns:0 frame:0

TX packets:16 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:3780 (3.7 KB) TX bytes:2248 (2.2 KB)

Interrupt:19 Base address:0x2000

lo Link encap:Local Loopback

inet addr:127.0.0.1 Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING MTU:16436 Metric:1

RX packets:8 errors:0 dropped:0 overruns:0 frame:0

TX packets:8 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:480 (480.0 B) TX bytes:480 (480.0 B)

接下来,我们使用“sar”命令来查看每个进程的网络带宽利用率:

$ sar -n DEV 1 3

Linux 2.6.32-358.el6.x86_64 (localhost.localdomain) 04/03/2014

Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util

eth0 0.00 0.00 0.00 1.00 0.00 4.00 4096.00 0.00 4.00 4.00 0.10

lo 0.00 0.00 1.00 1.00 0.00 0.00 4.00 0.00 0.00 0.00 0.00

Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util

eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util

eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

从上面的输出结果可以看到,我们可以通过“sar”命令来查看每个进程的网络带宽利用率。

需要注意的是,“sar”命令需要使用“root”用户才能够使用。

相关文章