STP理論04-RSTP相對STP的改進

STP理論04-RSTP相對STP的改進

STP不足之處:
網絡拓撲收斂慢,影響了用戶通信質量。如果網絡中的拓撲結構頻繁變化,網絡也會隨之頻繁失去連通性,從而導致用戶通信頻繁中斷。

導致STP收斂慢的原因:
1)、STP沒有細緻區分端口狀態和端口角色,不利於初學者學習及部署,listening、learning和 Blocking 狀態並沒有區別,都同樣不轉發用戶流量;
2)、STP 算法是被動的算法,依賴定時器等待的方式判斷拓撲變化,收斂速度慢;
3)、在網絡穩定時,只有根橋發送BPDU報文。


RSTP 對 STP 的改進:

1、通過端口角色的增補,簡化了生成樹協議的理解及部署;RSTP 的端口角色共有 4 種:根端口、指定端口、 Alternate 端口和 Backup 端口;
1)、從配置 BPDU 報文發送角度來看:
a、Alternate 端口就是由於學習到其它網橋發送的配置 BPDU 報文而阻塞的端口;
b、Backup 端口就是由於學習到自己發送的配置 BPDU 報文而阻塞的端口。
2)、從用戶流量角度來看:
a、Alternate 端口提供了從指定橋到根的另一條可切換路徑,作爲根端口的備份端口;
b、Backup 端口作爲指定端口的備份,提供了另一條從根橋到相應網段的備份通路。

2、端口狀態的重新劃分:
RSTP 的狀態規範把原來的 5 種狀態縮減爲 3 種。根據端口是否轉發用戶流量和學習 MAC 地址來劃分:
1)、discarding:不轉發流量,不學習MAC地址;
2)、learning:不轉發流量,學習MAC地址;
3)、forwarding:轉發流量,學習MAC地址。

3、配置 BPDU 格式的改變,充分利用了 STP 協議報文中的 Flag 字段,明確了端口角色;
1)、Type 字段,配置 BPDU 類型不再是 0 而是 2,所以運行 STP 的設備收到 RSTP 的配置BPDU 時會丟棄;
2)、Flags 字段,使用了原來保留的中間 6 位,這樣改變的配置 BPDU 叫做 RST BPDU,具體RSTP Flags字段格式如下:
 Bit7:TCA
 Bit6:Agreement
 Bit5:Forwarding
 Bit4:Learning
 Bit3和Bit2:端口角色
 00:未知
 01:根端口
 10:Alternate / Backup
 11:指定端口
 Bit1:Proposal
 Bit0:TC

4、配置 BPDU 的處理髮生變化;
1)、發送BPDU:配置BPDU由根橋產生並且發送,非根橋在接收到根橋的配置BPDU後,纔出發發送;RSTP每個設備都會按規定時間發送配置BPDU;
2)、BPDU超時:STP要等待Max age超時,RSTP只等待3個Hello time時間;
3)、處理次優BPDU:當一個端口收到上游的指定橋發來的 RST BPDU 報文時,該端口會將自身存儲的 RST BPDU 與收到的 RST BPDU 進行比較。
如果該端口存儲的 RST BPDU 的優先級高於收到的 RST BPDU,那麼該端口會直接丟
棄收到的 RST BPDU,立即迴應自身存儲的 RST BPDU。當上遊設備收到下游設備迴應
的 RST BPDU 後,上游設備會根據收到的 RST BPDU 報文中相應的字段立即更新自己
存儲的 RST BPDU。
由此, RSTP 處理次等 BPDU 報文不再依賴於任何定時器通過超時解決拓撲收斂,從而
加快了拓撲收斂

5、快速收斂;
1)、Proposal/Agreement 機制:
在點到點以太網鏈路上,指定端口可以和對端通過握手協商的方式進行快速遷移。雙方設備必須滿足如下狀態機:
a. proposing. 指定端口處於discarding或learning狀態的時候,會設置該變量。向下遊交換機傳遞Proposal flag被置位的RST BPDU。
b. proposed. 當收到指定端口發來的proposal BPDU的時候,該變量設置。該變量指示本網段上的指定端口希望儘快的進入forwarding狀態。
c. sync. 當proposed被設置以後,收到proposal的根端口會依次爲自己的其他端口設置sync變量。將所有不是Edge port的指定端口轉爲discarding狀態。
d. synced. 當端口完成轉到discarding後, 會設置自己的synced。Alternate、Backup 和邊緣端口會馬上設置該變量。根端口監視其他端口的synced,當所有其他端口的synced全被設置,根端口會設置自己的synced,然後傳回RST BPDU,其中Agreement flag被設置。
e. agreed. 當指定端口接收到一個RST BPDU的時候,如果該BPDU中的agreement flag被置位且端口角色字段是“根端口”,該變量被設置。當agreed被設置的時候,指定端口馬上轉入forwarding狀態。
1.1)、觸發Proposal/Agreement 機制的條件:
a、 設備之間鏈路必須是點對點的全雙工模式,且端口類型爲指定端口;
b、 新接入的設備發送更優的RST BPDU。
1.2)、P/A機制協商過程:
a、剛開始交換機都認爲自己的端口爲指定端口,只不過指定端口的狀態是discarding。
b、進入discarding狀態後就開始發送proposal置位的RST BPDU。
c、比較自己與收到的RST BPDU,如果本端的優,就丟棄對端發送過來的RST BPDU,並且繼續發送本端的RST BPDU;如果對端的優,就停止發送RST BPDU,並進入下個步驟。
d、不優的交換機將自己所有接口阻塞(又稱同步)(除已經阻塞接口,邊緣端口)。
e、不優的交換機向優的一方發送agreement置位的RST BPDU,並將這個端口置於forwarding狀態,角色爲根端口。
f、RST BPDU優的一端收到agreement置位的RST BPDU後,就將這個端口置於forwarding狀態,角色爲指定端口。
1.3)、Proposal/Agreement 機制的目的是使一個指定端口儘快進入 Forwarding 狀態。
2)、根端口快速切換機制:如果網絡中一個根端口失效,那麼網絡中最優的 Alternate 端口將成爲根端口,進入Forwarding 狀態;
3)、邊緣端口的引入:邊緣端口不接收處理配置 BPDU,不參與 RSTP運算,可以由 Disable直接轉到 Forwarding狀態,一旦邊緣端口收到配置 BPDU,就喪失了邊緣端口屬性,成爲普通 STP 端口,並重新進行生成樹計算,從而引起網絡震盪。

6、保護功能;
1)、BPDU 保護:交換設備上啓動了 BPDU 保護功能後,如果邊緣端口收到RST BPDU,邊緣端口將被error-down,但是邊緣端口屬性不變,同時通知網管系統。
2)、根保護:對於啓用 Root 保護功能的指定端口,其端口角色只能保持爲指定端口。一旦啓用 Root 保護功能的指定端口收到優先級更高的 RST BPDU 時,端口狀態將進入 Discarding 狀態,不再轉發報文。在經過一段時間(通常爲兩倍的 Forward Delay),如果端口一直沒有再收到優先級較高的RST BPDU ,端口會自動恢復到正常的Forwarding 狀態。(Root 保護功能只能在指定端口上配置生效)
3)、環路保護:在啓動了環路保護 功能後,如果根端口 或Alternate 端口長時間收不到來自上游的 RST BPDU 時,則向網管發出通知信息(如果是根端口則進入 Discarding 狀態)。而阻塞端口則會一直保持在阻塞狀態,不轉發報文,從而不會在網絡中形成環路。直到根端口或 Alternate 端口收到 RST BPDU ,端口狀態才恢復正常到Forwarding 狀態。(環路保護功能只能在根端口或 Alternate 端口上配置生效)
4)、防TC-BPDU***:啓用防 TC-BPDU 報文***功能後,在單位時間內,交換設備處理 TC BPDU 報文的次數可配置。如果在單位時間內,交換設備在收到 TC BPDU報文數量大於配置的閾值,那麼設備只會處理閾值指定的次數。對於其他超出閾值的 TCN BPDU
報文,定時器到期後設備只對其統一處理一次。這樣可以避免頻繁的刪除 MAC 地址表項和ARP 表項,從而達到保護設備的目的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章