Accéder au contenu principal

Histoire d'Internet

Chronologie globale   Documents historiques  A venir: les newsgroups, le protocole UUCP, Craig's List, Amazon, eBay, Facebook, Youtube, ...  A venir: RSS, Javascript, Google, Wikipedia, AOL, UUNet, le spam, ... et bien d'autres secrets ...

1981 - NTP (Network Time Protocol)

En février 1981, David Mills rédige la note IEN173 qui pose les bases d'un protocole de synchronisation des horloges des ordinateurs du réseau DCNET (Réseau de recherche du département informatique de l'Université du Delaware). Suivra rapidement, toujours en avril 1981, la RFC778 (DCNET Internet Clock Service), puis en septembre 1985, la RFC958 (Network Time Protocol).

Dès les années 1980, le besoin d'un mécanisme de synchronisation d'horloge apparait, notamment pour les protocoles de routage. Mais les premières implémentations ne permettent une synchronisation qu'avec une précision d'une centaine de millisecondes. La mise en oeuvre d'un modèle Client-Serveur est nécessaire pour un équipement souhaitant synchroniser son horloge sur un serveur temps.


S'appuyant sur la couche IP, NTP se positionne comme un protocole applicatif basé sur la couche de transport UDP. Il a néanmoins été conçu pour ne pas subir les délais de latence d'UDP, grâce à l'emploi d'un tampon de compensation des latences (appelés aussi "Jitter Buffer"). Il existe des logiciels client NTP pour la plupart des systèmes d'exploitation et ils permettent de se connecter à un serveur NTP (usuellement sur le port UDP 123) afin de récupérer la date et l'heure avec laquelle se synchroniser.

En raison du nombre importants d'équipements (ordinateurs, routeurs, ...) appelés à se synchroniser avec des serveurs NTP, un système en couches hiérarchiques a été mis au point, chaque serveur de la couche N se synchronisant avec un serveur de la couche N-1 (la couche 0 étant la plus haute de la hiérarchie, la couche de référence). Cette hiérarchie évite par ailleurs les problèmes de boucle dans la synchronisation des serveurs.

La composition de la hiérarchie NTP est composée comme suit :

  • Couche 0 : il s'agit principalement de serveurs reliés par interface RS232 à des horloges atomiques, GPS ou Radio. 
  • Couche 1 : serveurs connectés à des serveurs de la couche 0, on les nommé souvent "serveurs temps" 
  • Couche 2 : serveurs connectés à des serveurs de la couche 1 qui auto-détectent toute défaillance d'un serveur de la couche 1 et se synchronisent aussi avec des serveurs de la même couche 
  • Couche 3 : serveurs connectés à des serveurs de la couche 2 qui peuvent supporter de 16 à 256 couches inférieurs (selon la version du protocole NTP) 


NTP est l'un des plus vieux protocoles Internet encore en utilisation et David Mills participe toujours activement à ses évolutions.

Posts les plus consultés de ce blog

2009 - Rétrospective Arpanet

Le professeur Leonard Kleinrock, pionnier de l'Internet à l'UCLA ( University of California, Los Angeles ), présente l'architecture de connexion des premières machines au sein du réseau ARPANET en septembre 1969 et le premier envoi de données en octobre 1969. The first Internet connection

1969 - Arpanet (ARPA Network)

A partir de 1940, le département de la Défense américain crée une agence chargée des projets de recherche en matière de défense militaire. Cette agence nommée DARPA ("Defense Advanced Research Projects Agency") va être à l'origine de la naissance du réseau prédécesseur d'Internet, mais aussi du programme Transit ancêtre du GPS, ainsi que des programmes d'avions furtifs Jusqu'alors, les communications informatiques reposaient sur l'utilisation de circuits dédiés, tout comme les communications téléphoniques. L'agence DARPA lance donc en 1966 un projet de réseau informatique reliant certaines universités américaines. Sans objectif particulier d'un point de vue militaire, ce projet devient le réseau ARPA et en 1969 il relie quatre centres :

1974 - TCP-IP

Depuis ses débuts, le réseau ARPANET s'appuyait sur une couche protocolaire de communication appelée "Network Control Program". assurant la gestion des flux inter-composants de communications des ordinateurs du réseau. La gestion des couches physiques et réseau était quant à elle confiée aux composants appelés IMPS (Interface Message Processors). NCP assurait donc la gestion de la couche Transport des données au travers de deux protocoles: AHHP (Arpanet Host-to-Host Protocol) chargé de contrôler les flux de données unidirectionnels entre machines et ICP (Initial Connection Protocol) chargé d'établir une communication bi-directionnelle s'appuyant sur les flux gérés par AHHP. Les applications logicielles s'appuyaient alors sur une interface avec la couche NCP pour dialoguer.