自从锐速发布以来,这款牛逼的单边加速神器的确为一些线路不太优秀的服务器带来了更优秀的体验。但是呢,过高的价格和不再低端售卖。导致了我们并无法实现一个免费好用的单边加速功能。
CENTOS7作为常用的服务器系统,其正式版的内核都是相当保守的。以下介绍以下升级最新版本的内核方法,目的是为了实现内核的BBR功能,改善CENTOS7的网络功能
里面kernel-ml-5.3.8-1.el7.elrepo.x86_64就是安装的新版版本内核(你看到这篇教程的时候可能内核版本有变化,随机应变)
TCP BBR 是 Google 于2016年所发布网络拥塞控制算法,用于尽可能提高带宽利用率。随着时间的推移 TCP BBR 已经来到了 v3 版本,但因为尚处于测试阶段所以目前相关代码并没有汇入主线内核中。现阶段如果需要提前体验 BBR v3 的话手动编译内核是免不了的。不过好在编译并不复杂,在此便做个记录以供参考。
BBR(Bottleneck Bandwidth and RTT),全新的 拥塞控制算法,由 Google 开发,供 Linux 内核的 TCP 协议栈使用
Google 在 2016年9月份开源了他们的优化网络拥堵算法BBR,最新版本的 Linux内核(4.9-rc8)中已经集成了该算法。 对于TCP单边加速,并非所有人都很熟悉,不过有另外一个大名鼎鼎的商业软件“锐速”,相信很多人都清楚。特别是对于使用国外服务器或者VPS的人来说,效果更佳。 网上有很多在 Debian 和 Ubuntu 系统下启用 BBR 的教程,我就不粘贴了,我自己一直用的是 CentOS,本文介绍一下在 64位 CentOS 7 系统下开启BBR的方法。 升级内核 第一步首先是升级内核到
本文介绍如何在CentOS 7上部署Google BBR的过程步骤,希望对大家有所参考。【注:文章当时使用的内核版本是4.9.0 而目前是4.15.6(4.15版本高于4.9)】
uname命令用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。
只要 Linux 发行版的 Kernel 即内核版本大于等于 4.9 即可开启,开启方法是通用的,只需修改内核参数即可。
自从 Linux 内核 4.9 开始已经封装了这个新的 TCP 控制算法 BBR。
然后我选了BBR/BBR魔改版,因为机器就1M带宽反正装啥都一样。安装之后很快就提示我重启,再然后就开不了机了。
最近,Google 开源了其 TCP BBR 拥塞控制算法,并提交到了 Linux 内核,从 4.9 开始,Linux 内核已经用上了该算法。根据以往的传统,Google 总是先在自家的生产环境上线运用后,才会将代码开源,此次也不例外。 根据实地测试,在部署了最新版内核并开启了 TCP BBR 的机器上,网速甚至可以提升好几个数量级。 于是我根据目前三大发行版的最新内核,开发了一键安装最新内核并开启 TCP BBR 脚本。
有大佬集成了BBR原版/BBR魔改/BBR PLUS/ServerSpeeder(锐速)四合一脚本,预先准备:
BBR 算法需要 Linux 4.9 及以上的内核支持,所以想要使用该方式的需要先升级内核版本。
BBR 是谷歌开源的一项针优化网络拥塞控制算法,该算法与锐速、FinalSpeed等都为单边加速、无须客户端,但是 BBR 可以免费使用,不存在授权的问题。Linux Kernel 4.9RC 之后的 Linux 内核已经集成了该算法,所以只需要将内核更换到最新即可开启。
访问 http://[your-server-IP]/500mb.zip 来测试下载速度~
写在前面,本文介绍如何安装BBR BBR是谷歌研究的一套网络拥塞算法 BBR 由 Google 开发,供 Linux 内核的 TCP 协议栈使用,有了 BBR 算法,Linux 服务器可以显著提高吞吐量并减少连接延迟,简单来说 BBR 能加速网络传输速度。此外,部署 BBR 也很容易,因为该算法只需要发送方,而不需要网络或接收方的支持。
基于「丢包反馈」的协议是一种 被动式 的拥塞控制机制,其依据网络中的 丢包事件 来做网络拥塞判断。即便网络中的负载很高时,只要没有产生拥塞丢包,协议就不会主动降低自己的发送速度。
本教程仅适用于Ubuntu 16.04及之后的版本,基于Python 3,因Python 3对应的包管理器pip3并未预装,首先安装pip3:
基本不会介绍BBR的原理,需要详细了解,可以访问research,我技术并不够优秀,很难解释清楚,还请见谅!
把CentOS Linux (5.13.2-1.el7.elrepo.x86_64) 7 (Core)内核设置为默认
Google BBR是一款TCP加速工具,但要求Linux内核必须大于4.9,之前分享过文章《CentOS一键升级内核并开启Google BBR》,这个方法虽然方便,但是发现在Raksmart上升级失败了,于是尝试手动升级内核。
Google BBR 是一款免费开源的TCP拥塞控制传输控制协议, 可以使 Linux 服务器显著提高吞吐量和减少 TCP 连接的延迟。 yum系统更新
先升级软件最新 yum update -y 然后导入 elrepo 软件源的 key 并安装 rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm 安装最新内核 yum -y --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml
Google BBR 是一款免费开源的TCP拥塞控制传输控制协议, 可以使Linux服务器显著提高吞吐量和减少TCP连接的延迟。
对于出口带宽,我们常常采用 BBR,锐速等 TCP 加速软件来争夺带宽提高自己的速度。 但是原版的 BBR 并没有太多侵略性,在这个人人都用 TCP 加速的大环境下,BBR 的加速功效就略显不足了。loc 的大佬专门改进了下这个 BBR,使 BBR 具有了侵略性。 最近我也连续购买了几个服务器,每次都手动搭建,感觉到十分麻烦,干脆写个脚本吧。由于是第一次接触 shell 脚本这一方面的内容,写起来感觉十分吃力,且与一般的高级语言语法差别有些大。所有有些不足的地方欢迎在下方评论反馈。 同时也加入了锐速一键换内核,锐速一键安装,自动根据 vps 情况优化锐速参数,一键优化内核参数。 也可以在锐速、BBR、BBR 魔改版中自由切换。
TCP BBR 相信大家都不陌生了,这是一套由 Google 所设计并发布的 TCP 拥塞控制算法。由于锐速迟迟没有提供对新内核的支持,再加上自 Linux 4.9内核开始默认支持 TCP BBR,它开始逐渐成为服务器单边加速的首选。而 BBRplus 则是 CSDN 网友 dog250 针对原版 BBR 进行修改而来的加强版。而 BBRv2 则是原版 BBR 的后续迭代版本,目前仍然处于测试阶段。
将 Kubernetes 的 CNI 从其他组件切换为 Cilium, 已经可以有效地提升网络的性能. 但是通过对 Cilium 不同模式的切换/功能的启用, 可以进一步提升 Cilium 的网络性能. 具体调优项包括不限于:
说明:对于CentOS系统的BBR魔改之前搬运过南琴浪大佬的脚本,无奈出现了BUG,导致CentOS安装还存在着问题,前几天友链博主千影,也写出了一个魔改BBR脚本,脚本包含BBR+BBR魔改版+Lotsever(锐速),同时支持Centos、Debian、Ubuntu系统,很方便,也很强大。
对于出口带宽,我们常常采用BBR,锐速等TCP加速软件来争夺带宽提高自己的速度。 但是原版的BBR并没有太多侵略性,在这个人人都用TCP加速的大环境下,BBR的加速功效就略显不足了。loc的大佬专门改进了下这个BBR,使BBR具有了侵略性。 最近我也连续购买了几个服务器,每次都手动搭建,感觉到十分麻烦,干脆写个脚本吧。由于是第一次接触shell脚本这一方面的内容,写起来感觉十分吃力,且与一般的高级语言语法~~差别有些大~~。所有有些不足的地方欢迎在下方评论反馈。 同时也加入了锐速一键换内核,锐速一键安装,自
腾讯TCPA,由腾讯TEG操作系统组研发,基于RHEL7.4源码,定制化的TCPA。
使用说明:一键包会自动安装依赖(仅epel-release、net-tools)和内核并重启,重启后安装自动完成无需人工干预。
项目地址:https://github.com/FanhuaCloud/Shell-BBR
Linux内核是高并发服务的关键组件之一。以下是一些可用于优化Linux内核的配置。
https://blogs.dropbox.com/tech/2019/12/evaluating-bbrv2-on-the-dropbox-edge-network/
Proxmox VE(简称为PVE),是一个款开源虚拟化管理软件,和ESXI类似,简单的说就是用来开设和管理虚拟机的。正好去年买的serverstadium独服更换了硬盘,这次打算安装PVE虚拟化软件,但serverstadium仅提供PVE5版本,而最新的已经是PVE6了。反正PVE是基于Debian的,于是让服务商给安装Debian 10,然后自己再安装PVE6,记录下安装过程。
wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-ml-5.5.9-1.el7.elrepo.x86_64.rpm
如果你有订阅一些科技新闻,应该会有看过内核在4.9当中加入了一个新的算法,来解决在有一定的丢包率的情况下的带宽稳定的问题,这个是谷歌为我们带来的干货,新的 TCP 拥塞控制算法 BBR (Bottleneck Bandwidth and RTT),谷歌一向的做法是,先上生产,然后发论文,然后有可能开源,所以这个已经合并到了内核4.9分支当中,算法带来的改变在出的测试报告当中有很详细的数据展示,这个看多了可能反而不知道到底会有什么明显改变,特别是对于我们自己的场景
查看服务器信息还有硬盘测试,从原版上面翻新过来的,去掉了网络测试,减少测试时间,原脚本显示全是英文,我翻译为中文了,新加机房地址功能,脚本里面有单独的网络测速功能,后面可能还会补充其他功能!
BBR对TCP性能的提升是巨大的,它能更有效的使用当下网络环境,Youtube应用后在吞吐量上有平均4%提升(对于日本这样的网络环境有14%以上的提升):
收集各种有用脚本,有部分脚本是网上找的,脚本的代码我都看过了,功能我也测试过,完全没什么问题,支持centos6,ubuntu12,debian7以上,kvm,vmware,hyper-v架构的linux系统。
本文翻译自 KubeCon+CloudNativeCon Europe 2022 的一篇分享:Better Bandwidth Management with eBPF。
加速内核 常用的加速软件BBR,BBR魔改,Lotserver,手动安装加速过程非常繁琐和复杂; 如果用一件脚本安装的话过程相当快,脚本来源于GitHub社区 安装过程 按照脚本一步一步执行,最后重启
本次演讲来自Demux-SF Video Technology July 2020,主讲者是Facebook的软件工程师Nitin Garg,介绍了怎样通过更好的拥塞控制进行更有效的传输,进而提高视频质量。
前几天发现买的vps,qos限制非常严重,速度非常慢,但是偶然发现ssh的22端口竟然是没有限制的, 那就得想办法让流量走22端口了,
BBR是Google开源的TCP BBR拥塞控制算法,用于提升网络连接速度,提升空间巨大,优化效果非常明显;BBR仅支持4.9以上内核Ubuntu 18.04/20.04 CentOS 8 Debian 9/10均为4.9以上内核无需更换内核可以直接开启BBR。
领取专属 10元无门槛券
手把手带您无忧上云