Windows 2008 R2上的低延迟TCP设置

我在W2008服务器上运行第三方软件。 该客户端通过TCP连接到服务器。 两者之间的平均ping时间是1ms。 但是,当我检查应用程序的资源监视器中的tcp连接它显示的延迟为20毫秒。

我在客户端接口上运行数据包捕获,并看到<1ms的确认时间。 客户端的tcp设置如下:

 接收方缩放状态:启用 
烟囱卸载状态:自动 
 NetDMA状态:启用 
直接caching接入(DCA):禁用 
接收窗口自动调节级别:正常 
附加拥塞控制提供者:ctcp 
 ECNfunction:禁用 
 RFC 1323时间戳:已禁用 

此外,我已经在特定接口的registry中将TcpNoDelay和TcpAckFrequency设置为1。 网卡已启用卸载。

资源监视器如何计算这个20毫秒的TCP延迟? Win2008中有没有其他TCP设置可以减less这种延迟?

因此,首先,资源监视器/ perfmon使用一个不同的测量系统,以什么wireshark等使用,所以这就是为什么延迟是不同的。

没有深入windows API的深入,差异是由后处理和低优先级引起的。

鉴于实际的延迟是1毫秒,没有没有任何进一步的设置,你可以申请,我不知道你可以做任何修改'修复'的Windows API perfmon,所以它显示'正确的'延迟。

如果你喜欢我可以findperfmon慢的确切原因,但根据以前的经验提到的原因是为什么。