从百万 PPS 到千万 PPS:一次 DPDK 高性能交换机丢包故障的深度排查实录 一、故障背景某云计算数据中心建设了一套基于 DPDK 的软件交换机平台。系统架构如下:硬件配置:项目配置CPUIntel Xeon Gold 6338NUMA2 SocketNICIntel X710 4×10GHugePage1G HugePageDPDK22.11 LTSLinuxUbuntu Server业务流量VXLAN Overlay峰值流量36Gbps峰值 PPS8.5Mpps交换机采用典型设计:RX Queue ↓ PMD Core ↓ Flow Classification ↓ L2/L3 Forwarding ↓ TX Queue上线运行半年后,出现间歇性丢包。用户反馈:大流量期间: - ping 抖动增加 - TCP重传明显增加 - VXLAN隧道偶发重建监控显示:CPU:100% 网卡利用率:60% 业务带宽:36Gbps看到这里很多工程师会产生疑问:CPU已经100%,为什么带宽却没有跑满?事实上这正是DPDK系统中最容易误判的问题之一。二、第一步:确认丢包位置首先查看网卡统计。show port stats all发现:RX packets : 18,923,112,302 RX missed : 0 RX no mbuf : 0 RX errors : 0 RX dropped : 3,215,921出现大量:RX dropped说明:数据已经到达网卡 但没有成功进入应用此时故障范围缩小到:NIC ↓ RX Descriptor ↓ PMD之间。三、DPDK 收包链路解析很多人只知道: