`
新来的菜鸟
  • 浏览: 130933 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

使用TCP RFC 1323进行Windows XP网络性能优化

阅读更多

在本文中,我们将学习如何通过RFC1323协议来调整Windows XP注册表参数,RFC 1323协议是TCP的高性能扩展——为了调整、改善和优化网络速度和吞吐量。这个技巧可以帮你省下下载软件、程序甚至购买额外网络设备或硬件所需要的投入。

 

    Windows XP包含几个可以动态地影响性能的注册表参数——其中有一个设置是用于处理RFC 1323的,即高性能的TCP扩展。

 

    RFC 1323中所引用的TCP窗口是接收窗口——存储到达TCP片的缓存空间,除非(a)到达的数据包设置了Push标记然后它们被立即下发到应用程序中,或者(b)接收它的应用程序到缓存中取它的数据。

 

    在TCP握手过程中,基于TCP连接的双方都会告诉对方它们的接收缓存大小。这是包含在TCP包头的Window Size字段里的。这个字段的典型值是65,535(它是一个2字节长度的字段,65,535是它能表示的最大值)。这表明如果需要的话,发送握手数据包的设备有65,535个字节空间可用于存储到达的数据。注意如果从一个TCP节点发来的初始通信在TCP握手数据包中使用了TCP Window Scale选项,那么XP系统默认会使用Window Scaling。这意味着如果你的XP设备是作为服务器(响应初始的TCP握手数据包)使用,你将会使用Window Scaling。如果你的XP设备是一个客户端(比如,你用来连接一个HTTP服务器或邮件服务器),你就不会使用Window Scaling。

 

    如果一个主机在文件传输时缓存空间耗尽,它必须回送一个包含Window=0字段值的数据包。TCP节点必须停止发送数据,直至一个窗口更新(Window Update)数据包发送过来。一个窗口更新数据包是一个简单的ACK数据包,它带有非0窗口大小值。当窗口更新过程发生后,数据流可能将重新继续。图1显示了数据流已经停止,因为一个主机宣告了窗口0(Window Zero)的状况。

 

 

接收方主机发送带有TCP Window Size字段为0的数据包以停止数据传输

 

 

    图1:接收方主机发送带有TCP Window Size字段为0的数据包以停止数据传输,因为主机已经缺乏可用的缓存空间了
    
65,535的窗口大小值在目前的更快速的链路、更粗的管道和更大的文件传输中已经不够用了。窗口0状况促使Window Scaling的创建,这是定义在RFC 1323中的。在TCP握手过程中,如果双方都在TCP包头添加了Window Scale选项,那么窗口缩放就会被支持。双方都必须包含有这样一个Window Scale选项值,以便双方都能使用这个功能。Window Scale选项定义了在决定窗口尺寸所需使用的倍增因数,如图2所示。

 

这个主机在它的TCP握手数据包中宣告了Window Scale的因数为2

    图2:这个主机在它的TCP握手数据包中宣告了Window Scale的因数为2。这个尺寸因数将实际接收窗口大小增大到262,140字节

 

 

    窗口尺寸(Window Scale)值是一个幂运算值。比如,Window Scale设为0表示将Window Scale字段值乘以1(这样做不会改变大小,它只是允许另一方能使用窗口缩放)。如果Window Scale值为1表示你应该将窗口大小字段值乖以2。

 

 

表格

 

 

    举个例子说,如果你正在下载大小超过75MB(一个我通常用来测试基于HTTP文件传输的合适大小值)的Open Office Suite。如果你没有激活Window Scaling,但你又确实想有一个像样的吞吐比例,你的接收窗口可能会因为仅有65,535大小的接收缓存空间而阻塞下载进程。调整Window Scaling并将尺寸因数设为4,这将能提供一个262,140字节大小的接收缓存空间。


   为了打开Window Scale设置(并且不打开时间戳选项,这个我将在另一篇文章中介绍),将tcp1323opts的值设为1。

    Tcp1323Opts
    Key: TcpipParameters
    Value Type: REG_DWORD -- number (flags)
    Valid Range: 0, 1, 2, 3
    0 (disable RFC 1323 options) (禁用RFC 1323选项)
    1 (window scaling enabled only) (仅启用窗口缩放)
    2 (timestamps enabled only) (仅启用时间戳)
    3 (both options enabled) (启用窗口缩放和时间戳)

 

    默认:没有值。默认的行为是这样的:当初始化TCP连接时不使用时间戳(Timestamp)和窗口尺寸(Window Scale)选项,但如果TCP节点在初始化通信时在SYN片中包含了它们,就使用时间戳和窗口尺寸(Window Scale)选项。

    描述:这个参数控制RFC 1323时间戳和窗口尺寸TCP选项的使用。显式设置时间戳和窗口缩放是通过比特标记控制的。比特0控制窗口尺寸,比特1控制时间戳。

 

    提示:在作任何修改前一定要选好网络通信的基线。这可以使你能够验证你所作的修改能对网络通信产生正面的作用。更多关于创建网络基线、TCP/IP通信的分析和故障修复的信息,请访问网站www.wiresharkU.com

 

    关于作者:

    Laura Chappell是Wireshark 大学和协议分析研究院的创始人。她是一个一流的演讲家和涉及网络通信、分析和安全等许多行业领域的作家。她已经为数以千计的网络管理员、State and Federal法律执行官、司法成员、工程师、技术人员和开发人员提供培训。Chappell是High Technology Crime Investigation Association (HTCIA)的成员之一,FBI Infragard组织的骨干成员,以及Institute for Electrical and Electronic Engineers (IEEE)自1989年以来的准会员。她的集合了幽默感、个人经验、激情和清晰易懂的演讲特点使她成为各种大会的高级行业演讲师,包括:Microsoft TechEd,HP TechForum,HTCIA International Conference,Congress Netherlands,Electronic Crime Task Force Quarterly Meetings和Novell BrainShare Conference。

 

分享到:
评论

相关推荐

    TCP RFC.pdf

    类型:文档 功能:TCP协议官方文档

    TCP构成RFC793,1323,1122,2018,2581

    RFC793,1323,1122,2018,2581源代码,构成TCP/IP协议。有感兴趣的可下载!!

    rfc793(tcp传输控制协议).pdf

    rfc793(tcp传输控制协议),tcp协议标准规范...

    RFC中文文档-txt

    RFC105 通过 UCSB 进行远程登录和远程输出返回的网络说明书 RFC106 用户/服务器 站点协议的网络主机问卷 RFC107 主机-主机 协议故障清除委员会的说明 RFC108 1971年2月17-19日在 Urbana 举行的 NWG 会议的人员列表 ...

    中文版RFC,共456

    RFC105 通过 UCSB 进行远程登录和远程输出返回的网络说明书 RFC106 用户/服务器 站点协议的网络主机问卷 RFC107 主机-主机 协议故障清除委员会的说明 RFC108 1971年2月17-19日在 Urbana 举行的 NWG 会议的人员列表 ...

    TCP协议RFC793

    TCP - Transport Control Protocol,TCP协议RFC793

    TCP RFC 793

    TCP描述文档,权威,全面,精确. 通过本文档可以全面的了解TCP的设计和原理。

    与修订TCP相关的RFC主要解决了什么问题

    与修订TCP相关的RFC主要解决了什么问题 课程作业总结

    RFC1180 TCP&IP; 教程 中文整理版

    本文只介绍TCP/IP最突出的内容,即TCP/IP技术的"梗概".文中不涉及的内容有:TCP/IP的发展历史;TCP/IP商业方面的用途;与ISO OSI相比而言,TCP/IP的发展前景.本文的内容是网络专业人士从事TCP/IP方面工作所必须掌握的最...

    TCP/IP协议中RFC标准文档

    TCP/IP协议中RFC标准文档

    windows使用python通过pyrfc连接SAP使用的nwrfcsdk

    windows使用python通过pyrfc连接SAP使用的nwrfcsdk nwrfc750P_6-70002755.zip

    RFC793中文版(TCP)

    RFC793中文文档,传输控制协议规范(TCP)。

    rfc中文文档目录,包含部分翻译

    RFC105 通过 UCSB 进行远程登录和远程输出返回的网络说明书 RFC106 用户/服务器 站点协议的网络主机问卷 RFC107 主机-主机 协议故障清除委员会的说明 RFC108 1971年2月17-19日在 Urbana 举行的 NWG 会议的人员列表...

    RFC中文版精选(关于TCP/IP)

    这是RFC中关于TCP/IP的中文翻译 很有用的

    与修订TCP相关的RFC各个版本分别主要解决了什么技术问题

    本文档是一个课程作业,通过查询RFC,罗列了与修订TCP相关的RFC各个版本分别主要解决了什么技术问题的相关内容。 这完全是体力活啊,笔者作了2天才完成,很不容易,收1分很合理啦

    RFC2988 计算TCP的重发定时器

    传输控制协议(TCP)[Pos81]使用一个重发定时器,在缺乏任何远端的数据接收方...RFC 2581[APS99]描述了该算法,TCP使用它在RTO超时之后和一次重发被发出之后开始发送。本文档不改变在RFC 2581[APS99]中所描述的行为。

    RFC 2126 - ISO Transport Service on top of TCP

    RFC 2126 - ISO Transport Service on top of TCP RFC 2126 - ISO Transport Service on top of TCP RFC 2126 - ISO Transport Service on top of TCP

    中文RFC文档.zip

    RFC105 通过 UCSB 进行远程登录和远程输出返回的网络说明书 RFC106 用户/服务器 站点协议的网络主机问卷 RFC107 主机-主机 协议故障清除委员会的说明 RFC108 1971年2月17-19日在 Urbana 举行的 NWG 会议的人员列表...

    RFC1810_报告MD5性能.doc

    MD5性能报告 (RFC1810——Report on MD5 Performance) 本文的地位 本文并非指定一个Internet标准,而是向互联网提供信息,本文...本RFC目的是提醒IP社区有关MD5的性能限制,并提议在高速IP应用中采用MD5的替代物。

    计算机网络RFC

    计算机网络RFC3550,RTP协议适合于通过多播或单播网络服务的实时数据传输应用。

Global site tag (gtag.js) - Google Analytics