網絡作業系統實用指南
每個交換機廠商都有自己的網絡作業系統(NOS),有自己的命令語法、自己顯示光模組的方式,以及對無法識別的模組的自己的策略。本文列出會遇到的各系統、它們如何命名事物、光模組相關命令在哪裏,以及它們對第三方光模組的預設態度,以便把在工作台上讀出的模組與它將要插入的設備對應起來。
全景
| NOS | 廠商 / 平台 | CLI 風格 | 光模組識別資訊與 DDM | 第三方光模組(已記錄的行為) |
|---|---|---|---|---|
| IOS / IOS-XE | Cisco Catalyst 園區系列(9200/9300/9500……)、ISR/ASR | show | show interfaces transceiver [detail]、show idprom interface | 預設拒絕(%PHY-4-UNSUPPORTED_TRANSCEIVER,errdisable);多數平台可用 service unsupported-transceiver + no errdisable detect cause gbic-invalid |
| NX-OS | Cisco Nexus 數據中心系列 | show | show interface … transceiver details | 多數情況下接受並記錄日誌;部分平台較嚴格;service unsupported-transceiver |
| IOS-XR | Cisco ASR 9000、NCS、8000 | show | show controllers optics … | 按平台各異;不受支援的光模組會被標記,部分保持 down |
| EOS | Arista | show | show interfaces transceiver [dom] | 不強制;僅記錄日誌 |
| Junos / Junos Evolved | Juniper EX、QFX、MX、PTX、ACX | show(層級式配置) | show interfaces diagnostics optics、show chassis hardware | 接受多數模組;show chassis pic 中顯示「unsupported」;未知 PN 的 DDM 可能受限 |
| VRP | Huawei CloudEngine、S 系列、NE | display | display transceiver interface … verbose | 非華為光模組會警報;transceiver phony-alarm-disable 可屏蔽 |
| Comware | H3C | display | display transceiver interface、display transceiver diagnosis | 與 VRP 類似;transceiver phony-alarm-disable |
| AOS-CX / AOS-S(ProCurve) | HPE Aruba | show | show interface transceiver [detail] | AOS-S 預設阻止不受支援的模組,除非設定 allow-unsupported-transceiver;AOS-CX 命令類似 |
| OS10 / OS9 | Dell | show | show interface … transceiver | 多數情況下寬鬆;PowerConnect 時代:service unsupported-transceiver |
| EXOS / VOSS / Fabric Engine | Extreme | show | show ports transceiver information | 寬鬆,記錄日誌 |
| FastIron(ICX) | Ruckus / Brocade | show | show media、show optic | 以太網上寬鬆;SAN 用的 FOS 很嚴格 |
| FOS | Brocade/Broadcom SAN | switchshow、sfpshow | sfpshow、porterrshow | 多數平台要求 Brocade 品牌 SFP(FC 光模組) |
| Cumulus Linux / NVUE,Onyx(MLNX-OS) | Nvidia/Mellanox Spectrum | Linux / nv | l1-show、mlxlink -m、ethtool -m | 以太網上寬鬆;InfiniBand 會校驗線纜資訊 |
| SONiC | 社區版和廠商版,運行在白牌(Edgecore、Celestica、UfiSpace……)和 OEM 設備上 | Linux / show、config | show interfaces transceiver eeprom -d、sfputil | 寬鬆;由平台插件決定 |
| RouterOS / SwOS | MikroTik | /interface ethernet | SFP 介面上的 monitor | 接受任何模組;顯示 DDM |
| EdgeOS / UniFi | Ubiquiti | GUI / CLI | GUI、ethtool -m | 寬鬆 |
| Linux 主機 | 伺服器、DPU | ethtool | ethtool -m | 取決於網卡驅動(部分 Intel 驅動支援 allow_unsupported_sfp) |
具體行為因平台和版本而異;請把最後一列當作方向性參考,並在廠商文件中或在測試端口上核實(各 NOS 如何校驗模組)。
命令族
| 任務 | show 風格(Cisco、Arista、Juniper……) | display 風格(Huawei、H3C) | Linux 風格(SONiC、Cumulus、主機) |
|---|---|---|---|
| 身份資訊 | show interfaces transceiver / show chassis hardware | display transceiver interface | show interfaces transceiver eeprom、ethtool -m |
| DDM | … transceiver detail / diagnostics optics | … verbose / display transceiver diagnosis | … eeprom -d、ethtool -m |
| 速率 / FEC / 拆分 | 在介面或機箱層級下的 speed、fec、breakout | speed、fec-mode、port split | config interface speed/fec/breakout、nv set interface … link |
| 錯誤 | show interfaces counters errors | display interface … counters | show 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 的風格渲染模組身份,使工作台輸出與交換機將打印的內容一致——兩者之間的差異,正是編碼或策略問題最先顯現的地方。
這些系統各自的介面命名語法和管理端口名稱參見: 端口命名與 LED;光模組數據的 SNMP MIB 與遙測路徑參見: 管理與監測。