前言
你知道吗?下载/上传速度慢除了宽带带宽小(只能氪金解决)外还受到丢包、设备转发延迟以及网卡带宽等的影响。这篇文章主要是有一定幅度解决有关丢包等因素对下载/上传速度的影响。
BBR是什么? BarBaRa(芭芭拉),闪耀登场! 其实是一种由Google开发的TCP阻塞控制算法。传统的TCP阻塞控制算法 Cubic 是不受当前网络情况控制的,只会无脑发包,包丢了就重发的。这极大程度影响了收发包速度。而 BBR 从无脑发包变成主动感知网络环境,随机应变地发包。它会根据当前的丢包率以及带宽使用情况自动调整发包速率,还会大幅度提高数据包吞吐量。这可以有一定幅度减少丢包率并跑满带宽。
BBR已经嵌入到Linux 4.9+,所以只要Linux内核版本大于4.9的,都可以开启。貌似Windows也有(?)但是我不管。
注意:BBR 只对 TCP协议 有效,对 UDP协议 完全无效。打游戏(大部分)/看视频(部分是视频流以UDP发包)等使用UDP协议的情况无效。
查看BBR开启情况
终端输入命令:
sysctl -n net.ipv4.tcp_congestion_control
返回 cubic
的是没有开启
返回 bbr
的是已经开启了
启用BBR
终端打命令:
sudo vim /etc/sysctl.d/20-BBR.conf
# 按i然后打入:
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
# 随后:wq保存退出
sudo reboot
注意:对于sysctl相关的设置都是重启后生效
完成这一步后可以看看上面那一步,看看BBR是否开启了。
实际效果
看看开启BBR后的测速结果(作者当时300Mbps宽带)
作者实感:访问网页速度(毕竟是要极短时间内发送大量GET请求以请求网站资源)有些提升,下载/上传的时候基本上宽带带宽都被跑满的那种,TCP连接时丢包率有所降低。
最后
在VPS等服务器上开启BBR会有奇效(大部分),这对挂网站等疯狂建立TCP连接的情况非常有利。
1 条评论
你的文章内容非常用心,让人感动。 http://www.55baobei.com/86Qr6IRZjZ.html