【问题标题】:Determine asymmetric latencies in a network确定网络中的不对称延迟
【发布时间】:2010-12-28 21:51:21
【问题描述】:

想象一下,在异构网络环境中,您有许多集群服务器,跨多台主机,因此服务器之间的连接可能具有非常不同的延迟和带宽。您想通过在服务器之间传输数据来构建服务器之间的连接图。

当然,随着网络拓扑的变化,这张地图可能会随着时间的推移而变得陈旧 - 但现在让我们忽略这些复杂性并假设网络是相对静态的。

考虑到此主机图中节点之间的延迟,计算带宽是一项相对简单的计时练习。但是,我在延迟方面遇到了更多困难。要获得往返时间,只需对从本地主机到远程主机的回程 ping 计时 - 两个计时事件(开始、停止)都发生在本地主机上。

如果我在假设两个方向的延迟不相等的情况下想要单向时间怎么办?假设各个主机上的时钟不精确同步(至少它们的误差与所涉及的延迟具有相同的量级) - 我如何计算单向延迟?

在一个相关问题中 - 这种不对称延迟(其中一个链接的方向比另一个链接更快)在实践中是否常见?出于什么原因/硬件配置?我当然知道非对称带宽场景,尤其是在 DSL 和 Cable 等最后一英里消费者链路上,但我对延迟不太确定。

补充:在考虑了下面的评论之后,问题的第二部分在serverfault 上可能会更好。

【问题讨论】:

  • 这是一个关于 serverfault 的好问题。
  • 我在纠结是放在这里还是 serverfault,但我决定放在这里,因为我相信这是一个纯粹的网络编程问题,而不是 SF 存在理由的管理问题:“服务器故障适用于系统管理员和 IT 专业人员,即以专业身份管理或维护计算机的人员。”然而,我承认,什么可能导致这种不对称延迟的子问题(而不是如何计算它们的理论问题)可能更好地放在 SF 上。

标签: networking tcp udp latency cluster-computing


【解决方案1】:

据我所知,不对称延迟(尤其是“最后一英里”不对称)无法自动确定,因为任何网络时间同步协议都同样受到相同不对称的影响,因此您无法确定用于评估不对称性的参考。

例如,如果每个端点都有自己的 GPS 时钟,那么您将有一个参考点可供使用。

Fast Measurement of LogP Parameters for Message Passing Platforms 中,作者指出延迟测量需要与被测量系统外部的时钟同步。 (粗体强调我的,原文为斜体。)

非对称延迟只能通过发送带有时间戳ts的消息来测量,并让接收者从tr - ts,其中 tr 是接收时间。这需要发送方和接收方之间的时钟同步。如果没有外部时钟同步(例如使用 GPS 接收器或 网络时间协议、NTP 等专用软件),时钟只能同步到 往返粒度两个主机之间的时间 [10],这对于测量网络延迟是无用的。

但是,没有基于网络的算法(例如 NTP)可以消除最后一英里链接问题,因为算法的每个输入本身都将统一受最后一英里链接的性能特征的影响,因此不是“外部“在上面给出的意义上。 (我相信构建一个证明是可能的,但我现在没有时间构建一个。)

【讨论】:

  • 我想知道这一点。你能证明一下,或者提供参考吗?
  • 给出的参考和解释。
【解决方案2】:

有一个名为 One-Way Ping (OWAMP) 的项目专门用于解决此问题。在 LKML 中可以看到为传入数据包(SO_TIMESTAMPSO_TIMESTAMPNS 等)添加高分辨率时间戳以帮助计算此统计数据的活动。

http://www.internet2.edu/performance/owamp/

甚至还有 Java 版本:

http://www.av.it.pt/jowamp/

请注意,数据包时间戳确实需要硬件支持,并且许多当代 NIC 仅提供毫秒分辨率,这可能与主机时钟不同步。 DDK 中有关于同步主机和 NIC 时钟的 MSDN 文章展示了潜在问题。由于核心差异,来自 TSC 的以纳秒为单位的时间戳存在问题,并且可能需要 Nehalem 架构才能以所需的分辨率正常工作。

http://msdn.microsoft.com/en-us/library/ff552492(v=VS.85).aspx

【讨论】:

    【解决方案3】:

    您可以通过将不同大小的数据包发送到返回固定大小数据包的端口来测量链路上的不对称延迟,例如将一些 udp 数据包发送到回复 icmp 错误消息的端口。 icmp 错误消息的大小始终相同,但您可以调整要发送的 udp 数据包的大小。

    http://www.cs.columbia.edu/techreports/cucs-009-99.pdf

    【讨论】:

    • 您假设传输时间只是数据包大小的函数——这不一定是真的
    • 我没有时间阅读整篇论文,但从摘要来看,它是关于确定不对称带宽的。当它说“不对称链接”时,它并不是在谈论 AFAI 可以看到的延迟。它甚至不是专门讨论一根管道的上行/下行链路的不对称性。
    【解决方案4】:

    sping tool 是该领域的一项新开发,它使用与附近 NTP 服务器的时钟同步,或更准确的 GNSS 盒形式的源来估计不对称延迟。

    更详细地介绍了该方法in this blog post

    【讨论】:

      【解决方案5】:

      在没有同步时钟的情况下,无法像 2011 年论文 "Fundamental limits on synchronizing clocks over networks". 中所证明的那样测量不对称性

      https://www.researchgate.net/publication/224183858_Fundamental_Limits_on_Synchronizing_Clocks_Over_Networks

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-10-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-01-04
        • 1970-01-01
        • 2011-10-22
        • 1970-01-01
        相关资源
        最近更新 更多