网络操作系统概览 · 厂商与网络操作系统 · 网卡与交换机 · 文档 · CodingBox
CodingBox 文档

网络操作系统概览

每个交换机厂商都有自己的网络操作系统(NOS),有自己的命令语法、自己显示光模块的方式,以及对无法识别的模块的自己的策略。本文列出会遇到的各系统、它们如何命名事物、光模块相关命令在哪里,以及它们对第三方光模块的默认态度,以便把在工作台上读出的模块与它将要插入的设备对应起来。

全景

NOS厂商 / 平台CLI 风格光模块识别信息与 DDM第三方光模块(已记录的行为)
IOS / IOS-XECisco Catalyst 园区系列(9200/9300/9500……)、ISR/ASRshowshow interfaces transceiver [detail]、show idprom interface默认拒绝(%PHY-4-UNSUPPORTED_TRANSCEIVER,errdisable);多数平台可用 service unsupported-transceiver + no errdisable detect cause gbic-invalid
NX-OSCisco Nexus 数据中心系列showshow interface … transceiver details多数情况下接受并记录日志;部分平台较严格;service unsupported-transceiver
IOS-XRCisco ASR 9000、NCS、8000showshow controllers optics …按平台各异;不受支持的光模块会被标记,部分保持 down
EOSAristashowshow interfaces transceiver [dom]不强制;仅记录日志
Junos / Junos EvolvedJuniper EX、QFX、MX、PTX、ACXshow(层级式配置)show interfaces diagnostics optics、show chassis hardware接受多数模块;show chassis pic 中显示 “unsupported”;未知 PN 的 DDM 可能受限
VRPHuawei CloudEngine、S 系列、NEdisplaydisplay transceiver interface … verbose非华为光模块会告警;transceiver phony-alarm-disable 可屏蔽
ComwareH3Cdisplaydisplay transceiver interface、display transceiver diagnosis与 VRP 类似;transceiver phony-alarm-disable
AOS-CX / AOS-S(ProCurve)HPE Arubashowshow interface transceiver [detail]AOS-S 默认阻止不受支持的模块,除非设置 allow-unsupported-transceiver;AOS-CX 命令类似
OS10 / OS9Dellshowshow interface … transceiver多数情况下宽松;PowerConnect 时代:service unsupported-transceiver
EXOS / VOSS / Fabric EngineExtremeshowshow ports transceiver information宽松,记录日志
FastIron(ICX)Ruckus / Brocadeshowshow media、show optic以太网上宽松;SAN 用的 FOS 很严格
FOSBrocade/Broadcom SANswitchshow、sfpshowsfpshow、porterrshow多数平台要求 Brocade 品牌 SFP(FC 光模块)
Cumulus Linux / NVUE,Onyx(MLNX-OS)Nvidia/Mellanox SpectrumLinux / nvl1-show、mlxlink -m、ethtool -m以太网上宽松;InfiniBand 会校验线缆信息
SONiC社区版和厂商版,运行在白牌(Edgecore、Celestica、UfiSpace……)和 OEM 设备上Linux / show、configshow interfaces transceiver eeprom -d、sfputil宽松;由平台插件决定
RouterOS / SwOSMikroTik/interface ethernetSFP 接口上的 monitor接受任何模块;显示 DDM
EdgeOS / UniFiUbiquitiGUI / CLIGUI、ethtool -m宽松
Linux 主机服务器、DPUethtoolethtool -m取决于网卡驱动(部分 Intel 驱动支持 allow_unsupported_sfp)

具体行为因平台和版本而异;请把最后一列当作方向性参考,并在厂商文档中或在测试端口上核实(各 NOS 如何校验模块)。

命令族

任务show 风格(Cisco、Arista、Juniper……)display 风格(Huawei、H3C)Linux 风格(SONiC、Cumulus、主机)
身份信息show interfaces transceiver / show chassis hardwaredisplay transceiver interfaceshow interfaces transceiver eeprom、ethtool -m
DDM… transceiver detail / diagnostics optics… verbose / display transceiver diagnosis… eeprom -d、ethtool -m
速率 / FEC / 拆分在接口或机箱层级下的 speed、fec、breakoutspeed、fec-mode、port splitconfig interface speed/fec/breakout、nv set interface … link
错误show interfaces counters errorsdisplay interface … countersshow interfaces counters、ethtool -S

各 NOS 的具体语法参见:端口配置示例;身份校验参见:在交换机上验证光模块。

开放网络

SONiC(Linux 加上覆盖在通用 ASIC 之上的 SAI 抽象层)和 Cumulus/NVUE 把 NOS 变成了可以与硬件分开选择的软件。对光模块而言,这意味着:决定读什么、怎么读的是平台插件,而不是厂商策略;CMIS 支持程度取决于 SONiC 版本;DDM 和 FEC 计数器来自 Linux 工具;兼容性测试要自己来做(兼容性矩阵)。

NOS 如何影响你看到的内容

  • 命名:类型字符串(10GBASE-LR、QSFP-100G-SR4、SFP-10G-LR)由合规代码和 PN 推导而来,各 NOS 的推导方式不同(合规代码)。
  • DDM 呈现方式:有的显示阈值和标志位,有的只显示数值;有的应用外部校准,有的不应用(校准)。
  • CMIS 支持深度:从完整的数据通路控制,到“释放 LPMode 然后祈祷” (CMIS 问题)。
  • 日志:指出拒绝原因的那条消息(unsupported、invalid、Mod_Inv、phony)是最快的诊断线索(症状索引)。

在 CodingBox 中

光模块概览以 Cisco IOS、 Junos、Huawei VRP 和 Aruba 的风格渲染模块身份,使工作台输出与交换机将打印的内容一致——两者之间的差异,正是编码或策略问题最先显现的地方。

Linux 主机这一行的展开内容——网卡厂商、驱动及其模块相关命令,参见: 网卡工具与诊断、 带光口的网卡。

这些系统各自的接口命名语法和管理端口名称参见: 端口命名与 LED;光模块数据的 SNMP MIB 与遥测路径参见: 管理与监测。


如果您发现本资料中有不准确之处或错误,请选中相应片段并按 Ctrl+Enter,即可。