CodingBox Documentation

Network operating systems: a field guide

Every switch vendor ships a network operating system (NOS) with its own command syntax, its own way of showing a transceiver and its own policy toward modules it does not recognise. This page lists the systems you will meet, how they name things, where the transceiver commands live, and what their default stance on third-party optics is, so that a module read on the bench can be matched to the box it is going into.

The landscape

NOSVendor / platformsCLI styleTransceiver identity & DDMThird-party optics (documented behaviour)
IOS / IOS-XECisco Catalyst campus (9200/9300/9500…), ISR/ASRshowshow interfaces transceiver [detail], show idprom interfacerejected by default (%PHY-4-UNSUPPORTED_TRANSCEIVER, errdisable); service unsupported-transceiver + no errdisable detect cause gbic-invalid on many platforms
NX-OSCisco Nexus DCshowshow interface … transceiver detailsmostly accepts with a log; some platforms strict; service unsupported-transceiver
IOS-XRCisco ASR 9000, NCS, 8000showshow controllers optics …validation per platform; unsupported optics flagged, some kept down
EOSAristashowshow interfaces transceiver [dom]no enforcement; logs
Junos / Junos EvolvedJuniper EX, QFX, MX, PTX, ACXshow (hierarchical config)show interfaces diagnostics optics, show chassis hardwareaccepts most; "unsupported" in show chassis pic; DDM may be limited for unknown PNs
VRPHuawei CloudEngine, S-series, NEdisplaydisplay transceiver interface … verbosealarms on non-Huawei optics; transceiver phony-alarm-disable suppresses
ComwareH3Cdisplaydisplay transceiver interface, display transceiver diagnosissimilar to VRP; transceiver phony-alarm-disable
AOS-CX / AOS-S (ProCurve)HPE Arubashowshow interface transceiver [detail]AOS-S blocks unsupported unless allow-unsupported-transceiver; AOS-CX similar command
OS10 / OS9Dellshowshow interface … transceivermostly permissive; PowerConnect-era: service unsupported-transceiver
EXOS / VOSS / Fabric EngineExtremeshowshow ports transceiver informationpermissive, logs
FastIron (ICX)Ruckus / Brocadeshowshow media, show opticpermissive on Ethernet; SAN FOS is strict
FOSBrocade/Broadcom SANswitchshow, sfpshowsfpshow, porterrshowrequires Brocade-branded SFPs on most platforms (FC optics)
Cumulus Linux / NVUE, Onyx (MLNX-OS)Nvidia/Mellanox SpectrumLinux / nvl1-show, mlxlink -m, ethtool -mpermissive on Ethernet; InfiniBand validates cable info
SONiCcommunity and vendor builds on white-box (Edgecore, Celestica, UfiSpace…) and OEMLinux / show, configshow interfaces transceiver eeprom -d, sfputilpermissive; platform plugins decide
RouterOS / SwOSMikroTik/interface ethernetmonitor on sfp interfacesaccepts anything; DDM shown
EdgeOS / UniFiUbiquitiGUI / CLIGUI, ethtool -mpermissive
Linux hostsservers, DPUsethtoolethtool -mNIC-driver dependent (allow_unsupported_sfp on some Intel drivers)

Behaviour is per platform and per release; treat the last column as orientation and confirm in the vendor's documentation or on a test port (How each NOS validates a module).

Command families

Taskshow-style (Cisco, Arista, Juniper…)display-style (Huawei, H3C)Linux-style (SONiC, Cumulus, hosts)
Identityshow 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
Speed / FEC / breakoutspeed, fec, breakout under the interface or chassisspeed, fec-mode, port splitconfig interface speed/fec/breakout, nv set interface … link
Errorsshow interfaces counters errorsdisplay interface … countersshow interfaces counters, ethtool -S

Exact syntax per NOS: Port configuration recipes; identity checks: Verifying optics on a switch.

Open networking

SONiC (Linux + SAI abstraction over merchant ASICs) and Cumulus/NVUE turned the NOS into software you can choose separately from the hardware. For optics this means: the platform plugin, not a vendor policy, decides what is read and how; CMIS support depends on the SONiC release; DDM and FEC counters come from Linux tools; and compatibility testing is your job (Compatibility matrices).

How the NOS affects what you see

  • Naming: the type string (10GBASE-LR, QSFP-100G-SR4, SFP-10G-LR) is derived from compliance codes and the PN, differently per NOS (Compliance codes).
  • DDM presentation: some show thresholds and flags, some only values; some apply external calibration, some not (Calibration).
  • CMIS depth: from full data-path control to "release LPMode and hope" (CMIS issues).
  • Logging: the message that names the rejection (unsupported, invalid, Mod_Inv, phony) is the fastest diagnosis (Symptom index).

In CodingBox

The transceiver summaries render a module's identity in Cisco IOS, Junos, Huawei VRP and Aruba styles so the bench output matches what the switch will print — and a mismatch between the two is where a coding or policy problem shows first.

The Linux-host row expanded — NIC vendors, drivers and their module commands: NIC tools and diagnostics, NICs with optical ports.

Interface naming grammar and management-port names for each of these systems: Port naming & LEDs; their SNMP MIBs and telemetry paths for transceiver data: Management & monitoring.