标签:香港 第一个 col 新版本 alt bottle cursor https level
前言
一般而言,在云计算商那里“租”了一台服务器之后,我一般会选择
CentOS 7
系统,所以这篇文章,就以CentOS为例(似乎有一点标题党的嫌疑?
基本不会介绍BBR的原理,需要详细了解,可以访问research,我技术并不够优秀,很难解释清楚,还请见谅!
先讲讲BBR吧!Wiki百科给出的解释是Bottleneck Bandwidth and Round-trip propagation time (BBR)
,是Google在2016年开发的TCP拥塞控制算法(开源了)。TCP拥塞控制算法有很多,BBR是其中一种,但是由于它出色的效果,被很多人采用。至于linux内核什么时候开始原生支持的,网上的说法真的是五花八门,很多人文章感觉就是互相抄,连2.6.*
的说法都能蹦出来(我怀疑是一些采集站)。相对而言,很多大佬的博客文章,就比较严谨一些,基本上都是4.9
。抱着不懂就差的态度,我去Google稍微搜了一下,不敢确定是不是一定是对的。Wiki百科的详细说明,可以找到如下一条说明:
内核 |
初始发行日期 |
最新版本 |
维护者 |
支持状态 |
备注 |
---|---|---|---|---|---|
4.9 |
2016年12月11日 |
4.9.148 |
葛雷格·克罗哈曼 |
长期支持版本,从2016年12月至2023年1月 |
开始支持 BBR congestion control。 |
这时候我们来更换内核吧,这里我的测试机器是中国香港ECS。
$ uname -r
$ yum update -y
这里我们需要用到Repo项目Enterprise Linux软件包的RPM存储库。
$ rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
$ yum install https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
$ yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
$ yum --enablerepo=elrepo-kernel install kernel-ml
在安装完新的 Kernrl 之后,系统是不会帮你切换到新内核的,重启也不行,需要我们自己设置,将新内核设置为默认启动选项。
$ rpm -qa | grep kernel
$ uname -r
$ awk -F\‘ ‘$1=="menuentry " {print i++ " : " $2}‘ /etc/grub2.cfg
我们可以看到,安装完之后,内核没有切换过去,通过查看得知,新安装的内核位于第一个位置,标记为 0
。这是我们需要修改/etc/default/grub
文件,以便于让系统在启动时让新内核成为默认选项。
$ vim /etc/default/grub
需要把图中的GRUB_DEFAULT=saved
改成 GRUB_DEFAULT=0
,然后保存。当然,你也可以在安装其它版本的Kernel之后,更改GRUB_DEFAULT
的值。
$ grub2-mkconfig -o /boot/grub2/grub.cfg
$ reboot
$ uname -r
可以看到,已经成功啦!
你可以在安装新内核之后,选择把其它内核删掉,但是请注意千万不要删除正在运行的那个内核!!!
$ rpm -qa | grep kernel
$ yum remove kernel-[old_kernel_version]
# 举个例子
$ yum remove kernel-3.10.0-957.el7.x86_64
$ grub2-mkconfig -o /boot/grub2/grub.cfg
整了这么半天,除了更新下内核,另一个重要的事情就是需要开启BBR了。
/tec/sysctl.conf
文件$ vim /etc/sysctl.conf
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
/tec/sysctl.conf
文件中:$ echo ‘net.core.default_qdisc=fq‘ | sudo tee -a /etc/sysctl.conf
$ echo ‘net.ipv4.tcp_congestion_control=bbr‘ | sudo tee -a /etc/sysctl.conf
$ sysctl -p
$ sysctl net.ipv4.tcp_congestion_control
# 显示如下内容即可:
# net.ipv4.tcp_congestion_control = bbr
$ sysctl net.ipv4.tcp_available_congestion_control
# 显示如下内容即可:
# net.ipv4.tcp_available_congestion_control = reno cubic bbr
$ lsmod | grep bbr
到这里,基本上就成功了!
标签:香港 第一个 col 新版本 alt bottle cursor https level
原文地址:https://www.cnblogs.com/weifeng1463/p/14069906.html