计算机网络——TCP拥塞控制算法

计算机⽹络——TCP拥塞控制算法
1. 早期是Tahoe算法,包括慢启动,拥塞避免,快重传。
慢启动:TCP连接开始时,设置拥塞窗⼝cwnd为 1 个最⼤报⽂段长度(Maximum Segment Size, MSS),没接收到⼀个刘本仁
mssACK,cwnd + 1。
拥塞避免:当拥塞窗⼝cwnd = 慢启动阈值ssthresh ,结束慢启动状态变为拥塞避免,每个传输轮次(RTT),拥塞窗⼝cwnd + 1。
快重传:如果发送⽅收到三个冗余的ACK,则⽴马重传,不需要等到超时(RTO,超时重传),并将慢启动阈值设置为拥塞窗⼝的⼀半,拥塞窗⼝cwnd = 1,执⾏慢启动。
2. 在Reno算法中,新增了⼀个快恢复。
感染效应>键盘映射
Reno算法(包括Cubic算法)都是基于丢包的拥塞控制。
各向异性导电胶
在发⽣快重传时,执⾏快恢复。wald
快恢复就是,在丢包后不在执⾏慢启动,还是直接进⼊拥塞避免状态,即拥塞窗⼝和慢启动阈值都变为拥塞窗⼝的⼀半。
3. 此外还有New Reno算法
Reno快速恢复算法中,发送⽅只要收到⼀个新的ACK就会退出快速恢复状态⽽进⼊拥塞避免阶段,Neweno算法中,只有当所有丢失的包都重传并收到确认后才退出。
在NewReno中,添加了恢复应答判断功能,使得TCP终端可以区分⼀次拥塞丢失多个包还是发⽣了多次拥塞。
4. BBR算法
BBR 是基于链路容量的拥塞控制算法,⽬前已经集成到 Linux 4.9 以上版本的内核中
BBR 算法周期性地探测⽹络的容量,交替测量⼀段时间内的带宽极⼤值和时延极⼩值,将其乘积作为作为拥塞窗⼝⼤⼩(交替测量的原因是极⼤带宽和极⼩时延不可能同时得到,带宽极⼤时⽹络被填满造成排队,时延必然极⼤,时延极⼩时需要数据包不被排队直接转发,带宽必然极⼩),使得拥塞窗⼝始的值始终与⽹络的容量保持⼀致。
在⾼延时、⾼丢包率的环境下,BBR 相对于 Cubic 算法在传输速度上有较⼤的提升

本文发布于:2024-09-20 14:41:50,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/717748.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

下一篇:抓包详解释
标签:拥塞   算法   启动   避免   排队   时延   重传   恢复
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议