天天看點

STP生成樹總結

生成樹協定:

企業網三層架構—》備援----》線路備援—》二層橋接環路

導緻問題:

1、 廣播風暴

2、 MAC位址表翻滾 —在一台交換機上,同一個MAC位址隻能映射唯一的接口;但同一個接口可以映射多個不同的MAC位址;

3、 同一資料幀的重複拷貝

4、 以上3個條件最終導緻裝置工作過載,導緻重新開機保護

生成樹協定: spanning tree STP ,所有的生成樹協定都在通過發送比較資訊進行選舉, 找到環路中應該被關閉的接口(接口阻塞)。

發送的比較的資訊稱為BPDU,網橋協定資料單元。

生成樹的類型:

STP(标準生成樹,又稱為802.1D)

RSTP(快速生成樹,又稱為802.1W)

MSTP(多生成樹協定,又稱為802.1S)

一、802.1D

一個交換網絡内僅存在一棵生成樹執行個體;

交換機間使用BPDU—橋協定資料單元 – 交換機間溝通互動收發的資料

配置BPDU—隻有根網橋可以發送,在交換網絡初始狀态時,所有交換機均定義本地為根網橋,進行BPDU的發送;使得網絡中所有交換機均收到其他裝置的BPDU,之後基于資料中的參數進行比對,選舉出根網橋;再所有非根網橋不再發送BPDU,而是僅接收和轉發根網橋的BPDU;周期2s發送,hold time 20s;

TCN—拓撲變更消息(也是BPDU): 本地交換機鍊路故障後,STP重新收斂,為了快速重新整理全網所有交換機的MAC表,将向本地所有STP接口發送TCN(标記位中的TCN位置1),鄰居交換機收到TCN後,先标記為ACK位為回複,用于可靠傳輸消息;之後将TCN逐級轉發到根網橋處,由根網橋回複TC消息來逐級回複到所有交換機;使所有交換機臨時将MAC表的老化時間修改為15s(預設的,轉發延時)

選舉— 根網橋 根端口 指定端口 非指定端口(阻塞端口)

【1】 根網橋 – 在一棵生成樹執行個體中,有且僅有一台交換機為root;

BPDU中的 橋ID來決定

橋ID= 網橋優先級(0-65535公有) 預設32768 + MAC位址(隻有存在svi接口的交換機才擁有mac位址,若存在多個mac選數值最小)

根網橋的選舉 先比較優先級,小優; 若優先級相同,比較mac,數值小優;

【2】 根端口—在每台非根網橋上,有且僅有一個接口;本地離根網橋最近的接口(最短、星型),接收來自根網橋的BPDU,轉發使用者的流量(該接口不阻塞)

**規則:**
1、比較從根網橋發出後,通過該接口進入時最小的cost值;
2、入向cost值相同,比較該接口對端裝置的BID,小優
3、對端BID也相同,比較該接口對端裝置的接口的PID;先優先級小,若優先級一緻,編号小
4、連對端PID也相同,比較本地PID,小優;
           

PID=端口ID 接口優先級(0-240,步長16,預設128) 接口編号

【3】 指定端口,在每一段存在STP的實體鍊路上,有且僅有一個;轉發來自根網橋的BPDU,同時可以轉發使用者流量(不阻塞);預設根網橋上所有接口為指定端口;

1、比較從根網橋發出後,通過該接口進入這段鍊路時的cost值最小(出向)

2、若出向cost值相同,必須本地的BID,小優;

3、本地BID相同,比較本地的PID;

4、本地PID,相同,直接阻塞該端口;

【4】非指定端口(阻塞端口)當以上所有角色全部選舉完成後,剩餘沒有任何角色的接口為非指定;

該接口邏輯阻塞,實際可以接收到資訊,但不轉發;

cost值:不同帶寬 存在不同cost

802.1d标準: 802.1T标準

10M = 100 1000M= 20000

100M=19 100M=200000

1000M=4

10000M=2

100000M=1

[SWA]stp pathcost-standard ? 預設華為使用802.1t标準

dot1d-1998 IEEE 802.1D-1998

dot1t IEEE 802.1T

legacy Legacy

生成協定中,至少應該将根網橋幹涉到彙聚層處;

接口狀态:

down:沒有BPDU收發,一旦可以進行BPDU收發進入下一狀态

偵聽:強制15s;所有交換機進行BPDU收發,選舉所有角色;接口角色為非指定端口直接進入阻塞狀态;

若為指定端口和根端口進入下一狀态;

學習:強制15s; 指定端口和根端口學習所有接口連接配接裝置的MAC位址,生成MAC表;之後進入下一狀

态;

轉發:指端端口和根端口進入,可以轉發使用者封包;

阻塞:邏輯阻塞;

注:隻有到接口進入到轉發狀态後,才能為使用者轉發資料封包,之前的30s不能轉發任何資料;

收斂時間:

初次收斂—30s = 15偵聽+15s學習

結構變化:

存在直連檢測:本地存在阻塞端口,若其他端口斷開,該阻塞端口馬上進入15是偵聽(選舉);結果若為

啟用,那麼将再進入15s學習—總30s

沒有直連檢測:本地不存在阻塞端口,若某個端口斷開,将發送次優BPDU(以本地為根)給其他鄰居交換機,其他交換機無視該資料,進行20s hold time計時,到時時阻塞接口進入15s偵聽,15s學習=總50s

802.1D 缺點:

1、收斂慢

2、鍊路使用率低

802.1配置指令:

[sw1]stp mode stp 修改為802.1d算法,當下華為預設為MSTP;

[sw1]stp priority 4096 修改網橋優先級

[sw1-GigabitEthernet0/0/1]stp cost ? 修改接口cost值

INTEGER<1-200000000> Port path cost

[sw1-GigabitEthernet0/0/1]stp port priority ? 修改接口優先級

INTEGER<0-240> Port priority, in steps of 16

快速生成樹

cisco的RSTP — 基于vlan的快速生成樹 - 一個vlan一棵樹 pvst+的更新

公有RSTP(802.1w) — 整個交換網絡一棵樹 802.1d的更新

快速的原理:

1、 取消了計時器,而是在一個狀态工作完成後,直接進入下一狀态;

2、 分段式同步,兩台裝置間逐級收斂;使用請求和同意标記;依賴标記位的第1和第6位

3、 BPDU的保活為6s;hello time 2s;

4、 将端口加速(邊緣接口)、上行鍊路加速、骨幹加速內建了

5、 相容802.1d和PVST,但802.1d和PVST沒有使用标記位中的第1-6位,故不能快速收斂;是以如果網絡中有一台裝置不支援快速收斂,那麼其他開啟快速收斂的裝置也不能快速;

當tcn消息出現時,不需要等待根網橋的BPDU,就可以重新整理本地的cam表;

切記:接口預設為半雙工時,即便允許RSTP,依然基于慢速的802.1D算法來收斂;

[sw1]stp mode rstp

邊緣接口—用于連接配接PC的接口,一旦被設定為邊緣接口;将不再進行BPDU的發送,且不進行STP的收斂,直接為轉發狀态; 但若該接口收到了對端的BPDU,将失去邊緣特性,重新正常收斂;

[sw1]interface GigabitEthernet 0/0/1

[sw1-GigabitEthernet0/0/1]stp edged-port enable

[sw1]stp priority ? 修改網橋優先級

INTEGER<0-61440> Bridge priority, in steps of 4096

[sw1]stp root ? 快速定義根網橋角色

primary Primary root switch

secondary Secondary root switch

[sw1-GigabitEthernet0/0/1]stp port priority ? 修改接口優先級

INTEGER<0-240> Port priority, in steps of 16

[sw1-GigabitEthernet0/0/1]stp cost ? 修改接口cost

INTEGER<1-200000000> Port path cost

802.1S

華為裝置預設使用該協定

繼承了快速生成樹的基礎; 将多個vlan放置于一個組内,基于每個組一棵生成樹;

不同組間的BPDU中優先級= 4096倍數+組号

[r1]stp mode mstp

預設存在組0,且所有vlan預設處于該組;優先級= 32768+0

分組

[sw1]stp enable

[sw1]stp region-configuration

[sw1-mst-region]region-name a 所有裝置應在一個組内

[sw1-mst-region]instance 1 vlan 1 to 5

[sw1-mst-region]instance 2 vlan 6 to 10

[sw1-mst-region]active region-configuration 激活目前配置(必須配置該指令)

切記:若将建立某個組,但該組内的vlan,在本交換機上沒有建立,同時沒有為該vlan服務的接口;該組将沒有任何資訊;整個交換網絡中所有裝置的分組資訊必須完全一緻;

定義本地為組1 的主根,組2 的備份根

stp instance 1 root primary 優先級修改為0

stp instance 2 root secondary 優先級修改為4096

[sw1]stp instance 1 priority ?

INTEGER<0-61440> Bridge priority, in steps of 4096

[sw1]interface GigabitEthernet 0/0/1

[sw1-GigabitEthernet0/0/1]stp instance 1 cost ?

INTEGER<1-200000000> Port path cost

[sw1-GigabitEthernet0/0/1]stp instance 1 port priority ?

INTEGER<0-240> Port priority, in steps of 16

繼續閱讀