AccueilđŸ‡«đŸ‡·Chercher

Network Time Protocol

Network Time Protocol (« protocole de temps réseau ») ou NTP est un protocole qui permet de synchroniser, via un réseau informatique, l'horloge locale d'ordinateurs sur une référence d'heure.

La premiÚre version v. 0 de NTP, formalisée dans la RFC 958, date de . DÚs le début, ce protocole fut conçu pour offrir une précision de synchronisation meilleure que la seconde. Par rapport au service « Time Protocol » qui offre un service d'heure sans proposer une infrastructure, le projet NTP propose une solution globale et universelle de synchronisation qui est utilisable dans le monde entier.

La version 3 de NTP est la plus répandue à ce jour. Elle est formalisée par la RFC 1305 et a le statut « Draft Standard (en) »[1] c'est-à-dire « spécification finale », elle spécifie plusieurs aspects :

  • la description du protocole rĂ©seau ;
  • les modes de fonctionnement ;
  • les algorithmes Ă  mettre en place dans les machines.

La mise au point de ce protocole et des algorithmes a Ă©tĂ© menĂ©e de pair avec le dĂ©veloppement d'un logiciel conforme Ă  ces spĂ©cifications. De ce fait, cette rĂ©alisation fait office de rĂ©fĂ©rence dans le domaine et est appelĂ©e « logiciel NTP[2] » mĂȘme si d'autres solutions existent. Ces travaux ont Ă©tĂ© rĂ©alisĂ©s en grande partie Ă  l'UniversitĂ© du Delaware grĂące au professeur David L. Mills et Ă  une importante Ă©quipe de bĂ©nĂ©voles[2].

La version 4 de NTP est une révision importante publiée dans la RFC 5905 en .

AussitÎt aprÚs la parution de la version 3 de NTP, une version simplifiée est apparue, appelée « Simple Network Time Protocol » (SNTP) qui a également fait l'objet de plusieurs RFC. Par rapport à NTP, cette version est simplifiée dans le sens qu'elle ne spécifie pas les algorithmes à mettre en place dans les machines.

Présentation générale de NTP

Le NTP est un protocole permettant de synchroniser l'horloge d'un ordinateur avec celle d'un serveur de référence. NTP est un protocole basé sur UDP et utilise le port 123.

Le protocole NTP comprend :

  • une partie architecture,
  • une partie messagerie,
  • et une partie algorithmique.

Architecture du réseau NTP

L'architecture NTP prévoit :

Schéma de l'architecture d'un réseau maßtre NTP (Network Time Protocol) typique.

Les flÚches jaunes indiquent une connexion directe dédiée entre des horloges de hautes précisions (confÚre la page dédiée aux horloges atomiques) et entre des serveurs informatiques de diffusions maßtres ; les flÚches rouges indiquent une connexion via un réseau informatique.

Ce schĂ©ma doit ĂȘtre compris de façon trĂšs large et trĂšs souple : par exemple un nƓud de stratum 2 peut trĂšs bien ĂȘtre Ă  son tour le serveur d'une universitĂ© pour synchroniser les PC (ou ordinateurs personnels) de plusieurs milliers d'Ă©tudiants. Dans ce cas, il est peu probable que les Ă©tudiants veuillent synchroniser deux Ă  deux leurs PC (ou ordinateurs personnels), sauf peut-ĂȘtre dans des cas particuliers oĂč les Ă©tudiants souhaitent pouvoir continuer Ă  Ă©changer des donnĂ©es datĂ©es, mĂȘme si le serveur de l'universitĂ© vient Ă  tomber en panne, est dĂ©sactivĂ© ou est inaccessible Ă  l'instant voulu[3].
  • la diffusion verticale arborescente de proche en proche d'une heure de rĂ©fĂ©rence Ă  partir d'une ou plusieurs machines racines garantes d'une grande prĂ©cision[4]. Dans cette arborescence, chaque nƓud choisit parmi ses nƓuds parents, celui qui prĂ©sente les meilleures garanties de qualitĂ© et hĂ©rite au passage d'un attribut nommĂ© stratum qu'il transmet Ă  ses descendants. Les machines de stratum 1 sont les machines racines et Ă  chaque traversĂ©e d'un nƓud ce nombre augmente d'une unitĂ©. Ce stratum est une mesure de la distance d'un nƓud aux machines racines, il est considĂ©rĂ© comme un indicateur de la qualitĂ© de synchronisation qu'une machine donnĂ©e peut offrir Ă  ses descendants.
  • la diffusion latĂ©rale Ă  des machines paires d'une heure commune. Cette diffusion vient en complĂ©ment de la prĂ©cĂ©dente ; elle permet Ă  ces machines de partager une rĂ©fĂ©rence de temps qui leur est commune. Cette diffusion amĂ©liore la rĂ©silience de cette architecture NTP dans le sens oĂč elle permet de supplĂ©er une dĂ©ficience locale/temporaire de connectivitĂ© vers les machines racines, voire de permettre Ă  un groupe de machines de conserver entre elles une mĂȘme rĂ©fĂ©rence relative en l'absence de machines racines.

Dans la terminologie NTP, les serveurs de stratum 1 sont appelés serveurs primaires, et les autres sont appelés serveurs secondaires.

Chaque nƓud de cette architecture doit ĂȘtre configurĂ© en lui indiquant au minimum quels sont ses serveurs parents et/ou collatĂ©raux. C'est Ă  la charge de chaque utilisateur de rĂ©aliser localement cette configuration[5]. C'est cette agrĂ©gation de configurations qui, de proche en proche, crĂ©e le rĂ©seau NTP, il n'est pas prĂ©existant ni mĂȘme configurĂ© de façon centralisĂ©e. Cette architecture est flexible[6], extensible[7] et robuste[8], mais c’est Ă  la charge des utilisateurs d’y contribuer.

MĂ©thodes pour la diffusion de l'heure

La diffusion de l'heure est basée :

  • sur un modĂšle du type « client/serveur » pour la diffusion verticale :
    • un nƓud « serveur » rĂ©pond aux demandes d'heure Ă©mises par un nƓud « client » ;
    • les parents sont les serveurs, les enfants sont les clients ;
    • en opĂ©rant dans le mode « serveur », un nƓud annonce son dĂ©sir de synchroniser ;
    • en opĂ©rant dans le mode « client », un nƓud annonce son dĂ©sir d’ĂȘtre synchronisĂ© ;
    • le mode d'adressage « unicast » est utilisĂ© pour transfĂ©rer les messages de demande et de rĂ©ponse ;
  • sur un modĂšle du type « symĂ©trique actif/passif » pour la diffusion latĂ©rale :
    • un nƓud « symĂ©trique passif » rĂ©pond aux demandes d'heure Ă©mises par un nƓud « symĂ©trique actif » ;
    • ce paradigme est proche du prĂ©cĂ©dent avec la diffĂ©rence suivante : une fois la demande initiale Ă©mise, « serveur » et « client » Ă©changent leur rĂŽle tour Ă  tour, la rĂ©ponse de l'un devient une demande pour l'autre ;
    • en opĂ©rant dans le mode « symĂ©trique », aussi bien passif qu’actif, un nƓud annonce son dĂ©sir de synchroniser et d’ĂȘtre synchronisĂ© ;
    • comme prĂ©cĂ©demment le mode d'adressage « unicast » est utilisĂ© pour transfĂ©rer les messages de demande et de rĂ©ponse ;
  • sur un modĂšle du type « broadcast » pour la diffusion locale :
    • un nƓud Ă©met spontanĂ©ment et pĂ©riodiquement des messages de l'heure courante Ă  destination de voisins d'opportunitĂ© proches, un peu Ă  la maniĂšre d’une horloge parlante sans se prĂ©occuper de savoir si son information d'heure sera utilisĂ©e ;
    • en opĂ©rant dans ce mode, un nƓud annonce son dĂ©sir de synchroniser ses voisins ;
    • le mode d'adressage « broadcast » est utilisĂ© pour transfĂ©rer ces messages horaires ; de par ce fait, et Ă©galement parce que par dĂ©faut les routeurs ne routent pas les messages « broadcast », cette mĂ©thode de diffusion de l'heure ne concerne que les machines d'un mĂȘme rĂ©seau local.

Partie messagerie

La messagerie NTP prévoit :

  • des messages pour qu'un client interroge un serveur et que celui-ci lui retourne l'heure courante ;
  • des messages de service pour interroger un client donnĂ© sur son Ă©tat interne.

Lors de la parution de nouvelles versions de NTP, la structure des nouveaux messages est formée en agrégeant les informations nouvelles à la suite de celle des messages de version précédente. Cette façon de procéder permet l'interopérabilité des différentes versions ce qui facilite la migration globale du parc de machines d'une version ancienne vers une nouvelle.

Partie algorithmique

Le protocole NTP prévoit pour chaque client des algorithmes :

  • pour calculer la pĂ©riode d'interrogation du ou des serveurs ;
  • pour calculer l'Ă©cart de son heure locale avec celle d'un serveur donnĂ© ;
  • pour calculer la durĂ©e de transit des messages sur le rĂ©seau ;
  • pour choisir le serveur qui prĂ©sente les meilleures garanties de qualitĂ©, et calculer ainsi son stratum local ;
  • pour filtrer les Ă©carts et calculer les corrections temps/frĂ©quence Ă  appliquer sur son horloge locale ;
  • pour gĂ©rer les secondes intercalaires.

Description détaillée du « fonctionnement NTP »

Le message de demande d'heure envoyĂ© par un client vers un serveur et celui pour la rĂ©ponse ont la mĂȘme structure. Celle-ci est schĂ©matisĂ©e ci-dessous, elle correspond Ă  la version 3 de NTP, mais le principe gĂ©nĂ©ral dĂ©crit ci-dessous est conservĂ© au fil des versions; les informations principales utilisĂ©es dans ce message pour calculer les Ă©carts d'heure entre client et serveur sont les suivantes :

Structure du message NTP extrait de RFC 1305
  • OT : Originate Timestamp; heure de dĂ©part de la requĂȘte,
  • RT : Receive Timestamp; heure de rĂ©ception de la requĂȘte,
  • TT : Transmit Timestamp; heure d'Ă©mission de la requĂȘte et/ou de la rĂ©ponse.


Les autres informations contenues dans ce message sont utilisées à des fins de gestion ; leur usage n'est pas détaillé dans cet article, on pourra se reporter à la RFC 1305 pour plus de détails.

  • LI : indicateur d'insertion/retrait d'une seconde intercalaire la derniĂšre minute du jour courant,
  • VN : numĂ©ro de version,
  • Mode : mode de fonctionnement,
  • Stratum : stratum de l'horloge locale,
  • Poll : intervalle minimum entre deux messages successifs,
  • Precision: prĂ©cision de l'horloge locale.


Description du modÚle NTP « client/serveur »

La façon dont client et serveur gÚrent ces informations est illustrée sur le schéma ci-dessous :

Illustration du modÚle« client/serveur NTP »


  • Ă  T1, lorsque le client Ă©met son message pour interroger le serveur sur l'heure courante, il envoie un message dans lequel il renseigne le champ TT avec l'heure courante T1 indiquĂ©e par son horloge locale ;
  • Ă  T'1, lorsque le serveur reçoit le message, il complĂšte aussitĂŽt le champ RT du message avec l'heure courante T'1 indiquĂ©e par son horloge locale, et recopie le champ TT dans le champ OT ;
  • Ă  T'2, lorsque le serveur Ă©met son message de rĂ©ponse, il complĂšte le champ TT du message avec l'heure courante T'2 indiquĂ©e par son horloge locale ;
  • Ă  T2, lorsque le client reçoit le message de rĂ©ponse, il note aussitĂŽt l'heure T2 de rĂ©ception indiquĂ©e par son horloge locale.

Le client peut alors calculer le délai aller/retour de ces 2 messages ainsi que l'écart entre son horloge locale et celle du serveur :

Méthode de calcul « client/serveur »
délai Ύ aller/retour écart Ξ entre les horloges
Client
Serveur aucun calcul aucun calcul


Plus court est le délai , meilleure est la précision avec laquelle est connu l'écart entre les deux horloges.

Description du modÚle NTP « symétrique Actif / Passif »

Ce modÚle est proche du précédent avec la différence suivante : une fois la demande initiale émise, « serveur » et « client » échangent leur rÎle tour à tour, la réponse de l'un devient une demande pour l'autre, c'est ce que montre l'image ci-dessous.

Illustration du modÚle NTP « symétrique Actif / Passif »

Chacun des nƓuds « Actif » et « Passif » peut alors calculer le dĂ©lai aller/retour des messages et l'Ă©cart entre son horloge locale et celle du nƓud opposĂ© :


Méthode de calcul « symétrique Actif / Passif »
délai Ύ aller/retour écart Ξ entre les horloges
Actif
Passif


Et de la mĂȘme façon que prĂ©cĂ©demment, de façon symĂ©trique pour chacun des deux nƓuds, plus court est le dĂ©lai et meilleure est la prĂ©cision avec laquelle est connue l'Ă©cart entre les deux horloges.

Description du modÚle NTP « broadcast »

Le nƓud Ă©metteur du message renseigne le champ TT avec l'heure courante T1 indiquĂ©e par son horloge locale. Le rĂ©cepteur de ce message utilise cette heure comme heure locale en retranchant au prĂ©alable le dĂ©lai estimĂ© de transmission du message.

Pourquoi synchroniser les horloges des ordinateurs

Bien que chaque ordinateur calcule son horloge à partir d'un oscillateur à quartz, il ne peut atteindre la précision des horloges de référence. Leurs horloges internes ont tendance à dériver jusqu'à plusieurs secondes par jour, par rapport à l'heure officielle. Ceci rend nécessaire de synchroniser réguliÚrement l'horloge interne avec une horloge de référence.

Avec le développement des réseaux informatiques, la synchronisation des horloges des systÚmes informatiques communicants entre eux est devenue nécessaire. Certains domaines ont absolument besoin d'avoir un temps de référence, on peut citer notamment :

  • le contrĂŽle aĂ©rien ;
  • les Ă©changes commerciaux ;
  • les transactions journalisĂ©es des bases de donnĂ©es ;
  • les logs des systĂšmes informatiques ;
  • la diffusion de contenu multimĂ©dia en temps-rĂ©el, comme pour des vidĂ©oconfĂ©rences ;
  • etc.

Sans une bonne synchronisation des horloges de tous les systÚmes communicants entre eux, certains services ne sont pas utilisables correctement. C'est ainsi que rapidement, il a été nécessaire de définir des méthodes permettant de synchroniser les horloges sur une heure de référence. Dans le cas de NTP, ce dernier utilise le temps universel coordonné (UTC).

Histoire

NTP est l'un des plus anciens protocoles d'Internet encore en service. Il fut conçu pour offrir une précision inférieure à la seconde dans la synchronisation des horloges et remplace à ce titre le Time protocol (TP, RFC 868), datant de .

La version 3 de NTP est la plus aboutie à ce jour, elle spécifie plusieurs aspects :

  • la description du protocole rĂ©seau ;
  • les modes de fonctionnement ;
  • les algorithmes Ă  mettre en place dans les machines.

La mise au point de ce protocole et des algorithmes ont été menés de pair avec le développement d'un logiciel conforme à ces spécifications. De ce fait, cette réalisation fait office de référence dans le domaine et est appelée logiciel NTP. Ces travaux ont été réalisés en grande partie par l'Université du Delaware sous la houlette du professeur David L. Mills[9].

AussitÎt aprÚs la parution de cette version 3 de NTP, une version simplifiée est apparue, appelée Simple Network Time Protocol (SNTP) qui a également fait l'objet de plusieurs RFC. Par rapport à NTP, cette version est simplifiée dans le sens qu'elle ne spécifie pas les algorithmes à mettre en place dans les machines.

Tableau récapitulatif

date version RFC statut
v0RFC 958rendu obsolĂšte par RFC 1059
v1RFC 1059rendu obsolĂšte par RFC 1119
v2RFC 1119rendu obsolĂšte par RFC 1305
v3RFC 1305rendu obsolĂšte par RFC 5905
v4RFC 5905Standard proposé

Version 0

C'est le professeur David L. Mills de l'Université du Delaware, qui en septembre 1985 proposa NTP (RFC 958), cette version est une version de développement, elle est à ce titre considérée comme une version 0. Mais le développement de NTP remonte à quelques années auparavant, avec une démonstration en 1979 à la National computer conference (NCC) et sa mise en application quelques années plus tard dans le routeur logiciel Fuzzball, via le protocole de routage HELLO (RFC 891).

Version 1

Dans cette premiÚre version stable, des filtres et des algorithmes de sélections sont ajoutés (RFC 956), ce qui offre une nette amélioration de la précision. NTP a atteint la version 1 en (RFC 1059).

Version 2

En , NTP passa en version 2 (RFC 1119), avec notamment l'ajout d'une authentification par clé symétrique (utilisant DES-CBC).

Version 3

En 1989, Digital Equipment Corporation (DEC) présenta un protocole de synchronisation concurrent, le Digital time synchronization service (DTSS). Selon la communauté développant NTP, le gros défaut de DTSS était que le protocole pouvait dans certains cas avoir une importante perte de précision, car il ne prenait pas en compte la fréquence des horloges. Alors que la communauté autour de DTSS pointait du doigt la mauvaise architecture des algorithmes de correction. C'est ainsi qu'aprÚs discussion, il fut décidé que NTP utiliserait l'algorithme de Marzullo (en), utilisé par DTSS. Cela aboutit au passage à la version 3 de NTP (RFC 1305), en . Cette version ajoute également le mode broadcast, aux deux modes déjà existants (client-serveur et symétrique).

Version 4

Depuis 1994, une nouvelle révision du protocole est en cours. La version 4 est trÚs utilisée. Les améliorations portent notamment sur :

ParallÚlement à cela, des travaux sur un nouveau modÚle d'horloge pour les noyaux des systÚmes d'exploitation, ayant une précision de l'ordre de la nanoseconde, sont également en cours.

SNTP

date version RFC description statut
RFC 1361SNTPrendu obsolĂšte par RFC 1769
v3RFC 1769SNTPrendu obsolĂšte par RFC 4330
v4RFC 2030SNTP pour IPv4, IPv6 et OSIrendu obsolĂšte par RFC 4330
v4RFC 4330SNTP pour IPv4, IPv6 et OSIInformational[10]

Le Simple Network Time Protocol (SNTP) est une version simplifiĂ©e du protocole NTP, utilisant le mĂȘme format de paquet rĂ©seau. La synchronisation en utilisant SNTP se base le plus souvent sur un seul serveur de temps[11]. La simplicitĂ© est possible au dĂ©triment de l'utilisation de certains algorithme de NTP. En consĂ©quence, il n'y a pas de compensation des dĂ©viations de l'heure du systĂšme local. SNTP offre donc un niveau de prĂ©cision infĂ©rieur Ă  celui de NTP

De plus, la spĂ©cification SNTP recommande[12] de n'utiliser SNTP qu'aux extrĂ©mitĂ©s d'un rĂ©seau NTP, c'est-Ă -dire au niveau stratum 1 (avec une seule source de synchronisation) et au niveau des nƓuds de stratum le plus Ă©levĂ©.

Ce choix d'un nombre rĂ©duit d'algorithmes et d'une unique communication client-serveur permet la synchronisation avec SNTP en utilisant beaucoup moins de ressources qu'avec NTP. Cela est particuliĂšrement utile pour les appareils simples ou les systĂšmes ne disposant que d'une faible puissance de calcul, oĂč les exigences de prĂ©cision et de fiabilitĂ© ne sont pas trop Ă©levĂ©es.

Principe

En plus de définir le protocole réseau permettant de transmettre l'heure de référence, NTP définit une architecture, différentes méthodes et algorithmes visant à limiter au maximum la dérive par rapport à cette heure de référence, dû au temps de transmission.

Ce que ne fait pas NTP

L'heure de référence fournie par NTP est UTC, à ce titre, il ne s'occupe pas :

Cela est du ressort du systĂšme d'exploitation, qui suivant l'endroit oĂč l'administrateur a dĂ©clarĂ© que l'ordinateur se trouvait, doit effectuer les corrections adĂ©quates pour se caler sur l'heure lĂ©gale.

Aucun mécanisme de chiffrement n'est fourni, les messages NTP circulent en clair sur le réseau.

Architecture

Architecture des serveurs et clients NTP

Le réseau NTP est composé :

  • de rĂ©cepteurs rĂ©cupĂ©rant l'heure de rĂ©fĂ©rence par radios, cĂąbles, satellites ou directement depuis une horloge atomique ;
  • de serveurs de temps rĂ©cupĂ©rant l'heure de rĂ©fĂ©rence auprĂšs des rĂ©cepteurs ou bien auprĂšs d'autres serveurs de temps ;
  • de clients rĂ©cupĂ©rant l'heure de rĂ©fĂ©rence auprĂšs des serveurs de temps.

Tous ces systĂšmes sont organisĂ©s de façon hiĂ©rarchique, dont chaque couche ou niveau est appelĂ© une strate. Chaque client NTP est Ă©galement un serveur et se synchronise avec d'autres serveurs, le plus souvent de la strate supĂ©rieure. La strate 0 comprend des horloges de rĂ©fĂ©rence (rĂ©cepteurs GPS ou grandes ondes, horloges au cĂ©sium ou au rubidium, oscillateur Ă  quartz thermostaté ) qui ne sont pas connectĂ©es aux serveurs de strate 1 via un rĂ©seau mais via une interface comme un port sĂ©rie. La norme prĂ©voit jusqu'Ă  16 strates, mais la plupart des clients se situent dans les strates 3 ou 4. La strate 16 est aussi utilisĂ©e par les serveurs qui ne sont synchronisĂ©s Ă  aucune source externe. La redondance des serveurs et leur organisation permet une rĂ©partition de la charge et ainsi la fiabilitĂ© du rĂ©seau.

En 1999, on estimait le nombre :

  • de serveurs de strate 1 Ă  environ 300 ;
  • de serveurs de strate 2 Ă  environ 20 000 ;
  • de serveurs de strate 3 Ă  environ 80 000.

sur un total de 175 000 serveurs NTP[13]

En , le nombre de clients NTP Ă©tait certainement de plusieurs dizaines de millions.

De nos jours, la quasi-totalité des systÚmes d'exploitation utilise le protocole NTP. La configuration par défaut ne vise cependant pas à garantir un contrÎle précis de l'horloge du systÚme mais simplement à remettre approximativement la machine à l'heure de temps en temps.

A noter que dans un domaine Microsoft le NTP synchronise les postes de travail depuis le domaine.

Implémentation

Le temps est dĂ©fini comme un entier de 64 bits :

  • les 32 bits de poids forts correspondent au nombre de secondes Ă©coulĂ©es depuis le Ă  minuit ;
  • les 32 bits restant reprĂ©sentent la fraction d'une seconde.

L'Ă©chelle de temps est donc de 232 secondes (soit un peu plus de 136 ans), avec une rĂ©solution thĂ©orique de 2-32 seconde (ce qui correspond Ă  un peu moins de 0,233 nanoseconde).

NTP utilise l'algorithme d'intersection (en) (une version modifiĂ©e de l'algorithme de Marzullo (en) pour choisir les horloges sources et prend en charge l'ajout de secondes additionnelles. La version 4 du protocole permet de maintenir le temps d'une machine avec une prĂ©cision de 10 ms Ă  travers Internet et peut permettre une prĂ©cision de 200 Â”s sur des rĂ©seaux locaux.

Les ordinateurs clients peuvent calculer leur dĂ©rive interne entre deux requĂȘtes et la corriger. Cela permet d'affiner le calcul de la dĂ©rive (drift) et sa compensation en espaçant progressivement les requĂȘtes. Plus le temps entre deux requĂȘtes est long, plus le calcul est prĂ©cis. Ce principe permet de lisser et de rĂ©duire considĂ©rablement la charge des serveurs. La pire des pratiques serait de faire des requĂȘtes Ă  heures fixes, surtout si de nombreux clients utilisent les mĂȘmes.

Le logiciel ntp peut ĂȘtre remplacĂ© par chrony, spĂ©cialement conçu pour les machines Unix/Linux connectĂ©es par intermittence Ă  Internet.

Bien que NTP soit le plus souvent utilisĂ© avec UDP, il peut aussi l'ĂȘtre avec TCP.

Cette implémentation n'est pas sujet au bug de l'an 2038 mais au bug de l'an 2036.

Notes et références

  1. Une spécification est élevée à ce statut s'il existe au moins deux réalisations indépendantes et interopérable et pour laquelle une expérience opérationnelle suffisante et satisfaisante a été obtenue.
  2. Disponible sur ce site (en) The Network Time Protocol.
  3. À noter : un serveur de temps reconnu comme fiable, pouvant jouir d'une certaine notoriĂ©tĂ© auprĂšs du public doit avoir un fonctionnement stable et pĂ©renne dans le temps ; dans les cas contraires, non fiabilitĂ© et/ou fonctionnement intermittent, les serveurs de temps (et pas seulement des serveurs de temps) peuvent n'ĂȘtre plus du tout utilisĂ©s, voir bannis de tout rĂ©seau qui pourrait ou pouvait en faire la promotion.
  4. Pour offrir cette trĂšs grande prĂ©cision, ces machines racines peuvent ĂȘtre par exemple couplĂ©es avec des horloges atomiques.
  5. La version 3 du protocole NTP ne spécifie pas de mécanisme pour une configuration automatique.
  6. Elle est flexible car elle permet d’ajouter / supprimer facilement un nƓud dans cette arborescence moyennant quelques rùgles simples :
    • s'il s’agit d’ajouter un nƓud serveur, il n’y a aucune prĂ©caution particuliĂšre Ă  respecter ; il pourra ĂȘtre utile de communiquer l’existence de ce nouveau serveur aux utilisateurs potentiels ; gĂ©nĂ©ralement cette communication est rĂ©alisĂ©e par la mise Ă  jour de la liste des serveurs NTP disponibles sur le site www.ntp.org.
    • s'il s’agit d’ajouter un nƓud uniquement client, il faudra le configurer avec quelques nƓuds serveurs trouvĂ©s sur le site www.ntp.org. Ces nƓuds serveurs seront choisis aussi proche que possible d’un serveur primaire, c'est-Ă -dire un serveur ayant un stratum faible, tout en Ă©tant proche du client en termes de rĂ©seau, c'est-Ă -dire un nombre de routeurs intermĂ©diaires faible.
    • s'il s’agit de supprimer un nƓud serveur, et particuliĂšrement s'il s’agit d’un serveur primaire, il faudrait s’assurer que cela n’entraine pas l’apparition de nƓuds orphelins. Dans la pratique, ce sont les utilisateurs de ces nƓuds orphelins qui dĂ©tectent la situation et la corrigent.
    • s'il s’agit de supprimer un nƓud uniquement client, il n’y a aucune prĂ©caution particuliĂšre Ă  respecter.
    Ces diffĂ©rents cas de figure montrent que la configuration de chaque nƓud est Ă  la charge d’une personne et n’est pas rĂ©alisĂ©e automatiquement, pour ĂȘtre plus prĂ©cis cette configuration pourrait ĂȘtre automatisĂ©e mais cela n’est pas spĂ©cifiĂ© dans le protocole NTP actuel.
  7. Elle est extensible car elle supporte l’ajout de nƓuds aussi bien dans le sens vertical qu’horizontal.
  8. Elle est rĂ©sistante Ă  la dĂ©faillance d’un nƓud Ă  la condition que les clients de ce nƓud ne soient pas monoparentaux. La souplesse de sa configuration le permet. Cependant, il faut bien noter que mĂȘme si le « protocole NTP » fournit les moyens d’y parvenir, il ne spĂ©cifie pas de mĂ©canisme pour une configuration automatique, c’est donc Ă  la charge des utilisateurs d’y contribuer.
  9. Ce logiciel est disponible sur le site NTP Project.
  10. voir §4.1.5 RFC 1410, §4. Explanation of Terms
  11. (en) « Simple network time protocol: the stripped-back protocol for time synchronization », sur IONOS Digitalguide (consulté le )
  12. Bas de page 3, haut de page 4 de RFC 4330.
  13. (en) A Survey of the NTP Network

Voir aussi

Articles connexes

Liens externes

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplĂ©mentaires peuvent s’appliquer aux fichiers multimĂ©dias.