TCP协议是全双工的安全传输协议,在网络拥塞的情况下,ACK应答包拿不到会加速拥塞,当提供的负载继续增大到某一数值时,网络的吞吐量就下降到零,网络无法工作,产生所谓的死锁,这就需要一种拥塞控制算法去防止更多的数据注入网络,发送端接收不到ACK就有可能网络出现拥塞。
慢开始 拥塞避免 快重传 快恢复
发送方维护一个拥塞窗口初始cwnd=1,就是报文个数,收到ACK就加倍,达到慢开始现在阈值ssthresh之后不是加倍而是+1,进入拥塞避免,直到打算网络拥塞,设置ssthresh=24/2=12,然后继续执行慢开始和拥塞避免算法。
快重传是指当接收方收到了一个失序的报文,马上报告给发送方,我没收到,赶紧重传;发送方只要连续收到3个重复确认,立即重传对方发来的M3
快恢复是指当发送方连续收到三个重复确认,执行乘法减小,ssthresh减半,然后直接跳到ssthresh执行拥塞控制算法