我已经创建了一些Java代码来测量延迟、数据包大小和带宽。
计算延迟所需的方程式是什么?
这是我目前使用的内容,但不确定是否正确:
//latency = packetsize / delay + bandwidth
System.out.println("latency is " + (len*2) / (duration + transferRateMb));
编辑:长度乘以2得到字节的正确值。
持续时间是ping完成所需的时间。
传输速率通过以下方式计算:
double transferRateMb = ((len*524288.0) / (duration/ 1000000000.0) ) ; //amount of data in megabytes transferred in 1 second.
我已经阅读了各种指南,但是并没有理解它们,这仅仅是一个项目的简单需求。
此外,这将会运行20次,然后取平均值。
有什么想法吗?
(duration + transferRateMb)
能够给你双倍的值,并且已经询问了 ---> 延迟和带宽,并且已经询问了 ---> 如何从延迟和带宽计算数据包时间。 - Smit