CentOS上优化网络(适用于FetchLinux等通用Linux环境)的方法
内核参数是网络性能的底层支撑,需通过/etc/sysctl.conf文件调整并执行sysctl -p生效:
net.core.rmem_default)和发送(net.core.wmem_default)缓冲区大小(如设为262144),提升大数据量传输时的缓存能力;net.ipv4.tcp_tw_reuse=1,允许快速重用处于TIME_WAIT状态的socket,显著提高短连接场景(如Web服务)的性能;net.ipv4.tcp_window_scaling=1,支持更大的TCP窗口(最大可达1GB),提升高带宽、高延迟网络(如跨地域传输)的吞吐量;net.ipv4.tcp_congestion_control=cubic或bbr),其中bbr更适合现代高带宽网络,能减少延迟并提高利用率;net.ipv4.tcp_max_syn_backlog(如设为8192)和net.core.somaxconn(如设为4096),应对高并发连接请求,避免因队列满导致的连接拒绝。bond0),通过mode=4(802.3ad,链路聚合)实现带宽叠加(如2个千兆网卡绑定后理论带宽为2Gbps)和故障转移(单网卡损坏不影响网络);sendfile()系统调用),直接在内核空间完成文件到网络的数据传输,避免用户态与内核态之间的多次拷贝(如Nginx默认开启sendfile on;);worker_connections(增大并发连接数)、MySQL的max_connections(优化数据库连接池),根据实际负载调整参数。iftop(查看实时流量)、nload(监控带宽使用)、ss -tulnp(查看TCP/UDP连接状态)等工具,及时发现网络瓶颈(如某IP占用过高带宽);iperf3(测试TCP/UDP吞吐量)、ping(检测延迟)、traceroute(排查路由问题)等工具,量化优化效果(如优化前后的带宽提升、延迟降低)。systemctl disable禁用不用的网络服务(如cups打印服务、avahi-daemon零配置网络),减少后台进程对系统资源的占用;/var/log(日志文件)和/tmp(临时文件),释放磁盘空间,避免磁盘I/O过高影响网络性能。以上方法需根据实际环境(如网络带宽、应用类型、硬件配置)调整,建议在测试环境验证后再应用于生产环境,避免配置错误导致网络中断。