Windows system configuration high-precision time service

Windows system configuration high-precision time service

High-precision time service configuration requires Windows 10 or Windows Server 2016 or above operating system.

Article directory

    • Windows system configuration high-precision time service
    • How to configure your system for high accuracy
      • 1. Operating system requirements
      • 2. System service configuration
        • Windows Time service starts
      • 3. One-way network delay calculation
      • 4. Registry settings
        • MinPollInterval
        • MaxPollInterval
        • UpdateInterval
        • SpecialPollInterval
      • GPO default settings for W32Time
    • Recommended reading

Time synchronization has been greatly improved in Windows 10 and Windows Server 2016. Under reasonable operating conditions, the system can be configured to maintain 1ms (millisecond) accuracy or better (in terms of UTC).

Windows Server 2012 R2 and earlier cannot meet the same high-precision goals. The higher tolerance in 2012 R2 and earlier is outside the design specifications of the Windows Time service.

While precision up to 1 ms is supported on Windows 10 or Windows Server 2016, most users don’t need highly precise time.
Therefore, the system is configured by default with the same requirements as operating systems prior to Windows 2012 R2, namely:

  • Provides the time precision required to meet Kerberos version 5 authentication requirements.
  • Provides approximately accurate times for Windows clients and servers joined to a public Active Directory forest.

How to configure the system to achieve high accuracy

Time accuracy requires end-to-end distribution of accurate time from authoritative time sources to end devices. Any factor that adds asymmetry in the measurement along this path will negatively impact the accuracy achievable on the device.

1, operating system requirements

High-precision configuration requires Windows 10 or Windows Server 2016.
All Windows devices in the time topology must meet this requirement, including higher-level Windows Time servers and Hyper-V hosts running time-sensitive virtual machines in virtualization scenarios. All of these devices must be at least Windows 10 or Windows Server 2016.

2, System service configuration

Windows Time Service Start

The Windows Time service (W32Time) must run continuously. To do this, configure the startup type of the Windows Time service to Automatic.

3, One-way network delay calculation

There is bound to be network delay in data communications. Therefore, network latency must be within reasonable limits.

To calculate the cumulative one-way network delay, add the individual one-way delays between NTP client-server node pairs in the time topology starting at the destination and ending at the high-precision layer 1 time source.

To obtain the cumulative network latency between the destination and source, measure the average NTP round-trip time (RTT) between each of the following:

  • Target and time server B
  • Time Server B and Time Server A
  • Time Server A and Source

4, Registry Settings

Configure the registry so that time service-related parameters meet high-precision requirements.

MinPollInterval

Configure the minimum interval (in log2 seconds) allowed for system polling.

Description Value
Key location HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config
Settings 6
Results The minimum polling interval is now 64 seconds.

The following command will help Windows update time parameters take effect:

w32tm /config /update
MaxPollInterval

Configure the maximum interval (in log2 seconds) allowed for system polling.

Description Value
Key location HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config
Settings 6
Results The maximum polling interval is now 64 seconds.

The following command will help Windows update time parameters take effect:

w32tm /config /update
UpdateInterval

Number of clock cycles between phase correction adjustments.

Description Value
Key location HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config
Settings 100
Result The number of clock cycles between phase correction adjustments is now 100.

The following command will help Windows update parameters take effect:

w32tm /config /update
SpecialPollInterval

Configure the polling interval in seconds after the SpecialInterval 0x1 flag is enabled.

Description Value
Key location HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\\
tpClient
Settings 64
Results The polling interval is now 64 seconds.

The following command will help Windows update parameters take effect:

net stop w32time & amp; & amp; net start w32time
# Restart w32time service

GPO default settings for W32Time

Group Policy Settings Default Value
AnnounceFlags 10
EventLogFlags 2
FrequencyCorrectRate 4
HoldPeriod 5
LargePhaseOffset 50,000,000
LocalClockDispersion 10
MaxAllowedPhaseOffset 300
MaxNegPhaseCorrection 172,800 (48 hours)
MaxPollInterval 10
MaxPosPhaseCorrection 172,800 (48 hours)
MinPollInterval 6
PhaseCorrectRate 7
PollAdjustFactor 5
SpikeWatchPeriod 900
UpdateInterval 100 (1 second)

Recommended reading

  • Detailed explanation of NTP (Network Time Protocol) protocol
  • Ubuntu quickly builds an intranet NTP Server
  • Windows 11’s cloud backup makes replacing computers as easy as replacing mobile phones
  • Free your hands, Windows Admin Center simplifies server management
  • Learn about the new features of Wi-Fi 7 in this article
  • Session end reason: tcp-rst-from-server Common cause analysis and solutions