生成樹協議——STP 詳解(day 5)

STP 生成樹協議

分享今日:

參考博客鏈接:

RSTP協議

STP 協議

MSTP


思維導圖

1. 環路問題

1.1 廣播風暴

產生原因:根據交換機的轉發原則,如果交換機從一個端口上接收到的是一個廣播幀,或者是一個目的MAC地址未知的單播幀,則會將這個幀向除源端口之外的所有其他端口轉發。如果交換網絡中有環路,則這個幀會被無限轉發,此時便會形成廣播風暴,網絡中也會充斥着重複的數據幀。

本例中,主機A向外發送了一個單播幀,假設此單播幀的目的MAC地址在網絡中所有交換機的MAC地址表中都暫時不存在。SWB接收到此幀後,將其轉發到SWA和SWC,SWA和SWC也會將此幀轉發到除了接收此幀的其他所有端口,結果此幀又會被再次轉發給SWB,這種循環會一直持續,於是便產生了廣播風暴。交換機性能會因此急速下降,並會導致業務中斷。

1.2 MAC地址表翻轉

產生原因:交換機是根據所接收到的數據幀的源地址和接收端口生成MAC地址表項的。

  • 主機A向外發送一個單播幀,假設此單播幀的目的MAC地址在網絡中所有交換機的MAC地址表中都暫時不存在。SWB收到此數據幀之後,在MAC地址表中生成一個MAC地址表項,00-05-06-07-08-AA,對應端口爲G0/0/3,並將其從G0/0/1和G0/0/2端口轉發。此例僅以SWB從G0/0/1端口轉發此幀爲例進行說明。
  • SWA接收到此幀後,由於MAC地址表中沒有對應此幀目的MAC地址的表項,所以SWA會將此幀從G0/0/2轉發出去。
  • SWC接收到此幀後,由於MAC地址表中也沒有對應此幀目的MAC地址的表項,所以SWC會將此幀從G0/0/2端口發送回SWB,也會發給主機B。
  • SWB從G0/0/2接口接收到此數據幀之後,會在MAC地址表中刪除原有的相關表項,生成一個新的表項,,00-05-06-07-08-AA,對應端口爲G0/0/2。此過程會不斷重複,從而導致MAC地址表震盪。

1.3 多幀複製

PC2向PC1發送一個單播幀Y,假設S2的MAC地址表中不存在關於PC1的MAC地址表項,所以S2會對Y幀進行泛洪。假設S1的MAC地址表項中存在“PC1的MAC地址<——>port 3” ,S3的MAC地址表項中存在“PC1的MAC地址<——>port 1” ,顯然,S1,S3都會對Y幀進行點對點轉發操作。最後的結果是PC1 會收到兩份Y幀的拷貝。

 

2. STP 作用

STP通過阻塞端口來消除環路,並能夠實現鏈路備份的目的。

2.1 作用

消除環路:通過阻斷冗餘鏈路來消除網絡中可能存在的環路。

鏈路備份:當活動路徑發生故障時,激活備份鏈路,及時恢復網絡連通性。

2.2 基本術語

2.2.1 橋(Bridge)

橋和交換機這兩個術語是互用的。

2.2.2 橋MAC地址

一個橋有多個轉發端口,一個端口有一個MAC地址。通常把編號最小的那個端口MAC地址作爲橋的MAC地址。

2.2.3 橋 ID(BID)

  • 一個橋的橋ID由兩部分組成,2字節的橋優先級和6字節的橋MAC地址。

  • 橋優先級可以人爲指定,缺省值爲0x8000(相當於32768)。

2.2.4 端口 ID(PID)

端口ID有兩種定義方式,不同廠家採用的 PID 定義方式不同,同樣端口優先級也是可以人爲指定的,缺省情況下,端口優先級是128。。

  1. PID 由兩字節組成,第一個字節表示端口優先級,後一個字節是端口編號;
  2. PID 由16bits組成,前4bit表示端口優先級,後12bit表示端口編號;

 

3. STP 樹的生成

STP通過構造一棵樹來消除交換網絡中的環路。

  • 每個STP網絡中,都會存在一個根橋,其他交換機爲非根橋。根橋或者根交換機位於整個邏輯樹的根部,是STP網絡的邏輯中心,非根橋是根橋的下游設備。當現有根橋產生故障時,非根橋之間會交互信息並重新選舉根橋,交互的這種信息被稱爲BPDU。BPDU中包含交換機在參加生成樹計算時的各種參數信息;
  • STP中定義了三種端口角色:指定端口,根端口和預備端口
  • 指定端口是交換機向所連網段轉發配置BPDU的端口,每個網段有且只能有一個指定端口。一般情況下,根橋的每個端口總是指定端口。
  • 根端口是非根交換機去往根橋路徑最優的端口。在一個運行STP協議的交換機上最多隻有一個根端口,但根橋上沒有根端口
  • 如果一個端口既不是指定端口也不是根端口,則此端口爲預備端口預備端口將被阻塞

STP樹生成過程:

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

3.1 選舉根橋

選取原則:橋優先級是可以配置的,取值範圍是0~65535,默認值爲32768。優先級最高的設備(數值越小越優先)會被選舉爲根橋。如果優先級相同,則會比較MAC地址,MAC地址越小則越優先

交換機啓動後就自動開始進行生成樹收斂計算。**默認情況下,所有交換機啓動時都認爲自己是根橋,自己的所有端口都爲指定端口,這樣BPDU報文就可以通過所有端口轉發。**對端交換機收到BPDU報文後,會比較BPDU中的根橋ID和自己的橋ID。如果收到的BPDU報文中的橋ID優先級低,接收交換機會繼續通告自己的配置BPDU報文給鄰居交換機。如果收到的BPDU報文中的橋ID優先級高,則交換機會修改自己的BPDU報文的根橋ID字段,宣告新的根橋。

3.2 確定根端口

  • 根橋確定後,其他沒有稱爲根橋的交換機都被稱爲非根橋。

  • 非根交換機在選舉根端口時分別依據該端口的根路徑開銷、對端BID(Bridge ID)、對端PID(Port ID)和本端PID

  • 每個非根橋都要選舉一個根端口。根端口是距離根橋最近的端口,這個最近的衡量標準是靠路徑開銷來判定的,即路徑開銷最小的端口就是根端口。

  • 根端口是根橋與非根橋之間進行報文交互的端口。一臺非根橋設備上只有一個根端口。

根路徑開銷: 交換機的某個端口到根橋的累計路徑開銷(即從該端口到根橋所經過的所有鏈路的路徑開銷的和)稱爲這個端口的根路徑開銷(Root Path Cost,RPC)

思科路徑開銷:

Link Speed Cost (New IEEE Specification) Cost (Old IEEE Specification)
10 Gb/s 2 1
1 Gb/s 4 1
100 Mb/s 19 10
10 Mb/s 100 100

華爲路徑開銷:

端口速率 路徑開銷(IEEE 802.1t標準)
10 Mbit/s 2 000 000
100 Mbit/s 200 000
1 Gbit/s 20 000
10 Gbit/s 2 000

3.2.1思科選取根端口優先順序:

  1. 選擇最低的BID;
  2. 選擇最低的路徑開銷(一定是到跟橋的路徑);
  3. 選擇最低發送者的BID;
  4. 選擇最低端口優先級;
  5. 選擇最低端口的ID;、

3.2.2 華爲選取根端口優先順序:

  1. 端口收到一個BPDU報文後,抽取該BPDU報文中根路徑開銷字段的值,加上該端口本身的端口開銷即爲本端口路徑開銷。如果有兩個或兩個以上的端口計算得到的累計路徑開銷相同,那麼選擇收到發送者BID最小的那個端口作爲根端口。
  1. 如果兩個或兩個以上的端口連接到同一臺交換機上,則選擇發送者PID最小的那個端口作爲根端口。如果兩個或兩個以上的端口通過Hub連接到同一臺交換機的同一個接口上,則選擇本交換機的這些端口中的PID最小的作爲根端口。

3.3 確定指定端口

每個網段都應該有一個指定端口,根橋的所有端口都是指定端口(除非根橋在物理上存在環路)。

3.3.1 思科設備指定端口比較

  1. 最低的根橋ID
  2. 最低的根路徑代價
  3. 最低發送者橋ID
  4. 最低端口ID

3.3.2 華爲設備指定端口比較

  1. 根路徑開銷
  2. 端口所在交換機橋ID(BID)
  3. 端口ID(PID)

指定端口的選舉也是首先比較累計路徑開銷,累計路徑開銷最小的端口就是指定端口。如果累計路徑開銷相同,則比較端口所在交換機的橋ID,所在橋ID最小的端口被選舉爲指定端口。如果通過累計路徑開銷和所在橋ID選舉不出來,則比較端口ID,端口ID最小的被選舉爲指定端口。

3.4 阻塞備用端口

未被選舉爲根端口或指定端口的端口爲預備端口,將會被阻塞。

網絡收斂後,只有指定端口和根端口可以轉發數據。其他端口爲預備端口,被阻塞,不能轉發由終端計算機產生併發送的數據幀,但是可以接受並處理STP協議幀。只能夠從所連網段的指定交換機接收到BPDU報文,並以此來監視鏈路的狀態。

 

4. STP 報文格式

  • STP通過交換STP協議幀來建立和維護STP樹,在網絡拓撲發生變化的時候重建新的STP樹

  • STP協議幀是組播幀,組播地址爲01-80-c2-00-00-00

  • STP協議幀有采用IEEE802.3封裝,有兩種格式:Configuration BPDU和TCN BPDU

4.1 Configuration BPDU

初始STP樹的過程中,各STP交換機都會週期性(2s)主動發送Configuration BPDU。

在STP 穩定後只有根橋週期性發送Configuration BPDU;非根橋會在根端口收到根橋發來的Configuration BPDU,並觸發產生自己的Configuration BPDU,且從指定端口發出。(根端口接收,指定端口發出

4.1.1 BPDU報文格式:

 

BPDU攜帶的參數可以分爲三類:

  1. 第一類BPDU自身標識,包括協議標識、版本號、、BPDU類型和flags;
  2. 第二類是用於STP計算的參數,包括交換機BID,點前根橋BID,發送BPDU的PID和RPC;
  3. 第三類是時間參數;
字段 字節數 說明
protocol identifier 2 總是 0x0000
protocol version identifier 1 總是 0x00
BPDU type 1 0x00:Configuration BPDU 0x80:TCN BPDU
Flags 1 網絡拓撲變化標誌:僅使用了最高(TCA)最低(TC)
根橋ID 8 由根橋的優先級和MAC地址組成,每個STP網絡中有且僅有一個根橋
根路徑開銷 4 到根橋的最短路徑開銷
指定橋ID 8 由指定橋的優先級和MAC地址組成
指定端口ID 2 由指定端口的優先級和端口號組成
Message Age 2 配置BPDU在網絡中傳播的生存期(每經過一個橋,-1)
Max Age 2 配置BPDU在設備中能夠保存的最大生存期(缺省20s)
Hello Time 2 配置BPDU發送的週期(2s)
Forward Delay 2 端口狀態遷移的延時(缺省15s)。控制端口Listening和Learning狀態持續時間,缺省15s

4.1.2 STP 計時器

  • Hello Time是指運行STP協議的設備發送配置BPDU的時間間隔,用於檢測鏈路是否存在故障。交換機每隔Hello Time時間會向周圍的交換機發送配置BPDU報文,以確認鏈路是否存在故障。當網絡拓撲穩定後,該值只有在根橋上修改纔有效
  • Message Age是從根橋發送到當前交換機接收到BPDU的總時間,包括傳輸延時等。如果配置BPDU是根橋發出的,則Message Age爲0。實際實現中,配置BPDU報文每經過一個交換機,Message Age增加1
  • Forward Delay是指端口狀態遷移時間。STP生成樹需要一定的時間,如果選出來的根端口或者指定端口馬上進入轉發狀態的話,可能就會總成臨時工作環路。forward delay機制:新選出來的根端口和指定端口需要經過兩倍的forward delay時間延時後纔可以進入用戶數據幀的轉發狀態,保證此時工作拓撲已無環路。
  • Max Age是指BPDU報文的老化時間,可在根橋上通過命令人爲改動這個值。Max Age通過配置BPDU報文的傳遞,可以保證Max Age在整網中一致。非根橋設備收到配置BPDU報文後,會將報文中的Message Age和Max Age進行比較:如果Message Age小於等於Max Age,則該非根橋設備會繼續轉發配置BPDU報文。如果Message Age大於Max Age,則該配置BPDU報文將被老化掉。該非根橋設備將直接丟棄該配置BPDU,並認爲是網絡直徑過大,導致了根橋連接失敗。

4.2 TCN BPDU

TCN BPDU是指下游交換機感知到拓撲發生變化時向上遊發送的拓撲變化通知。

TCN BPDU 只有三個字段:協議標識,協議版本號和類型。

 

TCN BPDU工作流程:

如果網絡中某條鏈路發生故障,導致拓撲發上變化,位於故障點的交換機可以感知到變化,但是其他交換機無法感知。

  1. 位於故障點的交換機會以Hello Time爲週期通過根端口不斷向上遊交換機發送TCN BPDU,直到從上游交換機收到TCA 標誌置1的configuration BPDU;
  2. 上游交換機收到TCN BPDU後,一方面通過指定端口回覆下游交換機TCA置1的configuration BPDU,一方面以hello time爲週期向上遊交換機發送TCN BPDU;
  3. 根橋收到TCN BPDU後,發送TC 置1 的configuration BPDU通告所有交換機網絡拓撲發生變化;
  4. 交換機收到TC標誌置1的configuration BPDU,便意識到網絡拓撲已經發生變化,說明自己MAC地址表項可能已經不正確。此時交換機會將MAC地址表的老化週期(缺省300s)置縮短爲Forward relay時間長度(缺省15s)。

 

5. STP 端口狀態

5.1 端口狀態

STP定義了五種端口狀態:去能狀態、阻塞狀態、偵聽狀態、學習狀態和轉發狀態。

端口狀態 說明
去能(Disabled) 無法接受發送任何幀,端口處於關閉狀態(Down)
阻塞(Blocking) 可以接受並分析STP協議幀,但是不能發送STP協議幀,也不能轉發用戶數據幀
偵聽(Listening) 可以接受併發送STP協議幀,但是不能學習MAC地址,也不能轉發用戶數據幀
學習(Learning) 可以接受併發送STP協議幀,可以學習MAC地址,也不能轉發用戶數據幀
轉發(Forwarding) 可以接受併發送STP協議幀,可以學習MAC地址,同時也能轉發用戶數據幀

5.2端口狀態遷移

  1. 端口初始化或使能;
  2. 端口被選爲根端口或指定端口。
  3. 端口不再是根端口或指定端口。
  4. forward delay計時器超時。
  5. 端口禁用或鏈路失效。
  • STP在啓動的時候,端口狀態由Disabled轉爲Blocking,此時端口指定接收分析BPDU,不能發送;

  • 如果Blocking狀態端口被選爲根端口或者指定端口,會進入Listening狀態,此時端口接收併發送BPDU,這種狀態會持續一個Forward Delay時間(缺省15s)

  • 沒有意外情況回到Blocking,端口會進入Learning狀態,並持續一個Forward Delay時間(缺省15s),此時端口可以收發BPDU,同時構建MAC地址表,爲轉發用戶數據幀做準備;

  • 沒有意外,端口進入Forwarding狀態,開始用戶數據幀轉發工作;

  • 狀態遷移過程中,一旦端口被關閉或者出現鏈路故障,進入去能狀態

  • 狀態遷移過程中,一旦端口不再是根端口或者指定端口,進入阻塞狀態

5.3 端口狀態轉換舉例

  1. 假設交換機S1,S2,S3同一時間啓動。各個交換機從Disabled進入Blocking狀態。由於處於Blocking狀態只能接受分析BPDU,不能發送,所以任何端口都收不到BPDU。等待MAX Age(缺省20s)時間後,每臺交換機都會認爲自己是根橋,每個端口都是指定端口,端口狀態遷移爲Listening;
  2. 交換機進入learning狀態後就會開始發送自己的Configuration BPDU,同時也會受到其他交換機發送的Configuration BPDU。
    • 假設S2先發送Configuration BPDU,S3從自己的G 0/0/2端口收到後,發現S2 的BID逼自己的小,於是認爲S2是根橋,將G0/0/2設置爲根端口,然後將自己重新產生的根橋設置爲S2的Configuration BPDU從G0/0/1端口發給S1;
    • S1收到S3發來的BPDU後,發現自己的BID是最小的,認爲自己就是根橋。於是向S3發送Configuration BPDU,同樣的也會在G0/0/2 端口受到S2 的Configuration BPDU,也會從G0/0/2端口發送自己的BPDU給S2;
    • 端口在listening狀態下持續15s,進入learning。此時S3的G0/0/2接口已經被阻塞。
  3. 各個端口相繼進入Learning,持續Forward time(15s)後進入。在這段時間內構建MAC地址轉發表,爲用戶數據幀轉發做準備;
  4. 各端口進入Forwarding狀態,開始轉發用戶數據幀。

 

6. STP 故障問題

6.1 根橋故障

  • 在穩定的STP拓撲裏,非根橋會定期收到來自根橋的BPDU報文。
  • 如果根橋發生了故障,停止發送BPDU報文,下游交換機就無法收到來自根橋的BPDU報文。
  • 如果下游交換機一直收不到BPDU報文,Max Age定時器就會超時(Max Age的默認值爲20秒),從而導致已經收到的BPDU報文失效,此時,非根交換機會互相發送配置BPDU報文,重新選舉新的根橋。根橋故障會導致50秒左右的恢復時間,恢復時間約等於Max Age加上兩倍的Forward Delay收斂時間。(max age + 2*Forwarding relay)

6.2直連鏈路故障

  • SWB檢測到直連鏈路物理故障後,會將預備端口轉換爲根端口;
  • SWB新的根端口會在30 秒後恢復到轉發狀態。

此例中,SWA和SWB使用了兩條鏈路互連,其中一條是主用鏈路,另外一條是備份鏈路。生成樹正常收斂之後,如果SWB檢測到根端口的鏈路發生物理故障,則其Alternate端口會遷移到Listening、Learning、Forwarding狀態,經過兩倍的Forward Delay後恢復到轉發狀態。

6.3 非直連鏈路故障

非直連鏈路故障後,由於需要等待Max Age加上兩倍的Forward Delay時間,端口需要大約50秒才能恢復到轉發狀態。

本例中,SWB與SWA之間的鏈路發生了某種故障(非物理層故障),SWB因此一直收不到來自SWA的BPDU報文。

  1. 等待Max Age定時器超時後,SWB會認爲根橋SWA不再有效,並認爲自己是根橋,於是開始發送自己的BPDU報文給SWC,通知SWC自己作爲新的根橋。
  2. 在此期間,由於SWC的Alternate端口再也不能收到包含原根橋ID的BPDU報文。其Max Age定時器超時後,SWC會切換Alternate端口爲指定端口並且轉發來自其根端口的BPDU報文給SWB。
  3. 所以,Max Age定時器超時後,SWB、SWC幾乎同時會收到對方發來的BPDU。經過STP重新計算後,SWB放棄宣稱自己是根橋並重新確定端口角色。
  4. 非直連鏈路故障後,SWC的預備端口恢復到轉發狀態大約需要50秒。

6.4 拓撲改變導致MAC地址表錯誤

在交換網絡中,交換機依賴MAC地址錶轉發數據幀。缺省情況下,MAC地址表項的老化時間是300秒。如果生成樹拓撲發生變化,交換機轉發數據的路徑也會隨着發生改變,此時MAC地址表中未及時老化掉的表項會導致數據轉發錯誤,因此在拓撲發生變化後需要及時更新MAC地址表項。

本例中,SWB中的MAC地址表項定義了通過端口GigabitEthernet 0/0/3可以到達主機A,通過端口GigabitEthernet 0/0/1可以到達主機B。由於SWC的根端口產生故障,導致生成樹拓撲重新收斂,在生成樹拓撲完成收斂之後,從主機A到主機B的幀仍然不能到達目的地。這是因爲MAC地址表項老化時間是300秒,主機A發往主機B的幀到達SWB後,SWB會繼續通過端口GigabitEthernet 0/0/1轉發該數據幀。

6.5 拓撲改變導致MAC地址表變化

拓撲變化過程中,根橋通過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秒修改爲Forward Delay的時間(默認爲15秒)。**☆
    最多等待15秒之後,SWB中的錯誤MAC地址表項會被自動清除。此後,SWB就能重新開始MAC表項的學習及轉發操作。

 

7. RSTP(STP 優化)

7.1 STP缺陷

STP生成樹收斂需要依賴定時器計時,端口狀態從Blocking到Forwarding至少需要兩個forward relay的時間長度,收斂時間太長,一般都需要幾十秒。IEEE 802.1w定義了RSTP(Rapid Spanning Tree Protocol)彌補了STP收斂時間慢的缺陷。

7.2 RSTP

7.2.1 RSTP端口角色

角色 描述
Backup Backup端口作爲指定端口的備份,提供了另外一條從根橋到非根橋的備份鏈路。
Alternate Alternate端口作爲根端口的備份端口,提供了從指定橋到根橋的另一條備份路徑。

7.2.2 三種端口狀態

RSTP中定義了三種端口狀態:Discarding、Learning、Forwarding。

RSTP 端口狀態 對應STP端口狀態 說明
Forwarding Forwarding 可以轉發用戶數據幀,可以學習MAC地址
Learning Learning 不可以轉發用戶數據幀,但是可以學習MAC地址
Discarding Listening、Blocking、Disabled 不可以轉發用戶數據幀,不可以學習MAC地址

7.2.3 P/A機制

在RSTP中,一個端口被指定成爲指定端口後,此端口會先進入discarding,然後通過**P/A(Proposal/Agreement)**機制主動與對端端口協商,通過協商後,就可以立即進入Forwarding狀態。

7.2.4 邊緣端口

  • RSTP裏,位於網絡邊緣的指定端口被稱爲邊緣端口。
  • 邊緣端口一般與用戶終端設備直接連接,不與任何交換設備連接。邊緣端口不接收配置BPDU報文,不參與RSTP運算,可以由Disabled狀態直接轉到Forwarding狀態,且不經歷時延,就像在端口上將STP禁用了一樣。但是,一旦邊緣端口收到配置BPDU報文,就喪失了邊緣端口屬性,成爲普通STP端口,並重新進行生成樹計算,從而引起網絡震盪。

7.2.5 RSTP收斂過程

RSTP BPDU:RSTP對此進行了改進,即在拓撲穩定後,無論非根橋設備是否接收到根橋傳來的配置BPDU報文,非根橋設備都會仍然按照Hello Timer規定的時間間隔發送配置BPDU,該行爲完全由每臺設備自主進行。

  1. 每一臺交換機啓動RSTP後,都認爲自己是“根橋”,並且發送RST BPDU。所有端口都爲指定端口,處於Discarding狀態
  2. 交換機互相發送Proposal置位的RST BPDU。每個認爲自己是“根橋”的交換機生成一個RST BPDU報文來協商指定網段的端口狀態,此RST BPDU報文的Flags字段裏面的Proposal位需要置位。當一個端口收到RST BPDU報文時,此端口會比較收到的RST BPDU報文和本地的RST BPDU報文。如果本地的RST BPDU報文優於接收的RST BPDU報文,則端口會丟棄接收的RST BPDU報文,併發送Proposal置位的本地RST BPDU報文來回復對端設備。
  3. 交換機使用同步機制來實現端口角色協商管理。當收到Proposal置位並且優先級高的BPDU報文時,接收交換機必須設置所有下游指定端口爲Discarding狀態。如果下游端口是Alternate端口或者邊緣端口,則端口狀態保持不變
  4. 當確認下游指定端口遷移到Discarding狀態後,設備發送RST BPDU報文回覆上游交換機發送的Proposal消息。在此過程中,端口已經確認爲根端口,因此RST BPDU報文Flags字段裏面設置了Agreement標記位和根端口角色。
  5. 在P/A進程的最後階段,上游交換機收到Agreement置位的RST BPDU報文後,指定端口立即從Discarding狀態遷移爲Forwarding狀態。然後,下游網段開始使用同樣的P/A進程協商端口角色。

7.2.6 鏈路故障/根橋失效

  • 在STP中,當出現鏈路故障或根橋失效導致交換機收不到BPDU時,交換機需要等待Max Age時間後才能確認出現了故障。
    g狀態。如果下游端口是Alternate端口或者邊緣端口,則端口狀態保持不變
  1. 當確認下游指定端口遷移到Discarding狀態後,設備發送RST BPDU報文回覆上游交換機發送的Proposal消息。在此過程中,端口已經確認爲根端口,因此RST BPDU報文Flags字段裏面設置了Agreement標記位和根端口角色。
  2. 在P/A進程的最後階段,上游交換機收到Agreement置位的RST BPDU報文後,指定端口立即從Discarding狀態遷移爲Forwarding狀態。然後,下游網段開始使用同樣的P/A進程協商端口角色。

7.2.6 鏈路故障/根橋失效

  • 在STP中,當出現鏈路故障或根橋失效導致交換機收不到BPDU時,交換機需要等待Max Age時間後才能確認出現了故障。
  • 而在RSTP中,如果交換機的端口在連續3次Hello Timer規定的時間間隔內沒有收到上游交換機發送的RST BPDU,便會確認本端口和對端端口的通信失敗,從而需要重新進行RSTP的計算來確定交換機及端口角色。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章