CentOS 7 开启BBR 加速,大幅提升带宽利用率

什么是BBR

        BBR算法由Google开发,旨在优化TCP在高带宽和高延迟网络环境下的性能。Google在2016年发布了BBR算法,并将其应用于自己的网络基础设施中,例如Google Cloud和YouTube等服务。BBR算法的设计目标是通过智能的拥塞控制策略,最大程度地利用网络资源,提高数据传输的效率和稳定性。由于其出色的性能表现,BBR算法已经成为了许多网络服务提供商和开发者的首选,被广泛应用于各种网络环境中。

  1. 测量带宽和延迟:BBR算法通过持续的网络测量来估计网络的带宽和往返传播时间(RTT)。它使用拥塞窗口探测(CWND probing)和往返时间探测(RTT probing)等技术来收集这些信息。

  2. 拥塞控制:BBR算法采用了一种称为拥塞控制状态机(Cubic with pacing)的拥塞控制策略。它根据网络的拥塞程度动态地调整TCP拥塞窗口的大小。当网络拥塞程度较低时,它会增加拥塞窗口以提高吞吐量;当网络拥塞程度较高时,它会减小拥塞窗口以避免丢包和网络拥塞。

  3. 带宽估计:BBR算法使用带宽测量器(Bandwidth Estimator)来估计网络的带宽。它根据收到的ACK包和发送的数据包之间的间隔来计算网络的带宽,并根据这些信息调整拥塞窗口的大小。

  4. 延迟控制:BBR算法还考虑了网络的延迟情况。它会根据网络的延迟动态地调整发送数据的速率,以最大程度地减少数据包的往返时间。

  5. 流量控制:BBR算法还包括了一种称为流量控制器(Pacing Controller)的机制,用于控制数据包的发送速率,以避免网络拥塞和丢包。

总的来说,BBR算法通过综合考虑网络的带宽、延迟和拥塞程度,动态地调整TCP的拥塞窗口大小和发送速率,以实现更高的吞吐量和更低的延迟。

安装新版内核

更新源

yum update

查看系统版本

cat /etc/redhat-release

查看内核版本

uname -sr

 

BBR内核要求是4.9+,接下来启用 ELRepo 仓库升级内核

安装elrepo并升级内核

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
# 安装新版的稳定版内核
yum --enablerepo=elrepo-kernel install kernel-ml -y

安装完毕后使用下面的命令查看是否安装成功。

rpm -qa | grep kernel

 

设置系统启动顺序

sudo egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'

 更新grub文件并重启系统

# 上面我的情况第一行是 CentOS Linux (6.8.9-1.el7.elrepo.x86_64) 7 (Core),从第一行为0依次数,0、1、2、3这样,看你的新内核是第几。然后就输入下面的命令
sudo grub2-set-default 0
reboot

再次查看内核版本

uname -sr

 

开启BBR

添加配置

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

加载系统参数,输出了添加的两行配置代表正常

sudo sysctl -p

 验证是否开启成功

sudo sysctl net.ipv4.tcp_available_congestion_control
# 输出 net.ipv4.tcp_available_congestion_control = bbr cubic reno 
sudo sysctl -n net.ipv4.tcp_congestion_control
# 输出 bbr 
lsmod | grep bbr
# 输出 tcp_bbr 16384  1

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 为了提升 Centos7 的 CPU 利用率,我们可以使用一些脚本来优化系统性能。这些脚本能够在提高 CPU 利用率的同时还能保证系统的稳定性和安全性。 首先,我们可以使用 CPU 核心调优脚本来优化 CPU 利用率,提高系统性能。这个脚本可以通过调整 CPU 的核心数来优化系统的性能。我们可以设置适当的核心数,从而提高 CPU 利用率。这个脚本需要对系统的设置进行修改,所以在使用前请备份系统文件。 其次,我们可以使用 I/O 优化脚本来提高系统的 I/O 性能,从而提高 CPU 利用率。这个脚本可以通过调整读写缓存来优化文件 IO,加速系统和应用的读写速度,从而改善系统性能。这个脚本也需要进行系统设置的修改,所以在使用前请备份系统文件。 最后,我们可以使用内存优化脚本来提高系统的内存利用率,从而提高 CPU 利用率。这个脚本可以通过调整系统的内存分配策略,从而让系统能够更好地管理内存资源,提高系统的性能。这个脚本也需要对系统的设置进行修改,所以在使用前请备份系统文件。 总之,采用上述的脚本可以提高 Centos7 的 CPU 利用率,同时提升系统性能和稳定性。使用前请加倍小心,以免修改系统设置导致系统崩溃或出现其他问题。 ### 回答2: CentOS 7 提升 CPU 利用率脚本可以有效地提高系统的性能利用率,从而提升系统的运行效率和性能稳定性。下面是一个简单的脚本示例: #!/bin/bash # Set CPU scaling governor to "performance" mode for CPUFREQ in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do [ -f $CPUFREQ ] || continue echo performance > $CPUFREQ done # Disable frequency scaling for CPUFREQ in /sys/devices/system/cpu/cpu*/cpufreq/scaling_enabled; do [ -f $CPUFREQ ] || continue echo 0 > $CPUFREQ done # Enable IRQbalance systemctl enable irqbalance systemctl start irqbalance # Set CPU affinity for running processes for PROC in $(ps -Ao pid --no-headers); do taskset -p -c 0 $PROC > /dev/null 2>&1 done # Set kernel parameters to improve performance echo 'vm.swappiness = 10' >> /etc/sysctl.conf echo 'vm.vfs_cache_pressure = 50' >> /etc/sysctl.conf sysctl -p # Remove unnecessary services and packages yum remove -y abrt-plugin-bugzilla abrt-plugin-kerneloops abrt-plugin-logger abrt-plugin-mailx abrt-plugin-sos abrt abrtd acpid atd autofs avahi-daemon avahi-autoipd coolkey cpuspeed cups dhcpv6-client dhclient dhclient-script eject firewalld firstboot gdm gdm-plymouth gdm-user-switch-applet gnome-session-xsession irqbalance kdump kexec-tools kpartx kudzu lvm2-cluster lvm2 lvm2-lockd lvm2-monitor lvm2-sysmd mcstrans mdmonitor microcode_ctl mlocate net-snmp net-snmp-utils nfs-utils nscd ntp ntpdate oddjob oddjob-mkhomedir open-vm-tools openssh-clients openssh-server openssl-devel plymouth-core-libs plymouth-scripts pm-utils portreserve prelink rng-tools rsyslog smartmontools smartmontools-libs spice-vdagent sysstat system-config-firewall-tui system-config-network-tui upower usbutils util-linux-ng yum-langpacks yum-plugin-fastestmirror yum-plugin-remove-with-leaves yum-utils 这个脚本分为几个部分。首先是将 CPU 的 scaling governor 设置为 performance 模式,关闭 CPU 的 frequency scaling,启用 IRQbalance,并为运行的进程设置 CPU 亲和性。随后是设置内核参数以提高性能,最后是删除一些不必要的服务和包。 通过使用这个脚本,可以有效地提高 CentOS 7 系统的性能和稳定性,提高 CPU 利用率。需要注意的是,这个脚本可能会导致一些不必要的安全隐患,所以在使用前要谨慎评估其影响。 ### 回答3: 在 Centos7提升 CPU 利用率可以通过脚本实现。其中,最关键的是使用了 stress 工具,它可以模拟 CPU 的高负载状态,来测试系统的稳定性和性能。 以下是一个简单的脚本示例: ```bash #!/bin/bash # 设置压力测试时长和 CPU 数量 TIME=60 CPU_COUNT=$(grep -c ^processor /proc/cpuinfo) # 安装 stress 工具 yum install -y stress # 创建负载测试循环 while true do for i in $(seq $CPU_COUNT) do # 在每个 CPU 上使用 stress 工具 stress --cpu 1 --timeout $TIME & done # 等待压力测试完成 sleep $TIME done ``` 这个脚本会在后台执行一个无限循环,每次都会在每个 CPU 上启动一个 stress 进程,并且等待压力测试时长。通过这种方式,可以有效地提高 CPU 利用率。 在使用这个脚本时需要注意,它将会给系统带来相当大的负载,可能会导致其他应用程序的性能下降或者系统稳定性的问题。建议在测试环境中运行,并且对系统进行足够的测试和监控。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值