Quel est le protocole de temps réseau?
Le protocole de temps réseau est un moyen de synchroniser précisément l'heure entre plusieurs ordinateurs d'un réseau. La plupart des horloges informatiques perdent au moins une seconde de temps chaque jour, ce qui n’est pas très important pour l’utilisateur moyen. De nombreux systèmes de sécurité et de journalisation des événements doivent suivre les ordinateurs sur plusieurs réseaux, y compris Internet. Ces systèmes reposent sur la synchronisation d'horloge de leurs ordinateurs liés avec le protocole de temps réseau. Ce protocole met fréquemment à jour l'heure exacte sur ses clients à partir de serveurs respectant le standard de temps atomique international.
Aussi connu sous l'acronyme NTP, le protocole de temps réseau a été établi pour la première fois en tant que norme à la fin des années 1980. Plusieurs révisions ont été effectuées au cours des années 90 pour améliorer l'authentification, les algorithmes, la précision et la synchronisation externe. En 2010, le groupe IETF (Internet Engineering Task Force) a proposé la version 4 de NTP dans RFC (Request For Comments) 5905. La version 4 inclut une cryptographie à clé publique, une précision temporelle à la nanoseconde et une méthode de localisation automatique d'un serveur de temps. Il inclut également des algorithmes et une précision améliorés, ainsi que la prise en charge de nouvelles horloges de référence matérielles et de systèmes d'exploitation.
Un utilisateur sur un petit réseau local ne peut être que légèrement ennuyé lorsque les horodatages de modification de fichier ou de courrier électronique sont en panne. Les réseaux comportant de nombreux utilisateurs et partageant des ressources sur Internet en seront toutefois grandement affectés. Pour les bases de données de transactions financières, les applications de contrôle industriel et les logiciels de surveillance du réseau, une heure précise est généralement essentielle, non seulement sur le système enregistrant la transaction, mais sur tous les ordinateurs rapportant des données, 24 heures par jour. Le protocole de temps réseau et les serveurs de temps internationaux qui le prennent en charge peuvent répondre à ces besoins.
Un administrateur réseau peut mettre à jour l'heure quotidiennement sur chaque client manuellement à partir d'un serveur de temps. Les systèmes peuvent également être configurés pour recharger l'heure à chaque redémarrage. La dérive temporelle d'une heure à l'autre est toutefois importante en raison de nombreux facteurs, notamment des problèmes de température et de système d'exploitation. La meilleure solution consiste généralement à réinitialiser automatiquement chaque horloge par petits incréments plusieurs fois par jour avec le protocole de temps réseau. En utilisant cette méthode, les systèmes et les utilisateurs ne sont pas "surpris" par des sauts brusques en avant ou en arrière relativement importants.
Un client utilisant le protocole de temps réseau peut obtenir l'heure précise d'un serveur Internet ou d'une source de temps externe câblée. En fin de compte, les deux sources obtiennent le temps universel coordonné (UTC) d’un serveur international. Une source câblée peut la recevoir directement ou indirectement via un signal radio spécial. Une source réseau l’obtient généralement indirectement par l’intermédiaire de plusieurs couches de serveurs exécutant le logiciel NTP. Bien qu'il n'y ait que quelques serveurs de temps connectés directement aux horloges atomiques, des dizaines de milliers de serveurs dans le monde transmettent l'heure aux systèmes locaux.
Le logiciel lié au temps réseau exécuté sur chaque client NTP maintient son horloge mise à jour avec une précision et une régularité extrêmes. Lorsqu'un client n'est pas connecté à Internet, les algorithmes NTP estiment l'heure actuelle en fonction des performances passées. Les systèmes qui n’ont pas besoin de toutes les fonctionnalités de NTP peuvent utiliser une version simplifiée appelée SNTP (Simple Network Time Protocol).