> Tech > Protocoles de temps Internet

Protocoles de temps Internet

Tech - Par iTPro - Publié le 24 juin 2010
email

La RFC (Request for Comment) 1305 Internet décrit un mécanisme appelé NTP (Network Time Protocol) qui synchronise les horloges des ordinateurs sur Internet avec une précision de quelques centaines de picosecondes.

Bien entendu, ce niveau de précision exige des algorithmes complexes et la synchronisation avec de multiples sources.

Protocoles de temps Internet

La RFC 2030 décrit une méthode plus simple de synchronisation
d’horloge, appelée SNTP (Simple Network Time Protocol). SNTP décrit un procédé
utilisant le même format de transmission que NTP mais sans la même charge de traitement
ni les mêmes complexités de calcul. La synchronisation SNTP est exacte à  quelques
millisecondes près, une précision amplement suffisante pour la plupart des applications.

La base de synchronisation de temps décrite par les RFC 1305 et 2030 est constituée
par le format de message NTP (figure 2), constituée d’un nombre de bits et d’octets
utilisés pour l’information de contrôle et de référence et d’une suite de zones
d’horodatage pour les informations sur le temps. Chaque zone d’horodatage est
constituée d’un nombre de 64 bits. Les 32 premiers bits représentent le nombre
de secondes écoulées depuis minuit (0 heure, ou 0h) le 1er janvier 1900. Les 32
bits suivants stockent la fraction d’une seconde. Par souci de cohérence, tous
les tampons horodateurs sont stockés en heure GMT (Greenwich Mean Time).

Pour utiliser le format de message NTP afin de synchroniser les horloges d’ordinateurs,
un programme client définit d’abord la zone Mode dans le format de message, pour
indiquer qu’une demande est effectuée (mode client). Eventuellement, le client
place l’heure courante de la machine cliente dans la zone d’horodatage La zone
Transmit pourra servir, lors du retour du message depuis le serveur NTP, à  calculer
le délai aller-retour de l’échange.

Après avoir défini ces zones, le client envoie le message au programme serveur
NTP, en utilisant l’interface sockets et le port réservé à  l’utilisation NTP,
port numéro 123. Le programme serveur NTP reçoit le message sur le port 123 puis
initialise les zones du message NTP de la manière suivante. Tout d’abord, le serveur
règle la zone d’horodatage Receive d’après l’heure de réception de la requête.
Ensuite, la valeur d’horodatage Transmit envoyée par le client est copiée dans
la zone d’horodatage Originate d’où elle sera renvoyée au client et utilisée pour
calculer le délai d’aller-retour. La zone Mode est définie de manière à  indiquer
une réponse serveur, et certaines zones de contrôle dans la première partie du
message sont définies de manière à  identifier le mode de fonctionnement du serveur.
Enfin, le serveur place l’heure courante dans le tampon horodateur Transmit et
renvoie le message au client.

Dès réception, le client vérifie le format du message en examinant la validité
des zones. Si toutes semblent correctes, il calcule le délai d’aller-retour et
la différence entre les heures de l’horloge serveur et de l’horloge client (cette
différence est appelée décalage d’horloge locale). Après avoir calculé cette différence,
le client choisit de mettre à  jour, ou non, l’horloge locale.

Les ordinateurs utilisant cette méthode de synchronisation du temps sont classés
en strates de différents niveaux. Ceux directement synchronisés à  une source d’horloge
atomique se trouvent dans le niveau de strate 1. Les ordinateurs synchronisés
avec un niveau 1 ou autre serveur NTP utilisant NTP ou SNTP, se trouvent dans
les niveaux 2 à  15, selon le niveau du serveur auquel ils sont synchronisés.

Après ce rapide tour d’horizon de SNTP, voyons comment écrire des programmes PC
pour agir comme client et serveur SNTP (pour une explication plus complète du
principe de fonctionnement de SNTP, consultez l’un des sites Web RFC mentionnés
dans l’encadré « Ressources ».)

Téléchargez gratuitement cette ressource

TOP 5 Modernisation & Sécurité des Postes Clients

TOP 5 Modernisation & Sécurité des Postes Clients

Pour aider les entreprises à allier les restrictions liées à la crise et la nécessaire modernisation de leurs outils pour gagner en réactivité, souplesse et sécurité, DIB-France lance une nouvelle offre « Cloud-In-One » combinant simplement IaaS et DaaS dans le Cloud, de façon augmentée.

Tech - Par iTPro - Publié le 24 juin 2010