TCP拥塞控制机制

what

  拥塞控制机制:控制发送方发送数据速率,使其和网络环境一致。

 

机制:

  发送方维护一个“拥塞窗口”变量cwnd,它和接收方共同决定发“送窗口”swnd的大小。

 

  慢启动:发送方刚开始发送数据时,不会一次将大量的数据注入网络,而是先发1个字节,当收到ACK后,再发2个字节,依次类推,按照2的指数级增长。直到达到一个阈值ssthresh(慢启动门限),然后慢启动结束,即不在2的指数级增长。

  拥塞避免:当发送数据大小大于“慢启动门限”后,就开始以线性速率增长。例如:每次往返(RTT)数据报涨2个字节。

  快速重传:发送方收到1个ACK后,后续连续收到多个相同的ACK,例如:3个。就确认对于的数据包丢失,不用等到丢失包的ACK超时,就启动数据包重发。由于不用等超时,所以更快,就叫快速重传。

  快速恢复:发现3次重复的ACK后,发送方就将:a、ssthresh(慢启动门限)减半;b、发送窗口cwnd设置为减半后的ssthresh值;c、启动“拥塞避免”算法(高起点,线性增长)

  

  执行如下图:

TCP拥塞控制机制

 

上一篇:kafka的数据同步原理ISR、ACK、LEO、HW


下一篇:为什么是三次握手和四次挥手[随手笔记]