之前centos7.9的bbrplus 很厉害 研究了一下 捣鼓出来了此次文章里面的bbrplus-lite,因为涉及内核,所以只学习了一东西进行测试选择比较,看还有没有必要选择bbr plus,结果不言而喻
最佳网络配置选择报告
测试对象 :RackNerd VPS 23.xx122
系统 :Debian GNU/Linux 12 / Linux 6.1.0-9-amd64
测试时间 :2026-06-28
测试方向 :VPS → 本机下载方向
测试工具 :iperf3 reverse mode
测试命令 :iperf3 -c 23.xxx.122 -p 5201 -R -t 12 -O 2
每组次数 :3 次
1. 测试目标
从以下变量中选出当前线路最优组合:
拥塞控制:bbr / bbrplus-lite
qdisc:fq / fq_pie
Buffer/sysctl:基线参数 / 大 buffer 优化参数
共测试 8 组:
bbr + fq + base
bbr + fq + big
bbr + fq_pie + base
bbr + fq_pie + big
bbrplus + fq + base
bbrplus + fq + big
bbrplus + fq_pie + base
bbrplus + fq_pie + big
测试时不仅修改 net.core.default_qdisc,也实际执行:
tc qdisc replace dev eth0 root <fq|fq_pie>
确保当前网卡 eth0 的 qdisc 真实切换。
2. 测试结果排序
按 Receiver 平均速率从高到低排序:
排名
配置
拥塞控制
qdisc
Buffer
Receiver 平均
最小
最大
Sender 平均
平均重传
1
bbr_fq_pie_big
bbr
fq_pie
big
5.0067 Mbps
3.41
6.81
6.2433
1104
2
bbrplus_fq_base
bbrplus-lite
fq
base
4.6633 Mbps
2.36
6.21
5.56
1045.3
3
bbrplus_fq_big
bbrplus-lite
fq
big
3.1733 Mbps
1.49
4.89
3.5267
666
4
bbr_fq_big
bbr
fq
big
2.5333 Mbps
1.40
3.58
3.0567
638.7
5
bbr_fq_base
bbr
fq
base
2.39 Mbps
1.75
3.41
2.7467
506
6
bbr_fq_pie_base
bbr
fq_pie
base
2.1867 Mbps
1.75
2.45
3.4667
469
7
bbrplus_fq_pie_base
bbrplus-lite
fq_pie
base
2.1837 Mbps
0.961
3.32
2.847
469.7
8
bbrplus_fq_pie_big
bbrplus-lite
fq_pie
big
1.8957 Mbps
0.437
2.80
2.6027
395.7
3. 最终选择
当前线路最优组合是:
原生 bbr + fq_pie + 大 buffer 优化参数
平均 Receiver 速率:
5.0067 Mbps
相比第二名:
bbrplus-lite + fq + base = 4.6633 Mbps
提升约:
(5.0067 - 4.6633) / 4.6633 ≈ 7.4%
因此最终选择:
net.ipv4.tcp_congestion_control = bbr
net.core.default_qdisc = fq_pie
大 buffer/sysctl 优化参数
4. 关键发现
4.1 bbrplus-lite 不是最优,但仍然很强
bbrplus-lite + fq + base 排名第二:
4.6633 Mbps
说明外部模块版 bbrplus-lite 是有效的,但在完整矩阵中没有超过:
bbr + fq_pie + big buffer
4.2 fq_pie 对 bbr 有明显收益
对原生 bbr 来说:
bbr + fq + base: 2.39 Mbps
bbr + fq_pie + big: 5.0067 Mbps
提升约:
109%
说明用户给出的方向对原生 bbr 是有效的。
4.3 fq_pie 对 bbrplus-lite 不适合
对 bbrplus-lite 来说:
bbrplus + fq + base: 4.6633 Mbps
bbrplus + fq_pie + big: 1.8957 Mbps
fq_pie + big buffer 反而让 bbrplus-lite 明显下降。
因此不要把“fq_pie + big buffer”简单套到 bbrplus-lite 上。
5. 已应用到服务器的最终配置
已将最佳配置应用并持久化。
5.1 当前运行状态
net.ipv4.tcp_congestion_control = bbr
net.core.default_qdisc = fq_pie
net.core.rmem_max = 134217728
net.core.wmem_max = 134217728
net.ipv4.tcp_rmem = 4096 131072 134217728
net.ipv4.tcp_wmem = 4096 131072 134217728
net.core.netdev_max_backlog = 300000
net.core.somaxconn = 65535
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.ip_local_port_range = 10240 65535
net.ipv4.tcp_fastopen = 3
net.ipv4.tcp_tw_reuse = 1
vm.swappiness = 10
net.ipv4.tcp_slow_start_after_idle = 0
当前 eth0 qdisc:
qdisc fq_pie ... root ...
5.2 持久化文件
/etc/modules-load.d/network-optimize.conf
/etc/sysctl.d/99-network-optimize.conf
/etc/modules-load.d/network-optimize.conf:
sch_fq_pie
tcp_bbr
/etc/sysctl.d/99-network-optimize.conf:
# Best measured profile on 2026-06-28: bbr + fq_pie + big buffer
# Queue & Congestion Control
net.core.default_qdisc=fq_pie
net.ipv4.tcp_congestion_control=bbr
# Buffer
net.core.rmem_max=134217728
net.core.wmem_max=134217728
net.core.netdev_max_backlog=300000
net.ipv4.tcp_rmem=4096 131072 134217728
net.ipv4.tcp_wmem=4096 131072 134217728
# File Handles
fs.file-max=2097152
# TCP
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_fastopen=3
net.ipv4.tcp_window_scaling=1
net.ipv4.tcp_slow_start_after_idle=0
# Connection Queue
net.ipv4.tcp_max_syn_backlog=262144
net.core.somaxconn=65535
# Port Range
net.ipv4.ip_local_port_range=10240 65535
# Memory
vm.swappiness=10
6. 回滚方式
已创建回滚脚本:
/root/rollback-network-optimize.sh
执行:
bash /root/rollback-network-optimize.sh
会回滚到较安全的:
bbr + fq + 基线参数
7. 最终建议
选择:
bbr + fq_pie + big buffer
理由:
8 组矩阵中平均吞吐最高。
最小值也最高:3.41 Mbps,说明下限更稳。
比第二名 bbrplus + fq + base 高约 7.4%。
使用原生 bbr,不依赖 out-of-tree bbrplus 模块,长期维护风险更低。
因此最终推荐保留当前已应用配置。
8. 原始数据文件
D:\Users\l\Documents\bbrplus-debian\full-matrix-raw-20260628-123301.txt
D:\Users\l\Documents\bbrplus-debian\full-matrix-results-20260628-123301.csv