前面一节讲了tcp拥塞控制算法cubic,
tcp拥塞控制的弊端,
1 在窗口增长的时候,是盲目的,增长到一定值,然后回调到1,然后快速恢复到ssthresh水平,然后慢启动
2 cubic发送数据包的时候,一次性发给路由器,容易造成路由器队列堆满,抖动的问题,rtt会抖动
bbr 解决的问题
1 带宽预测,预测方法很简单,从发出去当前这个分组,到收到这个分组的ack,期间又发出去了多少数据,认为是实际带宽值。
2 统计最小rtt,最小rtt说明这个网络有这个传输能力。
3 计算BDP = rtt * 速度,cwnd = BDP * G(增益)
pacing rate 用于控制发送数据包的节奏,避免路由器排队,出现抖动
pacing rate BDP * G / 分组大小