文章目錄
- STP
STP
🏡作者主頁:點擊!
🤖Datacom專欄:點擊!
??創作時間:2025年05月31日13點17STP通過三要素選舉消除環路:
- 根橋(BID最小,建議設優先級為0)
- 根端口(最優BPDU接收路徑)
- 指定端口(BPDU轉發接口)
非選舉端口進入阻塞狀態。端口需經歷
阻塞 → 偵聽 → 學習 → 轉發 阻塞 \rightarrow 偵聽 \rightarrow 學習 \rightarrow 轉發 阻塞→偵聽→學習→轉發五階段狀態遷移(30秒延遲防臨時環路)。選舉優先級:路徑開銷 < 發送方BID < 端口ID。僅根橋主動發送BPDU,新優根橋可觸發搶占。
STP的根橋是可以搶占的,為了確保交換網絡的穩定性,提前規劃STP組網,并將規劃為根橋的交換機優先級設置為0
STP選舉完成之后,只有根橋會產生并發送BPDU報文
在生成樹中一個端口要想轉發數據至少要30s,為了防止臨時環路的問題
- 選舉根橋(根交換機)
- 基于橋ID(16bit的優先級和48bit的橋MAC地址構成)
- STP網絡中,BID最小的設備會被選舉為根橋,越小越優
- 優先級范圍:0-61440----4096 的倍數,默認32768
- 選舉根端口(基于根路徑開銷、對端BID、對端PID、本端PID)—非根交換機用來接收根橋發過來的BPDU最近的接口
- 路徑開銷:沒條路徑的開銷值
- 根路徑開銷:到達根橋的所有路徑開銷之和
- 當根路徑開銷一樣的時候,比較對端BID(越小越優先)
- 如果還沒比較出來則比較對端PID(越小越優)PID=端口優先級+端口號,端口優先級范圍:0-240 16的倍數 默認128
- 最后比較本段PID(越小越優)和比較對端PID是一樣的規則,只不過這次是本段接口
- 選舉指定端口(基于根路徑開銷、本段BID、本段PID)—根交換機發出BPDU的接口(每一條鏈路上進行選舉的)
- 首先根橋的接口大概率是指定端口(一條線的兩個接口插到了同一臺設備上這種情況就是一個指定一個阻塞端口)
- 其次比較根路徑開銷值,小的是指定端口
- 如果指定端口通過路由開銷比較不出來,則比較BID 小的優先,最后是比較PID,小的優先
- 非根非指定端口阻塞掉——A口
- 既不是根端口也不是指定端口的接口就會被當成阻塞端口
- 最后剩下的一個端口就是阻塞端口
STP接口狀態
- 禁用:不收發BPDU,也不收發數據幀
- 阻塞:不發BPDU,但是持續監聽BPDU,不轉發業務數據幀,不進行MAC地址學習
- 偵聽:該端口為指定端口或者是根端口,接口依然處于STP計算過程中,可收發BPDU,不收發業務數據幀,不進行MAC地址學習
- 學習:偵聽業務數據幀,但不轉發,且收到業務數據幀后進行MAC地址學習
- 轉發:處理并正常轉發業務數據幀,進行BPDU處理,接口角色是根接口或指定端口才會進入轉發狀態
個人總結:一開始啥都不弄,阻塞開始偵聽BPDU,偵聽開始學習并收發BPDU,學習開始偵聽業務數據幀且學習MAC地址,轉發就全部收發
接口狀態遷移
- 接口初始化或激活,自動進入阻塞狀態
- 接口被選舉為根端口或是指定端口,自動進入偵聽狀態
- 轉發延遲計時器超時且接口依然為根接口或指定接口,進入學習狀態,之后進入轉發狀態
- 當接口不再是根接口或指定接口或指定狀態,會直接進入阻塞狀態
- 接口被禁用或者鏈路失效會直接進入禁用或者Down狀態