慢启动和拥塞避免算法.ppt

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

慢启动和拥塞避免算法 rzy_r2005@163.com 拥塞控制 慢开始和拥塞避免 发送端的主机在确定发送报文段的速率时,既要根据接收端的接收能力,又要从全局考虑不要使网络发生拥塞。 因此,每一个 TCP 连接需要有以下两个状态变量: 接收端窗口 rwnd (receiver window) 又称为通知窗口(advertised window)。 拥塞窗口 cwnd (congestion window)。 接收端窗口 rwnd 和 拥塞窗口 cwnd (1) 接收端窗口 rwnd 这是接收端根据其目前的接收缓存大小所许诺的必威体育精装版的窗口值,是来自接收端的流量控制。接收端将此窗口值放在 TCP 报文的首部中的窗口字段,传送给发送端。 (2) 拥塞窗口 cwnd (congestion window) 是发送端根据自己估计的网络拥塞程度而设置的窗口值,是来自发送端的流量控制。以字节为单位,但是在慢启动以报文段大小为单位增加的。 TCP Congestion Control network capacity and receiver capacity (a) A fast network feeding a low capacity receiver. (b) A slow network feeding a high-capacity receiver. 发送窗口的上限值 发送端的发送窗口的上限值应当取为接收端窗口 rwnd 和拥塞窗口 cwnd 这两个变量中较小的一个,即应按以下公式确定: 发送窗口的上限值 ? Min [rwnd, cwnd] (7-1) 当 rwnd cwnd 时,是接收端的接收能力限制发送窗口的最大值。 当 cwnd rwnd 时,则是网络的拥塞限制发送窗口的最大值。 慢开始算法的原理 在主机刚刚开始发送报文段时可先将拥塞窗口 cwnd 设置为一个最大报文段 MSS 的数值。 在每收到一个对新的报文段的确认后,将拥塞窗口增加至多一个 MSS 的数值。 用这样的方法逐步增大发送端的拥塞窗口 cwnd,可以使分组注入到网络的速率更加合理。 拥塞避免算法 1) 对一个给定的连接,初始化c w n d为1个报文段, s s t h re s h为6 5 5 3 5个字节。 2) TCP输出例程的输出不能超过c w n d和接收方通告窗口的大小。拥塞避免是发送方使用的流量控制,而通告窗口则是接收方进行的流量控制。前者是发送方感受到的网络拥塞的估计,而后者则与接收方在该连接上的可用缓存大小有关。 3) 当拥塞发生时(超时或收到重复确认),s s t h re s h被设置为当前窗口大小的一半( c w n d和接收方通告窗口大小的最小值,但最少为2个报文段)。此外,如果是超时引起了拥塞,则c w n d被设置为1个报文段(这就是慢启动)。 4) 当新的数据被对方确认时,就增加c w n d,但增加的方法依赖于我们是否正在进行慢启动或拥塞避免。如果c w n d小于或等于s s t h re s h,则正在进行慢启动,否则正在进行拥塞避免。慢启动一直持续到我们回到当拥塞发生时所处位置的半时候才停止(因为我们记录了在步骤2中给我们制造麻烦的窗口大小的一半),然后转为执行拥塞避免。 执行拥塞避免后增长由指数变为线性规律 Cwnd cwnd+(segsize*segsize)/cwnd+segsize/8 慢开始和拥塞避免算法的实现举例 慢开始和拥塞避免算法的实现举例 慢开始和拥塞避免算法的实现举例 慢开始和拥塞避免算法的实现举例 慢开始和拥塞避免算法的实现举例 慢开始和拥塞避免算法的实现举例 慢开始和拥塞避免算法的实现举例 慢开始和拥塞避免算法的实现举例 慢开始和拥塞避免算法的实现举例 慢开始和拥塞避免算法的实现举例 加法增大 (additive increase) “加法增大”是指执行拥塞避免算法后,当收到对所有报文段的确认就将拥塞窗口 cwnd增加一个 MSS 大小,使拥塞窗口缓慢增大,以防止网络过早出现拥塞。 乘法减小 (multiplicative decrease) “乘法减小“是指不论在慢开始阶段还是拥塞避免阶段,只要出现一次超时(即出现一次网络拥塞),就把慢开始门限值 ssthresh 设置为当前的拥塞窗口值乘以 0.5。 当网络频繁出现拥塞时,ssthresh 值就下降得很快,以大大减少注入到网络中的分组数。 快速重传和快速恢复算法 一个重复的ACK是由丢失报文引起的还是由于重新排序??? 提出了快速重传的算法:即在收到3个重复ACK时就重传 快速恢复算法如下: 1) 当收到第3个重复的A

文档评论(0)

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

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

1亿VIP精品文档

相关文档