网站大量收购独家精品文档,联系QQ:2885784924

TCP接收窗口自动调节..doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
TCP接收窗口自动调节.

TCP 接收窗口自动调节 Joseph Davies 现在开始介绍我们的第一个主题 - TCP 接收窗口。 TCP 连接的吞吐量可以通过发送和接收应用程序、发送和接收 TCP 的实现以及 TCP 对等方之间的传输路径来限制。在本专栏中,我将介绍 TCP 接收窗口及其对 TCP 吞吐量的影响、TCP 窗口缩放的使用以及 Windows Vista? 中的“接收窗口自动调节”新功能(可优化 TCP 接收数据吞吐量)。 TCP 接收窗口 TCP 连接具有许多重要的特点。首先,它们是两个应用层协议之间的逻辑点对点通信。TCP 不提供一对多的传递服务,它仅提供一对一的传递服务。 其次,TCP 连接是面向连接的。在数据可以传输之前,两个应用层过程必须通过 TCP 连接建立过程正式协商一个 TCP 连接。同样,TCP 连接在通过 TCP 连接终止过程协商之后正式关闭。 再次,在 TCP 连接中发送的可靠数据按顺序排列,且期望得到接收端的肯定确认。如果没有接收到肯定确认,则重传这个段。接收端一端会放弃重复的段,并按照正确顺序排列到达时失序的段。 最后,TCP 连接是全双工的。对于每个 TCP 对等方,TCP 连接都由两个逻辑管道组成:一个传出管道和一个传入管道。TCP 报头包含传出数据的序列号和传入数据的确认 (ACK)。 此外,TCP 将通过传入和传出逻辑管道发送的数据视为连续的字节流。每个 TCP 报头中的序列号和确认号都根据字节边界定义。TCP 并不会考虑字节流中的记录或消息边界。应用层协议必须正确地分析传入的字节流。 为了限制任一时刻可发送的数据量,并为接收端提供流量控制,TCP 对等方使用窗口实现这些目的。该窗口是接收端允许发送端发送的字节流的数据范围。发送端只能发送位于窗口内的字节流中的字节。该窗口随着发送端的出站字节流和接收端的入站字节流而滑动。 对于给定的逻辑管道(全双工 TCP 连接的一个方向),发送端维护一个发送窗口,接收端维护一个接收窗口。当传输中没有数据或 ACK 段时,逻辑管道的发送和接收窗口相互匹配。换句话说,发送端允许发送的出站字节流中的数据范围与接收端能够接收的入站字节流中的数据范围相匹配。图 1 说明了这种发送和接收关系。 图 1?匹配发送和接收窗口?(单击该图像获得较大视图) 为了表示接收窗口的大小,TCP 报头包含了一个 16 位的“窗口”字段。当接收端收到数据时,它把 ACK 发送回发送端以表明成功接收到这些字节。在每个 ACK 中,“窗口”字段表示接收窗口中剩余的字节数。当应用程序发送、确认和检索数据后,发送窗口和接收窗口都会滑动到右侧。接收窗口是用于控制可从发送端传送给接收端的未确认数据数量的窗口。 由于接收窗口中可能会有应用程序未检索到的数据以及已接收但尚未确认的数据,因此 TCP 接收窗口具有一些其他的结构,如图 2 所示。 图 2?TCP 接收窗口中的数据类型?(单击该图像获得较大视图) 请注意最大接收窗口和当前接收窗口的区别。最大接收窗口的大小是固定的。当前接收窗口的大小是可变的,并对应于接收端允许发送端发送的剩余数据量。当前接收窗口大小是发送回发送端的 ACK 中通告的“窗口”字段值,等于最大接收窗口大小与已接收和确认但尚未被应用程序检索的数据量之间的差值。 TCP 接收窗口和 TCP 吞吐量 为了优化 TCP 吞吐量(假设为合理的无差错传输路径),发送端应该发送足够的数据包以填满发送端和接收端之间的逻辑管道。逻辑管道的容量可由以下公式计算: 复制代码 Capacity in bits = path bandwidth in bits per second * round-trip time (RTT) in seconds 容量称为带宽延迟乘积 (BDP)。管道可以用粗(高带宽)和细(低带宽)或者长(高 RTT)和短(低 RTT)来表示。粗而长的管道的 BDP 最高。使用高 BDP 传输路径的示例包括卫星链接或带有洲际光缆链接的企业广域网 (WAN)。 增强高 BDP 传输的发送端性能 新的“接收窗口自动调节”功能增强了通过高 BDP 链接接收数据的性能,但是发送端的性能如何呢? 避免发送 TCP 对等方拥塞整个网络的现有算法被称为“慢启动”和“拥塞避免”。在连接最初发送数据和还原丢失段时,这些算法可以增大发送窗口,即发送端可以发送的段数量。 对于每个接收到的确认段(Windows XP 和 Windows Server 2003 中的 TCP)或每个已经确认的段(Windows Vista 和 Windows Server“Longhorn”中的 TCP),“慢启动”算法会以一个完整的 TCP 段增大发送窗口。对于每个已经确认的完整窗口的数据,“拥塞避免”算法

文档评论(0)

gangshou + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档