如何计算网络的延迟和带宽

时间:2013-03-26 13:27:57

标签: java mpi

我有代码ping几台机器,并记录时间,它针对各种数据包大小(1kb到100gb)执行此操作,但我想知道如何计算网络的延迟,如何实现?

这是我用来衡量ping的代码:

我如何测量系统的带宽呢?

感谢帮助人员!

1 个答案:

答案 0 :(得分:2)

在延迟和带宽完全不变的理想情况下,这只是一个线性问题:

delay = packetsize / bandwidth + latency

有两个变量,带宽和延迟,因此您需要至少两个不同的记录来解决它。但是,我建议为许多数据对计算它们,例如取所有结果的中位数。

我认为解决上述等式应该很容易。如果没有,请随时询问。

更新:如何解决上述等式

Let
y1, y2 values for delay
x1, x2 values for packetsize
a := 1/bandwith
b := latency

y1 = a * x1 + b
y2 = a * x2 + b
=> b = y1 - a * x1              [1]
=> y2 = a * x2 + y1 - a * x1
=> a = (y2 - y1) / (x2 + x1)
Now put it in equation [1]:
=> b = y1 - (y2 - y1) / (x2 + x1)

现在,您有b的延迟和1 / a的带宽。

相关问题