STP與RSTP也不過就這些區別


STP

  • 生成樹STP(Spanning Tree Protocol)可以在提高可靠性的同時又能避免環路帶來的各種問題
  • 二層冗餘帶來的問題:
    • 廣播風暴
    • MAC地址震盪

STP的作用

  • 通過阻塞邏輯端口來消除環路,並能夠實現鏈路備份的目的
  • 當可用路徑發生故障時,STP可以自動激活備份鏈路,恢復網絡的連通性

STP操作

  1. 選舉一個根橋
  2. 每個非根交換機選舉一個根端口
  3. 每個網段選舉一個指定端口
  4. 阻塞非根、非指定端口

選舉根橋

  • 根橋是指Bridge-ID最小的交換機(BID最小的的交換機成爲根網橋)
  • Bridge-ID包括兩部分(優先級、MAC地址)
  • 修改優先級stp priority 4096(優先級必須是4096的倍數)

選舉根端口

  • 根端口指的是非根網橋到達根網橋路徑開銷最小的接口
  • 沿着BPDU的流向(BPDU從根橋流向非根橋)累加入棧接口的開銷值
  • 接口開銷值相同,則比較接口對端所連交換機的BID,BID小的交換機對應的接口爲根端口
  • 接口開銷相同,對端BID相同,比較對端接口的Port-ID(優先級、接口編號)小的爲根端口
  • 上述所有參數都相同,則比較本地接口的Port-ID,小的爲根端口

選舉指定端口

  • 在一個網段內到達根網橋路徑開銷最小的接口

  • 根網橋上所有接口都是根端口

  • 比較接口的根路徑開銷,根路徑開銷相同則比較此網段內所連交換機的BID,BID小的交換機的端口爲指定端口

  • 在兩個交換機之間根據路徑開銷、對端BID、對端PID和本端的PID比較選舉指定端口

    沒有當選根端口和指定端口的端口會被阻塞

端口狀態轉換

  • Disabled:生成樹的禁用狀態(端口關禁閉)
  • Blocking:可以長期穩定的狀態(阻塞)
  • Listening:不穩定狀態,只能收發BPDU,不能轉發數據,學習MAC,等待15秒,切換狀態
  • Learning:不穩定狀態,可以學習MAC表,不能轉發數據
  • Forwarding:穩定狀態

BPDU

  • 包含橋ID、路徑開銷、端口ID、計時器等參數

STP拓撲變化

  • 根橋故障
    • 非根橋會在BPDU老化之後開始根橋的重新選舉
  • 根橋故障
    • 非根橋會在BPDU老化之後開始根橋的重新選舉
  • 直連鏈路故障
    • 檢測到直連鏈路物理故障後,會將預備端口轉換爲根端口
    • 預備端口會在30s後恢復到轉發狀態
  • 非直連鏈路故障
    • 預備端口恢復到轉發狀態大約需要50秒

拓撲變更導致MAC地址表變化

  1. 當交換機檢測到網絡發生拓撲變化時,交換機會從根端口向外發出TCN BPDU
  2. 上游交換機收到TCN BPDU後,會以TCA位被置位的BPDU進行應答
  3. 上游交換機收到TCN BPDU後,會進一步從根端口轉發該BPDU ,直到TCN BPDU抵達根網橋
  4. 根網橋收到TCN BPDU後,會全網泛洪TC位被置位配置BPDU
  5. 交換機收到TC位被置位的配置BPDU後,觸發生成樹的重新計算
  6. 同時收到TC BPDU的端口的MAC地址表老化時間縮短至轉發延遲

STP模式

  • STP配置:stp mode stp(華爲設備默認工作模式爲MSTP)
  • 配置路徑開銷值:接口視圖下stp cost 2000

RSTP

  • 傳統STP收斂速度慢,至少需要30S
  • 根橋直連鏈路down掉,BP端口換成DP端口並進入轉發狀態需要大約50S
  • 交換機連接終端的鏈路進入轉發需要經過30S
  • 機制複雜,效率低下
  • 端口角色
  • Disabled、Blocking、Listening都不轉發用戶流量也不學習MAC地址
  • Learning不轉發用戶流量,但是學習MAC地址表
  • Forwarding及轉發用戶流量又學習MAC地址

RSTP優點

端口角色重新劃分

  • 在STP原有的根端口和指定端口上新定義了新的端口
  • Backup Port(BP指定端口的備份)
  • Alternate Port(AP根端口的備份)

端口狀態重新劃分

  • 由原來STP的5種狀態縮減爲3種狀態
  • STP的Disabled、Blocking、Listening對應RSTP的Discarding狀態(不轉發用戶流量也不學習MAC地址)
  • STP的Learning、Forwarding在RSTP中不變

快速收斂機制

P/A機制

  • 對指定端口(DP)快速進入轉發狀態生效
  • DP向下遊交換機發出P位被置位的BPDU
  • 下游交換機接收到P位被置位的BPDU後,首先會執行Sync的操作(交換機會阻塞所有處於轉發狀態的非邊緣端口)
  • 然後下游交換機會向上遊交換機發送A位被置位的BPDU
  • 上游交換機收到A位被置位的BPDU後,立刻將DP口置爲轉發狀態,無需等待定時器到期

根端口快速切換機制

  • 當原有的根端口發生故障,且AP口對端連接的DP口處於轉發狀態,AP口立刻轉換爲RP口,並進入轉發狀態

次等BPDU處理機制

  • 發生故障的交換機以自己爲根橋,向外發送P位被置位的BPDU,對端收到後,會將本地最優的BPDU回給故障交換機
  • 發生故障的交換機收到最優的BPDU後,向對端發送A位被置位的BPDU
  • 對端收到A位被置位的BPDU後,立刻將AP口轉換爲DP口,進入轉發狀態

邊緣端口的引入

  • 交換機的接口被設置爲邊緣端口,則改端口不參與生成樹的運算,一旦接入,立刻進入轉發狀態

拓撲變更機制的優化

  • 判斷拓撲變化唯一標準:一個非邊緣端口遷移到Forwarding狀態
  • 變更點直接產生TC BPDU觸發生成樹的重新運算,RSTP不再使用TCN BPDU
  • TC BPDU會直接刪除錯誤的MAC地址表項,不再將MAC地址表項的老化時間降低爲轉發延遲,進一步提高收斂速度

BPDU保護

  • 邊緣端口收到BPDU後,自動將其設置爲非邊緣端口,重新進行生成樹的計算
  • BPDU保護邊緣端口配置BPDU保護,邊緣端口收到BPDU後,交換機立刻關閉該邊緣端口

根保護

  • 配置了根保護的接口如果收到更優的BPDU,則進入Discarding狀態,不再轉發該BPDU
  • 一段時間內收不到更優的BPDU,則改端口進入轉發狀態,保護根橋位置

TC-BPDU泛洪保護

  • 如果交換機短時間收到大量的TC-BPDU,交換機會頻繁的執行MAC地址表的刪除操作和生成樹的重新運算,給設備增加負擔
  • 交換機配置了TC-BPDU保護後,交換機只會處理單位時間內人爲設置的TC-BPDU的數量,超出部分交換機不處理

RSTP配置

# 系統視圖下
stp mode rstp  //將交換機的STP類型更改爲RSTP
stp root primary  //設置爲根橋
stp bpdu-protection  //開啓BPDU保護功能

# 接口視圖下
stp edged-port enable  //將當前接口設置爲邊緣端口
stp root-protection  //在當前接口開啓根保護

stp tc-protection  //開啓TC-BPDU保護功能
stp tc-protection threshold 5  //設置單位時間內處理TC-BPDU數量的閥值

以上內容均屬原創,如有不詳或錯誤,敬請指出。
本文作者: 壞壞
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章