温馨提示×

为什么centos dropped增多

小樊
39
2026-09-03 03:20:26
栏目: 智能运维

在 CentOS(或任何 Linux 系统)中,dropped 增多通常出现在网络、系统资源或监控指标里。不同场景下“dropped”含义不同,下面按最常见的情况逐一说明。


一、网络层面:网卡 dropped 增多(最常见)

如果你用 ifconfigip -s linksar -n DEV 看到 RX dropped / TX dropped 增多:

1. RX dropped(接收丢包)

常见原因:

  • ring buffer 太小
    ethtool -g eth0
    ethtool -G eth0 rx 4096
    
  • 中断不均匀 / CPU 软中断瓶颈
    • 单核软中断打满
    • 未开启 RPS / RFS
  • 网卡 offload 异常
    ethtool -k eth0
    
  • 防火墙 / iptables 丢包
    • iptables DROP 规则
    • nf_conntrack 表满
  • 内存不足导致 skb 分配失败
  • 驱动或固件 bug

2. TX dropped(发送丢包)

  • 网卡队列满
  • 带宽打满
  • 网卡速率协商异常(100M / 1G 不对)
  • 驱动问题

二、系统层面:丢包 / 丢弃(drop)

1. 连接跟踪表满(非常常见)

dmesg | grep conntrack

解决:

sysctl -w net.netfilter.nf_conntrack_max=1048576

2. 文件描述符 / 端口耗尽

  • TIME_WAIT 过多
  • somaxconn 太小
sysctl -w net.core.somaxconn=65535

3. 内存压力

  • OOM 或内存回收导致丢包
  • slab 内存占用过高

三、监控 / 中间件中的 dropped

1. 防火墙(firewalld / iptables)

  • 规则主动 DROP
  • 日志中看到 DROP

2. 负载均衡 / 代理(Nginx、HAProxy)

  • 后端连接失败被丢弃
  • 队列满

3. 容器(Docker / Kubernetes)

  • container_network_receive_errors
  • cgroup 网络限制

四、快速排查思路(推荐顺序)

  1. 确认 dropped 类型
    ip -s link
    
  2. 看内核日志
    dmesg -T | tail -100
    
  3. 看中断分布
    cat /proc/interrupts
    
  4. 看 conntrack
    conntrack -S
    
  5. 看资源
    top / free -m / sar
    

总结一句话

CentOS 中 dropped 增多基本都是:网络队列/中断/连接跟踪/资源不足/规则主动丢弃 引起的。

如果你能贴出具体是 哪条命令看到的 dropped(ifconfig / sar / zabbix / 容器),我可以给你更精准的分析和参数。

0