闲聊:为什么需要正确的了解BBR?

为什么需要正确的了解BBR,当人们了解了BBR才能明白如KCP、锐速等解决方案与BBR本身的不同性,而不是听信谗言,一顿乱输出。

BBR是一个关注尽可能吃满管道宽频上限的算法,所以BBR并不关心丢包的问题,而类似 cubic、kcp 等拥塞控制算法都需要考虑丢包的问题。

这也意味着BBR,在产生拥塞的时候会存在一定的滞后性,它通过G(增益因子)来保持扩大带宽及感知,但过程至少需要一个RTT时间,每次对管道外发送都存在提高网络拥塞的风险,所以:BBR可能会产生额外15~20%的网络沉默流量。

人们可以理解为:每次BBR根据样本计算都会增加CWND大小,而在recovery(窗口恢复)时降低 cwnd 的大小,但仍旧会积极尝试持续扩大 cwnd,所以BBR可以尽可能的吃满管带的宽频大小,而类似如KCP这类控制算法确很难做到,而且KCP这类算法重传的成本比较高。

因为KCP重传采用传统的一次性脉冲所有的重传报文,这意味着:正在飞行的报文及重传的报文,会加重沿途网络设备的拥塞程度,所以KCP重传相对来说会重试多次,而BBR因为根据管道的拥塞层度,虽然仍旧会产生丢包,但因为重传灾难产生的丢包概率反倒会降低。

其实这就好比:

一个人一时间轮片只能吃下那么多东西,但是你非要让它一次性吃下所有的东西,它会吐出来是一个道理,这个比喻应该会很易于理解。

所以:最终BBR的宽频沉默成本一般大约在15~20%左右,一个简单的公式是:100Mbps 的带宽,RTT为:40MS,那么每次起搏脉冲最佳宽频大小为4Mbps,如果超过这个大小,就可能导致拥塞的产生,而BBR算法通过动态的感觉,并额外增加一点以探测,以便可以动态调控拥塞的程度。

相关推荐
数智化管理手记11 小时前
账龄分析手工统计易遗漏?自动账龄分析工具怎么搭建
大数据·网络·数据库·人工智能·数据挖掘
LabVIEW开发11 小时前
NI Package Manager安装LabVIEW时InternalServerError错误
网络·数据库·labview·labview知识·labview功能·labview程序
RD_daoyi12 小时前
外链权重暴跌至13%,品牌提及反超传统链接——2026年不做Digital PR,你的独立站等于隐形
运维·网络·学习·机器学习·搜索引擎
张小姐的猫12 小时前
【Linux】网络编程 —— HTTP协议(上)
linux·运维·服务器·网络·http·单例模式·策略模式
国科安芯12 小时前
星间光链路:AS32S601型抗辐射MCU在空间激光通信终端控制中的技术实现
服务器·网络·单片机·嵌入式硬件·物联网·安全·信息与通信
可视化运维管理爱好者13 小时前
nVisual Studio:数据中心网络智能规划设计工具
网络·ide·visual studio
MetrixAeroCore13 小时前
光伏逆变器远程监控物联网卡流量极小但需常年在线的套餐推荐
网络
天行健,君子而铎13 小时前
知影-API风险监测系统:数据流转安全的核心防护方案
网络
其实防守也摸鱼14 小时前
补天SRC新手入门指南:从0到1的漏洞挖掘之路
网络·python·学习·安全·web安全·数据挖掘·挖洞
运维行者_15 小时前
如何查看每个IP的带宽使用情况?NetFlow 技术实战指南
开发语言·网络·分布式·后端·架构·带宽