交換機內部:ASIC、SerDes、端口組與控制平面
交換機端口是光模組之前的最後一站,模組被允許做甚麼——支援哪些速率、能否拆分、同時能有多少端口跑 25G、DDM 輪詢多快——大部分由端口背後的晶片和固件決定。本頁打開這個黑箱:轉發 ASIC 及其 SerDes、通道如何組成端口、控制平面 CPU 對兩線總線做了甚麼,以及光模組的電源和散熱從何而來。
三個平面
| 平面 | 硬件 | 對光模組的作用 |
|---|---|---|
| 數據平面 | 轉發 ASIC(商用晶片,如 Broadcom Trident/Tomahawk、Marvell、Nvidia Spectrum,或廠商自研晶片)、其 SerDes、PHY/retimer | 驅動進入模組的電通道,運行 PCS/FEC、MAC、轉發 |
| 控制平面 | 運行網絡作業系統的通用 CPU | 通過 I²C 讀取模組 EEPROM,校驗身份,應用策略,配置通道,輪詢 DDM,觸發警報 |
| 管理平面 | 帶外以太網/console,有時是 BMC | 可以看到 show interface transceiver 和 syslog 的地方 |
數據平面速度快但不做判斷;控制平面速度慢,卻是做決定的一方。這就是為甚麼一個電氣上完全正常的模組仍會被判定為「不支援」:是 CPU 拒絕了它(主機的處理流程)。
SerDes 與通道
每個端口都是來自 ASIC 的一束 SerDes 通道。每條通道的速率取決於晶片的代際:
| ASIC 代際(典型) | SerDes 通道 | 端口選項 |
|---|---|---|
| 1G 時代 | 1.25 GBd | SFP 1G、RJ45 |
| 10G | 10.3 GBd | SFP+;4 通道 → QSFP+ 40G |
| 25G | 25.78 GBd NRZ | SFP28;4 通道 → QSFP28 100G;通常可降到 10G |
| 50G | 26.5 GBd PAM4 | SFP56;QSFP56 200G;8 通道 → 400G(QSFP-DD/OSFP) |
| 100G | 53.1 GBd PAM4 | QSFP112;8 通道 → 800G |
| 200G | 106 GBd PAM4 | 8 通道 → 1.6T(OSFP224、16 通道的 OSFP-XD) |
模組需要一個 SerDes 能夠產生的通道速率。25G SerDes 端口要驅動 10G 模組,前提是該 SerDes 同時支援較低速率(大多數都支援);在部分晶片上,50G PAM4 通道無法降速為 25G NRZ 通道,這正是「該端口不支援 25G」的由來(以太網代際)。
端口組與速率限制
SerDes 以 四通道組(共享同一時鐘/PLL 的四條通道)為單位組織。由此帶來以下結果:
- 速率組——在許多 25G 平台上,一個四通道組內的四個 SFP28 端口必須統一跑 10G 或統一跑 25G;混用會被拒絕或被靜默降速(速率問題)。
- 拆分(breakout)——只有在 ASIC 和該端口的 PHY 映射允許時,QSFP 端口的四條通道才能拆成四個端口;通常只有特定端口(或隔一個端口)能拆分,啟用拆分會禁用相鄰端口(拆分與 MPO 佈線)。
- 按端口組共享 FEC——FEC 模式有時在整個組內共享。
- 上行超訂——有些設計複用的前面板通道數超過 ASIC 實際擁有的數量,因此並非所有端口都能同時跑滿速率。
這些按端口劃分的規則記錄在平台的硬件手冊中;模組本身並不會顯示它們。
板上的 PHY、retimer 與齒輪盒(gearbox)
在 ASIC 和籠子之間可能還有 PHY(用於 RJ45 端口)、retimer(用於清理高密度設備上過長的 PCB 走線)、齒輪盒(例如部分 100G 設計中 2 × 50G ASIC 通道 ↔ 4 × 25G 模組通道的轉換)或 MACsec 引擎。每一個都會增加延遲,並帶來各自的速率/FEC 限制,也都是通道可能被錯誤配置的又一環節。端口是否「直連 ASIC」對 LPO 光模組很關鍵,因為它需要 ASIC 自身的均衡器才能到達模組(調制與 DSP)。
控制平面與兩線總線
- CPU 通過 I²C 多路複用器(每個端口或每組一條總線)訪問模組 EEPROM,通常經由一塊同時處理 presence、LPMode、reset 和中斷引腳的 CPLD/FPGA (兩線介面)。
- 上電流程是一個軟件序列:檢測 → 讀取身份 → 校驗 → 上電 → 配置通道 → 使能 Tx → 輪詢 DDM;不同 NOS 版本對 CMIS 的實現完整度不同(CMIS 問題)。
- DDM 輪詢由 CPU 調度,通常間隔幾秒到一分鐘;數百個端口共用一顆管理 CPU,繁重的 SNMP 輪詢會拖慢它(用工具讀取 DDM)。
- 策略(白名單、errdisable、第三方覆蓋)完全是控制平面的代碼邏輯(各作業系統如何校驗模組)。
光模組的電源與散熱
| 項目 | 典型值 | 說明 |
|---|---|---|
| 每個籠子 3.3 V 供電 | 按功率等級限制:1.5 W(SFP+)、3.5–5 W(QSFP28)、12–15 W(QSFP-DD)、15–25+ W(OSFP) | 超出限制 → 模組被鎖定在低功耗狀態(電源與熱管理) |
| 面板風流方向 | 前進風或後進風 | 模組散熱片朝向不匹配或進風口被擋都會導致光模組過熱 |
| 光模組總功耗預算 | 400G 設備:32 × 12 W ≈ 0.4 kW;800G 設備:64 × 16 W ≈ 1 kW | 佔交換機電源額定功率相當大的一部分 |
緩存、轉發與光模組的關係
幾乎沒有關係,唯一的聯繫是擁塞特性(PFC、ECN)會與鏈路錯誤相互影響:一個因 CRC 而丟幀的端口,在儲存和 RDMA 看來就像是發生了擁塞(無損以太網)。決定交換機角色的是轉發能力(Tb/s)、緩存大小和表項容量(角色與拓撲),而不是它的光模組。
商用晶片與自研晶片、開放與封閉 NOS
| 模式 | 示例 | 對光模組的影響 |
|---|---|---|
| 商用 ASIC + 廠商 NOS | 大多數企業級和數據中心交換機 | 廠商策略決定光模組支援範圍;硬件限制來自 ASIC |
| 商用 ASIC + 開放 NOS | 白牌硬件上的 SONiC、Cumulus | 策略限制很少;兼容性測試由自己承擔 |
| 自研 ASIC + 廠商 NOS | 部分營運商和高端數據中心平台 | 集成度高,校驗通常最嚴格 |
各 NOS 的生態及其光模組行為一覽:網絡作業系統概覽。
在 CodingBox 中
交換機的判斷依據是模組的身份位元組,這些正是 CodingBox 展示和編輯的內容:SerDes 必須支援的速率碼和應用、相對於籠子的功率等級、端口 PHY 路徑所需的連接器和技術類型(檢測光模組、EEPROM 編輯器)。
SerDes 交給籠子的通道束(SFI、25GAUI、CAUI-4、400GAUI-8、800GAUI-8),以及對應的 C2M 合規點和通道映射:XGMII、XAUI 與 AUI 系列;從 MII 到 AUI 的完整體系:媒體獨立介面。
這些部件如何被封裝——固定式、帶線卡和交換網板的機箱式、可堆疊、工業級、白牌——以及風流方向和冗餘設計:交換機類型與外形;設備上架後端口的命名方式: 端口命名與指示燈。