漫谈拥塞控制: pacing rate

news/2024/5/17 19:18:55 标签: bbr, tcp

我基于综合效能结合排队论解释过 pacing 发送的益处:为什么 pacing?但该解释仍没有揭露 pacing 的本质。

pacing 的本质是出让时间槽。

出让时间槽无法降低整体等待时延,但可降低甚至消除抖动,即在任意短的采样周期内保持等待时延收敛到固定值。

参考 交换式以太网的诞生,从总线以太网引出出让时间槽。和总线以太网类比是因为 CSMA/CD 是统计复用仲裁机制典范。

总线以太网限制最大帧长 1500B,原因在于避免一个帧过久占据线路,试想一列火车穿过平交道路的场景。过长的帧将造成大量冲突,进而引入大量退避时间而浪费发送能耗。

CSMA/CD 的方式是切分数据为 packet,冲突后随机退避出让时间槽,获得一个统计稳态。

交换式以太网的统计复用方式和 CSMA/CD 总线以太网是同一回事。总线以太网的冲突表现为交换以太网中的排队,而退避时延表现为排队时延,如果交换机 buffer 有限而 buffer overflow,则可能会引入重传时延,也可归入退避时延的等效时延。

既然都一回事,那么总线以太网中出让时间槽在交换式网络中即表现为 pacing 发送,所谓 pacing 就是在发送两个连续的 packet 之间插入一段时间。 而 burst 在总线以太网中则表现为连续发送帧或发送一个超长帧,这是要避免的。

但总线以太网随机退避中的 “随机” 这个修饰最有趣。随机是分布式控制达到稳态的最有效手段,所谓遇事不决就随机。但对于交换式网络,交换机利用 buffer 集中冲突仲裁取代主机分布式仲裁,这赋予主机对时间槽的可测量特征,主机可通过测量 packet 的传输速率而获得交换机对 packet 的仲裁细节。

sender 就按照测量速率导出的时间槽间隔 pacing 发送,即可最小化 buffer 占用,这是所有 rate-based cc 的基础,自带 anti-bufferbloat 属性。bbr 在此基础上携带一个动态带宽自适应机制而已。

话虽如此,但很多人依然觉得 burst 好,因为当他使用 pacing 的时候,吞吐确实下降了,这属实你没测量好,而不是 pacing 的锅,说到底还是算法不行。

以上就是关于 pacing 的一个随笔,数学论证就不写了,可参考李永乐的这个视频,挺有意思:葫芦娃救爷爷为啥一个一个上,pacing vs burst 背后也是一个类似的概率统计问题,设 n 为 burst 率,求证 n = 1 时通过率最高。

浙江温州皮鞋湿,下雨进水不会胖。


http://www.niftyadmin.cn/n/4986642.html

相关文章

文件上传漏洞复现(CVE-2018-2894)

文章目录 搭建环境启动环境漏洞复现 前提条件: 1.安装docker docker pull medicean/vulapps:j_joomla_22.安装docker-compose docker run -d -p 8000:80 medicean/vulapps:j_joomla_23.下载vulhub 搭建环境 进入vulhb目录下的weblogic,复现CVE-2018-289…

使用ffmpeg截取视频片段

本文将介绍2中使用ffmpeg截取视频的方法 指定截取视频的 开始时间 和 结束时间,进行视频截取指定截取视频的 开始时间 和 截取的秒数,进行视频截取 两种截取方式的命令行如下 截取某一时间段视频 优先使用 ffmpeg -i ./input.mp4 -c:v libx264 -crf…

改进YOLO系列:11.添加CrissCrossAttention注意力机制

添加CrissCrossAttention注意力机制 1. CrissCrossAttention注意力机制论文2. CrissCrossAttention注意力机制原理3. CrissCrossAttention注意力机制的配置3.1common.py配置3.2yolo.py配置3.3yaml文件配置1. CrissCrossAttention注意力机制论文 论文题目:CCNet: Cris…

软件测试/测试开发丨Python 学习笔记 之 链表

点此获取更多相关资料 本文为霍格沃兹测试开发学社学员学习笔记分享 原文链接:https://ceshiren.com/t/topic/26458 链表与数组的区别 复杂度分析 时间复杂度数组链表插入删除O(n)O(1)随机访问O(1)O(n) 其他角度分析 内存连续,利用CPU的机制&#xff0…

【紫光同创国产FPGA教程】——【PGL22G第六章】密码锁实验例程

本原创教程由深圳市小眼睛科技有限公司创作,版权归本公司所有,如需转载,需授权并注明出处 适用于板卡型号: 紫光同创PGL22G开发平台(盘古22K) 一:盘古22K开发板(紫光同创PGL22G开发…

ChatGPT⼊门到精通(6):ChatGPT 提问设计

前⾔ 学会提问就是为了让AI给出⾼质量的答案。 你所学到的技能⼀切为了⽣成⾼质量的答案。 本教程适合:普通ChatGPT的⽤户、专业prompt⼯程师 你将收获:prompt 技巧的全⾯指导 、prompt⼯程师必备技能、prompt技术⼯程⾼质量答 案完全指南 提⽰词 Prom…

ICCV 2023 | 小鹏汽车纽约石溪:局部上下文感知主动域自适应LADA

摘要 主动域自适应(ADA)通过查询少量选定的目标域样本的标签,以帮助模型从源域迁移到目标域。查询数据的局部上下文信息非常重要,特别是在域间差异较大的情况下,然而现有的ADA方法尚未充分探索这一点。在本文中&#…

Orchestrator介绍5-配置文件解释

1 配置文件解释 Debug bool // 是否运行在debug模式下 ,输出更详细 。在命令行中使用 --debug 是一样的效果 EnableSyslog bool // 是否将日志输出到系统日志 ListenAddress …