从148Mpps跌到57Mpps:一次ECMP哈希极化引发的软件交换机转发雪崩

从148Mpps跌到57Mpps:一次ECMP哈希极化引发的软件交换机转发雪崩

一、故障背景

某运营商城域网核心节点采用DPDK软件交换机实现三层转发。

硬件配置:

项目配置
CPUIntel Xeon Gold 6430
Core64
NICConnectX-6 Dx 100G
DPDK22.11
Hugepage1G

网络拓扑:

核心交换机通过4条100G链路接入骨干网。

理论带宽:

4 × 100G = 400G

采用ECMP负载分担。

正常情况下:

Flow A → Link1 Flow B → Link2 Flow C → Link3 Flow D → Link4

实现均衡利用。


二、故障现象

业务扩容后一周。

监控系统告警:

部分用户访问异常 TCP重传增加 业务时延升高

查看交换机统计:

RX PPS 148Mpps TX PPS 57Mpps

性能下降超过60%。


PMD线程:

PMD0~PMD31 100%

持续满载。

这符合DPDK特征。

因此:

CPU 100% 不是故障依据

检查NIC:

CRC Error 0 RX Miss 0 TX Error 0

正常。


检查FDB:

99.98%

正常。


检查ARP:

正常

检查路由:

正常

所有常规指标全部正常。


三、异常出现在链路利用率

查看上联链路统计:

Link1 98G Link2 4G Link3 3G Link4 2G

所有人立即发现问题。

理论上:

100G 100G 100G 100G

附近才合理。

但实际:

98G 4G 3G 2G

极度不均衡。


此时:

Link1已经接近线速。

其余链路几乎空闲。


四、什么是ECMP

E