OpenVz架构Vps使用BBR协议加速网络
缘起
最近几年一直持有2个特价的搬瓦工小鸡,用来建个个人blog,然后偶尔fan.fan嫱刷刷网页也是体验不错的~所以一直用了有3年了,一直续费,没出过大问题。
然而呢,这个美国洛杉矶的机器,连接国内只能说是可用的程度,延迟一般是200-230ms左右,这个其实还是可以接受的,毕竟不拿它来玩游戏,对延迟没有大的追求;但是网速呢,就非常坑了,一般只有100-200KB,想看个优土鳖高清基本不可能的,sad💔
最近呢,看到有个新的google bbr协议可以用来加速不稳定网络链路的网速,甚至能够在国外vps上达到数倍的提速效果,因此,就想着折腾下这个小vps咯。
过程
KVM架构vps开启bbr
首先查了网上的教程,一般就这2种方法,不过都是只适用于kvm架构的虚拟机的(kvm、openvz解释可以看这个链接http://www.voidcn.com/article/p-zghxrjug-bcq.html)
1、自己在vps上升级linux内核,因为在最新的内核里,google bbr协议已经集成了,这样可以方便的开启bbr加速咯
2、重新安装操作系统,很多的vps提供商(比如搬瓦工)都提供了使用带bbr协议的内核,这样就gen更好了,自己甚至不用去折腾内核;不过缺点也很明显,如果你的vps业务很复杂,迁移麻烦,那这种方法无疑是不合适的,因为重新安装系统然后设置也挺麻烦的,如果你只是拿来做提子,那么这个就完全没有问题了,分分钟的事情
kvm的使用方法我就不再赘述了,就上面的方法,可以查下网页就好
OpenVz架构开启bbr
相较于上面kvm只用换一个内核或者系统就能开启bbr,OpenVz架构就没有这么的容易了,因为从底层原理上这种架构是不支持换内核的。。。。。。
翻了下OpenVz架构开启bbr的方法,发现讨论不多,但是还是能人多呀,去年v2ex上的老哥就发明了2中在OpenVz架构开启bbr的方法,下面做一下简单介绍
原理
这类在OpenVz架构开启bbr的方法,基本原理都是相同的,就是变相在系统里运行一个开启bbr的高版本超级精简的内核,然后外边的系统对流量做了转发,这样就变相的使用了带bbr内核的功能
基于以上原理,基本上OpenVz架构vps开启bbr后都有一定的性能损耗,只是看内核精简的程度而已
1、使用用户态内核(UML)开启bbr
参考https://zohead.com/archives/openvz-uml-bbr/#use-uml-ss-system ,也可以参考91云封装好的库https://github.com/91yun/uml
核心方法就是裁剪编译内核,适合小内存vps使用,不过最小也得256MB的内存吧
2、使用内核lib库(LKL)开启bbr
参考https://blog.kuoruan.com/116.html/ , 作者githubhttps://github.com/kuoruan/shell-scripts
核心方法时使用linux的lib,在lib里加载bbr,然后通过代理的方式使用bbr
3、使用Rinetd开启bbr
参考https://blog.kuoruan.com/119.html
这种方式没使用过,不过应该也差不多,应该就是把bbr协议的实现封装到某个网络库实现里
使用效果
之前看优土鳖大概是200KB的速度,基本只能看720p已经是极限了,目前使用完bbr之后,轻松看1440p,速度真的快了好多
总结
1、如果是现在买vps,尽量还是选择kvm架构的机器,这样开启bbr也方便,同时安全性也有保障,毕竟使用第三方的脚本有安全风险
2、基本上所有的openVz架构开启的思路是一样的,通过曲折方法实现,性能有一定损耗
参考文档
https://www.moerats.com/archives/88/
https://blog.kuoruan.com/116.html/
https://blog.kuoruan.com/119.html
发表评论