问题
从Windows 2008 Server上托pipe的WCF服务调用ISP托pipe的一个ASP Web服务正在显示webservice的超时/无响应。
诊断
使用Windowsnetworking监视器来捕获和隔离数据包发送一个Web服务我可以看到:
TLS握手你好
TCP传输
TCP重传
TCP重传
TCP重传
TCP重传
TCP重传
TCP否定比例因子
TCP比例因子不受支持
这似乎没有显示任何意味着IP块的TCP有效负载的响应。
解
联系webservice提供商后,他们build议不要使用IP块,这个问题是针对Microsoft Windows 2008 Server,dynamicTCP帧大小及其特定负载平衡器的。
经过一些进一步的研究,我相信下面将解决。
要查看autoTuningLevel参数的当前configuration,请按照下列步骤操作:
点击开始
单击所有程序,然后单击附件。
用鼠标右键单击命令提示符,然后单击以pipe理员身份运行。
如果系统提示您inputpipe理员密码或进行确认,请键入密码或单击“继续”。
命令提示符键入下面的命令,然后按ENTER键:netsh接口tcp显示全局
autoTuningLevel参数的值被列为接收窗口自动调节级别。
我们预计这将被设置为正常
命令提示符键入下面的命令,然后按ENTER键:netsh接口tcp设置全局autotuninglevel =禁用
以下列表包含autoTuningLevel参数的所有可能值:
/ disabled:将接收窗口设置为默认值。
/高度限制:让接收窗口增长超出默认值,但非常保守。
/ restricted:允许接收窗口增长超出默认值,但在某些情况下限制这种增长。
/ normal:让接收窗口增长以适应大多数场景。
/ experimental:让接收窗口增长以适应极端情况。
注意实验值可能会降低常见情况下的性能。 这个值只能用于研究目的。
题
只需从一个独立的来源寻找关于这个问题的进一步信息。
希望它能在某个时候被MS打上补丁。
谢谢Scott
REF: http : //support.microsoft.com/kb/935400
几件事情:
这不是一个需要补丁的问题,因为这不是一个错误。 这是一个function增强。
Web服务提供商负载均衡器不支持该function,所以真正的问题是他们不支持它,而不是微软实施它。
如果解决scheme是禁用服务器上的function,由于当前的负载平衡器,那么这就是解决scheme。
TCP Windows Scaling的概念早在1988年就以RFC 1072的方式引入,并于1992年在RFC 1323中进行了完善。
这里有更多的信息:
https://www.google.com/#hl=en&gs_nf=1&tok=2Z0E4Znj0AxsSRXPwvVWBg&cp=13&gs_id=1k&xhr=t&q=TCP+Window+Scaling&pf=p&sclient=psy-ab&oq=TCP+Window+Sc&aq=0&aqi=g4&aql=&gs_l=&pbx = 1&BAV = on.2,or.r_gc.r_pw.r_qf。,cf.osb&FP = 41e29ab53187148e&BIW = 1920&波黑= 911