CentOS 7 网络优化(升级内核、开启 BBR)
我之前介绍过关于 TCP 一些优化,包括安装使用 TCP 优化软件,这些适用于较低版本的 CentOS 系统,例如 CentOS 6,详细可参考《Linux 下的一些简单的 TCP 优化》与《TCP 优化利器——TetaTCP(锐速、LotServer)》。
对于 CentOS 7,更推荐开启 BBR 算法来解决网络问题(优化丢包率、延迟、提升直连效率),特别适合于用于国内访问使用的国外服务器网络优化,最好的优化效果能从直连几百 kb/s 速度提升至 38MB/s(数据为亲测,实际优化效果取决于机房及线路)。
由于 BBR 算法需要 4.9 以上版本 Kernel 支持,所以需要先升级内核。
升级内核
1、yum 系统升级,将所有软件包先升级至最新版本
- yum update -y
2、重启系统,让系统内核及所需环境运行在最新版本下
- root
3、查看当前系统版本、内核版本。如果已经是 4.9 以上版本,则无需进行内核升级。
- cat /etc/redhat-release
- uname -a
4、 导入 elrepo 软件源的 GPG 公钥
- rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
5、导入 elrepo 软件源
- rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
6、启用 elrepo 软件源并下载安装最新稳定版内核
- yum --enablerepo=elrepo-kernel install kernel-ml -y
7、设定 Grub 默认启动新内核
- grub2-set-default 0
8、重启,系统会自动运行到新内核上
- reboot
9、重启后,再次查看内核版本。确认是否已经升级为 4.X 内核
- uname -a
10、删除旧内核(防止 yum 更新旧版内核之后覆盖了 grub 默认启动项)
- yum -y remove kernel kernel-tools
开启 BBR
1、修改系统配置文件
- vim /etc/sysctl.conf
在结尾添加如下内容:
- net.core.default_qdisc = fq
- net.ipv4.tcp_congestion_control = bbr
保存,退出 VIM。(若未安装 vim 可使用 vi)
2、加载新配置
- sysctl -p
3、查看当前使用的拥塞算法
- sysctl net.ipv4.tcp_available_congestion_control
- lsmod | grep bbr
两条命令均返回带有 bbr 的信息则已开启 BBR 算法。
CentOS 7 网络优化(升级内核、开启 BBR)的更多相关文章
- Linux 升级内核开启 TCP BBR 有多大好处
前言 如果你有订阅一些科技新闻,应该会有看过内核在4.9当中加入了一个新的算法,来解决在有一定的丢包率的情况下的带宽稳定的问题,这个是谷歌为我们带来的干货,新的 TCP 拥塞控制算法 BBR (Bot ...
- centos 6.5 升级内核 linux 3.12.17 (笔记 实测)
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G) 系统版本:Linux centos 2.6.32-431.el6.x86_64(Centos-6.5-x86_64-mi ...
- centos 6.5 升级内核 linux 3.12.17
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G) 系统版本:Linux centos 2.6.32-431.el6.x86_64(Centos-6.5-x86_64-mi ...
- CentOS 6.5 升级内核
Docker需要3.10以上内核支持,Centos6.5 默认内核为2.6.所以手动编译安装3.10内核. 查看当前系统内核版本 [root@gu ~]# uname -r2.6.32-431.el6 ...
- CentOS 6.5 升级内核到 3.10.28
本文适用于CentOS 6.4, CentOS 6.5,亲测可行,估计也适用于其他Linux发行版. 1. 准备工作 1.1 下载源码包 Linux内核版本有两种:稳定版和开发版 ,Linux内核版本 ...
- CentOS 7.x升级内核
第一种针对当前内核版本的小版本升级可以采用如下方法: [root@localhost ~]# uname -r -.el7 [root@localhost ~]# yum list kernel [r ...
- 在centos 7下升级内核
前言 今天读了一篇老外的文章,讲的是如何在linux环境下升级内核.比较暴力,比较简单,故做个记录. 文章中,作者先列出一个常识:linux是内核名,不是系统名.我们平时说的"lin ...
- CentOS 6.5 升级内核 kernel
本文适用于CentOS 6.5, CentOS 6.6,亲测可行,估计也适用于其他Linux发行版. 1. 准备工作 1.1 下载源码包 Linux内核版本有两种:稳定版和开发版 ,Linux内核版本 ...
- 【kernel】Centos 云上升级内核失败 如何处理【笔记记录转】
Centos7选定默认启动的内核版本 vim /etc/grub2.cfg 修改timeout =5 修改成30天 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附 ...
- centos 6.5升级内核到3.1
1.查看本机内核版本 [root@localhost ~]# uname -r 2.6.32-358.el6.x86_64 2.安装含有内核软件的源 步骤一:导入证书 [root@localhost ...
随机推荐
- 微信小程序引入腾讯地图API方法
微信小程序大热,在小程序过程中,我们很多时候都会用到地图.不管是企业的地址,还是商家的配送都会用到地图: 我在刚写地图这一块时,在网上也参考了很多网友的方法,始终有Bug(类似于地图拖拽是画面抖动,无 ...
- webpack4.0(01.基础配置和初识)
1.什么是webpack? 2.webpack可以做什莫? 代码转换.文件优化.代码分割.模块合并.自动刷新.代码校验.自动发布 3.我们要学习webpack的什么? 4.使用webpack 1.首先 ...
- Thymeleaf+SpringBoot+SpringDataJPA实现的中小医院信息管理系统
项目简介 项目来源于:https://gitee.com/sensay/hisystem 作者介绍 本系统是基于Thymeleaf+SpringBoot+SpringDataJPA实现的的中小医院信息 ...
- matlab计算LZ复杂度
我这个计算得14通道,每个通道截取3000个数据得复杂度,最后将计算得出得数据存储到本地txt文档中 function LZC(data) % 计算一维信号的复杂度 % data时间序列 % lzc: ...
- A. Number Theory Problem
题目大意:计算小于2^n,且满足2^k-1并且是7的倍数的个数 思路:优先打表,数据不大,1e5,然后求个前n项和 #include<bits/stdc++.h> using namesp ...
- 落谷 P1734 最大约数和
题目描述 选取和不超过S的若干个不同的正整数,使得所有数的约数(不含它本身)之和最大. 输入格式 输入一个正整数S. 输出格式 输出最大的约数之和. 输入输出样例 输入 #1复制 11 输出 #1复制 ...
- MySQL的单表查询
单表查询 单表查询语法: select distinct 字段1,字段2... from 表名 where 条件 group by field having筛选 order by 关键字执行的优先级: ...
- Maven+JSP+Servlet+JDBC+Redis+Mysql实现的黑马旅游网
项目简介 项目来源于:https://gitee.com/haoshunyu/travel 本系统是基于Maven+JSP+Servlet+JdbcTemplate+Redis+Mysql实现的旅游网 ...
- 通过 Swoole\Table 实现 Swoole 多进程数据共享
第三方存储媒介 前面我们介绍了基于 Swoole 的 Process 及 Process\Pool 模块在 PHP 中实现多进程管理,但是多进程模式下进程间是相互隔离的,无法共享数据和变量,即便是通过 ...
- Python 代码编辑器怎么选?PyCharm、VS Code、Jupyter Notebook 都各有特色
Python 代码编辑器怎么选?PyCharm.VS Code.Jupyter Notebook 都各有特色,Jupyter 适合做数据分析这些需要可视化的操作,PyCharm 更适合做完整的 Pyt ...