我的个人博客使用vultr的VPS作为网站服务器,进来发觉速度不佳,延迟过高,尝试使用Google开源的TCP BBR BBR算法对VPS进行测速。
1 借助speedtest测速
在linux界面下输入以下代码,
1 | wget https://raw.githubusercontent.com/oooldking/script/master/superspeed.sh && chmod +x superspeed.sh && ./superspeed.sh |
以下是加载BBR前用于测速的VPS速度,用的是vultr的日本5刀每月的vps,OS:Ubuntu 16.04 x64
不得不说一句,便宜的就是慢。。。
2 装载BBR模块
这里我参考了秋水逸冰的方法:
使用root用户登录,运行以下命令:
1 | wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh |
安装时如有输入提示一直回车即可。
安装完成后,脚本会提示需要重启 VPS,输入 y 并回车后重启。
重启完成后,进入 VPS,验证一下是否成功安装最新内核并开启 TCP BBR,输入以下命令:
1 | uname -r |
查看内核版本,显示为最新版就表示 OK 了
1 | sysctl net.ipv4.tcp_available_congestion_control |
返回值一般为:
net.ipv4.tcp_available_congestion_control = bbr cubic reno
或者为:
net.ipv4.tcp_available_congestion_control = reno cubic bbr
1 | sysctl net.ipv4.tcp_congestion_control |
返回值一般为:
net.ipv4.tcp_congestion_control = bbr
1 | sysctl net.core.default_qdisc |
返回值一般为:
net.core.default_qdisc = fq
1 | lsmod | grep bbr |
返回值有 tcp_bbr 模块即说明 bbr 已启动。注意:并不是所有的 VPS 都会有此返回值,若没有也属正常。
3 启用BBR后测速
再次进行测速,结果如下:
前后进行对比,发现上传速度小幅度提升,而下载速度小幅度降低,延迟大幅降低。
对此我不是很满意,重置服务器后,启用锐速(BBR改)进行比较。
4 启用锐速后测速
安装:运行以下命令
1 | wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSp |
根据自己需求操作,重启后再使用./tcp.sh
命令接着操作。
以下是同一vps下,启用锐速后的测速结果:
对比可以看出,锐速对上传下载的速度的增益比GOOGLE BBR更大,但是延迟方面稍逊一筹。
以上仅为vultr日本机房5刀vps的测试结果,其他机房请自行测试。仅做参考。
5 总结
经过测试,BBR模块的启用,可以一定程度上增加服务器的访问速度,降低延迟。但效果并没有传说中的那么惊人,而且如果是大流量的服务器,使用BBR强制加速,有一定可能会被服务器商停止服务。
对个人站长而言,低成本的vps服务器是降低成本的选择,但是会带来高延迟低速的弊端,BBR模块的启用可以一定程度地削弱这些缺点。但是效果不是很明显。PIN值大致降低10-20%左右,速度会有一定降低(但无大碍)。总而言之,如果你的延迟过高,可以试试开源BBR,聊胜于无嘛。
推广文章: