Mesure et interprétation du décalage d'horloge — comprenez la valeur en temps réel
L'offset NTP est la différence signée entre votre horloge système locale et une source temporelle de référence à l'instant de la mesure. C'est le nombre le plus important en synchronisation temporelle : il dit de combien et dans quelle direction votre horloge est fausse.
Une mesure d'offset « en direct » signifie que la valeur se rafraîchit en continu sous vos yeux. Sur le testeur de la page d'accueil, l'offset se rafraîchit toutes les 10 secondes, vous montrant à la fois l'erreur courante et son évolution entre resyncs.
La convention NTP (utilisée par chrony, ntpq, w32tm et ce testeur) :
| Signe | Signification | Correction NTP appliquée |
|---|---|---|
+150 ms | Horloge locale en avance de 150 ms sur la référence | Ralentir l'horloge (step négatif de fréquence) |
-75 ms | Horloge locale en retard de 75 ms | Accélérer l'horloge (step positif de fréquence) |
0 ms | Parfaitement synchronisée à cet instant | Maintenir la fréquence |
Intuition : le signe de l'offset est l'opposé de la correction que NTP doit appliquer. Si vous lisez +150 ms, NTP va vous ralentir de 150 ms pour revenir à zéro.
| Usage | Offset acceptable | Seuil de casse |
|---|---|---|
| Poste bureautique / mail / web | < 1 s | Certificats TLS (> ~5 min d'écart) |
| Active Directory / Kerberos | < 5 s par défaut | Échec d'authentification à 5 min d'écart |
| Validation certificats TLS / HTTPS | < 5 min | Erreurs de certificat, échec OCSP |
| Corrélation de logs / SIEM | < 100 ms | Inversion de causalité entre services |
| Trading financier (MiFID II RTS 25) | < 1 ms en HFT, < 100 µs en colocation | Non-conformité réglementaire |
| Télécom 5G / qualité PTP | < 100 ns | Synchronisation requiert PTP, pas NTP |
La plupart des applications vivent confortablement sous 100 ms d'offset — zone verte du testeur. Au-delà d'1 seconde, NTP est effectivement cassé ou absent.
NTP fonctionne normalement sur UDP port 123 que les navigateurs ne peuvent pas émettre. Notre testeur utilise une approximation HTTPS :
t1 juste avant l'envoi de la requête HTTPS.t_server (précision microseconde, depuis une source Stratum 1 GNSS).t2 à la réception.(t2 - t1) / 2 — l'hypothèse que NTP lui-même utilise.offset = ((t1 + t2) / 2) - t_server.Cette méthode reproduit l'algorithme à quatre timestamps classique de NTP adapté au modèle requête/réponse HTTPS. La précision est limitée par la symétrie du chemin TCP/TLS — typiquement ±10–30 ms sur une bonne connexion, contre ±1 ms pour NTP UDP natif.
Date.now() n'a qu'une résolution milliseconde, et certains navigateurs la quantifient pour réduire le fingerprinting. N'attendez pas de précision sub-milliseconde d'une mesure navigateur — pour cela, utilisez les outils CLI directement.
Observez l'offset sur le testeur d'accueil pendant 2 minutes. Vous devriez voir l'un de ces motifs :
chronyd / systemd-timesyncd / w32time.minpoll 10 ou plus.Si le testeur reporte un offset au-delà d'1 seconde ou très instable :
systemctl status chrony (Linux), w32tm /query /status (Windows). S'il n'est pas actif, démarrez-le.Au-delà de l'offset ? Utilisez l'outil adapté :