Comment fonctionne une serveur NTP
posté par Richard N Williams on 30 janvier 2008
Le protocole NTP (Network Time Protocol) est l'un des protocoles les plus anciens d'Internet encore utilisé. Inventé par le Dr David Mills de l'Université du Delaware, il a été utilisé depuis 1985. NTP est conçu pour synchroniser les horloges sur les ordinateurs et les réseaux via Internet ou les réseaux locaux (LAN).
NTP (actuellement la version 4) est en fait trois choses en une; un logiciel qui s'exécute en arrière-plan de Windows ou UNIX; un protocole qui échange des valeurs de temps entre les serveurs et les clients; et une suite d'algorithmes qui traitent les valeurs de temps pour faire avancer ou reculer l'horloge du système.
NTP utilise un algorithme (algorithme de Marzullo) pour synchroniser l'heure sur un réseau en utilisant une référence temporelle. Bien que les réseaux puissent être synchronisés avec des horloges internes ou des références temporelles basées sur Internet, il est fortement recommandé par Microsoft et d'autres qu'une référence temporelle externe soit utilisée pour garantir l'authentification. Une référence de synchronisation absolue devrait utiliser UTC (Coordinated Universal Time ou Temps Universel Coordonné) qui prend en charge des fonctionnalités telles que les secondes intercalaires - ajoutées pour compenser le ralentissement de la rotation de la Terre.
NTP fonctionne dans la suite TCP / IP et UDP repose sur une forme moins complexe de NTP appelé Time Protocol existe SNTP (Simple Network) qui ne nécessite pas le stockage d'informations sur les communications précédentes, requis par NTP. Il est utilisé dans certains appareils et applications où grande précision le moment est pas aussi important, il est également inclus dans la plupart des systèmes d'exploitation Windows, mais des versions plus récentes ont la pleine NTP déjà installé, qui est également libre de télécharger via Internet.
Synchronisation avec NTP est relativement simple, il synchronise le temps en se référant à une source d'horloge fiable comme une horloge atomique, bien que ceux-ci sont extrêmement coûteux et ne sont généralement se trouvent dans les laboratoires de physique à grande échelle, mais NTP peut utiliser soit le positionnement global système réseau (GPS) ou transmission radio spécialiste de recevoir l'heure UTC de ces horloges.
NTP utilise horodatages pour représenter l'heure actuelle du jour chaque horodatage est éphémère, en d'autres termes, il est toujours plus grande que l'horodatage précédent que le temps passe jamais en arrière. NTP analyse les valeurs d'horodatage, y compris la fréquence des erreurs et la stabilité. Un serveur NTP maintiendra une estimation de la qualité de ses horloges de référence et de lui-même.
La distance de l'horloge de référence est connu comme les niveaux de la strate et ils existent pour prévenir les cycles dans le NTP. Stratum 0 sont des dispositifs tels que les horloges de référence liés directement à un ordinateur. Strate 1 sont les ordinateurs connectés à la strate des dispositifs 0, tandis que Strate 2 sont des ordinateurs qui envoient des requêtes aux serveurs NTP stratum 1. NTP peut supporter jusqu'à strates 256.
Horodatages NTP sont en deux formats, mais ils relaient les secondes à partir d'un point de consigne dans le temps (connu comme l'époque premier, fixé à 00: 00 1 Janvier 1900) L'algorithme NTP utilise ensuite cet horodatage pour déterminer le montant à avancer ou reculer le système ou une horloge de réseau.
Le programme NTP (connu sous le nom de démon sous UNIX et un service sous Windows) s'exécute dans l'arrière-plan du système. Le NTP refuse de croire le moment où il est dit jusqu'à ce que plusieurs échanges de paquets aient eu lieu, chacun passant un ensemble de tests. Seulement si les réponses d'un serveur satisfont le test, connu sous le nom de spécifications de protocole, le serveur est considéré. Cela prend généralement environ cinq minutes (cinq bons échantillons) jusqu'à ce qu'un serveur NTP soit accepté comme source de synchronisation.
Un serveur de temps GPS typique peut fournir des informations de synchronisation à quelques nanosecondes d'UTC tant qu'il y a une antenne située avec une bonne vue du ciel.
Il y a également un certain nombre de transmissions radio de temps et de fréquence nationales qui peuvent être utilisées pour synchroniser un serveur NTP. En Grande-Bretagne le signal (appelé MSF) est diffusé par le National Physics Laboratory de Cumbria qui sert de référence temporelle nationale du Royaume-Uni, il existe également des systèmes similaires au Colorado, aux États-Unis et à Francfort en Allemagne (DCF-77). Ces signaux fournissent l'heure UTC à une précision de 100 microsecondes, cependant, le signal radio a une gamme finie et est vulnérable aux interférences.