Comment les serveurs NTP parviennent-ils à rester aussi précis?
Beaucoup d’entre nous ont eu un problème occasionnel avec nos ordinateurs et d’autres périphériques conservant des paramètres d’heure précis, mais une synchronisation rapide avec un serveur NTP remet tout en place. Mais si nos propres appareils peuvent perdre en précision, comment les serveurs NTP parviennent-ils à rester aussi précis??
La séance de questions et réponses d'aujourd'hui nous est offerte par SuperUser, une sous-division de Stack Exchange, un groupe de sites Web de questions-réponses dirigé par la communauté..
Photo gracieuseté de LEOL30 (Flickr).
La question
Le lecteur de superutilisateur Frank Thornton veut savoir comment les serveurs NTP peuvent rester aussi 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 empêchent-elles la dérive et restent-elles toujours aussi précises??
Comment les serveurs NTP parviennent-ils à rester aussi précis??
La réponse
Le contributeur de SuperUser, Michael Kjorling, a la solution pour nous:
Les serveurs NTP s'appuient sur des horloges extrêmement précises pour la précision de leur chronométrage. Les horloges atomiques ou les récepteurs GPS sont une source de temps commune pour les serveurs NTP centraux (rappelez-vous que les satellites GPS sont équipés d'horloges atomiques). Ces horloges sont définies comme précises car elles fournissent une référence de temps extrêmement précise.
Le GPS ou les horloges atomiques n'ont rien de magique qui leur permette de vous dire exactement quelle heure il est. En raison du fonctionnement des horloges atomiques, elles sont tout simplement très douées, après avoir été informées de l’heure exacte., en gardant l'heure exacte (puisque la seconde est définie en termes d'effets atomiques). En fait, il convient de noter que l'heure GPS est distincte de l'heure UTC que nous sommes plus habitués à voir. Ces horloges atomiques sont à leur tour synchronisées avec le temps atomique international ou le TAI afin de non seulement indiquer avec précision le passage du temps, mais également la temps.
Une fois que vous avez une heure précise sur un système connecté à un réseau tel qu'Internet, il s'agit d'une question d'ingénierie de protocole permettant le transfert d'heures précises entre hôtes sur un réseau peu fiable. À cet égard, un serveur NTP de la strate 2 (ou plus éloignée de la source de temps réelle) ne diffère pas de la synchronisation de votre système de bureau avec un ensemble de serveurs NTP..
Au moment où vous avez quelques heures précises (obtenues auprès de serveurs NTP ou ailleurs) et que vous connaissez le taux d'avancement de votre horloge locale (facile à déterminer), vous pouvez calculer le taux de dérive de votre horloge locale par " passage du temps. Une fois verrouillée, cette valeur peut ensuite être utilisée pour ajuster en permanence l’horloge locale afin qu’elle affiche des valeurs très proches du passage du temps précis, même si l’horloge locale en temps réel est très imprécise. Tant que votre horloge locale n'est pas très erratique, Cela devrait permettre de conserver l'heure exacte pendant un certain temps, même si votre source de temps amont devient indisponible pour une raison quelconque..
Certaines implémentations de clients NTP (probablement la plupart des implémentations de démon ntpd ou de service système) le font, et d'autres (comme l'accompagnateur ntpd de ntpd qui règle simplement l'horloge une fois) ne le font pas. Ceci est communément appelé un fichier de dérive parce qu'il stocke de manière persistante une mesure de la dérive d'horloge, mais à proprement parler, il n'est pas nécessaire de le stocker sous forme de 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 encore une fois légèrement moins précise que la strate 1 car elle synchronise son heure avec la source de la strate 1, etc. En pratique, cette perte de précision est si faible qu'elle est totalement négligeable dans tous les cas sauf le plus extrême..
Avez-vous quelque chose à ajouter à l'explication? Sound off dans les commentaires. Voulez-vous lire plus de réponses d'autres utilisateurs de Stack Exchange doués en technologie? Découvrez le fil de discussion complet ici.