网络设备和通信板卡的内存有什么讲究

网络设备的内存工作条件有个明显特征:一插上去就几年不动,还要一直在线。

机柜里的温度比想象的高

通信机柜的密度大、风道设计受限,加上很多设备的散热优先照顾主芯片,内存往往处在下风处。实测中机柜内进风 40℃ 时,板卡上内存温度到 85℃ 以上很常见。

基站设备更严苛。室外一体化设备没有空调,夏季机壳表面被日照加热,内部器件温度更高。北方冬季又要面对低温冷启动。所以基站类设备的内存基本按宽温要求选。

长期在线放大了小概率问题

一台设备连续运行三年,等于两万六千小时。任何低概率的错误在这个时间尺度上都会发生若干次。

这就是为什么这类设备普遍要求 ECC,即便是转发面用的内存。没有 ECC 的话,累积的软错误迟早会造成一次业务中断,而这类中断的排查极其困难,因为现象不可复现。

除了 ECC,还应该有错误统计上报。能看到某块板卡的纠错次数在上升,就能在故障前安排更换。

维护窗口少,备件策略要跟上

运营商网络的变更窗口通常在深夜,且要提前申请。这意味着故障处理不是随时能做的,备件必须提前到位且确定可用。

实践中的做法是备件和在网设备同批次采购并做同样的验证,避免临时换上去的备件因为批次差异引入新问题。

震动和运输

设备安装和搬迁过程中的震动、以及运输过程的冲击,是插槽接触问题的主要来源。这类问题的现象是设备到现场后开机不认内存,重新插拔就好。

减少这类问题的办法包括出厂时加装内存固定件、运输包装做减震、以及到货后的开机检测流程里包含内存容量核对。

验证重点

  • 高温满负荷长时间运行,时长要够,看错误是否随时间累积;
  • 宽温设备做低温冷启动;
  • 震动试验后复测电性能和插接可靠性;
  • ECC 功能验证,包括注入错误看是否正确上报,很多系统的 ECC 报告链路没验证过,实际报不上来;
  • 如果设备在南方或沿海部署,湿热和防护要做。

关于第四点

ECC 报告链路没通这件事比想象中常见。内存条本身支持 ECC、CPU 支持 ECC,但 BIOS 或者系统软件没有正确采集和上报,结果是纠错在静默进行,运维完全看不到。等到出现不可纠正错误才发现,预警信息全丢了。

验收时应该主动测这一项:用工具注入可纠正错误,确认管理系统能收到告警。这个测试很快,但能避免一个长期的盲区。