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.
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.
Le réseau NTP est composé :
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 :
sur un total de 175 000 serveurs NTP
En décembre 2006, le nombre de clients NTP est très certainement de plusieurs dizaines de millions, du fait que les systèmes d'exploitation actuels, comme Windows XP ou Mac OS X, comprennent une version de 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.
Le temps est défini comme un entier de 64 bits :
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 nanosecondes).
NTP utilise l'algorithme d'intersection (une version modifiée de l'algorithme de Marzullo) 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.
Bien que NTP soit le plus souvent utilisé avec UDP, il peut aussi l'être avec TCP.