CodingBox 說明文件

轉發基礎:VLAN、LAG、生成樹與路由

光模組問題從不會以「光模組問題」的面目出現。它表現為生成樹拓撲變化、LAG 成員被掛起、OSPF 鄰居反覆震盪、VXLAN 隧道閃斷,或者「一半用戶變慢」。要把這些現象讀回物理層,需要掌握轉發層的詞彙:交換機如何學習 MAC 地址、VLAN 和 trunk 是甚麼、鏈路聚合如何對流量做雜湊、生成樹為甚麼阻塞端口,以及鏈路閃斷時路由協議會做甚麼。本頁就是這套詞彙,只保留根因可能是髒連接器時用得上的部分。

二層:MAC 學習與 VLAN

概念發生了甚麼光模組視角
MAC 學習每個幀的源 MAC 被記錄到入介面;未知目的地址被泛洪端口閃斷會清空並重新學習表項——每次閃斷後都有短暫泛洪
老化表項過期(預設 300 秒)
VLAN(802.1Q)一個廣播域;幀在 trunk 上攜帶 12 位元標籤(1–4094)
Access 端口一個未打標籤的 VLAN
Trunk 端口多個打標籤的 VLAN,一個未打標籤的 native VLAN上行鏈路兩端 native VLAN 不一致表現為部分連通,而不是鏈路故障
MTU / 巨幀預設 1500 位元組,巨幀 9000–9216 位元組上行鏈路兩端 MTU 不一致時小包能通過、大包被丟棄——看起來像間歇性光模組故障
風暴控制、BPDU guard、端口安全關閉端口的保護特性由此產生的 errdisable 端口看起來像模組失效(現象索引

生成樹

變體收斂時間說明
STP(802.1D)30–50 秒傳統協議
RSTP(802.1w)< 1–3 秒大多數設備的預設協議
MSTP(802.1s)與 RSTP 相同,按實例按 VLAN 分組
PVST+/Rapid-PVST+按 VLANCisco

生成樹會阻塞冗餘的二層路徑。一個有問題的光模組會對它造成以下影響:

  • 上行鏈路閃斷會產生拓撲變化通知(TCN);每次 TCN 都會在全網範圍內清空 MAC 表並引發數秒的泛洪——每次閃斷用戶都會感到卡頓(鏈路閃斷);
  • 單向鏈路(一根光纖斷開,Tx 正常、Rx 不通)如果導致 BPDU 停止到達,可能形成環路——UDLD、 loop guard 和 bridge assurance 正是為此而設(無鏈路);
  • 冗餘鏈路上出現阻塞端口指示燈(琥珀色)屬於正常現象,不是故障(端口命名與指示燈)。

Leaf-spine 架構通過讓每條鏈路都走路由來避免使用 STP。

鏈路聚合(LAG、port-channel、bond)

項目規則
協議LACP(802.1AX / 802.3ad):成員交換 PDU,協商成員關係;靜態 LAG 沒有保護機制
成員速率、雙工、MTU 必須相同;大多數 NOS 還要求 FEC 和介質類型一致——4 × 25G 光模組或 4 × 25G DAC,不能混用
雜湊按 MAC/IP/端口欄位的雜湊分配流量;單條流量永遠不會超過一個成員的速率
有錯誤的成員只要 PDU 能通過,LACP 就會把它留在捆綁內;某個成員上的 CRC 錯誤會破壞雜湊到它的流量——「部分會話變慢,其他正常」是典型特徵(VDM 與 FEC 指標
最小鏈路數如果 up 的成員少於 N 個,整個捆綁就會斷開——防止在單條劣化鏈路上繼續運行
名稱各 NOS 的叫法為 Port-channelaeEth-TrunkbondPortChannel
跨兩台交換機MLAG/vPC/VLT(堆疊與 MLAG

實踐建議:當 LAG「能用但很慢」時,檢查每個成員的計數器和 DDM,而不是檢查捆綁本身。

三層:交換機上的路由

概念含義光模組視角
SVI / 路由端口VLAN 上或物理端口上的 IP 介面路由上行鏈路沒有 STP;閃斷是一次路由事件
靜態 / OSPF / IS-IS / BGP路由協議;數據中心架構使用 BGP(每條鏈路一個 eBGP)或 OSPF鄰居 up/down 日誌能精確定位哪條鏈路何時閃斷
ECMP在 N 條上行鏈路上的等價多路徑;流量雜湊方式與 LAG 類似一條劣化上行鏈路會影響 1/N 的流量;BFD(50–300 毫秒)比協議自身的計時器更快發現故障
抑制(Dampening)抑制反覆閃斷的介面發佈路由閃斷的光模組最終被抑制——鏈路「up」但流量不被路由
VRF獨立的路由表(注意管理 VRF!)通過錯誤的 VRF ping 交換機看起來像鏈路故障
首跳冗餘(HSRP/VRRP)兩台交換機間的虛擬網關閃斷會引發網關切換

Overlay

疊加網絡應用場景光模組視角
VXLAN / EVPN數據中心架構:三層之上的二層隧道走 ECMP;某條 spine 鏈路故障會隨機地、而非確定性地影響隧道
MPLS / SR營運商網絡快速重路由(< 50 毫秒)會掩蓋閃斷——需要檢查底層(underlay)計數器
EVPN 多歸屬(ESI-LAG)替代 MLAG成員鏈路連到不同的 leaf,規則與 LAG 成員相同

流控與無損分類

機制目的光模組視角
802.3x pause讓鄰居暫停發送很少使用;全局 pause 會掩蓋擁塞
PFC(802.1Qbb)面向 RoCE/FCoE 的按優先級 pause存在 CRC 錯誤的鏈路觸發的是重傳而非 pause——但閃斷端口引發的 pause 風暴會導致無損分類在全網範圍內停滯(無損以太網
ECN標記擁塞

把轉發層現象讀回物理層

轉發層現象需要檢查的物理原因
每隔幾分鐘出現 STP TCN,日誌中有 MAC 閃斷某條上行鏈路閃斷——DDM Rx 功率接近靈敏度、連接器髒污
LACP 成員處於「suspended」/「individual」該成員 FEC 或速率不匹配;模組未被識別
OSPF/BGP 鄰居在某條鏈路上反覆重置光模組閃斷,或模組達到溫度極限
ECMP:部分流量變慢或丟包某條上行鏈路存在 FEC 不可糾正錯誤 / CRC 錯誤
巨幀失敗,ping 正常MTU 問題——與光模組無關
光纖維修後出現環路或廣播風暴單向鏈路、MPO 極性接反、缺少 UDLD
軟件升級後流量中斷新版本拒絕第三方光模組(兼容性矩陣與固件
伺服器看到鏈路 up,但沒有流量VLAN 錯誤/native 不匹配,或交換機側配了 LAG 而伺服器側沒配

每一行對應的物理層排查步驟:現象索引在交換機上驗證光模組

在 CodingBox 中

轉發層的現象指向一個端口;端口指向一個模組;模組的 DDM、身份資訊和閾值——無論是在交換機上讀取還是在工作台上讀取——才能真正結案。在代碼資料庫中為每個模組保留記錄,能把「LAG 又變慢了」變成「成員 3,序號 X,Rx −17 dBm,已更換」。


如果您發現本文有不準確之處或錯誤,請選取相應片段並按 Ctrl+Enter,即可