利用 sar 命令观测网络接口的收发包速率

2024-05-27 15:58:00 浏览数 (2)

更多好文请关注↑

命令简介

sar 命令是 System Activity Reporter 的简称,它是 Linux 系统中用于监控和报告系统活动的工具,包括CPU使用率、内存使用情况、磁盘I/O、网络活动等。

命令示例

使用 sar 命令观测网络接口的收发包速率,你可以通过指定 -n 参数配合相应的子选项来实现。要专注于网络接口的收发包速率,特别是每秒钟的收发包数,可以使用 -n DEV 选项。以下是一个基本的命令示例,用于监视指定网络接口(例如 eth0 和 lo)的实时收发包速率,每隔1秒输出一次,共输出5次:

代码语言:javascript复制
sar -n DEV --iface=eth0,lo 1 5

测试截图:

--iface=eth0,lo 1 5 部分指定了监控的网络接口和采样间隔及次数。这里,--iface=eth0,lo 指定了要监控的网络接口为 eth0lo(回环接口),即同时监控这两个接口的网络活动(接口名由逗号分隔)。最后的 1 5 表示每1秒采集一次数据,总共采集5次。

输出内容解析

输出内容会包括但不限于以下几部分,具体格式可能根据系统的版本和配置有所不同:

  1. 时间戳:每行数据的开始通常会有一个时间戳,表明数据采样的具体时间点。最后一部分的第一列输出 Average,表明观测期间各项数据的平均值。
  2. IFACE:网络接口名称,这里会显示为 eth0lo,对应监控的网络设备。
  3. rxpck/s:每秒接收的数据包数量。
  4. txpck/s:每秒发送的数据包数量。
  5. rxkB/s:每秒接收到的千字节总数。
  6. txkB/s:每秒发送的千字节总数。
  7. rxcmp/s:每秒接收的压缩包数量(如果适用)。
  8. txcmp/s:每秒发送的压缩包数量(如果适用)。
  9. rxmcst/s:每秒接收的组播包数。
  10. %ifutil:网络接口利用率百分比。对于半双工接口,其利用率是通过将 rxkB/stxkB/s 的总和,以接口速度的百分比来计算的。而在全双工接口中,利用率则是 rxkB/stxkB/s 中较大的那一个作为计算依据。

根据具体的监控需求,你可以调整采样间隔和次数,以及选择不同的网络接口进行监控。

参考文档

  • man sar

0 人点赞