Windows 时间服务工具和设置

Windows 时间服务 (W32Time) 为 Active Directory 域服务 (AD DS) 管理的所有计算机同步日期和时间。 本文介绍用于管理 W32Time 的各种工具和设置。

默认情况下,加入域的计算机会通过域层次结构的时间源同步时间。 有时,因为计算机以前未加入域,所以需要手动配置计算机从特定的时间源同步。 在这种情况下,可以重新配置计算机,以从域层次结构自动溯源其时间。

大多数已加入域的计算机的时间客户端类型为 NT5DS(Net Time 5 目录服务),这意味着它们从域层次结构进行时间同步。 一个例外是充当森林根域的主域控制器(PDC)模拟器操作主控的域控制器。 而 PDC 仿真器操作主机配置为使用外部时间源来同步时间。

你可以在你的域中实现低至一毫秒的时间精度。 有关详细信息,请参阅支持高精度时间边界Windows Server 2016 准确时间

网络端口

W32Time 遵循网络时间协议 (NTP) 规范,该规范要求使用用户数据报协议 (UDP) 端口 123 进行所有时间同步。 计算机同步其时钟或向另一台计算机提供时间时,该同步在 UDP 端口 123 上进行。 W32Time 将此端口保留为目标端口。

备注

  • NTP 服务器通常侦听 UDP 端口 123 中的请求并从同一端口做出响应,这对于内置 W32Time NTP 服务器也是如此。
  • 可以独立启用或禁用内置 W32Time NTP 客户端和 NTP 服务器。 两者共享 UDP 端口 123 作为其功能。
  • 内置 W32Time NTP 客户端只能使用 UDP 123 作为源端口。
  • 如果计算机有多个网络适配器(它是多宿主),则不能基于网络适配器启用 W32Time。

W32Time 的命令行参数

可以使用 w32tm 此命令配置 W32Time 设置和诊断计算机时间问题。 该 w32tm 命令是用于配置、监视和排查 W32Time 问题的首选命令行工具。 本地管理员组中的成员身份是在本地运行此工具所必需的,并且需要域管理员组中的成员身份才能远程运行此工具。

若要使用 w32tm,请执行以下步骤:

  1. 选择 “开始”,然后输入 cmd。 右键单击 命令提示符,然后选择“ 以管理员身份运行”。
  2. 在命令提示符处,输入 w32tm,后跟适当的参数。
参数 说明
/? 显示w32tm命令行帮助。
/config [/computer:<target>] [/update] [/manualpeerlist:<peers>] [/syncfromflags:<source>] [/LocalClockDispersion:<seconds>] [/reliable:(YES|NO)] [/largephaseoffset:<毫秒>] /computer:<target>:调整 <target> 的配置。 如果未指定,则默认目标是本地计算机。

/update:通知 W32Time 配置正在更改,导致更改生效。

/manualpeerlist:<peers>:将手动对等列表设置为 <peers>,这是以空格分隔的域名系统(DNS)或 IP 地址列表。 当您指定多个对等方时,必须用引号将此选项括起来。

/syncfromflags:<source>:设置 NTP 客户端应从中同步的源。 < >值应为以下关键字的逗号分隔列表(不区分大小写):

  • MANUAL:包括手动对等列表中的对等方。
  • DOMHIER:从域层次结构中的域控制器 (DC) 同步。

/LocalClockDispersion:<seconds>:配置 W32Time 在无法从配置源获取时间时使用的内部时钟的准确性。

/reliable:(YES|NO):设置此计算机是否为可靠的时间源。 此设置仅对域控制器有用。

  • YES:此计算机是可靠的时间服务。
  • NO:此计算机不是可靠时间服务。

/largephaseoffset:<milliseconds>:设置 W32Time 视为峰值的本地时间和网络时间之间的时间差。

/debug {/disable | {/enable /file:<名字> /size:/<字节> /entries:<> [/truncate]}} 启用或禁用本地计算机 W32Time 专用日志。

/disable:禁用专用日志。

/enable:启用专用日志。

  • file:<name> :指定绝对文件名称。
  • size:<bytes> :指定循环日志记录的最大大小。
  • entries:<value>:包含由数字指定的标志列表,并用逗号分隔,指定应记录的信息类型。 有效值为 0300。 一组数字是有效的,单个数字也是有效的,例如 0-100,103,106。 值为 0-300 用于记录所有信息。

/truncate:截断文件(如果存在)。

/dumpreg [/subkey:<key>] [/computer:<target>] 显示与给定注册表项关联的值。

默认密钥为 HKLM\System\CurrentControlSet\Services\W32Time(W32Time 的根密钥)。

/subkey:<key>:显示与默认项的子项 <key> 相关联的值。

/computer:<target>:查询计算机 <target> 的注册表设置。

/monitor [/___domain:<___domain name>] [/computers:<name>[,<name[,<name>>...]]][/threads:<num>] 监视 W32Time。

/___domain:指定要监视的域。 如果未指定域名,并且未指定 /___domain/computers 选项,则使用默认域。 此选项可以多次使用。

/computers:监视给定列表的计算机。 计算机名称以逗号分隔,不含空格。 如果名称以星号为前缀(*),则它被视为 PDC。 此选项可以多次使用。

/threads:指定要同时分析的计算机数。 默认值为 3。 允许的范围为 1-50

/ntpte<NTP 时间纪元> 将 NTP 时间(以 2-32 秒为单位,从 1900 年 1 月 1 日 0 点开始进行度量)转换为可读格式。
/ntte<NT 时间纪元> 将 Windows NT 系统时间(以 10-7 秒为单位,从 1601 年 1 月 1 日 0 点开始进行度量)转换为可读格式。
/query [/computer:<target>] {/source | /configuration | /peers | /status} [/verbose] 显示计算机的 W32Time 信息。

/computer:<target>:查询 <target> 的信息。 如果未指定,则默认值为本地计算机。

/source:显示时间源。

/configuration:显示运行时配置和设置的源。 在详细模式下,此参数还显示未定义或未使用的设置。

/peers:显示对等方及其状态的列表。

/status:显示 W32Time 状态。

/verbose:启用详细模式以显示更多信息。

/注册 将 W32Time 注册为服务,并将其默认配置信息添加到注册表。
/resync [/computer:<computer>] [/nowait] [/rediscover] [/soft] 告知计算机应该尽快重新同步其时钟,并丢弃所有累积的错误统计信息。 NTP 客户端要求 UDP 123 作为源端口。

/computer:<computer> :指定应重新同步的计算机。 如果未指定计算机,则本地计算机将重新同步。

/nowait:不需等待重新同步完成。 而是立即返回。 如果此选项不存在,该命令将等待重新同步完成,然后再返回。

/rediscover:重新检测网络配置、重新发现网络源,然后重新同步。

/soft:使用现有错误统计信息重新同步。 此选项用于兼容性目的。

/stripchart /computer:target> [/period:<<refresh>] [/dataonly] [/samples:<count>] [/rdtsc] 显示此计算机和另一台计算机之间偏移量的带状图。 NTP 客户端使用临时 UDP 源端口与服务器通信,以防止与内置 NTP 客户端发生冲突。

/computer:<target>:指定与之进行偏移量测量的计算机。

/period:<:>指定样本之间的时间(以秒为单位)。 默认值为 2。

/dataonly:仅显示数据,不显示图形。

/samples:<count>:收集<count>个样本,然后停止。 如果未指定,将收集样本,直到选择 Ctrl+C

/rdtsc:对于每个示例,打印逗号分隔的值,以及标头 RdtscStartRdtscEndFileTimeRoundtripDelayNtpOffset,而不是文本图形。

  • RdtscStart:在生成 NTP 请求之前收集的 读取时间戳计数器(RDTSC) 值。
  • RdtscEnd:接收和处理 NTP 响应后收集的 RDTSC 值。
  • FileTime:NTP 请求中使用的本地 FILETIME 值。
  • RoundtripDelay:生成 NTP 请求和处理收到的 NTP 响应之间经过的时间(以秒为单位),根据 NTP 往返计算方法计算。
  • NTPOffset:根据 NTP 偏移计算计算,本地计算机与 NTP 服务器之间的时间偏移量(以秒为单位)。
/tz 显示当前时区设置。
/取消注册 注销 W32Time,并从注册表中删除其所有配置信息。

将客户端设置为使用两个时间服务器

若要将客户端计算机设置为指向两个不同的时间服务器,一个名为 ntpserver.contoso.com,另一个名为 clock.adatum.com,请运行以下命令:

w32tm /config /manualpeerlist:"ntpserver.contoso.com clock.adatum.com" /syncfromflags:manual /update

将客户端设置为自动从域源同步时间

假设你有一台客户端计算机,该客户端计算机当前使用手动指定的计算机同步时间。 若要将客户端计算机配置为从 AD 域层次结构自动同步时间,请运行以下命令:

w32tm /config /syncfromflags:domhier /update

net stop w32time

net start w32time

检查客户端时间配置

若要从主机名为 contosoW1 的基于 Windows 的客户端计算机检查客户端配置,请运行以下命令:

w32tm /query /computer:contosoW1 /configuration

此命令的输出列出了为客户端设置的 W32Time 配置参数。

自 Windows Server 2016 以来,对 时间同步算法 的改进支持与注释请求(RFC)规范的一致性。 因此,如果要将本地时间客户端设置为指向多个对等方,建议准备三个或更多不同的时间服务器。

如果只有两个时间服务器,则应指定 NtpServerUseAsFallbackOnly 标志(0x2),以取消其中一个服务器的特权。 例如,如果希望 ntpserver.contoso.com 的优先级高于 clock.adatum.com 的优先级,请运行下面的命令:

w32tm /config /manualpeerlist:"ntpserver.contoso.com,0x8 clock.adatum.com,0x2" /syncfromflags:manual /update

此外,还可以运行以下命令并读取输出中的值 NtpServer

reg query HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Parameters

配置计算机时钟的重置功能

为了使 w32tm 重置计算机时钟,它首先会检查当前时间与计算机时钟时间之间的偏移量 CurrentTimeOffset(也称为 Phase Offset)以确定偏移量是否小于 MaxAllowedPhaseOffset 值。

  • CurrentTimeOffsetMaxAllowedPhaseOffset:使用时钟速率逐步调整计算机时钟。
  • CurrentTimeOffset > MaxAllowedPhaseOffset:立即设置计算机时钟。

使用时钟速率调整计算机时钟后,w32tm 计算一个 PhaseCorrection 值。 此算法因 Windows 的版本而异:

  • Windows Server 2016 及其更高版本:

    PhaseCorrection_raw = (CurrentTimeOffset) ÷ (16 × PhaseCorrectRate × pollIntervalInSeconds

    MaximumCorrection = (CurrentTimeOffset) ÷ (UpdateInterval ÷ 100)

    PhaseCorrection = min(PhaseCorrection_rawMaximumCorrection

  • Windows Server 2012 R2 及较早版本:

    PhaseCorrection = (CurrentTimeOffset) ÷ (PhaseCorrectRate × UpdateInterval

所有版本的 Windows 均使用相同的最终公式来检查 PhaseCorrection

PhaseCorrection SystemClockRate ≤ ÷ 2

备注

以下操作系统从 KB5006744 开始应用累积更新,因此它们采用 Windows Server 2016 及更高版本的更新方式公式:

  • Windows Server 2025
  • Windows Server 2022
  • Windows Server 2019 版本 1809
  • Windows 11
  • Windows 10 版本 1809

在这些公式中,PhaseCorrectRateUpdateIntervalMaxAllowedPhaseOffsetSystemClockRate以时钟刻度为单位测量。 在 Windows 系统上,1 毫秒等于 10,000 时钟刻度。

可以在注册表中配置 MaxAllowedPhaseOffset 值。 但是,注册表参数是以秒为单位(而不是以时钟计时周期为单位)来测量的。

SystemClockRate若要查看和pollIntervalInSeconds值(以秒为单位),请打开命令提示符窗口,然后运行以下命令: w32tm /query /status /verbose 此命令生成类似于以下行的输出:

Leap Indicator: 0(no warning)
Stratum: 1 (primary reference - syncd by radio clock)
Precision: -23 (119.209ns per tick)
Root Delay: 0.0003538s
Root Dispersion: 0.0100002s
ReferenceId: 0x00000000 (unspecified)
Last Successful Sync Time: 5/23/2023 7:51:39 PM
Source: VM IC Time Synchronization Provider
Poll Interval: 6 (64s)
 
Phase Offset: -0.0000013s
ClockRate: 0.0156250s
State Machine: 2 (Sync)
Time Source Flags: 3 (Authenticated Hardware )
Server Role: 0 (None)
Last Sync Error: 0 (The command completed successfully.)
Time since Last Good Sync Time: 15.7344985s

在输出中,轮询间隔以时钟周期和秒为单位列出。 公式使用以秒为单位来测量的值(圆括号中的值)。

输出以秒为单位列出时钟速率。 若要以时钟刻度为单位计算 SystemClockRate 值,请使用以下公式:

value in clock ticks) = (value in seconds) × 1,000 × 10,000

此公式使用以下转换因素:

  • 一秒等于 1,000 毫秒。
  • 一毫秒等于 Windows 系统上的 10,000 时钟刻度,如 DateTime.Ticks 属性中所述。

例如:

  • 如果 SystemClockRate 为 0.0156250 秒,则公式生成的值为 156,250 时钟刻度。
  • 按扩展,5 分钟变为 5 × 60 × 1000 × 10000 = 3,000,000,000 时钟刻度。

以下示例演示如何为 Windows Server 2012 R2 和早期版本应用阶段更正计算。

示例:系统时钟速率关闭四分钟

如果计算机时钟时间为 11:05,并且实际当前时间为 11:09, w32tm 请使用以下值:

  • PhaseCorrectRate = 1
  • UpdateInterval = 30,000 个时钟计时周期
  • SystemClockRate = 156,000 个时钟计时周期
  • MaxAllowedPhaseOffset = 10 分钟 = 600 秒 = 600 x 1,000 x 10,000 = 6,000,000,000 个时钟计时周期
  • CurrentTimeOffset = 4 分钟 = 4 × 60 × 1,000 × 10,000 = 2,400,000,000 个时钟计时周期

若要重置时钟, w32tm 请检查以下条件:

CurrentTimeOffsetMaxAllowedPhaseOffset

在这种情况下,条件具有以下值,因此计算结果为 true:

2,400,000,000,000 ≤ 6,000,000,000

接下来, w32tm 检查以下条件:

(CurrentTimeOffset) ÷ (PhaseCorrectRate × UpdateInterval) ≤ SystemClockRate ÷ 2?

在这种情况下,条件具有以下值:

2,400,000,000 ÷ (30,000 × 1) ≤ 156,000 ÷ 2,或 80,000 ≤ 78,000

此条件为假。 因此, w32tm 立即将时钟设置回去。

备注

在此示例中,如果要慢慢地调回时钟,还必须调整注册表中的 PhaseCorrectRateUpdateInterval 的值,以确保公式结果为 true。

示例:系统时钟误差了三分钟

如果计算机时钟时间为 11:05,并且实际当前时间为 11:08, w32tm 请使用以下值:

  • PhaseCorrectRate = 1
  • UpdateInterval = 30,000 个时钟计时周期
  • SystemClockRate = 156,000 个时钟计时周期
  • MaxAllowedPhaseOffset = 10 分钟 = 600 秒 = 600 x 1,000 x 10,000 = 6,000,000,000 个时钟计时周期
  • CurrentTimeOffset = 3 分钟 = 3 × 60 × 1,000 × 10,000 = 1,800,000,000 个时钟计时周期

若要重置时钟, w32tm 请检查以下条件:

CurrentTimeOffsetMaxAllowedPhaseOffset

在这种情况下,条件具有以下值,因此计算结果为 true:

1,800,000,000,000 ≤ 6,000,000,000

接下来, w32tm 检查以下条件:

(CurrentTimeOffset) ÷ (PhaseCorrectRate × UpdateInterval) ≤ SystemClockRate ÷ 2?

在这种情况下,条件具有以下值:

(1,800,000,000) ÷ (1 × 30,000) ≤ 156,000 ÷ 2,或 60,000 ≤ 78,000

此条件为真。 将时钟慢慢调回。

使用本地组策略编辑器

W32Time 将多个配置属性存储为注册表项。 可以使用本地组策略编辑器中的组策略对象 (GPO) 来配置大部分此信息。 例如,可以使用 GPO 将计算机配置为 NTP 服务器或 NTP 客户端、配置时间同步机制或将计算机配置为可靠的时间源。 还可以将 W32Time 的组策略设置应用于域控制器。

Windows 将 W32Time 策略信息存储在 计算机配置\管理模板\System\Windows 时间服务的本地组策略编辑器中。 它存储策略在 Windows 注册表中定义的配置信息,然后使用这些注册表项来配置特定于 W32Time 的注册表项。 因此,组策略定义的值将覆盖注册表的 W32Time 部分中任何预先存在的值。 某些预设 GPO 设置不同于相应的默认 W32Time 注册表项。

下表列出了可以为 W32Time 配置的策略及其影响的注册表子项的对应项。

组策略 注册表位置1、2
全局配置设置 W32Time
W32Time\Config
W32Time\Parameters
时间提供程序\配置 Windows NTP 客户端 W32Time\TimeProviders\NtpClient
时间提供程序\启用 Windows NTP 客户端 W32Time\TimeProviders\NtpClient
时间提供程序\启用 Windows NTP 服务器 W32Time\TimeProviders\NtpServer

1 子项:HKLM\SOFTWARE\Policies\Microsoft
2 子项:HKLM\SYSTEM\CurrentControlSet\Services\W32Time

备注

删除组策略设置后,Windows 会从注册表的策略区域中删除相应的条目。

W32Time 的 GPO 默认设置

下表列出了启用 全局配置设置 时的默认值:

组策略设置 默认值
AnnounceFlags 10
链禁用 0
链条输入超时 16
链日志速率 30
ChainMaxEntries 128
ChainMaxHostEntries 4
时间调整审计限制 800
时钟保持期 7,800
事件日志标志 (EventLogFlags) 2
频率校正率 4
持有期 5
大相位偏移 五千万元
本地时钟分散度 10
最大允许相位偏移 300
最大负相位校正 172,800(48 小时)
最大轮询间隔时间 10
MaxPosPhaseCorrection 172,800(48 小时)
MinPoll间隔时间 6
相位校正率 1
投票调整因子 5
要求安全时间同步请求 0
SpikeWatchPeriod 900
更新间隔 100(1 秒)
UtilizeSslTimeData 1

NTP 客户端的 GPO 设置

下表列出了 计算机配置\管理模板\系统\Windows 时间服务\时间提供程序\配置 Windows NTP 客户端中的默认 Windows NTP 客户端设置。

组策略设置 默认值
Ntp服务器 time.windows.com、0x9
类型 NT5DS:用于已加入域的计算机
用于非域连接计算机的NTP
跨站同步标志 (CrossSiteSyncFlags) 2
解决对等退避分钟数 15
ResolvePeerBackoffMaxTimes 7
特殊轮询间隔 1024
事件日志标志 (EventLogFlags) 0

备注

如果使用组策略将值设置为NtpServer配置 Windows NTP 客户端策略的一部分,并将其应用于域成员,则 W32Time 不使用NtpServer注册表值。 若要查看 NTP 配置,请打开命令提示符并运行以下命令: w32tm /query /configuration

W32Time 注册表参考

W32Time 将信息存储在以下注册表路径下:

HKLM\SYSTEM\CurrentControlSet\Services\W32Time
HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config
HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Parameters
HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient
HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer

警告

在排除故障或进行验证时,可参考本信息。 W32Time 使用 Windows 注册表项来存储关键信息。 请勿更改这些值。 在应用注册表之前,注册表编辑器或 Windows 不会验证对注册表的修改。 如果注册表包含无效值,Windows 可能会遇到无法恢复的错误。

注册表中的某些参数以时钟计时周期度量,某些参数以秒为单位度量。 若要在两个单元之间进行转换,请参阅前面“ 配置计算机时钟重置”中的说明。

下表中, “所有版本 ”是指所有受支持的 Windows 和 Windows Server 版本。

注册表项 版本 说明
AnnounceFlags 所有版本 控制是否将此计算机标记为可靠的时间服务器。 除非将计算机标记为时间服务器,否则不会将其标记为可靠。

  • 0x00:非时间服务器
  • 0x01:时间同步服务器
  • 0x02:自动时间服务器
  • 0x04:始终可靠的时间服务器
  • 0x08:自动可靠时间服务器

域成员的默认值为 10。 独立客户端和服务器的默认值为 10

ClockAdjustmentAuditLimit Windows Server 2016 版本 1709 及更高版本;Windows 10 版本 1709 及更高版本 指定可记录到目标计算机上的 W32Time 事件日志的最小本地时钟调整。 默认值是每百万份中800份(ppm)。
ClockHoldoverPeriod Windows Server 2016 版本 1709 及更高版本;Windows 10 版本 1709 及更高版本 指示在不与时间源同步的情况下,系统时钟可以在名义上保持其准确性的最大秒数。 如果这段时间已过,而 W32Time 未从任何输入提供程序获取新示例,W32Time 就会开始重新发现时间源。 默认值为 7,800 秒。
EventLogFlags 所有版本 控制时间服务记录哪些事件。

  • 0x1:时间跳跃
  • 0x2:源更改

域成员的默认值为 2。 独立客户端和服务器的默认值为 2

FrequencyCorrectRate 所有版本 控制校正时钟的速率。 如果此值太小,则时钟不稳定,并且出现过度校正。 如果值太大,则时钟需要很长时间才能同步。 域成员的默认值为 4。 独立客户端和服务器的默认值为 4

零不是 FrequencyCorrectRate 注册表项的有效值。

HoldPeriod 所有版本 控制禁用峰值检测以使本地时钟快速进入同步状态的时间段。 峰值是一个时间样本,表示时间偏差了几秒,并且在持续返回良好时间样本后才会收到。 域成员的默认值为 5。 独立客户端和服务器的默认值为 5
LargePhaseOffset 所有版本 指定将大于或等于此值(以 10-7 秒为单位)的时间偏移视为峰值。 网络干扰(如流量过大)可能会导致出现峰值。 除非持续很长时间,否则将忽略峰值。 域成员的默认值为 50,000,000。 独立客户端和服务器上的默认值为 50,000,000
LocalClockDispersion 所有版本 控制在唯一时间源为内置 CMOS 时钟时必须采用的离差(以秒为单位)。 域成员的默认值为 10。 独立客户端和服务器的默认值为 10
最大允许相位偏移 所有版本 指定 W32Time 尝试使用时钟速率调整计算机时钟的最大偏移量(以秒为单位)。 当偏移量超过此速率时,W32Time 会直接设置计算机时钟。 域成员的默认值为 300。 独立客户端和服务器的默认值为 1
MaxClockRate 所有版本 由 W32Time 维护。 它包含 Windows作系统使用的保留数据,对此设置所做的任何更改都可能导致不可预知的结果。 域成员的默认值为 155,860。 独立客户端和服务器的默认值为 155,860
MaxNegPhaseCorrection 所有版本 指定服务可以进行的最大负向时间校正(以秒为单位)。 如果服务确定需要大于此值的更改,则会改为记录事件。

0xFFFFFFFF 为特例。 此值表示服务始终校正时间。

域成员的默认值为 0xFFFFFFFF(十六进制)。 域控制器的默认值为 172,800(48 小时)。 独立客户端和服务器的默认值为 54,000(15 小时)。

MaxPollInterval 所有版本 指定系统轮询间隔允许的最大间隔(以 log2 秒为单位)。 系统必须根据预定的间隔轮询。 提供商在请求这样做时可以拒绝生成样本。 域控制器的默认值为 10。 域成员的默认值为 15。 独立客户端和服务器的默认值为 15
MaxPosPhaseCorrection 所有版本 指定服务可以进行的最大正向时间校正(以秒为单位)。 如果服务确定需要大于此值的更改,则会改为记录事件。

0xFFFFFFFF 为特例。 此值表示服务始终校正时间。

域成员的默认值为 0xFFFFFFFF(十六进制)。 域控制器的默认值为 172,800(48 小时)。 独立客户端和服务器的默认值为 54,000(15 小时)。

MinClockRate 所有版本 由 W32Time 维护。 它包含 Windows作系统使用的保留数据,对此设置所做的任何更改都可能导致不可预知的结果。 域成员的默认值为 155,860。 独立客户端和服务器的默认值为 155,860
MinPollInterval 所有版本 指定系统轮询间隔允许的最小间隔(以 log2 秒为单位)。 系统不比此值更频繁地请求示例。 提供程序可以在计划间隔以外的时间生成示例。 域控制器的默认值为 6。 域成员的默认值为 10。 独立客户端和服务器的默认值为 10
PhaseCorrectRate 所有版本 控制校正相位错误的速率。 指定小值可快速更正阶段错误,但可能导致时钟不稳定。 如果该值过大,则需要较长的时间来校正相位错误。

域成员的默认值为 1。 独立客户端和服务器的默认值为 7

零不是 PhaseCorrectRate 注册表项的有效值。

PollAdjustFactor 所有版本 控制是决定增大还是决定减小系统的轮询间隔。 值越大,导致轮询间隔减少的错误量就越小。 域成员的默认值为 5。 独立客户端和服务器的默认值为 5
SpikeWatchPeriod 所有版本 指定可疑偏移量在被接受为正确偏移量之前必须持续的时间(以秒为单位)。 域成员的默认值为 900。 独立客户端和工作站的默认值为 900
TimeJumpAuditOffset 所有版本 指示时间跳转审核阈值(以秒为单位)。 偏移量存储为无符号整数。 如果时间服务通过直接设置时钟来调整本地时钟,并且时间更正大于此值,则时间服务会记录审核事件。
UpdateInterval 所有版本 指定相位校正调整之间的时钟计时周期数。 域控制器的默认值为 100。 域成员的默认值为 30,000。 独立客户端和服务器的默认值为 360,000

零不是 UpdateInterval 注册表项的有效值。

UtilizeSslTimeData Windows 10 版本 1511 之后的 Windows 版本 指示 W32Time 是否使用多个 SSL 时间戳来调整一个严重不准确的时钟。 值为 1 表示使用了多个 SSL 时间戳。

UtilizeSslTimeData 注册表值引用了安全时间播种特性。 有关详细信息,请参阅 安全时间播种 - 改进 Windows 中的时间管理

此功能的所有 Windows 版本默认值为 1,但 Windows Server 2025 的默认值为 0。 域成员身份不会影响此设置。

增强了日志记录

以下注册表项不是 W32Time 默认配置的一部分,但你可以将它们添加到注册表以获取增强的日志记录功能。 可以通过调整组策略对象编辑器中的 EventLogFlags 设置来修改记录到系统事件日志的信息。 默认情况下,W32Time 每次切换到新的时间源时都会记录事件。

若要启用增强的 W32Time 日志记录,请将以下注册表项添加到路径中 HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config

条目 版本 说明
FileLogEntries 所有版本 控制在 W32Time 日志文件中创建的条目数。 默认值为 none,这将导致没有 W32Time 活动日志。 有效值为 0300。 此值不会影响 W32Time 通常创建的事件日志条目。
FileLogName 所有版本 控制 W32Time 日志的位置和文件名。 默认值为空。 除非 FileLogEntries 发生更改,否则不应更改它。 有效值是 W32Time 用于创建日志文件的完整路径和文件名。 此值不会影响 W32Time 通常创建的事件日志条目。
FileLogSize 所有版本 控制 W32Time 日志文件的循环日志记录行为。 定义 FileLogEntriesFileLogName 时,也会定义此值。 它包含日志文件在用新条目覆盖最早日志条目之前可以达到的大小(以字节为单位)。 对此设置使用 1,000,000 或更大的值。 此值不会影响 W32Time 通常创建的事件日志条目。