我有一台 Windows 10 NTP 服务器,使用它LOCAL CLOCK
作为参考。它有 Windows 10 和 Linux NTP 客户端。
Windows 节点使用 Windows 时间服务(客户端和服务器),Linux 客户端使用 chrony。
问题:
该方法对于 Windows 节点上的精度测量是否正确?
Windows 操作系统的知识文章高精度系统方法的边界条件是计算单向延迟(根距离)以及上面给出的链接中提到的其他标准。
下面是我正在使用的方法。它显示精度达到了0.5毫秒。我听说NTP不可能达到这么高的精度,所以我对这个方法表示怀疑。
(Average(RTT calculation from Win10NTPClient to NTPServer)/2)
对于使用 chrony 的 Linux NTP 节点来说,该方法是否正确?我正在尝试理解“我的系统时钟有多准确”中的方法。
文件的最后一列
\var\log\chrony\tracking.log
给出了最大误差。我该如何将其解读为准确率?这个假设正确吗?为什么即使使用 NTP 协议,chrony 和 Windows 的方法也不同?
请帮我理解这些概念。我听到的都是不同的方法,有些只是提到使用 NTPOffset,而这个值非常小(以纳秒为单位),我对此表示怀疑。
(这个答案假设你忽略了@HBruijn关于你的根时间源的警告,但你真的不应该这样做。NTP 网络的好坏取决于它的根服务器。)
在典型的千兆以太网局域网中,无需任何特殊调优,我预计 0.5 毫秒范围内的 NTP 偏移量是“正常的”。除非您使用速度极快的主机和网络,否则纳秒范围内的偏移量似乎过于乐观。
在我的 1 Gbps LAN 上(主机 CPU 型号为 7-12 年前),我得到的偏移量大多在 ± 200 µs 范围内。以下是过去一周三台主机的图表:
上图中的每台主机都与其 1 层源(一台配备 GPS 接收器的 Raspberry Pi 4 Model B)位于同一 LAN 上,并在 Linux 上运行 chrony 4.2。它们正在运行其他工作负载,但即使它们完全空闲,也难以实现纳秒级的偏移量。