加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

浅谈TCP拥塞控制算法

发布时间:2019-04-20 02:26:47 所属栏目:教程 来源:remcarpediem
导读:最近花了些时刻在进修TCP/IP协议上,主要缘故起因是因为本人恒久以来对TCP/IP的熟悉就只限于三次握手四次星散上,以是但愿深入相识一下。再者,TCP/IP和Linux体系层级的许多计划都可以用于中间件体系架构上,好比说TCP 拥塞节制算法也可以用在以相应时刻来限流

以是,TCP Reno算法举办了优化。当收到三个一再确认ACK时,TCP开启快速重传Fast Retransmit算法,而不消比及RTO超时再举办重传:

  • cwnd巨细缩小为当前的一半
  • ssthresh配置为缩小后的cwnd巨细
  • 然后进入快速规复算法Fast Recovery。

快速规复算法 – Fast Recovery

TCP Tahoe是早期的算法,以是没有快速规复算法,而Reno算法有。在进入快速规复之前,cwnd和ssthresh已经被变动为原有cwnd的一半。快速规复算法的逻辑如下:

  • cwnd = cwnd + 3 * MSS,加3 * MSS的缘故起因是由于收到3个一再的ACK。
  • 重传DACKs指定的数据包。
  • 假如再收到DACKs,那么cwnd巨细增进一。
  • 假如收到新的ACK,表白重传的包乐成了,那么退出快速规复算法。将cwnd配置为ssthresh,然后进入拥塞停止算法。

浅谈TCP拥塞节制算法

如图所示,第五个包产生了丢失,以是导致吸取方吸取到三次一再ACK,也就是ACK5。以是将ssthresh配置为其时cwnd的一半,也就是6/2 = 3,cwnd配置为3 + 3 = 6。然后重传第五个包。当收到新的ACK时,也就是ACK11,则退出快速规复阶段,将cwnd从头配置为当前的ssthresh,也就是3,然后进入拥塞停止算法阶段。

跋文

本文为各人大抵描写了TCP拥塞节制的一些机制,可是这些拥塞节制照旧有许多缺陷和待优化的处所,业界也在不绝推出新的拥塞节制算法,好比说谷歌的BBR。这些我们后续也会继承切磋,请各人继承存眷。

【编辑保举】

  1. TCP/IP收集模子入门
  2. 还不熟悉IPv6你就out了 什么是IPv6?
  3. IP地点斗嘴、环路题目怎样办理?五大收集应用常见题目
  4. IPv6安详思索(一):IPv6收集中递归DNS的风险说明
  5. CC进攻&TCP和UDP正确打开姿势
【责任编辑:武晓燕 TEL:(010)68476606】
点赞 0

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读