【问题标题】:Berkeley Algorithm - Distributed Systems伯克利算法 - 分布式系统
【发布时间】:2014-12-05 00:58:43
【问题描述】:

所以我试图解决这个关于伯克利算法的练习:

说明伯克利算法在以下情况下的工作原理。有一组计算机需要内部同步。一台主机S和其他五台从机P1、P2、P3、P4和P5。主计算机定期轮询从计算机并从从计算机接收时间戳。 Master 在 11:11:5.129 (hr:min:sec:ms) 向从站多播其请求,所有从站的往返时间 S 观察到 P1 为 10ms,P2 为 12ms,P3 为 16ms,P4 为 20ms 和 16ms为 P5。 P1 携带的时间戳为 11:11:3.200,P2 携带的时间戳为 11:11:1.500,P3 携带的时间戳为 11:11:5.600,P4 携带的时间戳为 11:11:10.000,P5 携带的时间戳为 11:11:22.200。 Master S 会丢弃读数与其他时钟相差超过 10 秒的故障时钟的时间戳。计算的平均时间 S 是多少?这五个从节点中的每一个的偏移量是多少?

根据我在互联网上找到的一些讲义,这是我可以做的:

平均 = (5.129 + 3.2 + 1.5 + 5.6 + 10)/5 = 5.0658 偏移量: 小号:-0.0632 P1:+1.8658 P2:+3.5658 P3:-0.5342 P4:-4.9342 P5:-17.1342

讲座没有提到 RTT 时间,所以我想知道是否应该使用它们来解决这个练习。那么,我到底应该怎么做呢?

【问题讨论】:

    标签: algorithm system distributed


    【解决方案1】:

    如果您从另一台计算机收到时间戳,则需要考虑承载它的数据包到达您所用的时间。在没有任何其他信息的情况下,您可能没有比假设这次是往返时间的一半更好的办法了。

    为了比较,http://en.wikipedia.org/wiki/Network_Time_Protocol 详细描述了 NTP 的等效计算。这通过获取服务器和客户端在两个方向上的接收和传输时间戳而受益,计算的时钟偏移 theta 是接收减去传输和传输减去接收的平均值,它试图平衡传输延迟 - 但前提是两个方向的传输延迟是相等的,这相当于假设相同的事情,并且确实文章说不对称的数据包延迟会产生系统偏差。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多