想象一下,在异构网络环境中,您有许多跨多台主机的集群服务器,因此服务器之间的连接可能具有非常不同的延迟和带宽。您希望通过在服务器之间传输数据来构建服务器之间的连接图。
当然,随着网络拓扑的变化,这张地图可能会随着时间的推移而变得陈旧——但现在让我们忽略这些复杂性并假设网络是相对静态的。
鉴于此主机图中节点之间的延迟,计算带宽是一个相对简单的时间练习。但是,我在延迟方面遇到了更多困难。要获得往返时间,只需对从本地主机到远程主机的回程 ping 进行计时——这两个计时事件(开始、停止)都发生在本地主机上。
如果假设延迟在两个方向上不相等,我想要单向时间怎么办?假设各个主机上的时钟不精确同步(至少它们的误差与所涉及的延迟具有相同的量级) - 我如何计算单向延迟?
在一个相关的问题中——这种不对称延迟(一个链接在方向上比另一个更快)在实践中是否常见?出于什么原因/硬件配置?当然,我知道非对称带宽场景,尤其是在最后一英里的消费者链路上,例如 DSL 和 Cable,但我对延迟不太确定。
补充:在考虑了下面的评论后,问题的第二部分可能会更好地使用serverfault。