本文介绍 TcpAckFrequency,这是一个新的注册表项,用于确定 TCP 确认数(ACK)。
原始 KB 数: 328890
总结
TcpAckFrequency 是一个注册表项,用于确定在忽略延迟的 ACK 计时器之前将未完成的 TCP 确认数(ACK)。
详细信息
如 RFC 1122 中指定的,TCP 使用延迟确认来减少在媒体上发送的数据包数。 Windows 中的 TCP 采用常见方法来实现延迟确认,而不是为每个收到的 TCP 段发送确认。 当 TCP 在特定连接上接收数据时,仅当以下条件之一为 true 时,才会发送确认回发:
- 未为收到的上一段发送确认。
- 收到段,但该连接没有其他段在 200 毫秒内到达。
通常,除非延迟的 ACK 计时器(200 毫秒)过期,否则会为连接上收到的所有其他 TCP 段发送确认。 可以通过编辑以下注册表项来调整延迟的 ACK 计时器。
重要
此部分(或称方法或任务)介绍了修改注册表的步骤。 但是,注册表修改不当可能会出现严重问题。 因此,按以下步骤操作时请务必谨慎。 作为额外保护措施,请在修改注册表之前先将其备份。 如果之后出现问题,您就可以还原注册表。 有关如何备份和还原注册表的详细信息,请单击下面的文章编号,查看相应的 Microsoft 知识库文章:322756 如何备份和还原 Windows 中的注册表
子项: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces<Interface GUID> 条目: TcpAckFrequency 值类型:REG_DWORD、数字 有效范围:0-255 默认值:2 说明:指定在忽略延迟的 ACK 计时器之前将未完成的 ACK 数。 Microsoft不建议在不仔细研究环境的情况下更改默认值。
如果将值设置为 1,则会立即确认每个数据包,因为仅收到一个未完成的 TCP ACK 作为段。 值 0(零)无效,被视为默认值 2。 当未收到段且主机不会确认数据时,ACK 编号为 0 的唯一时间。