Windows TCP window设置过小导致HSPA+无法达到最高速率的案例.doc_第1页
Windows TCP window设置过小导致HSPA+无法达到最高速率的案例.doc_第2页
Windows TCP window设置过小导致HSPA+无法达到最高速率的案例.doc_第3页
Windows TCP window设置过小导致HSPA+无法达到最高速率的案例.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

案例名称:Windows TCP WINDOW设置过小导致HSPA+无法达到最高速率的案例现象描述:某项目在测试HSPA+ 64QAM过程中, 在同一测试地点,在室内分步系统的天线附近,信号非常好,客户使用的THINKPAD电脑单线程始终只能达到14Mbps,而使用我们的测试电脑,单线程很容易达到19Mbps。告警信息:检查RNC和NodeB没有与之相关的异常告警原因分析:通过两台电脑的对比测试,基本可以排除下列原因:1、 信号不好;2、 IUB接口有丢包;3、 FTP server速率限制;因为是单线程下载,怀疑的重点是客户电脑TCP WINDOW设置过小。为了验证这个怀疑,当客户使用2线程下载时,速率可以达到18M左右,但是速率不稳定。使用DRTCP软件将客户的电脑TCP WINDOW设置为与我们的测试电脑相同,TCP WINDOW=200000byte,重新启动电脑后,进行测试,速率仍然只能达到14Mbps左右。为了进一步验证是TCP WINDOW受限,对我们的测试电脑和客户电脑进行ethereal抓包。下面是客户电脑的TCP WINDOW设置,电脑客户端与FTP server经过三次TCP握手协商之后,TCP WINDOW大小只有128000byte。下面是我们的测试电脑TCP WINDOW设置,电脑客户端与FTP server经过三次TCP握手协商之后,TCP WINDOW大小为200020byte。检查客户电脑的注册表,发现TCP WINDOW的设置已经生效,Tcp1323Opts设置为1,TcpWindowSize =200000byte。但是为什么ethereal抓包看到的TCP WINDOW却是128000byte呢?后来通过internet查找,发现Windows XP版本对TcpWindowSize有如下限制:Under Windows XP SP2 or later, the DefaultReceiveWindow value in the AFD branch of the Registry takes precedence over the RWIN values in the TCP branch. Under SP1, it is the other way around, the values in the TCP branch override the AFD value and go out in TCP packet headers.则说明限制TcpWindowSize的地方有两个,分别是:1)Tcp1323OptsKey: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters Value Type: REG_DWORDnumber (flags)Valid Range: 0, 1, 2, 30 (disable RFC 1323 options)1 (window scaling enabled only)2 (timestamps enabled only)3 (both options enabled)Default: No value. The default behavior is as follows: do not use the Timestamp and Window Scale options when initiating TCP connections but use them if the TCP peer that is initiating communication includes them in the SYN segment.Description: This parameter controls the use of RFC 1323 Timestamp and Window Scale TCP options. Explicit settings for timestamps and window scaling are manipulated with flag bits. Bit 0 controls window scaling, and bit 1 controls timestamps.TcpWindowSizeKey: TcpipParameters, TcpipParametersInterfaceinterfaceGUIDValue Type: REG_DWORDnumber of bytesValidRange: 00x3FFFFFFF (1073741823 decimal). In practice the TCP/IP stack will round the number set to the nearest multiple of maximum segment size (MSS). Values greater than 64 KB can be achieved only when connecting to other systems that support RFC 1323 Window Scaling, which is discussed in the Transmission Control Protocol (TCP) section of this article.Default: The smaller of the following values: 0xFFFF GlobalMaxTcpWindowSize (another registry parameter) The larger of four times the MSS 16384 rounded up to an even multiple of the MSS The stack also tunes itself based on the media speed: Below 1 Mbps: 8 KB 1 Mbps 100 Mbps: 17 KB Greater than 100 Mbps: 64 KB The default can start at 17520 for Ethernet, but may shrink slightly when the connection is established to another computer that supports extended TCP header options, such as Selective Acknowledgements (SACK) and TCP Timestamps, because these options increase the size of the TCP header beyond the usual 20 bytes, leaving slightly less room for data.Description: This parameter determines the maximum TCP receive window size offered. The receive window specifies the number of bytes that a sender can transmit without receiving an acknowledgment. In general, larger receive windows improve performance over high-delay, high-bandwidth networks. For greatest efficiency, the receive window should be an even multiple of the TCP Maximum Segment Size (MSS). This parameter is both a per-interface parameter and a global parameter, depending upon where the registry key is located. If there is a value for a specific interface, that value overrides the system-wide value. See also GobalMaxTcpWindowSize.2)DefaultReceiveWindowKey: HKEY_LOCAL_MACHINE SYSTEMCurrentControlSet ServicesAfd ParametersValue Type: REG_DWORDDefault: 4096/8192/8192Description: The number of receive bytes that AFD buffers on a connection before imposing flow control. For some applications, a larger value here gives slightly better performance at the expense of increased resource utilization. Applications can modify this value on a per-socket basis with the SO_RCVBUF socket option.DefaultSendWindowValue Type: REG_DWORDDefault: 4096/8192/8192Description: This is similar to DefaultReceiveWindow, but for the send side of connections.我们通常使用DRTCP小软件修改的只是注册表中HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters目录下的TcpWindowSize。但是如果Windows XP版本是SP2或者SP3版本,并且在HKEY_LOCAL_MACHINE SYSTEMCurrentControlSet ServicesAfd Parameters目录下设置了DefaultReceiveWindow,那么使用DRTCP软件修改TcpWindowSize实际上是不起作用的。检查客户的电脑,确实配置了DefaultReceiveWindow,大小为128000byte,这与ethereal抓包中看到TcpWindow大小是一样的。而我们的测试电脑中没有配置DefaultReceiveWindow。处理过程:修改客户电脑注册表HKEY_LOCAL_MACHINE SYSTEMCurrentControlSet ServicesAfd

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论