代码之家  ›  专栏  ›  技术社区  ›  TJF

通过多台机器对数据进行时间戳-时间已关闭?

  •  3
  • TJF  · 技术社区  · 16 年前

    在测试之前,我确保所有的windows机器都是NTP同步的,但是我的问题似乎是,所有机器上的时间从来没有真正完全同步过,系统时间似乎在+-500ms之间变化。 例如,有时我的时间戳日志显示,一个数据包在node2收到500毫秒后才从node1发出。

    在所有机器的NTP重新同步之后,node1和node2之间的延迟总是不同的,但是在下一次NTP同步之前,时间差总是恒定的。

    谢谢,

    汤姆

    2 回复  |  直到 16 年前
        1
  •  1
  •   leppie    16 年前

    除非您在本地LAN上运行NTP服务器,否则由于网络延迟,它很可能会关闭几秒钟。

    我认为如果不使用硬件触发器,很难实现毫秒同步。

    编辑:

    更好的办法是让所有节点彼此同步时间。这样你就可以不断地校准它。

    编辑2:

    还要注意的是,并非所有的事物都是平等的。无论是CPU时钟还是RTC,两个系统的定时时钟之间都可能存在差异,这是由于许多因素造成的,例如振荡器的温度和使用年限,当然还有缺乏实时操作系统;P

        2
  •  0
  •   Peladao    16 年前

    首先从node1向node2发送一些内容,然后让node2立即向node1返回一些内容。 在node1上,您现在可以轻松地测量向node2发送消息和返回消息所花费的总时间,而不必担心在不同的计算机上同步时间。