news 2026/3/5 23:52:38

流量控制和拥塞控制的步骤?流量控制和拥塞控制的步骤?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
流量控制和拥塞控制的步骤?流量控制和拥塞控制的步骤?

流量控制保护接收方,拥塞控制保护网络;

流量控制靠 接收窗口(rwnd),拥塞控制靠 (cwnd)拥塞窗口 及其四阶段算法
最终的发送窗口 = min(rwnd, cwnd)

接收端在三次握手或每次 ACK 中,将当前可用缓冲大小 (rwnd) 通知发送端。发送端计算可用窗口:min(rwnd, cwnd),只要已发送但还未收到ACK确认字节数 < (Win)当前发送窗口,就可继续发送。发送端发完报文后,将其置入’已发送未ACK队列。接收端收到数据后,释放缓冲并更新 rwnd = BufferSize - 已占用,发送端收到新ACK,滑动发送窗口,继续发送。

一个典型Reno流程如下:
连接开始: cwnd = 1, ssthresh 为一个较大值(如65535字节)。
慢启动: cwnd 指数增长。

达到阈值: 当 cwnd >= ssthresh(慢启动阈值),进入拥塞避免,cwnd 线性增长。

检测到拥塞(包丢失):
情况A(超时): 网络拥塞严重。ssthresh = cwnd/2, cwnd = 1,回到第2步(慢启动)。

情况B(3个重复ACK): 触发快重传和快恢复。三个重复ACK意味着网络还有一定的传输能力(至少还能传送重复的ACK),所以网络并不完全拥塞,只是个别报文段丢失。
ssthresh = cwnd / 2
cwnd = ssthresh + 3
重传丢失的包。
收到新数据的ACK后,cwnd = ssthresh,进入第3步(拥塞避免)。
————————————————
版权声明:本文为CSDN博主「Arva .」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/2301_80096362/article/details/154695792

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/4 11:32:53

C++ 原子变量与引用计数类的核心机制解析

C 原子变量与引用计数类的核心机制解析 1. ‌原子变量&#xff08;std::atomic&#xff09;的核心特性‌ ‌不可分割性‌&#xff1a;原子操作&#xff08;如、load、store&#xff09;不可被中断&#xff0c;确保多线程环境下的数据安全。‌无锁设计‌&#xff1a;底层使用C…

作者头像 李华
网站建设 2026/3/4 23:16:48

buuctf Misc(杂项) [HBNIS2018]caesar

小白解题题目如下打开附件根据题目名&#xff0c;猜测为凯撒加密直接粘贴在随波逐流&#xff0c;进行凯撒解密直接发现flagflag{flagiscaesar}

作者头像 李华
网站建设 2026/3/3 19:13:48

你对面向对象编程的理解,面向过程和面向对象有什么区别?

一、开篇&#xff1a;两种编程思想的核心定位 —— 从 “解题逻辑” 到 “工程哲学”编程的本质是 “用代码映射现实问题并解决”&#xff0c;而面向过程&#xff08;POP&#xff09; 与面向对象&#xff08;OOP&#xff09; 绝非 “语法层面的差异”&#xff0c;而是两种贯穿软…

作者头像 李华
网站建设 2026/3/2 8:43:07

Java--双向链表

1.双向链表2.模拟实现双向链表(一).构造节点类首先我们要明白&#xff0c;双向链表的每一个节点都包含一个数据域和两个指针域&#xff0c;一个指针域为前指针域&#xff0c;表示指向当前节点的前一个节点&#xff0c;一个指针域为后指针域&#xff0c;表示指向当前节点的后一个…

作者头像 李华
网站建设 2026/3/4 3:56:17

后端springboot框架入门学习--第三篇

自动配置 可以把自动配置想象成SpringBoot 提前为你准备了大量的 “配置模板”,当你的项目引入了某个依赖、存在某个类、配置了某个属性等等时,这个模板就会自动生效,帮你完成对应的配置。 自动配置的核心:@EnableAutoConfiguration注解触发,加载并筛选XXXAutoConfigura…

作者头像 李华
网站建设 2026/3/4 19:45:29

LobeChat航班信息查询插件开发思路

LobeChat航班信息查询插件开发思路 在智能对话系统逐渐从“能说会道”走向“能干实事”的今天&#xff0c;用户不再满足于AI只是复述百科知识或生成一段文案。他们希望AI能真正帮自己完成具体任务——比如查一下航班是否延误、预订会议室、查看快递进度。这种需求催生了一个关键…

作者头像 李华