Eu tenho um sistema Debian que é usado como um servidor NTP. Ele consulta vários servidores na internet e também possui um receptor GPS com saída PPS para cronometragem de precisão.
Se eu não usar o receptor GPS, o NTP aumentará gradualmente o intervalo de pesquisa do intervalo inicial de 64 segundos até o máximo padrão de 1024 segundos, normalmente em uma ou duas horas. Esse é um comportamento normal e geralmente considerado educado, pois minimiza a quantidade de consultas feitas aos servidores da Internet, mantendo o relógio local em sincronia.
No entanto, quando conecto o receptor GPS e adiciono as linhas apropriadas ao arquivo ntp.conf
para permitir que o NTP o use como fonte, o comportamento muda: mesmo que eu não tenha alterado nenhuma das entradas server
individuais para os servidores da Internet, o intervalo de pesquisa não aumenta e permanece fixo em 64 segundos, mesmo depois que os dias passam.
O sinal PPS mantém o relógio local bem disciplinado ( ntpq -p
reporta um deslocamento de 0,000 ms com um jitter de 0,002 ms, com todos os servidores da internet em cerca de 2 ms), enquanto os códigos de contagem em ntpq -p
confirmam PPS disciplina e mostrar, como esperado, que a maioria dos servidores de internet são selecionados como "truechimers", enquanto há ocasionalmente alguns outliers.
Em suma : tudo parece estar funcionando normalmente como esperado, com a exceção de que os intervalos de pesquisa dos servidores da Internet não aumentam. Porque não?
Eu posso forçar manualmente o intervalo de pesquisa por mais tempo colocando, por exemplo, minpoll 10
nas linhas server
para os servidores da Internet, mas prefiro que o NTP gerencie automaticamente o intervalo de pesquisa dos servidores da Internet quando o PPS está ativado, assim como acontece quando o PPS não é usado.
Atualmente, tenho o NTP configurado para verificar o driver do PPS com minpoll
e maxpoll
de 4
(16 segundos). No entanto, testei a configuração sem forçar minpoll
ou maxpoll
em qualquer linha server
, incluindo a do driver PPS.
Aqui está a parte relevante do meu arquivo ntp.conf
:
# Drift file
driftfile /var/lib/ntp/ntp.drift
# PPS Driver (check every 16 seconds)
server 127.127.22.0 minpoll 4 maxpoll 4
fudge 127.127.22.0 refid PPS
# Internet servers. Use iburst to get quick sync on startup.
# Server is located in Switzerland, so choose Swiss or German
# primary time servers and members of the Swiss NTP pool.
#
# At least one "prefer" server is needed for PPS to work properly.
# See <http://www.eecis.udel.edu/~mills/ntp/html/drivers/driver22.html>
# "This driver is enabled only under one of two conditions..."
server ntp.metas.ch iburst prefer
server ptbtime1.ptb.de iburst prefer
server ptbtime2.ptb.de iburst prefer
server ptbtime3.ptb.de iburst prefer
server 0.ch.pool.ntp.org iburst
server 1.ch.pool.ntp.org iburst
server 2.ch.pool.ntp.org iburst
server 3.ch.pool.ntp.org iburst