BBR介绍
BBR (Bottleneck Bandwidth and RTT)算法对弱网络下提升性能有一定帮助。虽然说在国内很多公司也都内部有类似的内核协议栈的改进,并且很多的效果
都不比google差,但是这个好歹是进入了kernel 主干的,大家都可以自由使用。
centos7 编译升级
centos编译内核rpm
yum -y install gcc ncurses ncurses-devel bc openssl–devel perl-devel
make localmodconfig
make menuconfig # 选中BBR
grep -i bbr .config #确认是否选中
make rpm
修改引导项目
grub2-set-default 0
grub2-mkconfig -o /boot/grub2/grub.cfg
重启后查看
[root@CentOS ipv4]# uname -a
Linux CentOS 4.9.0 #1 SMP Sat Dec 17 00:47:52 CST 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@CentOS ipv4]# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = bbr reno cubic
ubuntu 16.04升级
因为我买AWS EC2的时候忘记选磁盘了,磁盘只有8G,造成本地编译内核的时候发现编译不了。就网上找了几个deb包直接安装上了。
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-image-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-headers-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb
get http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-headers-4.9.0-040900_4.9.0-040900.201612111631_all.deb
sudo dpkg -i *.deb
sudo update-grub
sudo reboot
重启后设置内核参数
sudo sysctl -w net.ipv4.tcp_congestion_control=bbr
这个mainline版本不建议安装啊 很多东西都没 AUFS都没 气死了 又要装回原来的ubuntu。。。
用docker的话现在用overlayfs就OK。AUFS我们内部都没用过。