gpt4 book ai didi

.net - 通过多台机器对数据进行时间戳记 - 时间不对?

转载 作者:可可西里 更新时间:2023-11-01 09:35:48 25 4
gpt4 key购买 nike

我正在开发一些通过多台机器路由 tcp 和 upd 流量的应用程序,我正在尝试为每个节点上的数据包添加时间戳(毫秒分辨率),以接收通过每个节点的延迟的完整图片。

在测试之前,我确保所有 Windows 机器都是 NTP 同步的,但我的问题似乎是所有机器上的时间从未真正完全同步,系统时间似乎变化 +-500 毫秒。例如,有时我的时间戳日志显示数据包在从节点 1 发送前 500 毫秒在节点 2 收到。

在所有机器的 NTP 重新同步之后,它总是会显示节点 1 和节点 2 之间的不同延迟,但时间差异始终保持不变,直到下一次 NTP 同步。

将多台机器同步到同一个 NTP 服务器时,我期望的准确度是多少?为什么我会看到这些差异以及其他应用程序如何通过涉及多台机器的系统测量延迟?

谢谢,

汤姆

最佳答案

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

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

编辑:

一个更好的主意是让所有节点彼此同步时间。这样您就可以不断校准它。

编辑 2:

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

关于.net - 通过多台机器对数据进行时间戳记 - 时间不对?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3606154/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com