本文介绍如何优化慢速链接检测,以有效平衡带宽估算的质量与计算估计所花费的时间量。
总结
Windows 用户配置文件服务可以使用慢链接检测来确定在用户登录时是否将漫游用户配置文件下载到客户端计算机。 如果服务确定与客户端计算机的连接速度较慢,则客户端将跳过下载。 而是加载漫游用户配置文件的本地副本。 该服务还会记录类似于以下内容的事件:
日志名称: 应用程序
来源:Microsoft-Windows-用户配置文件服务
事件 ID:1543
任务类别:无
级别: 错误
关键字:
说明:
检测到漫游配置文件\\profileserver.contoso.com\profileshare$\USER\RWacker.V6
的网络连接缓慢。 它不会与此计算机上的配置文件同步。
用户可能还会收到类似于以下内容的消息:
漫游配置文件未与服务器同步,因为检测到网络连接缓慢。 已使用本地配置文件登录。
慢链接检测设置的默认配置应正确识别大多数部署中的慢速链接。 但是,如果 Windows 似乎无法正确识别慢链接,请考虑更改慢链接检测设置。 例如,如果用户配置文件服务确定网络连接是快速链接,但实际上连接速度较慢,则用户登录体验可能异常缓慢。 用户可能会在长时间内看到“正在等待用户配置文件服务”消息。
详细信息
以下部分介绍了慢速链接检测算法的工作原理,并建议在你自己的测试和优化中考虑起点和因素。
Windows 如何检测慢速链接
启用慢链接检测后,用户配置文件服务将使用服务器上的临时文件来执行一组文件写入和读取。 为了计算这些操作期间的链接速度和延迟,服务使用网络位置感知(NLA)服务测量的统计信息。
临时文件的大小由 PingBufferSize 注册表项指定。 此项的定义如下:
- 子项: “HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon”
- 值: “PingBufferSize”
- 类型:REG_DWORD
- 数据: 文件大小(以字节为单位)
- 默认值: 65,536
- 最小值: 2,048
- 最大值: 65,536 或 4,194,304
注意
PingBufferSize 的最大值取决于 Windows 版本,如本文稍后所述。
估计的质量取决于 PingBufferSize 值,以及算法的指标与实际传输模式和网络拓扑的匹配程度。
链接检测在较旧的操作系统中的工作原理
对于 Windows Server 2016 及更低版本,以及 Windows 10 版本 1803 及更早版本,PingBufferSize 的最大值为 65536。 在链接测试期间,服务将写入 PingBufferSize + 200 字节的数据,然后测量统计信息。
此算法不提供经过充分优化以有效识别慢速链接的估计值。 它可以生成误报(连接标记为慢链接,尽管速度足够快)或误报(尽管连接速度缓慢,但未标记为慢链接)。
链接检测在当前操作系统中的工作原理
Windows Server 2019 和 Windows 10 版本 1809 及更高版本中更改了慢速链接检测过程。 此外,PingBufferSize 值的最大值已增加到4194304。 这些更改在以下更新中可用:
- Windows Server 2019 和 Windows 10 1809: KB 4601383,2021 年 2 月 16 日-KB4601383(OS 内部版本 17763.1790) 预览版
- Windows 10 1909: KB 4601380,2021 年 2 月 16 日 - KB4601380(OS 内部版本 18363.1411) 预览版
- Windows 10 20H1/20H2: KB 4601382,2021 年 2 月 24 日 - KB4601382(OS 内部版本 19041.844 和 19042.844) 预览版
新算法使用不同的文件访问模式。 新算法使用写入和读取的组合,而不是一次性写入数据,如下所示:
- 写入 (PingBufferSize + 8 KB) 数据
- 读取数据四次(4 × (PingBufferSize + 8 KB)
此算法生成更准确的延迟和吞吐量度量。 新的最大 PingBufferSize 值可提供更大的灵活性。 但是,如果链接速度非常慢,则较大的 PingBufferSize 值可能会降低算法本身的速度,以便延迟下载用户配置文件的整个过程。
控制慢链接检测的设置
Windows 提供了多个组策略设置,用于控制慢速链接检测。 下表描述了其中一些最重要的策略。 有关如何使用这些策略的详细信息,请参阅 策略 CSP - ADMX_UserProfiles:ADMX_UserProfiles/SlowLinkTimeOut。
重要
如果已启用,则 禁用对慢速网络连接 策略的检测会关闭慢链接检测。 在这种情况下,将忽略本文中所述的策略。
策略 | 用途 |
---|---|
控制用户配置文件的网络连接缓慢超时 | 如果启用此策略设置,则可以更改 Windows 等待服务器响应的时间,然后再将其视为连接速度缓慢。 如果禁用或未配置此策略设置,Windows 会认为,如果服务器返回的每秒数据少于 500 千位,或响应需要 120 毫秒,则网络连接速度会变慢。 |
等待远程用户配置文件 | 如果启用此策略设置,系统将等待漫游用户配置文件的远程副本加载,即使下载速度较慢。![]() 如果禁用此策略设置或未对其进行配置,则当远程配置文件下载速度缓慢时,系统会加载漫游用户配置文件的本地副本。 |
检测到慢速网络连接时提示用户 | 如果启用此策略设置,则允许用户定义在检测到与漫游配置文件服务器链接缓慢时是否希望下载其漫游配置文件。 |
测试影响部署的配置文件下载速度的因素
若要优化环境的用户配置文件下载,必须平衡以下因素:
- 服务级别协议(SLA),用于控制用户登录和注销过程的总允许时间
- 影响用户个人资料下载速度的因素
- 优化用户网络连接缓慢链接检测算法的策略和注册表设置
以下值是策略和注册表设置的默认值。
- 连接速度:500 kbps
- 等待时间:120 毫秒
- PingBufferSize:65,536 字节
我们已使用 < 10 Mbit/s 宽带链路以及 VPN、Wi-Fi 网络和 LAN 连接测试了慢速链路检测。 此测试表明 ,PingBufferSize 为 1,048,576 (1 MB)提供了正确识别慢链接和延迟链接检测过程之间的平衡。 建议使用此值开始测试。 根据环境的不同,应使用的实际值可能较低或更高。
为了确保慢速链接检测在各种条件下可靠工作,请测试多个配置文件组合(全同步和增量同步)和网络条件。
要考虑的网络因素
最慢的潜在速度。 考虑你期望用户拥有的最慢的网络链接。 通常,这包括移动运营商连接(如 LTE 或 UMTS)和家庭 Internet 连接(如 DSL 和电缆)。
这些网络往往具有非对称速度。 此设计意味着下载文件的速度高于上传文件的速度。 由于它使用的读取次数是相同数据的写入次数的四倍,因此新的慢速链接检测算法非常适合分析非对称速度网络。
注意
当用户注销 Windows 时,Windows 会上传在用户会话期间更新的任何配置文件。 已标识为快速链接的链接可能仍会产生缓慢的注销体验。
计量。 这些链接也可以按流量计费(根据传输的数据量定价)。 配置文件传输和慢链接检测操作都有助于数据传输总量。 因此,更大的 PingBufferSize 可能会增加网络成本。
加密。 VPN 连接通常压缩和加密数据。 压缩、加密和解密会为网络传输增加时间,尤其是因为某些用户配置文件数据无法很好地压缩。
要考虑的用户配置文件因素
当用户登录到 Windows 时,用户配置文件服务会枚举用户配置文件中的所有文件,以确定在本地副本上更新的内容。 此更新可能涉及下载已更改的几个文件(增量更新)或下载整个用户配置文件(完全同步)。 当用户注销时,Windows 将上传已更改的任何配置文件。 此事务类似于增量更新。
对于测试,请考虑下载整个用户配置文件所需的时间,尤其是你拥有的最大配置文件的时间。 由于用户配置文件服务枚举文件,因此配置文件的“大小”取决于文件的数量和这些文件中的数据总量。 确保即使完全下载最大配置文件,用户登录体验也符合 SLA。
优化用户配置文件
可以通过配置用户配置文件来改善通过慢速链接的登录体验,如下所示:
- 使用“限制配置文件大小”策略来限制配置文件的大小。
- 将用户文件夹重定向到配置文件外部的位置(例如,将用户文件 保存在 OneDrive for Business 文件夹中)。
- 使用漫游配置文件中的“排除目录”选择性地排除文件夹。
另请参阅
- 组策略搜索 (GPS) (gpsearch.azurewebsites.net)
- KB 4601383,2021 年 2 月 16 日-KB4601383(OS 内部版本 17763.1790) 预览版
- KB 4601380,2021 年 2 月 16 日 - KB4601380(OS 内部版本 18363.1411) 预览版
- KB 4601382,2021 年 2 月 24 日 - KB4601382(OS 内部版本 19041.844 和 19042.844) 预览版
- 将 Windows 已知文件夹重定向并移动到 OneDrive
- 策略 CSP - ADMX_UserProfiles:ADMX_UserProfiles/SlowLinkTimeOut