一、清理网络缓存
清理YUM包管理缓存
YUM缓存会占用磁盘空间并可能影响软件安装/更新速度。使用以下命令彻底清理:
sudo yum clean all # 清除所有YUM缓存(包括已下载的包和元数据)
或分步清理过期缓存:
sudo yum clean expire-cache # 仅删除过期缓存
清理DNS缓存
若系统使用systemd-resolved服务(默认启用),可通过以下命令刷新DNS缓存:
sudo systemd-resolve --flush-caches # 清除DNS缓存
若使用nscd(Name Service Cache Daemon),需先安装并重启服务:
sudo yum install -y nscd # 安装nscd(若未安装)
sudo systemctl restart nscd # 重启nscd服务以清除缓存
清理临时文件
临时文件可能包含网络相关缓存(如套接字文件),定期清理可释放资源:
sudo rm -rf /tmp/* # 删除/tmp目录下所有临时文件(谨慎操作,避免删除正在使用的文件)
清理浏览器缓存(可选)
若通过网络访问CentOS服务器(如管理界面),清理浏览器缓存可解决页面加载缓慢问题:
Ctrl+Shift+Delete,选择“时间范围”(如“全部时间”),勾选“缓存的图片和文件”,点击“清除数据”。Ctrl+Shift+Delete,选择“缓存”,点击“清除”。二、优化网络性能
调整内核网络参数
编辑/etc/sysctl.conf文件,优化以下关键参数(提升TCP连接效率和吞吐量):
sudo vi /etc/sysctl.conf
添加/修改以下内容:
# 启用TCP SYN Cookie防止SYN Flood攻击
net.ipv4.tcp_syncookies = 1
# 扩大本地端口范围(允许更多并发连接)
net.ipv4.ip_local_port_range = 1024 65535
# 增加TCP最大半连接队列长度
net.ipv4.tcp_max_syn_backlog = 8192
# 启用TCP快速重用(缩短TIME_WAIT状态持续时间)
net.ipv4.tcp_tw_reuse = 1
# 减少TIME_WAIT状态超时时间(默认60秒,调整为30秒)
net.ipv4.tcp_fin_timeout = 30
# 增加系统最大连接数
net.core.somaxconn = 65535
# 增加网络设备接收队列长度
net.core.netdev_max_backlog = 65535
# 扩大TCP读写缓冲区(提升大数据量传输性能)
net.core.rmem_max = 4194304
net.core.wmem_max = 4194304
net.ipv4.tcp_rmem = 4096 87380 4194304
net.ipv4.tcp_wmem = 4096 16384 4194304
保存后应用更改:
sudo sysctl -p # 重新加载sysctl配置
优化网络接口配置
编辑网卡配置文件(如/etc/sysconfig/network-scripts/ifcfg-eth0,eth0为实际网卡名):
sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
设置静态IP(避免DHCP延迟)并启用Jumbo Frames(若网卡/交换机支持,提升大帧传输效率):
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.100 # 替换为实际IP
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=8.8.4.4
ONBOOT=yes
MTU=1500 # 默认MTU为1500,若支持更大值(如9000),可调整为:MTU=9000
重启网络服务使配置生效:
sudo systemctl restart network # 传统network服务
# 或(若使用NetworkManager)
sudo systemctl restart NetworkManager
启用TCP Fast Open(TFO)
TFO可减少TCP握手延迟(尤其适用于短连接场景,如网页访问)。编辑/etc/sysctl.conf:
net.ipv4.tcp_fastopen = 3 # 0=禁用,1=仅客户端,2=仅服务器,3=客户端+服务器
应用更改:
sudo sysctl -p
配置QoS(服务质量)
使用tc命令(Traffic Control)分配带宽,优先保障关键业务(如数据库、Web服务)。示例:限制eth0接口总带宽为100Mbps,并为HTTP服务(端口80)分配50Mbps优先带宽:
sudo yum install -y iproute # 安装iproute工具包(含tc命令)
# 清除现有队列规则(若有)
sudo tc qdisc del dev eth0 root 2>/dev/null
# 添加HTB(Hierarchical Token Bucket)队列
sudo tc qdisc add dev eth0 root handle 1: htb default 30
# 创建父类(总带宽100Mbps)
sudo tc class add dev eth0 parent 1: classid 1:1 htb rate 100mbit ceil 100mbit
# 创建子类(HTTP服务带宽50Mbps)
sudo tc class add dev eth0 parent 1:1 classid 1:10 htb rate 50mbit ceil 100mbit
# 将HTTP流量(端口80)定向到子类1:10
sudo tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dport 80 0xffff flowid 1:10
禁用不必要的网络服务
关闭不需要的网络服务以减少资源消耗:
sudo systemctl stop NetworkManager # 若使用network服务,停止NetworkManager
sudo systemctl disable NetworkManager
sudo systemctl stop firewalld # 若使用iptables,停止firewalld
sudo systemctl disable firewalld
监控网络性能
使用工具实时监控网络流量,定位瓶颈:
sudo yum install -y iftop
sudo iftop -i eth0 # 替换为实际网卡名
sudo yum install -y nload
sudo nload eth0
# 服务端(接收端)
iperf -s
# 客户端(发送端,替换为服务端IP)
iperf -c <服务器IP>
注意事项
/etc/sysctl.conf、网卡配置文件),避免误操作导致系统异常。