更改TcpAckFrequency对降低星际争霸2的延迟有帮助?
2010 9 22 04:29 PM 3144次查看
分类:StarCraft2 标签:StarCraft2
我去查看了一下,发现这个玩意就是修改TcpAckFrequency,对于其他网游,如RO也有效。
虽说看到很多人说延迟明显降低了,但我仍抱持着怀疑的态度,于是在微软官网找到了《New registry entry for controlling the TCP Acknowledgment (ACK) behavior in Windows XP and in Windows Server 2003》一文。里面提到了Windows 2000以后增加了延迟响应的功能。
当收到一个报文段,Windows只有在以下2种情况时(任意符合一种即可)才会向服务器响应这个报文:
- 前一个接收到的报文还未发出响应
- 在接收到报文后的200毫秒内,当前连接没有其他报文段到达
很明显,这个修改只会降低自己的响应延迟,不会降低发送延迟。
也就是说,你操作兵去a时,是你发送报文,服务器去响应,所以并不会有明显变化。
但是如果是对方来a,这时候服务器会发送报文告诉你部队开始交战了,你会向服务器确认你收到了这个报文,这个确认不需要等待200毫秒,或连续收到2个报文再去响应。
这种延迟,估计最明显的表现就是双方交战,你还没反应过来就被几个EMP偷袭了。但提前0.2秒反应对我这种菜鸟估计也没什么用…
但是对于WOW之类的网游,我想大部分的计算是在本地进行的,并不是都由服务器来响应,而且同一场景的玩家众多,修改他可能会有所帮助。
当然,这个主要还是针对服务器,可以降低服务器的响应延迟,个人电脑实在看不出有改的必要。
最后为了验证我的推测,我特意修改了一次去试试,发现变得更卡了…当然,这也可能只是台服间歇性抽风的问题。
顺带一提,TcpAckFrequency的值域为0~255,默认值是2,也就是接收到2个报文才发送响应,改成1就是立即发送了。
向下滚动可载入更多评论,或者点这里禁止自动加载。