21Aug

Comment les serveurs NTP parviennent-ils à rester aussi précis?

Beaucoup d'entre nous ont eu le problème occasionnel avec nos ordinateurs et d'autres dispositifs en conservant des paramètres précis de l'heure, mais une synchronisation rapide avec un serveur NTP rend tout bien à nouveau. Mais si nos propres appareils peuvent perdre de leur précision, comment les serveurs NTP parviennent-ils à rester aussi précis?

Question d'aujourd'hui &La session de réponse nous est offerte par SuperUser, une subdivision de Stack Exchange, un regroupement communautaire de sites Web Q & A.

Photo avec l'aimable autorisation de LEOL30( Flickr).

La question Lecteur

SuperUser Frank Thornton veut savoir comment les serveurs NTP peuvent rester si précis:

J'ai remarqué que sur mes serveurs et autres machines, les horloges dérivent toujours de sorte qu'elles doivent se synchroniser pour rester précises. Comment les horloges du serveur NTP ne dérivent-elles pas et restent-elles toujours aussi précises?

Comment les serveurs NTP parviennent-ils à rester aussi précis?

La réponse

SuperUser contributeur Michael Kjorling a la réponse pour nous:

serveurs NTP reposent sur des horloges très précises pour le chronométrage de précision. Une source de temps commune pour les serveurs NTP centraux sont les horloges atomiques ou les récepteurs GPS( rappelez-vous que les satellites GPS ont des horloges atomiques à bord).Ces horloges sont définies comme précises car elles fournissent une référence temporelle très précise.

Il n'y a rien de magique à propos du GPS ou des horloges atomiques qui les font vous dire exactement à quelle heure il est. En raison de la façon dont les horloges atomiques fonctionnent, elles sont tout simplement très bonnes, ayant une fois été dit à quelle heure il est précis ( puisque la seconde est définie en termes d'effets atomiques).En fait, il est intéressant de noter que le temps GPS est distinct de l'UTC que nous sommes plus habitués à voir. Ces horloges atomiques sont à leur tour synchronisées contre le temps atomique international ou TAI afin de non seulement dire avec précision le passage du temps, mais aussi le temps .

Une fois que vous avez une heure exacte sur un système connecté à un réseau comme Internet, il s'agit d'une ingénierie de protocole permettant le transfert d'heures précises entre les hôtes sur un réseau non fiable.À cet égard, un serveur NTP de Stratum 2( ou plus éloigné de la source de temps réelle) n'est pas différent de la synchronisation de votre système de bureau avec un ensemble de serveurs NTP.

Au moment où vous avez quelques instants précis( comme obtenus à partir de serveurs NTP ou ailleurs) et connaissez le taux d'avancement de votre horloge locale( qui est facile à déterminer), vous pouvez calculer le taux de dérive de votre horloge locale par rapport auprécis "passage du temps. Une fois verrouillée, cette valeur peut ensuite être utilisée pour ajuster continuellement l'horloge locale afin de lui faire rapporter des valeurs très proches du temps écoulé, même si l'horloge locale en temps réel est elle-même très imprécise. Tant que votre horloge locale n'est pas très erratique, cela devrait permettre de garder une heure précise pendant un certain temps même si votre source de temps en amont devient indisponible pour une raison quelconque.

Certaines implémentations de clients NTP( probablement la plupart des implémentations de service démon ou ntpd) le font, et d'autres( comme le compagnon ntpdate de ntpd qui définit simplement l'horloge une fois) ne le font pas. Ceci est communément appelé fichier de dérive , car il stocke de façon persistante une mesure de dérive de l'horloge, mais à strictement parler, il ne doit pas être stocké comme un fichier spécifique sur le disque.

Dans NTP, la strate 0 est par définition une source de temps précise. La strate 1 est un système qui utilise une source de temps Stratum 0 comme source de temps( et est donc légèrement moins précise que la source de temps Stratum 0).La strate 2 est de nouveau légèrement moins précise que la strate 1, car elle synchronise son temps avec la strate 1, et ainsi de suite. En pratique, cette perte de précision est si faible qu'elle est complètement négligeable dans tous les cas sauf les plus extrêmes.

Avoir quelque chose à ajouter à l'explication? Sonnez dans les commentaires. Vous voulez lire plus de réponses d'autres utilisateurs de Stack Exchange? Découvrez le fil de discussion complet ici.