一文教你弄明白STP stp和mstp是什么

初識網絡的小伙伴對于STP可能比較陌生,不清楚為何會出現,有何作用,這里我就聊一聊STP、RSTP和MSTP,已經熟練掌握的兄弟們可以劃過,講得不好的地方若能給點指正性意見將不勝感激 。
STP出現背景
(1)局域網絡中容易產生廣播風暴和MAC地址表震蕩
(2)STP可消除局域網中環路
STP的作用:1:防環;2.鏈路的冗余

一文教你弄明白STP stp和mstp是什么

文章插圖
STP出現背景
拓撲描述
1.廣播風暴 假設交換設備上沒有啟用STP協議 。如果PC1發出廣播請求,那么廣播報文將被其他兩臺交換設備的端口port1接收,并分別從端口port2廣播出去,然后端口port2又收到另一臺交換設備發過來的廣播報文,再分別從兩臺交換設備的端口port1轉發,如此反復,最終導致整個網絡資源被耗盡,網絡癱瘓不可用 。
2.MAC地址表震蕩 交換機S1可以在Port2上學習到PC2的MAC地址,但是由于S2會將PC2發出的數據幀向自己其它的端口轉發,所以S1也可能在port1上學習到PC2的MAC地址 。如此S1會不停的修改自己的MAC地址表 。這樣就引起了MAC地址表的抖動(Flapping) 。------目的MAC地址為未知單播幀
STPP遵循IEEE std 802.1D標準;RSTP遵循802.1W標準;mstp遵循802.1s標準 。STP根據網絡拓撲構建無回路的樹,STP通過阻塞適當的端口來避免環路 。
STP
(1)STP可以消除網絡中的環路 。其基本理論依據是根據網絡拓撲構建(生成)無回路的連通圖(就是樹),從而保證數據傳輸路徑的唯一性,避免出現環路報文流量增加和循環 。STP是工作在OSI第二層(Data Link Layer)的協議 。
(2)STP協議通過在交換機之間傳遞特殊的消息(BPDU)并進行分布式的計算,來決 ----通過BPDU來確定端口角色定一個有環路的網絡中,哪臺交換機的哪個端口應該被阻塞,用這種方法來剪切掉環路
STP基本概念-重要概念
一文教你弄明白STP stp和mstp是什么

文章插圖
STP重要概念
1.根橋RB(root Bridge)
根橋就是網橋ID最小的橋,由優先級和MAC地址組成 。(都是值越小越優)
2.根端口RP(Root Port)(非根橋)
所謂根端口就是去往根橋路徑開銷最小的端口,根端口負責向根橋方向轉發數據,這個端口的選擇標準是依據根路徑開銷判定 。在一臺設備上所有使能STP的端口中,根路徑開銷最小者,就是根端口 。很顯然,在一個運行STP協議的設備上根端口有且只有一個,根橋上沒有根端口 。
3.指定端口和指定橋
(1)每一個網段選擇到根橋最近的網橋作為指定橋,該網橋到這個網段的端口為指定端口 。
(2)指定端口為負責轉發BPDU的端口,指定橋為負責轉發配置BPDU的設備 。
4.Alternate端口
既不是根端口,又不是指定端口
一旦根橋、根端口、指定端口選舉成功,則整個樹形拓撲建立完畢 。在拓撲穩定后,只有根端口和指定端口轉發流量,其他的非根端口和非指定端口都處于阻塞(Blocking)狀態,它們只接收STP協議報文(BPDU)而不轉發用戶流量 。
STP基本概念-配置BPDU
通常所說的BPDU報文多數指配置BPDU 。
在初始化過程中,每個橋都主動發送配置BPDU 。但在網絡拓撲穩定以后,只有根橋主動發送配置BPDU,其他橋在收到上游傳來的配置BPDU后,才觸發發送自己的配置BPDU 。配置BPDU的長度至少要35個字節,包含了橋ID、路徑開銷和端口ID等參數 。
1.配置BPDU在以下3種情況下會產生
(1)只要端口使能STP,則配置BPDU就會按照Hello Time定時器規定的時間間隔從指定端口發出 。(初始化所有STP設備/穩定后就是ROOT)
(2)當根端口收到配置BPDU時,根端口所在的設備會向自己的每一個指定端口復制一份配置BPDU 。(穩定后)
(3)當指定端口收到比自己差的配置BPDU時,會立刻向下游設備發送自己的BPDU 。(初始化/重新選舉根橋/收到低優先級BPDU)
2.根橋ID(Root Identifier)
(1)Root Identifier由根橋優先級和根橋MAC地址組成,缺省值優先級為32768 。
3.根路徑開銷(Root Path Cost)
(1)從發送網橋到根橋的最小路徑開銷,即最短路徑上所有鏈路開銷的和 。(由于我們鏈路的帶寬是1000Mbps,所以基于默認的IEEE 802.1t標準,此時cost值為20000)查看stp圖中的“STP的根路徑開銷的標準列表”
4.橋ID(Bridge Identifier)
(1)發送BPDU的橋ID,對于LAN來說,他就是指定橋ID(DesignatedBridgeID) 。
5.發送端口ID(Port Identifier)
(1)發送BPDU的端口ID,端口ID由端口優先級和端口號組成(值越小越優) 。對于LAN來說,它就是指定端口ID(DesignatedPortID)
1.Hello Time
(1)運行STP協議的設備發送配置消息BPDU的時間間隔,用于設備檢測鏈路是否存在故障 。
(2)當網絡拓撲穩定之后,該計時器的修改只有在根橋修改后才有效 。stp timer hello
(3)但當拓撲變化之后,TCN(拓撲改變通告) BPDU的發送不受這個計時器的管理 。
(4)缺省為2秒 。
2.Max Age
(1)運行STP協議的網絡中非根橋設備收到配置BPDU報文后,報文中的Message Age和Max Age會進行比較:
(1.1)如果Message Age小于等于Max Age,則該非根橋設備繼續轉發配置BPDU報文 。
(1.2)如果Message Age大于Max Age,則該配置BPDU報文將被老化 。該非根橋設備直接丟棄該配置BPDU,可認為網絡直徑過大,導致根橋連接失敗 。
(3)現實中,配置BPDU報文經過一個橋,Message Age增加1 。
(4)缺省為20 。
3.Forward Delay
(1)配置BPDU傳播到全網最大延遲,默認為15秒 。
設備狀態遷移的延遲時間,默認為15s 。鏈路故障會引發網絡重新進行生成樹的計算,生成樹的結構將發生相應的變化 。不過重新計算得到的新配置消息無法立刻傳遍整個網絡,如果新選出的根端口和指定端口立刻就開始數據轉發的話,可能會造成臨時環路 。為此,STP采用了一種狀態遷移機制,新選出的根端口和指定端口要經過2倍的Forward Delay延時后才能進入轉發狀態,這個延時保證了新的配置消息傳遍整個網絡,從而防止了臨時環路的產生 。其目的就是讓發生的變化的情況有充分的時間傳遍整個網絡并且根據新情況調整端口狀態,從而防止環路的產生 。
Forward Delay Timer指一個端口處于Listening和Learning狀態的各自持續時間,默認是15秒 。即Listening狀態持續15秒(即listening-learning),隨后Learning狀態再持續15秒(即learning-forwarding) 。這兩個狀態下的端口會處于抑制狀態,這正是STP用于避免臨時環路的關鍵 。
STP拓撲計算-選舉根橋
初始狀態所有交換機的所有端口處于listening狀態
STP拓撲計算
1.網絡中所有的設備使能STP協議后,每一臺設備都認為自己是根橋 。此時,每臺設備僅僅收發配置BPDU,而不轉發用戶流量,所有的端口都處于Listening狀態 。所有設備通過交換配置BPDU后,進行選舉工作,選出根橋、根端口和指定端口 。
2.網絡初始化時,網絡中所有的STP設備都認為自己是“根橋”,根橋ID為自身的設備ID 。通過交換配置消息,設備之間比較根橋ID,網絡中根橋ID最小的設備被選為根橋 。
3.交換機優先級是可以配置的,取值范圍是0~65535,默認值為32768 。
一文教你弄明白STP stp和mstp是什么

文章插圖
選舉根橋
拓撲描述
1.為了方便描述,假設交換機S1和交換機S2的優先級分別為0和1,交換機S1通過PortA和S2的PortB互聯 。開始時,交換機S1和交換機S2分別發送配置BPDU,分別為{0,0,0,portA}和{1,0,1,portB} 。經比較,S1的優先級優于S2的優先級,所以S1為根橋 。
{根橋ID,累計根路徑開銷,發送者BID,發送端口PID} 。
STP拓撲計算--最優配置BPDU
最優配置BPDU處理方法:
步驟1:每個端口將收到的配置BPDU與自己的配置BPDU進行比較:
(1)如果收到的配置BPDU優先級較低,則將其直接丟棄,對自己的配置消息不進行任何處理;(自己優)
(2)如果收到的配置BPDU優先級較高,則用該配置消息的內容將自己配置消息的內容替換掉 。(別人優)
步驟2:設備將所有端口的配置BPDU進行比較,選出最優的配置BPDU
STP拓撲計算-選舉根端口和指定端口
步驟1:非根橋設備將接收最優配置BPDU的那個端口定為根端口
步驟2:
一文教你弄明白STP stp和mstp是什么

文章插圖
設備根據根端口的配置BPDU(即使從上游發出來的配置BPDU的消息)和根端口的路徑
開銷(根端口在本鏈路的cost值),為每個端口計算一個指定端口配置BPDU:
(1)根橋ID替換為根端口的配置消息的根橋ID
其實非根橋的指定端口轉發的配置BPDU中的根橋ID就是root發出的配置BPDU中的根橋ID,這兩個根橋ID是同一個東西;
(2)根路徑開銷替換為根端口配置BPDU的根路徑開銷(從上游傳遞下來的配置BPDU中所攜帶的的cost的值0)加上根端口對應的路徑開銷(該根端口自己接口所在鏈路中的cost值20000);即實驗中SW2的指定接口G0/0/2中的cost值=根端口接口G0/0/1的cost值(0 20000)=20000
(3)發送者BID替換為自身設備的ID;
(4)發送端口PID替換為自身端口ID 。
步驟3:設備將計算出的配置BPDU與角色待定端口自己的配置BPDU進行比較:
(1)如果計算出的配置BPDU更優,則該端口被確定為指定端口,其配置BPDU也被計算出的配置BPDU替換,并周期性地向外發送;
(2)如果該端口自己的配置BPDU更優,則不更新該端口的配置BPDU并將該端口阻塞 。該端口(AP)將不再轉發數據,且只接收不發送配置BPDU 。
STP拓撲計算-確定端口角色
端口角色選舉的步驟:
(1)根橋ID較小的配置BPDU優先級高;
(2)若根橋ID相同,則比較根路徑開銷,比較方法為:用配置消息中的根路徑開銷加上本端口對應的路徑開銷,假設而這之和為S,則S較小的配置消息優先級高;
(3)若根路徑開銷也相同,則依次比較指定根橋ID、BPDU包發送方的PID、BPDU包接收方PID
(4)上述比較方法均比小,較小者勝出
1.根橋ID
2.根路徑開銷 rp
3.指定橋ID dp
4.BPDU包發送方PID
5.BPDU包接收方PID
STP拓撲計算-等路徑開銷計算
一文教你弄明白STP stp和mstp是什么

文章插圖
左側拓撲描述(發送BPDU包的發送方PID值越小越優,接口ID=接口優先級 接口索引號)
(1)根據STP根橋選舉原則,很容易得出S1為根橋,接下來確定根端口、指定端口和Alternate端口 。
(2)S2從接口E0和E1接收到S1發送兩條BPDU,分別為{0,0,0,E0}和{0,0,0,E1},該兩個BPDU只有發送端口不同,根據比較原則,較小的發送端口勝出,所以E0為根端口,E1為Alternate端口 。
右側拓撲描述(接收BPDU包的接收方PID值越小越優)
(1)根據STP根橋選舉原則,很容易得出S1為根橋,接下來確定根端口、指定端口和Alternate端口 。
(2)S2從接口E0和E1接收到S1發送兩條BPDU,分別為{0,0,0,E0}和{0,0,0,E0},該兩個BPDU優先級向量均相同,根據比較原則,只能比較接收端口的PID大小 。經比較接收端口E0較小,所以E0為根端口,E1為Alternate端口 。
STP拓撲計算-對低優先級BPDU的處理
一文教你弄明白STP stp和mstp是什么

文章插圖
通常情況下,只有根橋交換機才會發送配置BPDU,其他非根網橋只從指定端口轉發從根端口接收到的配置BDPU 。非根網橋指定端口只有在接收到次優BPDU時,才會主動發送最優BPDU 。
拓撲描述:
當S2收到S4的次優BPDU后,會馬上發送回應配置BPDU,這是因為網橋都會保存當前最優的配置BPDU 。
STP端口狀態
一文教你弄明白STP stp和mstp是什么

文章插圖
STP拓撲改變-TCN消息
TCN BPDU
1.指在下游拓撲發生變化時向上游發送拓撲變化通知,直到根橋
2.產生條件:
(1)端口狀態變為Forwarding狀態
(2)指定端口收到TCN BPDU,復制TCN BPDU并發往根橋
STP拓撲改變-TCN消息處理
一文教你弄明白STP stp和mstp是什么

文章插圖
TCN消息處理
拓撲變化過程中,根橋通過TCN BPDU報文獲知生成樹拓撲里發生了故障 。根橋生成TC用來通知其他交換機加速老化現有的MAC地址表項 。
拓撲變更以及MAC地址表項更新的具體過程如下:
(1)SWC感知到網絡拓撲發生變化后,會不間斷地向SWB發送TCN BPDU報文 。
(2)SWB收到SWC發來的TCN BPDU報文后,會把配置BPDU報文中的Flags的TCA位設置1,然后發送給SWC,告知SWC停止發送TCN BPDU報文 。
(3)SWB向根橋轉發TCN BPDU報文 。
(4)SWA把配置BPDU報文中的Flags的TC位設置為1后發送,通知下游設備把MAC地址表項的老化時間由默認的300秒修改為Forwarding Delay的時間(默認為15秒) 。
(5)最多等待15秒之后,SWB中的錯誤映射關系會被自動清除 。此后,SWB就能通過G0/0/2端口把從主機A到主機B的幀正確地進行轉發 。
STP拓撲改變-收斂時長
一文教你弄明白STP stp和mstp是什么

文章插圖
根橋失效:
(1)當S1出現故障,S2和S3都不能收到來自根橋的BPDU報文,他們在等待最長max age時間后,才能發現根橋失效,進而進行新的根橋選舉、根端口和指定端口的確定 。所以到達最終的拓撲穩定需要經歷BPDU的老化、2個forwarding delay(listening learning)時長,即50秒 。
鏈路失效:
(2)當S3連接S1的鏈路失效后,S3馬上感知到這一情況的發生 。S3的阻塞端口立即變為根端口 。S3的面向S2的端口狀態要經歷listening、learning再到forwarding,即經歷30秒 。鏈路失效或者鏈路增加均需要經歷30秒,才能恢復正常 。
STP的不足:
(1)STP沒有對端口狀態和端口角色進行細致區分 。例如從端口運行角度看,端口處于Blocking和Listening狀態沒有任何區別,因為這兩種狀態下的端口都無法收發數據,也不能進行MAC地址學習 。
(2)STP算法是被動的算法,依賴定時器等待的方式判斷拓撲變化,收斂速度慢 。
(3)STP的算法要求在穩定的拓撲中,根橋主動發出配置BPDU報文,而其他設備進行處理轉發由根橋發出的配置BPDU報文,傳遍整個STP網絡 。(極其不適應拓撲頻繁變化的網絡中)
RSTP基本原理
STP →RSTP→ MSTP 兒子
1.RSTP與STP的不同
(1)增加端口角色:DP(指定端口) AP(阻塞端口) RP(根端口) BP(備份端口)
(2)減少端口狀態:discarding,learning, forwarding
(3)充分利用BPDU中的Flag字段(參考報文格式大全RST BPDU)
(4)對BPDU的處理方式發生了改變
(5)提高收斂速度
(6)增加了保護功能
RSTP和STP消除環路的思想保持一致,RSTP具備了STP的所有功能,支持RSTP的網橋可以和支持STP的網橋一同運行
RSTP基本概述-端口角色
一文教你弄明白STP stp和mstp是什么

文章插圖
RSTP的端口角色共有4種:根端口、指定端口、Alternate端口和Backup端口 。
根端口和指定端口的作用同STP協議中定義,Alternate端口和Backup端口的描述如下:
1.從配置BPDU報文發送角度來看:
(1)Alternate端口就是由于學習到其它網橋發送的更優配置BPDU報文而阻塞的端口 。【即該端口的自身的配置BPDU優于計算出來的配置BPDU,此時該端口為AP】
(2)Backup端口就是由于學習到自己發送的更優配置BPDU報文而阻塞的端口 。
2.從用戶流量角度來看:
(1)Alternate端口提供了從指定橋到根的另一條可切換路徑,作為根端 ---------即B-C-A口的備份端口 。
(2)Backup端口作為指定端口的備份,提供了另一條從根橋到相應網段的備份通路 。給一個RSTP域內所有端口分配角色的過程就是整個拓撲收斂的過程 。
RSTP基本概述-端口狀態
一文教你弄明白STP stp和mstp是什么

文章插圖
端口狀態角色對應表
RSTP的狀態規范把原來的5種狀態縮減為3種 。根據端口是否轉發用戶流量和學習MAC地址來劃分:
(1)如果不轉發用戶流量也不學習MAC地址,那么端口狀態就是Discarding狀態 。
(2)如果不轉發用戶流量但是學習MAC地址,那么端口狀態就是Learning狀態 。
(3)如果既轉發用戶流量又學習MAC地址,那么端口狀態就是Forwarding狀態 。
RSTP計算過程:端口在Discarding狀態下完成端口角色的確定:
(1)當端口角色確定為根端口和指定端口后,經過forwarding delay(15s)后,端口進入Learning狀態,處于Learning狀態的端口其處理方式和STP相同,此期間端口開始學習MAC地址并在Forwarding delay(15s)后進入Forwarding狀態,開始轉發數據 。實際上,RSTP會通過其他方式加快這個過程 。(P/A機制)
(2)當端口角色確定為Alternate端口和BP口后,端口會維持在Discarding狀態 。
RSTP基本概述-BPDU中的flag
一文教你弄明白STP stp和mstp是什么

文章插圖
在配置BPDU報文的格式上,除了保證和STP格式基本一致之外,RSTP作了一些小變化:
1.Type字段,配置BPDU類型不再是0而是2,所以運行STP的設備收到RSTP的配置BPDU時會丟棄 。
2.Flags字段,使用了原來保留的中間6位,這樣改變的配置BPDU叫做RSTBPDU 。
MSTP基本概念
一文教你弄明白STP stp和mstp是什么

文章插圖
如圖1所示,MSTP網絡中包含1個或多個MST域(MST Region),每個MST Region中包含一個或多個MSTI(多生成的樹實例) 。組成MSTI的是運行生成樹協議的交換設備,MSTI是所有運行生成樹協議的交換設備經MSTP協議計算后形成的樹狀網絡 。
MST域(MST Region)
一文教你弄明白STP stp和mstp是什么

文章插圖
MST域是多生成樹域(Multiple Spanning Tree Region),由交換網絡中的多臺交換設備以及它們之間的網段所構成 。同一個MST域的設備具有下列特點:
(1)都啟動了MSTP 。
(2)具有相同的域名 。
(3)具有相同的VLAN到生成樹實例映射配置 。
(4)具有相同的MSTP修訂級別配置 。
一個局域網可以存在多個MST域,各MST域之間在物理上直接或間接相連 。用戶可以通過MSTP配置命令把多臺交換設備劃分在同一個MST域內 。
如圖2所示的MST Region 4中由交換設備A、B、C和D構成,域中有3個MSTI 。
一文教你弄明白STP stp和mstp是什么

文章插圖
VLAN映射表
一文教你弄明白STP stp和mstp是什么

文章插圖
VLAN映射表是MST域的屬性,它描述了VLAN和MSTI之間的映射關系 。
如圖所示,MST Region 4的VLAN映射表是:
(1)VLAN1映射到MSTI1
(2)VLAN2映射到MSTI2
(3)其余VLAN映射到MSTI3
圖中表示A是在MSTI實例1中是root,B是在MSTI實例2中是root,C是在MSTI實例3中是root
CST(公共生成樹)
一文教你弄明白STP stp和mstp是什么

文章插圖
公共生成樹CST(Common Spanning Tree)是連接交換網絡內所有MST域的一棵生成樹 。如果把每個MST域看作是一個節點,CST就是這些節點通過STP或RSTP協議計算生成的一棵生成樹 。如圖所示,淺藍色線條連接各個域構成CST 。
IST(內部生成樹(即instance 0))
一文教你弄明白STP stp和mstp是什么

文章插圖
內部生成樹IST(Internal Spanning Tree)是各MST域內的一棵生成樹 。IST是一個特殊的MSTI,MSTI的ID為0,通常稱為MSTI0 。(即instance 0)IST是CIST在MST域中的一個片段 。如圖所示,黑色線條在域中連接該域的所有交換設備構成IST 。
SST(單生成樹)構成單生成樹SST(Single Spanning Tree)有兩種情況:
(1)運行STP或RSTP的交換設備只能屬于一個生成樹 。
(2)MST域中只有一個交換設備,這個交換設備構成單生成樹 。
CIST(公共和內部生成樹,其實就是以總根為根橋建立的instance0的一棵樹)
一文教你弄明白STP stp和mstp是什么

文章插圖
公共和內部生成樹CIST(Common and Internal Spanning Tree)是通過STP或RSTP協議計算生成的,連接一個交換網絡內所有交換設備的單生成樹 。如圖所示,所有MST域的IST加上CST就構成一棵完整的生成樹,即CIST 。
域根
一文教你弄明白STP stp和mstp是什么

文章插圖
域根(Regional Root)分為IST域根和MSTI域根 。
(1)IST域根如圖MSTP網絡層次示意圖所示,在MST域中IST生成樹中距離總根(CIST Root)最近的交換設備是IST域根 。(即圖中MST域2中的S1就是IST域根也是總根;而其他的域都是邊界黃色設備為該域的IST域根)
(2)一個MST域內可以生成多棵生成樹,每棵生成樹都稱為一個MSTI 。MSTI域根是每個多生成樹實例的樹根 。如圖MST域示意圖所示,域中不同的MSTI有各自的域根 。
總根是CIST(Common and Internal Spanning Tree)的根橋 。如圖1中的S1 。
主橋(Master Bridge)也就是IST Master,它是域內距離總根最近的交換設備 。如圖中的黃色交換機 。如果總根在MST域中,則總根為該域的主橋 。
端口角色
根端口、指定端口、Alternate端口、Backup端口和邊緣端口的作用同RSTP協議中定義,MSTP中定義的所有端口角色如表所示 。
MSTP的端口狀態
MSTP定義的端口狀態與RSTP協議中定義相同
1.Forwarding
在這種狀態下,端口既轉發用戶流量又接收/發送BPDU報文 。
2.Learning
(1)這是一種過渡狀態 。在Learning下,交換設備會根據收到的用戶流量,構建MAC地址表,但不轉發用戶流量,所以叫做學習狀態 。
(2)Learning狀態的端口接收/發送BPDU報文,不轉發用戶流量 。
3.Discarding
Discarding狀態的端口確定端口角色,只接收BPDU報文 。
MSTP報文結構
一文教你弄明白STP stp和mstp是什么

文章插圖
MSTP拓撲計算(查看華為HDX)
MSTP可以將整個二層網絡劃分為多個MST域,各個域之間通過計算生成CST 。域內則通過計算生成多棵生成樹,每棵生成樹都被稱為是一個多生成樹實例 。其中實例0被稱為IST,其他的多生成樹實例為MSTI 。MSTP同STP一樣,使用配置消息進行生成樹的計算,只是配置消息中攜帶的是設備上MSTP的配置信息 。
STP 配置BPDU
RSTP RST BPDU
MSTP MST BPDU
優先級向量
MSTI和CIST都是根據優先級向量來計算的,這些優先級向量信息都包含在MST BPDU中 。各交換設備互相交換MST BPDU來生成MSTI(多生成樹實例)和CIST(公共和內部生成樹) 。
優先級向量簡介
參與CIST計算的優先級向量為:{ 根交換設備ID,外部路徑開銷,域根ID,內部路徑開銷,指定交換設備ID,指定端口ID,接收端口ID }
參與MSTI計算的優先級向量為:{ 域根ID,內部路徑開銷,指定交換設備ID,指定端口ID,接收端口ID }括號中的向量的優先級從左到右依次遞減 。
其實就是:確定組成CIST樹的設備端口角色是由CIST的七步選舉原則決定的:
1.CIST的主根橋ID
2.CIST到達主根的外部開銷(ERPC)(CIST ROOT=主根):域根到達主根的cost值為20000,凡是和該域根在同一個區域(HW區域)的其他橋到達主根的cost值也是20000.
3.CIST域根的橋ID (CIST ReROOT=域根)
4.CIST到達域根的內部開銷(IRPC)
5.CIST發送者的橋ID
6.CIST發送者的port ID
7.CIST接收者的本地PORT ID
確定組成MSTI樹的設備端口角色是由MSTI的五步選舉原則決定的(instance other):
1.比較RID
2.比較到達根橋的RPC
3.比較指定橋BID(交換機優先級和MAC地址)
4.比較BPDU包發送方的PID(port id:端口優先級和索引號)
5.比較bgpd接收方的PID
CIST的計算(查看華為HDX)
一文教你弄明白STP stp和mstp是什么

文章插圖
經過比較配置消息后,在整個網絡中選擇一個優先級最高的交換設備作為CIST的樹根(總根) 。在每個MST域內MSTP通過計算生成IST(instance0);同時MSTP將每個MST域作為單臺交換設備對待,通過計算在MST域間生成CST 。CST和IST構成了整個交換設備網絡的CIST 。
MSTI的計算(查看華為HDX)
在MST域內,MSTP根據VLAN和生成樹實例的映射關系,針對不同的VLAN生成不同的生成
樹實例 。每棵生成樹獨立進行計算,計算過程與STP計算生成樹的過程類似,
在MSTI的五步選舉原則(instance other的端口選舉)
1.比較RID
2.比較到達根橋的RPC
3.比較BPDU包發送方的BID(交換機優先級和MAC地址)
4.比較BPDU包發送方的PID(port id:端口優先級和索引號)
分區 快速筆記 的第 3 頁
4.比較BPDU包發送方的PID(port id:端口優先級和索引號)
5.比較bgpd接收方的PID
MSTI的特點:
(1)每個MSTI獨立計算自己的生成樹,互不干擾 。
(2)每個MSTI的生成樹計算方法與STP基本相同 。
(3)每個MSTI的生成樹可以有不同的根,不同的拓撲 。
(4)每個MSTI在自己的生成樹內發送BPDU 。
(5)每個MSTI的拓撲通過命令配置決定 。
(6)每個端口在不同MSTI上的角色、狀態可以不同 。
在運行MSTP協議的網絡中,一個VLAN報文將沿著如下路徑進行轉發:
(1)在MST域內,沿著其對應的MSTI轉發 。
(2)在MST域間,沿著CST轉發 。
MSTP對拓撲變化的處理(查看華為HDX)
MSTP拓撲變化處理與RSTP拓撲變化處理過程類似,請參見RSTP技術細節中的RSTP拓撲變化處理 。
MSTP快速收斂機制(查看華為HDX)
MSTP支持普通方式和增強方式兩種P/A(Proposal/Agreement)機制:
1.普通方式
MSTP支持普通方式的P/A機制實現與RSTP支持的P/A機制實現相同,RSTP支持的P/A機制請見RSTP技術細節中的P/A機制 。
2.增強方式
如圖所示,在MSTP中,P/A機制工作過程如下:
(1)上游設備發送Proposal報文,請求進行快速遷移 。下游設備接收到后,把與上游設備相連的端口設置為根端口,并阻塞所有非邊緣端口 。
(2)上游設備繼續發送Agreement報文 。下游設備接收到后,根端口轉為Forwarding狀態 。
(3)下游設備回應Agreement報文 。上游設備接收到后,把與下游設備相連的端口設置為指定端口,指定端口進入Forwarding狀態 。
【一文教你弄明白STP stp和mstp是什么】(4)缺省情況下,華為數據通信設備使用增強的快速遷移機制 。如果華為數據通信設備和其他制造商的設備進行互通,而其他制造商的設備P/A機制使用普通的快速遷移機制,此時,可在華為數據通信設備上通過設置P/A機制為普通的快速遷移機制,從而實現華為數據通信設備和其他制造商的設備進行互通 。stp no-agreement-check:配置當前端口使用普通的快速遷移機制
,