天天看點

網絡初級篇之STP(BPDU詳解與STP故障恢複)

一、BPDU包含的參數

 

網絡初級篇之STP(BPDU詳解與STP故障恢複)

  通過STP的原理,我們學習了紅色部分的字段(根橋ID、根路徑開銷、橋ID、端口ID)。現在講解一下黃色部分的字段(類型、計時器、老化時間、通路時間)

1、(BPDU Type)BPDU類型

  BPDU封包共有兩種類型:配置BPDU與TCN BPDU。一般情況下,配置BPDU是根橋發送給各個橋的封包;而TCN BPDU是當網絡拓撲中的橋發現網絡拓撲發生變化時,向根橋發送的封包。

2、計時器

  BPDU封包在網絡中的生存周期(配置BPDU封包每經過一台橋裝置,封包老化時間+1)

3、最大老化時間

  BPDU封包在網絡中最大的老化時間(當封包老化時間大于最大老化時間時,BPDU封包将被丢棄。橋裝置将根橋看做不可用前保留根ID的最大時間。最大老化時間可修改,預設為20秒)

4、通路時間

  根橋經過特定的時間向其他橋裝置發送BPDU封包,為STP生成樹包活,這一特定的時間就是通路時間(每間隔2秒一次)

5、轉發延時

  端口狀态改變時所需要的時間(30秒)

二、常碰到的問題

1、根橋故障時

  

網絡初級篇之STP(BPDU詳解與STP故障恢複)

     當根橋發生故障時,不會再向其他橋裝置發出配置BPDU封包。當非根橋沒有收到根橋發出的配置BPDU封包後,會等待一個最大老化時間(預設時間20秒)。當到達最大老化時間後,非根橋會認為根橋網絡不可達(根橋故障),使原本阻塞的端口會由阻塞狀态(阻塞狀态隻接收對端發送的配置BPDU封包,不能發送BPDU;不能參與資料的轉發)變為監聽狀态(監聽狀态是選舉根與各個端口類型的狀态,此時依舊不能參與資料的轉發),此變化過程需要15秒的時間。之後,端口狀态由監聽狀态變為學習狀态(此過程需要15s的時間)。處于學習狀态的端口可以學習接收到的資料中的MAC位址,此時依舊不能轉發資料。再次經過15秒後,端口狀态由學習狀态變化為轉發狀态,此時,端口恢複資料的轉發。

  從上面可以看出:在STP中,當根橋出現故障時,會自動重新選舉新的根橋與各個端口(根端口、指定端口、阻塞端口)。經過(20秒+15秒*2=50秒)的時間才會恢複資料的轉發。

2、直連鍊路發送故障

  

網絡初級篇之STP(BPDU詳解與STP故障恢複)

   當上圖的鍊路發生故障時,由于另外一條鍊路仍然可以收到根橋發出的配置BPDU封包,所有LSW2會立刻知道鍊路發生問題。原本的阻塞端口會變成監聽狀态,在變為學習狀态,最後變為轉發狀态,整個過程會用2*15秒=30秒的時間。

  從上面可以看出:在STP中,當直連鍊路發生故障時,需要經過30秒的時間才會恢複網絡資料的轉發。

3、非直連鍊路發生故障

  

網絡初級篇之STP(BPDU詳解與STP故障恢複)

  當上圖鍊路發生故障時,LSW2會感覺到鍊路發生故障,會以自己為根橋給LSW3發送配置BPDU封包。當LSW3收到LSW2的配置BPDU封包後,與收到根橋(LSW1)的配置BPDU封包進行對比,對比發現LSW2發送的配置BPDU封包不是最優的,便不理會。當LSW3經過一個最大老化時間(預設20秒)後,LSW3上的阻塞端口由于收不到來自根橋的配置BPDU,便由阻塞狀态轉換為轉發狀态,将根橋的配置BPDU封包發送給LSW2。當LSW2收到根橋的配置BPDU封包後,與自己的配置BPDU封包進行對比。發現不是最優配置BPDU封包,然後進行端口收斂。整個過程會持續(20秒+2*15秒=50秒)的時間。

  從上面可以看出:在STP中,當非直連鍊路發生故障時,需要經過50秒的時間才會恢複資料的轉發。

三、TCN TC TCA 與MAC位址表

  MAC位址表的預設老化時間為300秒,當網絡拓撲發生變化,橋裝置的端口可能發生變化,相應的MAC位址表可能會發生錯誤(MAC位址表中記錄MAC位址與端口對應錯誤)。

繼續閱讀