跳转到内容

Windows 11 25H2 中的 TCP ACK 与延迟 ACK

本页内容

TcpAckFrequency 和 TcpDelAckTicks 在具体接口层面控制 TCP 确认。参数读取和取值范围已确认;缩短 ACK 延迟并不保证带来收益,并且会增加反向数据包的数量。

检查了网络接口的参数路径、默认值、取值范围以及对 TCP 确认规则的影响。

Windows 11 25H2 build 26200.9168,接口级 TCP 参数。有丢包的网络、Wi-Fi、VPN 以及不同服务器不在受控测量范围内。

解析 TCP 组件和系统跟踪,检查值的转换,并与 Microsoft 公开文档进行核对。

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{Interface-GUID}

Value Type Default 有效范围 作用
TcpAckFrequency REG_DWORD 2 0..255 确认前 full-sized segments 的数量
TcpDelAckTicks REG_DWORD 2 0..6 以 100-ms ticks 为单位的 delayed ACK 延迟

TcpAckFrequency=1 设定对每个全尺寸段发送 ACK。值 2 保留常规的 TCP 延迟确认规则。TcpDelAckTicks 以 100 毫秒为步长计量:默认值 2 设定约 200 毫秒的上限,而 0 则取消定时器的额外等待。其他 TCP 规则仍可能触发立即确认。

TCP 栈使用为具体网络接口读取的值。写入全局注册表项并不能替代接口设置。新的 VPN、vEthernet 或临时适配器会获得自己的 GUID,并在未专门为其设置参数之前保留默认值。

缩短 ACK 延迟可能有助于对处理小数据包和延迟确认敏感的应用。但与此同时,反向数据包的数量以及网卡和 CPU 的负载都会增加。结果取决于连接的另一端、拥塞控制和 MTU,因此并不保证网络延迟会降低。

  • 带 GUID 的接口参数路径。
  • 0..255 和 0..6 的默认值及有效范围。
  • 全局注册表项不能替代具体接口的设置。
  • 新的 VPN 或临时适配器会获得自己的 GUID 和默认值。
  • ping 或应用延迟的降低。
  • 与具体服务器、路由和丢包情况下的行为。
  • 在 Wi-Fi、VPN 和游戏中的收益。

请保留默认值。只有在出现可复现的小数据包问题时才缩短 ACK 延迟,并留意反向数据包的数量和网络负载。

将接口值恢复为 2 或删除相关项。更改会应用于新连接。

本次检查针对 Windows 11 25H2。参数读取、默认值和取值范围已确认。最终收益未在不同服务器、Wi-Fi 与 Ethernet、MTU 和丢包的受控测试中测量。将部分处理交给网卡并不能取消 TCP 确认规则。不过,批处理、VPN 以及连接另一端的行为可能会掩盖或改变观察到的效果。

本文不包含自身的动态观察:未测量运行系统中网络栈对值的读取,也未测量受控场景下实际的确认间隔。关于读取和取值范围的论断依据的是对 TCP 组件的解析和 Microsoft 公开文档,而非自身测量。

如何自行完成检查的动态部分——参见如何自行检查。

研究与所用工具归 BoosterX 开发者所有,因此开发者对结果存在直接利益关系。方法和适用范围已在上文描述,结论可通过公开数据和所列公开来源进行验证。

公开来源核查于:2026-09-02。

  • **2026-09-20:**在方法中新增了关于利益冲突的免责声明以及自行进行动态检查的链接。
  • **2026-09-19:**在局限性中明确补充了缺少自身动态观察和 ACK 间隔测量。
  • **2026-09-02:**首次发布;确认了路径、defaults 和取值范围,补充了对延迟影响的边界。