TCP重传,滑动窗口,流量控制,拥塞控制

TCP重传,滑动窗口,流量控制,拥塞控制

TCP重传机制:

  • 超时重传
  • 快速重传
  • SACK
  • D-SACK

通过序列号与确认应答判断是否要重传

超时重传:
超过指定时间没有收到确认应答报文,就会重发该数据

触发超时重传的情况:

  • 数据包丢失
  • 确认应答丢失

RTT:数据发送时刻到接受到确认的时刻的差值 包的往返时间

RTO:超时重传时间

RTO太长或太短:

  • 太长,效率差,重发慢,丢了半天才重发,性能差
  • 太短:没有丢就重发,增加网络拥塞,导致更多的超时

超时重传时间RTO的值应该略大于报文往返RTT的值

如果超时重发的数据,再次超时的时候,又需要重传,TCP的策略是超时间隔加倍

也就是每次遇到一次超时重传的时候,都会将下一次超时时间间隔设为先前值的两倍。两次超时,就说明网络环境差,不宜频繁发送

超时重传缺点:

超时周期长,用快速重传机制来解决

快速重传

不以时间为驱动,而是以数据驱动重传

当收到三个相同的ACK报文,会在定时器过期之前,重传丢失的报文段

缺点:不知道重传一个,还是重传所有的问题

于是有了SACK方法:选择性确认

在TCP头部加一个SACK,可以将已收到的数据的信息发送给发送方

你可能感兴趣的:(http,tcp/ip,网络协议,https)