sar-n DEV 输出报告的网络速度计算方法是什么?

sar-n DEV 输出报告的网络速度计算方法是什么?

我对网络速度输出感到困惑:

如果报告说:

sar -n DEV 1 1
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

01:11:13 PM     IFACE   rxpck/s   txpck/s   rxbyt/s   txbyt/s   rxcmp/s   txcmp/s  rxmcst/s
01:11:14 PM      eth0    342.57    342.57  93923.76 141773.27      0.00      0.00      0.00

这是否意味着最后一秒平均只能传输 342 个数据包,还是意味着最后一秒实际传输了平均 342 个数据包?

我认为第二句话是正确的。但是它如何判断网络性能是好是坏?我的意思是它只告诉实际传输了多少数据包,但没有告诉原因是有/没有数据包传输需求,还是由于外部网络流量导致吞吐量降低。

这个问题已经萦绕在我心中很多年了。

答案1

由于您请求一个样本每隔一秒,sar 就会给你瞬时速度。意思是测量时,显示的是一秒钟的速度。

关于问题“这是否显示了瓶颈,或者没有”,这没有给出任何答案。这主要取决于所取样本的条件。如果条件是以这种方式创建的,则该主机应该向任一方向呈现其所有网络性能功能,例如,您已将文件拉得足够大从该主机到另一主机,尽可能低地加密和/或压缩,以便主机显示其所有的传输性能,或者相反,你已经拉出了大文件从另一台主机到该主机测量它的接收能力(假设在两种情况下其他主机能力和中间通道已经过测试并证明它们处于某个参考条件) - 那么是的,它会给你最大的性能上限和一些值得思考的东西。

如果不是 - 那么不是,这是一些随机数据,显示一些网络交换及其即时速度。虽然这也是有意义的,例如当您必须确定主机网络负载是多少时。

答案2

sar -n DEV 1 1这是否意味着自启动以来每秒平均只能传输 342 个数据包,还是意味着自启动以来每秒实际平均传输了 342 个数据包?

事实上都不是。

man sar

如果间隔参数设置为零时,sar 命令显示自系统启动以来的平均统计信息。

换句话说,如果间隔设置,则显示的统计数据是所选间隔的平均值。
在您的示例中,将间隔设置为1,您将获得“平均的“过去一秒的统计数据。

统计数据基于操作系统中的累积活动计数器和显示你的系统实际做了什么,要么是自启动时计数器开始的,要么是它们的值与几秒前的值 0之间的差值(在正常运行时间或选定间隔内取平均值)。now<interval>

相关内容