Partager via


Configuration de systèmes de haute précision

La synchronisation de temps dans Windows 10 et Windows Server 2016 est améliorée. Dans des conditions optimales, ces systèmes peuvent être configurés pour atteindre et maintenir une précision de 1 milliseconde (ms) ou mieux par rapport à UTC.

Warning

Windows Server 2012 R2 et les versions précédentes ne répondent pas aux mêmes objectifs de précision élevé. Ces systèmes d’exploitation ne sont pas pris en charge pour la haute précision. Dans ces versions, le service de temps Windows respectait les exigences suivantes :

  • Il fournissait la précision de temps nécessaire pour répondre aux exigences d’authentification Kerberos version 5.
  • Il fournissait un temps moyennement précis pour les clients et les serveurs Windows joints à une forêt Active Directory commune.

Les tolérances accrues sur 2012 R2 et les versions précédentes ne répondent pas aux spécifications de conception du service Windows de synchronisation de l'heure.

Configuration par défaut sur Windows 10 et Windows Server 2016

Bien que nous prenions en charge une précision allant jusqu’à 1 ms sur Windows 10 ou Windows Server 2016, la plupart des clients n’ont pas besoin d’un temps haute précision.

As such, the default configuration is intended to satisfy the same requirements as prior operating systems that:

  • Fournir la précision nécessaire pour répondre aux exigences d’authentification Kerberos version 5.
  • Fournir une heure moyennement précise pour les clients et les serveurs Windows joints à une forêt Active Directory commune.

Comment configurer des systèmes haute précision

La précision de l’heure implique la distribution de bout en bout d’une heure précise depuis une source de temps de référence vers l’appareil final. Tout ce qui ajoute des asymétries dans les mesures le long de ce chemin influence négativement la précision réalisable sur vos appareils.

Pour cette raison, la limite de support permettant de configurer le service de temps Windows pour les environnements à haute précision est documentée en décrivant les exigences environnementales qui doivent également être satisfaites pour atteindre des cibles de précision élevées.

Système d'exploitation requis

Les configurations de haute précision nécessitent Windows 10 ou Windows Server 2016. Tous les appareils Windows dans la topologie du temps doivent répondre à cette exigence, y compris les serveurs de temps Windows de couche supérieure et, dans les scénarios virtualisés, les hôtes Hyper-V qui exécutent les machines virtuelles sensibles au facteur temps. Tous ces appareils doivent exécuter au moins Windows 10 ou Windows Server 2016.

Dans l’illustration suivante, les machines virtuelles nécessitant une précision élevée exécutent Windows 10 ou Windows Server 2016. De même, l’hôte Hyper-V sur lequel résident les machines virtuelles et le serveur de temps Windows en amont doivent également exécuter Windows Server 2016.

Diagramme montrant trois machines virtuelles connectées à un hôte Hyper-V Windows Server 2016 qui utilise le service de temps Windows.

Tip

Vous pouvez exécuter la winver commande dans une invite de commandes ou via PowerShell pour afficher la version du système d’exploitation et le numéro de build :

Capture d’écran de la commande w i n v e r affichant Windows Server 2016 version 1607 et système d’exploitation build 14393.

System configuration

Pour atteindre des objectifs de haute précision, vous devez configurer le système. Il existe plusieurs façons d’effectuer cette configuration, notamment directement dans le Registre ou par le biais de la stratégie de groupe. Pour plus d’informations sur chacun de ces paramètres, consultez les Informations techniques de référence sur le service de temps Windows : Outils du service de temps Windows.

Type de démarrage du service de temps Windows

To ensure the Windows Time service (W32Time) runs continuously, set its startup type to Automatic.

Capture d’écran de la zone de propriétés du service de temps Windows montrant le Type de démarrage défini sur Automatique.

Latence réseau unidirectionnelle cumulée

L’incertitude des mesures et le « bruit » augmentent la latence réseau. Il est donc impératif que la latence réseau se situe dans une limite raisonnable. Les exigences spécifiques dépendent de la précision cible et sont présentées dans l’article Limites de prise en charge pour configurer le service de temps Windows pour les environnements de haute précision.

Pour calculer la latence réseau unidirectionnelle cumulative, ajoutez les délais unidirectionnels individuels entre les paires de deux nœuds client-serveur NTP (Network Time Protocol) dans la topologie de temps, en commençant par la cible et en terminant à la source de temps de haute précision de strate 1.

Par exemple : Considérez une hiérarchie de synchronisation horaire comportant une source extrêmement précise, deux serveurs NTP intermédiaires A et B et la machine cible, dans cet ordre. Pour obtenir la latence réseau cumulée entre la cible et la source, mesurez les temps d’aller-retour (RTT) NTP individuels moyens entre :

  • Le serveur cible et le serveur de temps B
  • Le serveur de temps B et le serveur de temps A
  • Le serveur de temps A et la source

Cette mesure peut être obtenue à l’aide de l’outil boîte de réception w32tm.exe en effectuant les étapes suivantes :

  1. Effectuez le calcul à partir de la cible et du serveur de temps B.

    w32tm /stripchart /computer:TimeServerB /rdtsc /samples:450 > c:\temp\Target_TsB.csv
    
  2. Effectuez le calcul à partir du serveur de temps B par rapport au serveur de temps A (avec pointage vers ce dernier).

    w32tm /stripchart /computer:TimeServerA /rdtsc /samples:450 > c:\temp\Target_TsA.csv
    
  3. Effectuez le calcul à partir du serveur de temps A par rapport à la source.

  4. Ajoutez ensuite les temps d’aller-retour moyens mesurés à l’étape précédente et divisez le résultat par 2 pour obtenir le délai réseau cumulé entre la cible et la source.

Registry settings

MinPollInterval

Configure le plus petit intervalle en secondes log2 autorisé pour l’interrogation du système.

Description Value
Key location HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config
Setting 6
Outcome L’intervalle d’interrogation minimal est maintenant de 64 secondes.

MaxPollInterval

Configure le plus grand intervalle en secondes log2 autorisé pour l’interrogation du système.

Description Value
Key location HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config
Setting 6
Outcome L’intervalle d’interrogation maximal est maintenant de 64 secondes.

UpdateInterval

Nombre de cycles d’horloge entre les ajustements de correction de phase.

Description Value
Key location HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config
Setting 100
Outcome Le nombre de cycles d’horloge entre les ajustements de correction de phase s’élève maintenant à 100.

SpecialPollInterval

Configure l’intervalle d’interrogation en secondes quand l’indicateur SpecialInterval 0x1 est activé.

Description Value
Key location HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient
Setting 64
Outcome L’intervalle d’interrogation est maintenant de 64 secondes.

FrequencyCorrectRate

Description Value
Key location HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config
Setting 2

UtilizeSslTimeData

Description Value
Key location HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config
Setting 0
Outcome La fonctionnalité d’amorçage du temps sécurisé est désactivée.

Application des paramètres de Registre modifiés

La commande suivante indique au service de temps Windows de récupérer les paramètres mis à jour :

w32tm /config /update

La commande suivante redémarre le service de temps Windows pour récupérer les paramètres mis à jour :

net stop w32time && net start w32time

L’application de la modification du paramètre UtiliserSslTimeData nécessite le redémarrage du système.

Note

Pour en savoir plus sur les paramètres du Registre W32Time, consultez la référence du registre W32Time