简述TCP拥塞控制中慢开始和拥塞避免的原理。
慢开始算法的思路就是,不要一开始就发送大量的数据,先探测一下网络的拥塞程度,也就是说由小到大逐渐增加拥塞窗口的大小。为了防止cwnd增长过大引起网络拥塞,还需设置一个慢开始门限ssthresh状态变量。ssthresh的用法如下:[br][/br]当cwnd当cwnd>ssthresh时,改用拥塞避免算法。[br][/br]当cwnd=ssthresh时,慢开始与拥塞避免算法任意。[br][/br]拥塞避免算法让拥塞窗口缓慢增长,即每经过一个往返时间RTT就把发送方的拥塞窗口cwnd加1,而不是加倍。这样拥塞窗口按线性规律缓慢增长。[br][/br]无论是在慢开始阶段还是在拥塞避免阶段,只要发送方判断网络出现拥塞(其根据就是没有收到确认,虽然没有收到确认可能是其他原因的分组丢失,但是因为无法判定,所以都当做拥塞来处理),就把慢开始门限设置为出现拥塞时的发送窗口大小的一半。然后把拥塞窗口设置为1,执行慢开始算法。
举一反三
内容
- 0
简述TCP的拥塞控制原理。
- 1
假设TCP拥塞控制算法中,慢开始的阈值为10,当拥塞窗口上升到16时,发送端检测出超时,TCP重新启用慢开始和拥塞避免。请计算第1次到第15次传输过程中拥塞窗口的值
- 2
在TCP的拥塞控制中,什么是慢启动、拥塞避免,各起什么作用?
- 3
假设:TCP拥塞控制的AIMD,发送端检测出超时,TCP使用慢开始与拥塞避免。慢开始阈值设为8,cwnd=12时检测到拥塞,试给出:第1次到第15次传输的拥塞窗口分别为多少?
- 4
TCP使用慢开始和拥塞避免,设TCP的拥塞窗口阈值的初始值为8(单位为MSS)。从慢开始开始,当拥塞窗口上升到12时网络发生了超时。说明每个往返时间TCP拥塞窗口的变化序列。