TCP 协议加速优化演变
第一代:
Loss-based(基于丢包的拥塞判断及处理) – 以丢包来判断拥塞并调整传输速率;
在传统的TCP协议上进行优化,其对传统 TCP 的改进主要是通过增大初始拥塞控制窗口(Congestion Window, CNWD),同时在通过丢包判断出现拥塞后使用比传统 TCP 更激进的方式恢复 CNWD,以期减少拥塞对速率
的影响
缺点:
特别是在现在的无线环境中,无线设备的丢包是不可避免的特别是有干扰的时候,
这样服务器会认为客户端拥堵将降低传输速度,其实链路并没有发生拥堵
现代网络设备通常队列比较深,当拥塞发生时队列变长,延迟显著提高,但丢包迟迟不会发生,其实链路已经发生拥堵
Loss-based TCP 加速包括在最新 Linux 系统中的Cubic TCP
第二代
Delay-based(基于延迟的拥塞判断及处理) – 以往返延迟(Round Trip Time,RTT)变
化来判断拥塞并调整传输速率;
主要针对第一代传输缺点进行弥补,当延迟较高时会调整发送频率,
但如果网络设备队列比较浅,延迟不高,如果是阵发丢包,就无法感知到,会持续大量发送数据,造成大量丢包,发生重发数据。
FastTCP 是一个典型使用Delay-based
第三代
Learning-based(基于学习的拥塞判断及处理) – 通过对路径上传输历史的学习动态判断拥塞并调整传输速率。
通过对链路状态学习,优化TCP传输速度。
AppEx 公司产品zeta TCP
在人们对TCP优化研究还产生一种怪异的加速产品,在TCP链接上数据发送两份,显然这种方式不是一个有效的方法,这里也不进行推荐
文章末尾固定信息
评论