Introduction au protocole NTP (Network Time Protocol)
posté par Richard N Williams on 29 janvier 2008
Le protocole NTP (Network Time Protocol) est l'un des protocoles les plus anciens d'Internet encore utilisé aujourd'hui. Développé par le Dr David Mills de l'Université du Delaware, il a été constamment utilisé et continuellement mis à jour depuis 1985. NTP est un protocole conçu pour synchroniser les horloges sur les ordinateurs et les réseaux à travers Internet ou les réseaux locaux (LAN).
NTP utilise un algorithme (algorithme de Marzullo) pour synchroniser l'heure sur un réseau en utilisant des échelles de temps comme UTC (Coordinated Universal Time ou Temps Universel Coordonné) et peut prendre en charge les secondes intercalaires pour compenser le ralentissement de la rotation de la Terre.
NTP (la version 4 étant la dernière) peut maintenir le temps sur l'Internet public à 10 millisecondes (1 / 100th de seconde) et peut même mieux fonctionner sur des LAN avec des exactitudes de 200 microsecondes (1 / 5000th de seconde) dans des conditions idéales .
Les serveurs de temps NTP fonctionnent dans la suite TCP / IP et s'appuient sur UDP (User Datagram Protocol). Une forme moins complexe de protocole NTP appelé Simple Network Time Protocol (SNTP) qui ne nécessite pas le stockage d'informations sur les communications précédentes, nécessaire à NTP, est utilisée dans certains appareils et applications où le temps de haute précision n'est pas aussi important. standard dans les logiciels Windows (bien que les versions plus récentes de Microsoft Windows aient le NTP complet installé et que le code source soit gratuit et facilement accessible sur Internet).
La synchronisation de l'heure avec NTP est relativement simple, elle synchronise l'heure en référence à une source d'horloge fiable. Cette source peut être relative (l'horloge interne d'un ordinateur ou l'heure sur une montre-bracelet) ou absolue (source d'horloge A UTC, comme une horloge atomique, qui est précise comme humainement possible).
Les horloges atomiques sont les dispositifs de maintien de temps la plus absolue. Ils travaillent sur le principe que l'atome, le césium-133, a un nombre exact de cycles de rayonnement à chaque seconde (9,192,631,770). Cela a démontré de façon précise le système international d'unités (SI) a défini la seconde comme la durée des cycles 9,192,631,770 de rayonnement de l'atome de césium 133.
Cependant, les horloges atomiques sont extrêmement coûteux et ne sont généralement se trouvent dans les laboratoires de physique à grande échelle. Cependant, NTP peut synchroniser des réseaux à une horloge atomique en utilisant soit le réseau Système de positionnement global (GPS) ou transmission radio spécialiste.
Le plus utilisé est le système GPS qui se compose d'un certain nombre de satellites fournissant un positionnement précis et les informations de localisation. Chaque satellite GPS ne peut le faire en utilisant une horloge atomique qui peut être peut être utilisé comme une référence temporelle.
Un récepteur GPS typique peut fournir des informations de synchronisation à quelques nanosecondes de UTC aussi longtemps que 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.
La distance par rapport à l'horloge de référence est connue sous le nom de niveaux de strate et ils existent pour empêcher les cycles dans le NTP et confirmer la précision. Stratum 0 sont des dispositifs tels que les horloges atomiques connectées directement à un ordinateur. Les strates 1 sont des ordinateurs reliés à des équipements 0 de la strate (comme via un récepteur GPS), tandis que les strates 2 sont des ordinateurs qui envoient des requêtes NTP aux serveurs Stratum 1. NTP peut prendre en charge jusqu'à des strates 256.
Toutes les versions de Microsoft Windows depuis 2000 incluent le service de temps de Windows (w32time.exe) qui a la capacité de synchroniser l'horloge d'ordinateur à un serveur de NTP. Il convient de noter que Microsoft recommande d'utiliser des références temporelles externes plutôt que celles basées sur Internet, car celles-ci ne peuvent pas être authentifiées. Des serveurs NTP spécialisés sont disponibles pour synchroniser l'heure sur les réseaux à l'aide du signal MSF (ou équivalent) ou GPS.