Performances : se comparer à la référence nationale du temps#
Pourquoi#
Ce serveur affiche un RMS offset autour de la microseconde : c’est bien ou c’est mal ? Un chiffre de performance isolé ne veut rien dire : il faut un point de comparaison. Ce point de comparaison existe, il est public et gratuit : chaque pays dispose d’un laboratoire national de métrologie qui réalise physiquement UTC et diffuse cette référence par NTP. En France, c’est l’échelle de temps UTC(OP), réalisée à l’Observatoire de Paris par le laboratoire historiquement connu sous le nom de SYRTE (Systèmes de Référence Temps-Espace, aujourd’hui intégré au Laboratoire Temps Espace, LTE), celle qui définit l’heure légale française. Ce chapitre la prend comme exemple détaillé.
Bonne nouvelle : cette comparaison ne demande aucun matériel supplémentaire. En suivant le chapitre Chrony, elle est déjà en cours sur ce serveur : les sources amont configurées sont précisément les serveurs NTP de ces laboratoires nationaux.
La référence : UTC(OP) et les serveurs NTP de l’Observatoire de Paris#
UTC(OP) est produite à partir d’un ensemble de masers à hydrogène et de fontaines atomiques à césium. Elle contribue au calcul du TAI par le BIPM (Bureau international des poids et mesures), et l’écart UTC − UTC(OP) publié chaque mois dans la Circular T du BIPM se compte en nanosecondes. C’est, à quelques laboratoires près dans le monde, ce qui se fait de mieux.
Le SYRTE diffuse cette référence par NTP :
| Serveur | Stratum | Raccordement | Usage prévu |
|---|---|---|---|
ntp-p1.obspm.fr | 1 | PPS lié à UTC(OP) | Réservé aux serveurs secondaires desservant des sites importants |
ntp.obspm.fr | 2 | synchronisé sur le précédent | Ouvert à l’ensemble de la communauté internet |
Un serveur Stratum 1 public construit avec ce guide entre dans le cas
d’usage prévu de ntp-p1.obspm.fr, mais avec la même étiquette que
pour toute source institutionnelle : minpoll 6 (une requête par minute
au plus), iburst uniquement au démarrage, et jamais des dizaines de
clients individuels qui l’interrogent directement.
Les références nationales dans le monde#
Hors de France, la même démarche s’applique avec le laboratoire national du pays concerné. Plus de 80 laboratoires maintiennent une réalisation UTC(k) recensée dans la Circular T du BIPM ; le tableau ci-dessous liste ceux qui exposent un service NTP public (noms d’hôtes vérifiés à la rédaction de ce guide, chaque laboratoire publie sa propre politique d’usage, à lire avant de le mettre en source amont) :
| Pays | Laboratoire | Échelle | Serveurs NTP publics |
|---|---|---|---|
| France | LTE / SYRTE (Obs. de Paris) | UTC(OP) | ntp-p1.obspm.fr, ntp.obspm.fr |
| Allemagne | PTB | UTC(PTB) | ptbtime1.ptb.de à ptbtime4.ptb.de (NTS disponible) |
| Royaume-Uni | NPL | UTC(NPL) | ntp1.npl.co.uk, ntp2.npl.co.uk |
| Suède | RISE / Netnod | UTC(SP) | ntp1.sp.se ; gbg1.ntp.se, nts.netnod.se (NTS) |
| Italie | INRiM | UTC(IT) | ntp1.inrim.it, ntp2.inrim.it |
| Espagne | ROA (Obs. de la Marine) | UTC(ROA) | hora.roa.es, minuto.roa.es |
| Suisse | METAS | UTC(CH) | ntp.metas.ch |
| Autriche | BEV | UTC(BEV) | bevtime1.metrologie.at |
| Belgique | Observatoire royal | UTC(ORB) | ntp1.oma.be, ntp2.oma.be |
| Pays-Bas | VSL | UTC(VSL) | ntp.vsl.nl |
| Pologne | GUM | UTC(PL) | tempus1.gum.gov.pl, tempus2.gum.gov.pl |
| Tchéquie | UFE | UTC(TP) | time.ufe.cz (NTS) |
| Finlande | VTT MIKES | UTC(MIKE) | time1.mikes.fi, ntp1.mikes.fi |
| Russie | VNIIFTRI | UTC(SU) | ntp1.vniiftri.ru, ntp2.vniiftri.ru |
| États-Unis | NIST | UTC(NIST) | time.nist.gov |
| États-Unis | USNO (Obs. naval) | UTC(USNO) | tick.usno.navy.mil, tock.usno.navy.mil |
| Canada | CNRC | UTC(NRC) | time.nrc.ca |
| Brésil | Obs. Nacional / NIC.br | UTC(ONRJ) | a.st1.ntp.br (projet NTP.br) |
| Mexique | CENAM | UTC(CNM) | cronos.cenam.mx |
| Japon | NICT | UTC(NICT) | ntp.nict.jp |
| Corée du Sud | KRISS | UTC(KRIS) | time.kriss.re.kr |
| Chine | NTSC (Acad. des sciences) | UTC(NTSC) | ntp.ntsc.ac.cn |
| Taïwan | TL | UTC(TL) | time.stdtime.gov.tw |
| Inde | NPL India | UTC(NPLI) | time.nplindia.org |
| Australie | NMI | UTC(AUS) | time.nmi.gov.au |
| Hong Kong | HKO | UTC(HKO) | stdtime.gov.hk |
Tous ces laboratoires publient leur écart à UTC dans la même Circular T : la comparaison à plusieurs références nationales à la fois est donc possible, c’est exactement ce que fait la configuration du chapitre Chrony (OBSPM, PTB, NPL, RISE, NIST). Les laboratoires géographiquement proches sont à privilégier : l’asymétrie réseau croît avec la distance, et c’est elle qui domine la mesure (section suivante).
Deux chaînes de traçabilité vers UTC#
┌────────────────────────┐ ┌──────────────┐
│ Laboratoire national │ │ Ce serveur │
│ (ex. SYRTE, Paris) │ │ (ce guide) │
└────────────────────────┘ └──────────────┘
│ │
▼ Fontaines Cs + masers H ▼ Horloges atomiques des satellites GNSS
┌───────────┐
│ UTC(OP) │──Circular T (BIPM)──────────────────►
└───────────┘
│ │
▼ signal PPS ▼ signal PPS reçu (~100 ns de la vraie UTC)
┌───────────────────┐ ┌───────────────┐
│ ntp-p1.obspm.fr │ │ ce serveur │
│ (Stratum 1) │ │ (Stratum 1) │
└───────────────────┘ └───────────────┘Les deux chaînes aboutissent à UTC, par des chemins différents : le laboratoire national produit sa réalisation d’UTC localement avec ses propres horloges ; ce serveur reçoit le temps GNSS, lui-même piloté sur des réalisations d’UTC par les opérateurs des constellations (chapitre Constellations GNSS). La traçabilité de l’un passe par le ciel, celle de l’autre par ses propres fontaines atomiques.
La comparaison mesurée en continu#
Puisque ntp-p1.obspm.fr fait partie des sources amont configurées de
chrony (chapitre Chrony), ce serveur mesure en continu son écart avec la
référence française :
chronyc sources -v
chronyc ntpdata ntp-p1.obspm.frSortie réelle de ce serveur (seule l’adresse locale est remplacée par une adresse de documentation) :
$ chronyc ntpdata ntp-p1.obspm.fr
Remote address : 145.238.80.80 (91EE5050)
Remote port : 123
Local address : 192.0.2.10 (C000020A)
Leap status : Normal
Version : 4
Mode : Server
Stratum : 1
Poll interval : 9 (512 seconds)
Precision : -18 (0.000003815 seconds)
Root delay : 0.000000 seconds
Root dispersion : 0.000214 seconds
Reference ID : 4D525300 (MRS)
Reference time : Sun Jul 19 23:22:36 2026
Offset : +0.000724725 seconds
Peer delay : 0.003111070 seconds
Peer dispersion : 0.000003834 seconds
Response time : 0.000230311 seconds
Jitter asymmetry: -0.46
NTP tests : 111 111 1111
Interleaved : No
Authenticated : No
TX timestamping : Hardware
RX timestamping : Hardware
Total TX : 92
Total RX : 92
Total valid RX : 92
Total good RX : 84
Total kernel TX : 92
Total kernel RX : 16
Total HW TX : 76
Total HW RX : 76La lecture champ par champ de cette seule sortie recoupe presque tous les chapitres de ce guide, au point d’en constituer un résumé :
| Champ | Ce qu’il raconte, et où le guide l’explique |
|---|---|
Remote address | l’adresse du serveur interrogé ; l’hexadécimal entre parenthèses (91EE5050) est la forme 32 bits de l’IPv4, exactement celle qu’un client de stratum 2 verrait comme Reference ID (chapitre Anatomie du paquet NTP) |
Remote port : 123 | le port UDP historique de NTP, celui que le pare-feu traite en notrack avec limitation de débit (chapitre nftables) |
Local address | l’interface par laquelle ce serveur est sorti (adresse remplacée ici par un préfixe de documentation) |
Leap status : Normal | aucune seconde intercalaire annoncée : la traduction du champ LI de l’en-tête (chapitres Anatomie du paquet NTP et Secondes intercalaires) |
Version : 4 | NTPv4, RFC 5905 (champ VN de l’en-tête) |
Mode : Server | mode 4, la réponse d’un serveur à une requête client : le seul mode utilisé par ce projet (chapitre Anatomie du paquet NTP) |
Stratum : 1 | l’interlocuteur est directement relié à sa référence physique : c’est la référence nationale elle-même qui répond (chapitre Vue d’ensemble) |
Poll interval : 9 | l’intervalle d’interrogation en log₂ secondes (2⁹ = 512 s), ajusté dynamiquement par chrony |
Precision : -18 | la précision que l’interlocuteur déclare pour sa propre horloge système, en log₂ secondes (2⁻¹⁸ ≈ 3,8 µs) ; différent du precision 1e-7 de la refclock PPS de ce guide (chapitre Chrony), en secondes décimales |
Root delay / Root dispersion | délai et incertitude cumulés jusqu’au stratum 0 : quasi nuls ici, l’interlocuteur est sa référence (chapitre Anatomie du paquet NTP) |
Reference ID : (MRS) | l’identifiant ASCII déclaratif d’un stratum 1, ici la référence locale du laboratoire ; en face, ce serveur annonce PPS0 (chapitre Anatomie du paquet NTP, catalogue des sources) |
Reference time | l’instant de la dernière mise à jour de l’horloge de l’interlocuteur sur sa référence |
Offset | l’écart apparent (+725 µs), calculé par la formule des quatre timestamps (chapitre Anatomie du paquet NTP) ; sa lecture critique est l’objet du présent chapitre |
Peer delay | l’aller-retour réseau jusqu’à Paris (3,1 ms), soit (T4-T1)-(T3-T2) : l’asymétrie inconnue de ce trajet fabrique l’essentiel de l’offset apparent |
Peer dispersion | l’incertitude propre de cette mesure (quelques µs seulement) |
Response time | le temps de traitement interne du serveur distant (230 µs) : le terme T3-T2, retranché du délai précisément parce qu’il ne traverse pas le réseau |
Jitter asymmetry | l’estimation par chrony du déséquilibre du bruit entre aller et retour : la limite fondamentale du protocole, rendue visible |
NTP tests | les dix tests de validité (1 = réussi, 0 = échoué), détaillés ci-dessous |
Interleaved : No | le mode interleaved (xleave, chapitre Chrony) n’était pas actif sur cet échange : il ne s’enclenche que si les deux côtés le pratiquent |
Authenticated : No | pas de NTS sur cette association amont ; ce serveur, lui, le propose à ses propres clients (chapitre NTS) |
TX/RX timestamping : Hardware | l’horodatage au plus près du fil, des deux côtés de la carte réseau locale (chapitre PHC) |
Total TX à Total good RX | les compteurs de l’association : 92 requêtes, 92 réponses valides, dont 84 retenues ; les 8 autres ont échoué à l’un des tests ci-dessous |
Total kernel/HW TX/RX | la provenance des timestamps : 76 émissions et 76 réceptions horodatées par le matériel, le reste par le kernel (chapitre PHC) |
Le découpage 111 111 1111 (3 + 3 + 4) correspond à six tests hérités de
la RFC 5905 (les tests 1 à 3, puis 5 à 7 ; le test 4, un contrôle
d’accès, n’est pas affiché par chrony) et à quatre tests propres à
chrony, adossés à ses directives de configuration :
| Groupe | Test | Ce qui est vérifié |
|---|---|---|
| RFC 5905, test 1 | duplicata | le paquet n’est pas une copie du précédent |
| RFC 5905, test 2 | usurpation | le timestamp d’origine correspond à la dernière requête réellement émise, ce qui bloque les réponses forgées ou rejouées |
| RFC 5905, test 3 | timestamps valides | les timestamps de réception et d’émission du serveur ne sont pas nuls |
| RFC 5905, test 5 | authentification | la signature du paquet est valide, ou aucune n’est requise (cas de cet échange, Authenticated : No) |
| RFC 5905, test 6 | serveur synchronisé | l’interlocuteur n’annonce pas une horloge non synchronisée (leap, stratum) |
| RFC 5905, test 7 | en-tête sain | root delay et root dispersion restent sous les maxima du protocole |
| chrony, test 1 | délai maximal | le délai de la mesure reste sous maxdelay |
| chrony, test 2 | rapport de délai | le délai ne dépasse pas maxdelayratio fois le minimum observé |
| chrony, test 3 | délai/dispersion | la combinaison délai + vitesse de croissance de la dispersion reste sous maxdelaydevratio |
| chrony, test 4 | boucle | pas de boucle de synchronisation : le serveur interrogé n’est pas lui-même synchronisé sur cette machine |
Un seul 0 dans cette ligne suffit à écarter la mesure : c’est le
filtrage d’entrée qui protège l’algorithme de sélection (chapitre Vue
d’ensemble) de données corrompues, usurpées ou incohérentes.
En pratique, l’offset observé vis-à-vis d’un serveur institutionnel distant se situe typiquement dans la plage de quelques centaines de microsecondes (ici +725 µs). Ce chiffre demande une lecture attentive, car il mélange trois choses :
- l’erreur de l’horloge du laboratoire, négligeable (nanosecondes) ;
- l’erreur de l’horloge locale, faible (RMS offset autour de la microseconde en suivant ce guide) ;
- l’asymétrie du trajet réseau aller/retour, dominante (centaines de µs, non mesurable par NTP lui-même).
Autrement dit : l’offset affiché ne mesure ni la qualité de l’horloge du laboratoire ni vraiment celle du serveur local, mais surtout la qualité du chemin réseau entre les deux. C’est précisément l’enseignement central de ce chapitre.
L’autre axe de comparaison : la stabilité (écart-type d’Allan)#
L’offset analysé ci-dessus mesure l’exactitude. Une horloge se juge aussi sur sa stabilité : à quel point sa fréquence varie dans le temps. Pour la caractériser rigoureusement, au-delà du “skew” instantané (chapitre Métrologie), la métrologie du temps utilise l’écart-type d’Allan σᵧ(τ), une mesure de la variabilité de la fréquence d’une horloge, calculée sur des fenêtres d’observation de durée τ croissante (1 s, 10 s, 100 s, …). Contrairement à un simple écart-type statistique, il reste défini et interprétable même pour des sources de bruit non stationnaires (dérive lente, marche aléatoire de fréquence), ce qui le rend particulièrement adapté aux oscillateurs réels.
Sur ce serveur, la valeur mesurée en production à la cadence la plus fine
(τ=4 s, poll 2) est σᵧ ≈ 1,7×10⁻⁸, la limite étant essentiellement
fixée par le jitter d’interruption du noyau (chapitres Noyau temps réel
et Affinité IRQ), pas par le récepteur GNSS lui-même.
Un maser à hydrogène actif comme ceux du SYRTE affiche typiquement σᵧ(τ=1s) de l’ordre de 10⁻¹³, une fontaine atomique à césium descend vers 10⁻¹⁶ sur des durées d’intégration de l’ordre du jour (ordres de grandeur généraux de ce type de référence, pas des chiffres publiés spécifiques au SYRTE ; la Circular T du BIPM et les publications SYRTE donnent les valeurs exactes et sourcées). L’écart avec la valeur mesurée ci-dessus, 5 à 6 ordres de grandeur, est réel, mais la comparaison brute n’a pas vraiment de sens : ces deux σᵧ ne mesurent pas la même chose. Celui d’un maser ou d’une fontaine caractérise la stabilité intrinsèque de la référence atomique elle-même. Celui de ce serveur caractérise le résidu de l’estimation de chrony après correction continue par le PPS GNSS sur un quartz de grande consommation sans intérêt propre, dominé par le bruit de mesure à court terme et par la dérive thermique au-delà de quelques minutes. Comparer les deux revient à comparer la précision d’une horloge atomique posée sur une table stable à celle d’un altimètre embarqué qui recale sa dérive toutes les 4 secondes sur un signal GPS.
Sur l’axe de la stabilité comme sur celui de l’exactitude, la comparaison brute à une référence nationale induit en erreur : le verdict qui compte pour ce projet se lit ci-dessous.
Le vrai verdict de la comparaison#
| Critère | Laboratoire national (ex. SYRTE) | Ce serveur (ce guide) |
|---|---|---|
| Source du temps | Fontaines Cs, masers H | GNSS (PPS) |
| Écart à UTC de la source | quelques ns | ~100 ns |
| Exactitude servie en local (LAN) | sans objet (autre réseau) | quelques µs |
| Exactitude servie via internet | limitée à ~0,5-2 ms par le réseau, voir plus | idem |
| Coût | cher | ~250 € |
| Rôle | référence légale, métrologie | service de proximité, hobby |
La ligne décisive est la troisième : dès qu’un client interroge un serveur à travers internet, l’asymétrie des chemins réseau (500 µs à plusieurs ms) écrase l’exactitude intrinsèque du serveur, quelle qu’elle soit. Interroger la meilleure horloge du pays à travers 15 sauts de routeurs donne un résultat moins exact qu’interroger un Raspberry Pi à 100 ns d’UTC situé sur le même commutateur Ethernet.
C’est la justification finale de tout ce guide : un Stratum 1 local ne prétend pas rivaliser avec un laboratoire national en métrologie : il gagne parce qu’il est proche. L’exactitude d’un service NTP se joue autant dans la topologie réseau que dans l’horloge elle-même.
Erreurs à éviter#
Ne jamais interpréter l’offset
chronyc sourcesvers un serveur distant comme l’erreur de l’horloge locale. Cet offset inclut l’asymétrie réseau, invisible et non corrigeable par NTP (le protocole suppose un trajet aller/retour symétrique, RFC 5905, et chapitre Anatomie du paquet NTP). Un offset de 400 µs versntp-p1.obspm.fralors que le RMS offset PPS local est de 0,07 µs signifie que le réseau est asymétrique, pas que l’horloge locale est fausse de 400 µs.
- Conclure d’une seule mesure. L’asymétrie réseau varie avec la
charge des liens (heures de bureau vs nuit). La dispersion sur
plusieurs jours (
chronyc sourcestats, chapitre Munin) doit être observée avant de tirer une conclusion. - Sur-solliciter les serveurs institutionnels.
ntp-p1.obspm.frannonce explicitement être réservé aux serveurs secondaires de sites importants.minpoll 6, une poignée de sources diversifiées (OBSPM, PTB, NPL, RISE, NIST), pas plus. La diversité protège aussi du cas où une source institutionnelle devient temporairement fausse ou injoignable. - Oublier que la comparaison ne vaut que si les deux extrémités
horodatent bien. Le mode
xleave(si la source NTP est compatible) et l’horodatage matériel (chapitres Chrony et PHC) réduisent la part de bruit local dans la mesure ; sans eux, c’est surtout la gigue de la pile réseau locale qui se mesure.
Vérifier#
# Écart courant vis-à-vis de chaque source institutionnelle
chronyc sources -v
# Statistiques accumulées (dispersion, dérive estimée par source)
chronyc sourcestats
# Détail complet de la mesure vers la référence française
chronyc ntpdata ntp-p1.obspm.fr
# Champs intéressants : "Peer delay" (aller/retour), "Root delay",
# "Offset", comparer l'offset à la moitié du peer delay donne un
# ordre de grandeur de l'asymétrie possible.Un serveur en bonne santé montre : le PPS sélectionné (*), les sources
institutionnelles cohérentes entre elles (+) avec des offsets de
l’ordre de la centaine de µs, et un RMS offset local autour de la
microseconde, les trois niveaux de la comparaison, chacun à sa place.
📚 Pour aller plus loin
- SYRTE / Observatoire de Paris, Diffusion de l’heure par internet : NTP : la page de référence des serveurs NTP raccordés à UTC(OP).
- BIPM, Circular T : publication mensuelle des écarts UTC − UTC(k) pour chaque laboratoire national, le bulletin de notes officiel des horloges nationales, en libre accès.
- L’heure légale française est définie à partir d’UTC(OP) (décret n° 2017-292 relatif au temps légal français).
- L’écart-type d’Allan a été introduit par David W. Allan en 1966 (Statistics of Atomic Frequency Standards, Proceedings of the IEEE) ; c’est l’outil de référence pour caractériser la stabilité de fréquence des oscillateurs et horloges atomiques.