NIC 带宽使用率图表(不是 kbps/mbps)

NIC 带宽使用率图表(不是 kbps/mbps)

我想和大家验证一下我的想法。假设:

  1. 我正在测量带宽的设备是一个基于 Linux 的内部路由器。
  2. 如果 NIC 配置为 100mbps,则网络至少为 100mbps(也就是说,NIC 的速度设置限制了带宽,而不是网络及其延迟等)
  3. CPU 等元素对带宽没有影响。

以下做法正确吗:

  1. 每 10 秒运行一次 ifconfig
  2. 根据 ifconfig 的结果计算每秒 TX+RX 的字节数
  3. 将字节数乘以 8(假设为 X)
  4. 获取网卡速度设置(10mbps、100mbps、1000mbps,此为 Y)
  5. 计算带宽使用率百分比为:X/(Y*1024*1024)

这是正确的吗? 重复性会如何影响此计算?

答案1

理论上这是正确的。但是,使用 ifconfig 检索相关数据是一种非常迂回的方法。使用 SNMP 会更好。所有接口在标准 SNMP MIB 中都有条目,这些条目描述了它们以及它们的当前连接速度,以及各种相关计数器。

据我所知,所有 Linux 发行版的标准软件包中都提供 SNMP,您可以使用 snmpwalk 或 snmpget 等工具(如果您只想检索数据)或 MRTG 或 cacti(如果您想要绘制数据图表)。尤其是 cacti 允许将公式(公式?)应用于您的数据,并且应该很容易从中获得百分比图表。

相关内容