CentOS TCP调优围绕连接建立、数据传输、资源回收三环节,通过调整SYN队列、缓冲区、TIME-WAIT等参数提升高并发性能,需配套文件句柄与拥塞控制优化,并写入sysctl.conf后执行sysctl -p生效。
CentOS 服务器 TCP 调优不是堆参数,而是围绕连接建立、数据传输、资源回收三个环节做针对性调整。核心是让内核更高效地处理高并发短连接或长连接场景,避免队列溢出、缓冲区瓶颈和 TIME-WAIT 占用过多端口。
TCP 连接容量调优
重点解决“连不上”问题,比如 SYN 队列满、监听队列打满导致连接被丢弃:
net.core.somaxconn = 65535:应用 listen() 的 backlog 上限,必须 ≥ 应用设置(如 Nginx 的 listen ... backlog=65535)net.ipv4.tcp_max_syn_backlog = 65535:SYN 半连接队列长度,防止 SYN Flood 或突发建连压垮队列net.core.netdev_max_backlog = 65535:网卡软中断收包队列,配合多队列网卡使用,避免包在驱动层就被丢TCP 缓冲区与吞吐调优
影响带宽利用率和延迟,尤其对千兆以上网络或跨公网链路:
net.ipv4.tcp_rmem = "4096 262144 8388608":接收缓冲区最小/默认/最大值(单位字节),最大设为 8MB 可支撑高带宽低延迟场景net.ipv4.tcp_wmem = "4096 262144 8388608":发送缓冲区同理,避免因窗口小限制发包速率net.core.rmem_max = 8388608 和 net.core.wmem_max = 8388608:全局上限,确保应用可 setsockopt 修改net.ipv4.tcp_window_scaling = 1:必须开启,否则 TCP 窗口无法突破 64KB,高延迟网络(如跨地域)会严重降速TIME-WAIT 与连接复用优化
解决“端口耗尽”问题,常见于大量短连接(如 HTTP、RPC):
net.ipv4.tcp_tw_reuse = 1:允许把处于 TIME-WAIT 的 socket 用于新连接(需时间戳开启,安全且推荐)net.ipv4.tcp_fin_timeout = 30:主动关闭方 FIN_WAIT_2 超时时间,缩短连接释放周期net.ipv4.tcp_max_tw_buckets = 6000:限制系统中 TIME-WAIT 套接字总数,防内存耗尽(不建议设为 0)⚠️ 注意:tcp_tw_recycle 在 NAT 环境下会导致连接失败,已废弃,务必禁用或不设置
其他关键配套项
单点调优无效,需同步调整:
fs.file-max = 1000000:系统级最大文件句柄数,配合 ulimit 使用/etc/security/limits.conf 中配置:* soft nofile 65535* hard nofile 65535
net.ipv4.tcp_congestion_control = bbr(内核 ≥ 4.9),比 cubic 更适合高带宽、有丢包的公网环境net.ipv4.tcp_timestamps = 1(tcp_tw_reuse 依赖它,且有助于 RTT 估算)所有参数写入 /etc/sysctl.conf 后执行 sysctl -p 生效。生产环境修改前先备份原文件,并在低峰期验证效果。
小米路由器mesh怎么设置两个wifi信号(小米路由器mesh设置两个wifi信号方法)
小米路由器mesh组网怎么桥接(小米路由器mesh组网桥接方法)
小米路由器4q怎么用手机控制(小米路由器4q手机控制使用方法)
小米路由器4q支持5g吗怎么设置(小米路由器4q支持5g设置方法)
小米路由器4q刷机包怎么安装(小米路由器4q刷机包安装方法)
小米路由器4q忘记密码怎么办(小米路由器4q忘记密码如何解决)