NTP尝试同步的"频率差异"是什么?

abh*_*awa 3 ntp

如NTP rfc中所定义

"NTP算法的目标是最小化UTC和系统时钟之间的时差和频率差异."

我能理解'时差',但是NTP尝试同步的'频率差异'是什么?

pax*_*blo 6

频率差是时钟和NTP时钟之间的速度差异(实际上被认为是完美的).

如果你的时钟每小时增加一分钟(与NTP服务器时钟相比),那就是频率差异.它也被称为漂移.

极端简化的例子:

比方说,你与NTP同步在每个小时(顶部00:00,01:00...),但是你的时钟是真的不好,在小时失去十分钟.

如果你在午夜与NTP同步,那么你的时钟都被设置为00:00当时(真实的)01:00到来时,你的时钟将会读取00:50(你已经失去了十分钟).

这意味着你将在零到十分钟之间的任何地方失去一步.


那么你将如何以一种简单的方式解决这个问题呢?

如果同步将您的时钟设置00:05为(实际)午夜,该怎么办?你会在五分钟之内出局,但是NTP时钟会逐渐爬上你,在00:30开始领先于你之前完全匹配.

然后在(真实的)01:00,你将会00:55这样,在任何时候错误都不会超过五分钟.


现在NTP会尽量避免做一些事情,比如立即改变你的时间00:55,01:05因为很多软件(比如cron)都不会太热情.

它更有可能在午夜将时钟同步在一起,然后逐渐使当地时间在一小时内向前移动,以使它们保持一致(比如每五秒增加一秒,这将有效地恢复在非肠道中一小时内损失的十分钟 - 痛苦的方式).