在 CentOS(以及其他 Linux 系统)里,“dropped”通常出现在网络丢包或系统资源丢弃的上下文中。下面按常见场景说明如何查看。
ip 命令ip -s link
重点关注:
RX: bytes packets errors dropped ...TX: bytes packets errors dropped ...示例:
RX: bytes packets errors dropped overrun mcast
123456 1000 0 5 0 10
其中 dropped 就是接收方向丢弃的包数。
ifconfig(部分系统已废弃)ifconfig eth0
输出中:
RX packets:1000 errors:0 dropped:5 overruns:0
TX packets:900 errors:0 dropped:0 overruns:0
cat /proc/net/dev
字段说明(从左到右):
接收: bytes packets errs drop fifo frame compressed multicast
发送: bytes packets errs drop fifo colls carrier compressed
ethtoolethtool -S eth0
可查看:
rx_droppedtx_droppedrx_missed_errors# 连接跟踪表溢出
dmesg | grep conntrack
# 查看 conntrack 统计
cat /proc/net/stat/nf_conntrack
mpstatmpstat -P ALL 1
关注:
%soft(软中断)CPU 是否饱和导致丢包sar(需安装 sysstat)sar -n DEV 1
sar -n EDEV 1
EDEV 会显示错误和丢弃统计。
netstat -s | grep -i listen
常见:
XX times the listen queue of a socket overflowed
netstat -s | grep -i "SYNs"
dmesg | grep -i "out of memory"
cat /proc/sys/fs/file-nr
ulimit -n
如果你能说明:
我可以给你更精确的排查命令。