被跨运营商限速?飞牛开启bbr算法

fclyn 发布于 23 天前 24 次阅读


前几天 外网看视频的时候 特别卡顿才发现我被跨运营商限速惨了 后面在网上找到此方法 设置后跨运营商可以跑满上行 话不多说 上代码

  1. ssh登录飞牛
  2. 输入sudo modprobe tcp_bbr(要输入密码 输入密码不会显示  输完按回车)
  3. 输入sudo lsmod | grep tcp_   预期输出 tcp_bbr...
  4. 输入sudo sysctl net.ipv4.tcp_available_congestion_control 预期输出 reno cubic bbr
  5. 修改为bbr 算法  指令sudo sysctl -w net.ipv4.tcp_congestion_control=bbr  预期返回net.ipv4.tcp_congestion_control=bbr  这时候可以去测试看  应该可以跑满上行
  6. 以上重启会失效 确定没问题后 需要改为永久生效 sudo nano /etc/sysctl.conf 在最后一行添加net.ipv4.tcp_congestion_control=bbr  然后ctrl+O(字母O)保存  ctrl+X退出  继续输入指令sudo sysctl -p  回车确定就ok了

最好直接复制代码 免得手打出错

以上代码来自于https://b23.tv/n6SQBRT 希望帮到大家

1.设备环境

  • 物理机,系统版本:0.8.41
  • 网络环境:公网 + 端口转发
  • 测试工具:iperf3,homebox
2.问题现象

远端设备 有线连接:

  • 飞牛上传速度 = N1 上传速度 = 60Mbps(与宽带标称基本一致)。

远端设备 无线连接:

  • 飞牛上传速度 ≤30Mbps(显著低于 N1 的 60Mbps)。
连接方式 设备 速率(Mbps) Retr 次数
有线 飞牛 60
有线 N1 60
无线 飞牛 30
无线 N1 60
3.排查过程

基础检查:

  • 确认路由器、网线、无线信号强度均正常。
  • 更换设备测试,问题复现(必现)。

Iperf3分析:

  • 发现无线连接时,飞牛与 N1 的 TCP 重传策略差异明显。
  • 推测问题可能与TCP 拥塞控制算法有关。

查询设备算法:

  • 发现N1采用的是bbr算法,飞牛采用cubic算法。
4.解决方法
  • 通过调整 TCP 拥塞控制算法,优化链路传输效率。

1.加载目标算法模块

# 加载BBR算法
sudo modprobe tcp_bbr

2.验证模块加载

lsmod | grep tcp_  # 确认输出包含tcp_bbr

3.检查可用算法

sysctl net.ipv4.tcp_available_congestion_control
# 预期输出:reno cubic bbr

4.修改默认算法

  • 临时生效:
sudo sysctl -w net.ipv4.tcp_congestion_control=bbr
  • 永久生效:
sudo nano /etc/sysctl.conf
# 添加以下行
net.ipv4.tcp_congestion_control = bbr
sudo sysctl -p  # 生效配置
5.验证结果
  • 修改算法后,远端设备无线连接时,飞牛上传速度提升至 60Mbps,与有线一致。
6.总结

问题根源

  • 无线链路因误码率较高,默认 TCP Cubic 算法过度保守,导致带宽利用率低。

优化关键

  • BBR 算法通过探测带宽和最小 RTT,动态调整速率,在高丢包场景下表现更优。

附:iperf 测试对比表

连接方式 设备 算法 速率(Mbps) Retr 次数
有线 飞牛 Cubic 60
有线 N1 BBR 60
无线 飞牛 Cubic 30
无线 N1 BBR 60
无线 飞牛 BBR 60
此作者没有提供个人介绍。
最后更新于 2025-08-21