Все это подробно объясняется в ntp.org; Например:
5.1.1.4. What happens if the Reference Time changes?
Ideally the reference time is the same everywhere in the world. Once synchronized, there should not be any unexpected changes between the clock of the operating system and the reference clock. Therefore, NTP has no special methods to handle the situation.
Instead,
ntpd
's reaction will depend on the offset between the local clock and the reference time.For a tiny offset
ntpd
will adjust the local clock as usual; for small and larger offsets,ntpd
will reject the reference time for a while. In the latter case the operation system's clock will continue with the last corrections effective while the new reference time is being rejected. After some time, small offsets (significantly less than a second) will be slewed (adjusted slowly), while larger offsets will cause the clock to be stepped (set anew). Huge offsets are rejected, andntpd
will terminate itself, believing something very strange must have happened.Naturally, the algorithm is also applied when
ntpd
is started for the first time or after reboot.
Явно ли где-либо явно определены «крошечные», «маленькие и большие» и «огромные» смещения? В настоящее время я читаю раздел часто задаваемых вопросов ntp.org, из которого вы это вытащили, но я мало что нашел. Самое близкое к ответу, которое я нашел, находится в разделе «Как NTP будет дисциплинировать мои часы?» раздел, в котором говорится: «
settimeofday(2)
[используется для пошагового] времени. Этот метод используется, если время отличается более чем на 128 мс». Я интерпретирую это как означающее, что «маленькие и большие» смещения начинаются с разницы в 128 мс, но я понятия не имею ни о чем другом.