我在一个项目中使用SAR来监控带宽,我不确定它是否报告了正确的数据。所以我写了一个非常简单的虚拟程序(在java中)来测试它,它打开一个服务器套接字,打开一个到该服务器套接字的客户端连接。接受该客户端连接后,服务器套接字开始在while(true)循环中写入bytebuffer(大小为1),每次迭代之间休眠1秒。理想情况下,我希望在“SAR -n DEV 1 100”输出中的环回接口上每秒传输一个字节,但我看到的是:
10:54:53 IFACE Ipkts/s Ibytes/s Opkts/s Obytes/s
10:54:56 lo0 2 113 2 113
10:54:56 gif0 0 0 0 0
10:54:56 stf0 0 0 0 0
10:54:56 en0 0 0 0 0
10:54:56 en1 0 0 0 0
10:54:56 fw0 0 0 0 0
10:54:56 vmnet1 0 0 0 0
10:54:56 vmnet8 0 0 0 0
有谁可以解释这个输出?
感谢, 和Sandeep
答案 0 :(得分:0)
如果您正在使用TCP连接,则不会仅传输字节,还会为每个数据包传输一些标头信息。此外,客户端必须确认收到的每个数据包。