魔法TCP
该脚本旨在优化两台主机之间的 TCP 性能。
用法
bash <(curl -sSL https://raw.githubusercontent.com/nexstorm/magicTCP/main/main.sh)
最低要求
- Debian 11
- 500MB 可用磁盘空间
- 1GB 内存
这个脚本的作用
magicTCP内核
这是针对 TCP 吞吐量进行优化的内核。它(通常)基于最新的 LTS 内核,其中包含优化部分内核并启用某些调整的补丁。
通过 sysctl.conf 调整 TCP
当您运行脚本时,我们会对您的 sysctl 文件应用以下更改
net.ipv4.tcp_rmem = 8192 262144 536870912
net.ipv4.tcp_wmem = 8192 262144 536870912
net.ipv4.tcp_adv_win_scale = -2
net.ipv4.tcp_collapse_max_bytes = 6291456
net.ipv4.tcp_notsent_lowat = 131072
net.ipv4.tcp_window_scaling = 1
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr
-
net.ipv4.tcp_rmem = 8192 262144 536870912
此行指定 TCP 连接的最小、默认和最大接收套接字缓冲区大小。增加缓冲区大小有助于提高高吞吐量应用程序的性能。
-
net.ipv4.tcp_wmem = 8192 262144 536870912
与上一行类似,这行设置 TCP 连接的最小、默认和最大发送套接字缓冲区大小。增加这些值可以允许更大的发送缓冲区,从而提高通过 TCP 发送数据的应用程序的性能。
-
net.ipv4.tcp_adv_win_scale = -2
将接收缓冲区中的内存设置为 0.25 倍,以考虑处理数据包时的开销。-2用于减少TCP崩溃的频率
-
net.ipv4.tcp_collapse_max_bytes = 6291456
-
net.ipv4.tcp_notsent_lowat = 131072
这设置了 TCP 套接字中未发送数据量的低水位线。提高该阈值可以减少发送的小数据包的数量。
-
net.ipv4.tcp_window_scaling = 1
启用 TCP 窗口缩放
-
net.core.default_qdisc = fq
使用公平队列作为排队规则
-
net.ipv4.tcp_congestion_control = bbr
使用BBR作为CCA。BBR 是一种通常具有最佳吞吐量的 Google 算法。我们使用它基本上是因为它具有不公平的攻击性。
该脚本还对 UDP 进行一些调整并启用转发。
文章评论
大佬过年好 这个内核下载地址失效了
求修复 谢谢