2. NVIDIA网络硬件可靠性基础

在AI数据中心里,网络不再是“配套”,而是算力的一部分。Spectrum以太网交换机与Quantum InfiniBand交换机承担着GPU集群的东西向流量,任何一次链路抖动、端口降速或电源瞬断,都可能让一个千卡训练任务回退到上一个检查点。理解这两类交换机的硬件架构与失效模式,是可靠性工程的第一块基石。

一、Spectrum与Quantum的硬件架构差异

Spectrum系列(如Spectrum-4 SN5600)是面向以太网的交换机,采用ASIC+可插拔光模块的架构,支持400G/800G端口,运行SONiC或Cumulus Linux等开放网络操作系统。Quantum系列(如Quantum-2 QM9700)是InfiniBand交换机,采用ASIC+板载管理模块的架构,端口速率以NDR 400G为主,运行NVIDIA自有的MLNX-OS或UFM管理平面。两者在可靠性设计上的共同点是:交换ASIC、电源模块(PSU)、风扇模块(FAN)、管理模块(MGMT)均为可热插拔的独立单元。

关键差异在于信号链:Spectrum的端口信号经过ASIC SerDes→PCB走线→可插拔光模块→光纤;Quantum的端口信号经过ASIC SerDes→PCB走线→板载光引擎或可插拔模块→光纤。可插拔模块引入了额外的连接器和光电转换环节,是Spectrum链路故障的高发点;而Quantum的板载设计减少了连接器数量,但一旦光引擎失效,整板端口不可用,维修粒度更粗。

Spectrum 与 Quantum 交换机信号链与冗余结构对比 Spectrum 以太网交换机 交换 ASIC 可插拔光模块 PSU 1+1 冗余 FAN N+1 冗余 管理模块(SONiC / Cumulus) Quantum InfiniBand 交换机 交换 ASIC 板载光引擎 PSU 1+1 冗余 FAN N+1 冗余 管理模块(MLNX-OS / UFM)

二、关键器件的失效模式

交换机硬件失效并非随机分布,而是集中在几个高应力器件上。以下按失效概率从高到低排列,并给出可观测的征兆。

器件典型失效模式可观测征兆影响范围
可插拔光模块光功率衰减、DDM告警、I2C读取失败端口误码率上升、链路降速、端口down单端口或单链路
风扇模块轴承磨损、转速漂移、PWM失控转速低于阈值、温度爬升、噪音异常整机散热能力下降
电源模块电容老化、输出纹波增大、均流失效PSU告警、输入功率异常、单路掉电冗余失效后整机掉电
交换ASICSerDes误码、TCAM表项错误、过热降频端口CRC错误、转发异常、温度告警多端口或整机
管理模块Flash坏块、内存泄漏、看门狗复位管理面失联、配置丢失、SNMP超时可管理性丧失

其中,光模块失效在Spectrum上尤为突出,因为可插拔模块的电气连接器和光接口都暴露在机房环境中,温度循环和插拔应力会加速老化。Quantum的板载光引擎虽然减少了连接器,但ASIC与光引擎之间的耦合封装一旦失效,通常需要整板更换。

三、冗余电源与风扇设计

NVIDIA交换机普遍采用1+1电源冗余和N+1风扇冗余。以SN5600为例,它配备两个PSU槽位,每个PSU可独立承担整机满载功耗;正常工作时两个PSU均流输出,当一个PSU失效或输入断电时,另一个PSU在毫秒级内接管全部负载,交换机不重启、端口不闪断。

风扇冗余的逻辑略有不同:N+1意味着N个风扇即可满足散热需求,额外一个作为备份。当单个风扇失效时,剩余风扇会提高转速以补偿风量,同时管理模块上报Fan Tray告警。如果第二个风扇再失效,系统会触发温度保护,逐步关闭非关键端口甚至整机下电,防止ASIC过热损坏。

实践提示:在机房巡检中,不要只看“PSU是否亮红灯”。应通过show environment或show system health查看每个PSU的输入电压、输出电流和均流偏差。均流偏差超过10%往往意味着其中一个PSU即将失效,此时虽然还没告警,但已经失去了真正的冗余能力。

四、硬件健康监控与告警机制

NVIDIA交换机的健康监控分为三个层次:传感器层、管理模块层和外部监控层。

传感器层包括温度传感器(进风口、出风口、ASIC结温)、电压传感器(PSU输入/输出)、电流传感器(PSU均流)、风扇转速传感器(RPM)和光模块DDM(数字诊断监控)。这些传感器以秒级或分钟级频率采样,原始数据由管理模块轮询。

管理模块层负责阈值判断和告警生成。以温度为例,通常设置三档阈值:Warning(如ASIC结温85°C)、Critical(如95°C)、Shutdown(如105°C)。Warning触发SNMP Trap和Syslog,Critical触发端口降速或风扇全速,Shutdown触发整机下电。风扇转速也有类似的低阈值和高阈值告警。

外部监控层通过SNMP、gNMI、Redfish或流式遥测将告警推送到NVIDIA UFM、NetQ或第三方NMS。在AI集群中,建议将交换机告警与GPU任务调度联动:当某台交换机出现Critical告警时,调度器应暂停在该交换机下挂节点上启动新任务,避免训练任务中途失败。

# 示例:通过SNMP查询交换机温度传感器(示例OID,实际以设备MIB为准)
snmpwalk -v2c -c public 10.0.0.1 1.3.6.1.4.1.9.9.13.1.3.1.3
# 输出示例:
# SNMPv2-SMI::enterprises.9.9.13.1.3.1.3.1 = STRING: "Inlet"
# SNMPv2-SMI::enterprises.9.9.13.1.3.1.3.2 = STRING: "Outlet"
# SNMPv2-SMI::enterprises.9.9.13.1.3.1.3.3 = STRING: "ASIC"

# 示例:查看PSU均流状态(以MLNX-OS为例)
show power
# 输出示例:
# PSU 1: 12.1V / 45.2A / 547W
# PSU 2: 12.1V / 44.8A / 542W
# 均流偏差 = |45.2 - 44.8| / ((45.2+44.8)/2) ≈ 0.9%,正常
注意:光模块DDM中的Rx Power和Tx Power是判断链路健康的关键参数。以400G FR4为例,Rx Power正常范围通常在-6dBm到+4dBm之间。如果某端口Rx Power从-3dBm缓慢下降到-7dBm,即使链路还没down,也应提前更换模块,因为AI训练对误码率极其敏感,衰减到临界点后会出现大量重传,训练效率断崖式下降。

五、从告警到动作的判断路径

硬件健康监控的价值不在于“看到告警”,而在于“知道下一步做什么”。以下给出一个简化的判断路径,供日常运维参考。

  1. 收到PSU告警:先确认是单PSU还是双PSU。单PSU告警时,检查输入PDU、电源线、PSU指示灯;若输入正常但PSU无输出,更换PSU。双PSU告警意味着整机即将掉电,应立即迁移该交换机上的业务流量。
  2. 收到风扇告警:查看是单个风扇还是整个Fan Tray。单个风扇失效时,观察ASIC温度是否稳定;若温度持续上升,安排停机更换。整个Fan Tray失效时,系统可能已触发温度保护,应优先恢复散热。
  3. 收到光模块告警:先读取DDM参数,区分是Tx端还是Rx端问题。Tx Power异常通常是模块本身或ASIC SerDes问题;Rx Power异常通常是光纤、连接器或对端模块问题。更换前先用光纤清洁工具处理连接器,排除污染因素。
  4. 收到ASIC温度告警:检查机房环境温度、风扇转速、防尘网是否堵塞。若环境正常且风扇全速仍无法降温,可能是ASIC散热器接触不良或导热硅脂老化,需返厂维修。

在AI数据中心中,建议为每台交换机建立“健康基线”:记录正常运行时的温度、电压、风扇转速和光功率范围。当实际值偏离基线超过一定比例时,即使未触发阈值告警,也应主动排查。这种基于基线的趋势监控,往往比阈值告警更早发现硬件劣化,为计划性维护争取时间窗口。