Linux启用tcp_hybla,加速网络
OpenVZ的VPS是不支持修改内核的,所以,OpenVZ就不用看下文了,没用。Xen,KVM,VMware之类的是支持修改内核的,所以,就有了下面的折腾。刚买了个HK的KVM,顺便做测试。
加载tcp_hybla
模块
/sbin/modprobe tcp_hybla
OpenVZ的机器这一步就会报错。
然后看下是否正确加载了此模块
lsmod |grep hybla
测试是否正确加载:
$ lsmod |grep hybla
tcp_hybla 2310 5
$ sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = hybla cubic reno
两次都看到hybla
,说明已正常加载。
修改系统配置(以CentOS 6为例)
vim /etc/sysctl.conf
在最后添加如下内容:
fs.file-max = 65536
net.core.rmem_max = 67108864
net.core.wmem_max = 67108864
net.core.rmem_default = 65536
net.core.wmem_default = 65536
net.core.netdev_max_backlog = 4096
net.core.somaxconn = 4096
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.ip_local_port_range = 10000 65000
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_rmem = 4096 87380 67108864
net.ipv4.tcp_wmem = 4096 65536 67108864
net.ipv4.tcp_mtu_probing = 1
net.ipv4.tcp_congestion_control = hybla
# 选择性开启
#net.ipv4.tcp_fastopen = 3
使修改立即生效:
sysctl -p
测试
这里就不说了,效果是有一些的,但是肯定不会非常明显!而且跟主机商也有很大关系!
OK,收工!
20160828 补充:
卸载模块的方法:
rmmod tcp_hybla
注意:tcp_hybla
适用于延迟高,丢包高的网络,例如中美之间,如果是亚洲的低延迟的机器,请使用 tcp_htcp
代替,方法类似
评论