天天看點

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

在二層網絡中,為了提高網絡的可靠性,會在交換機之間建立多條鍊路,但通過這種方式建立的鍊路有一個緻命問題,會生成環路。

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

在一個網絡中存在環路則會産生廣播風暴和MAC位址震蕩:

廣播風暴: 如果交換機從接收到了一個廣播幀,或者是一個目的MAC位址未知的單點傳播幀,則會将這個幀向除源端口之外的所有其他端口轉發。如果交換網絡中有環路,則這個幀會被無限轉發,此時便會形成廣播風暴。

如圖,SWA、SWB和SWC将收到資料包循環轉發在網絡中。

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

MAC位址表震蕩: 交換機是根據所接收到的資料幀的源位址和接收端口生成MAC位址表項的。如果網絡中存在環路,交換機經過轉發會從多個接口收到同一個資料幀,則交換機内的MAC表同一頻繁在多個接口切換。

如圖,SWB收到G0/0/3的廣播資料幀,則将對應MAC條目(00-05-06-07-08-AA G0/0/3)寫入MAC表,且将資料幀洪泛出去,經過SWA、SWC的轉發,從G0/0/2收到此資料幀,接收端口為G0/0/2,MAC位址00-05-06-07-08-AA對應接口會在G0/0/2、G0/0/3中不斷切換,也就是MAC位址表震蕩。

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

STP生成樹協定

STP生成樹協定就是通過阻塞端口來消除環路,并實作鍊路備份的目的。

如下圖所示,網絡中存在環路,STP協定使用通過算法,選擇将SWC的某個端口堵塞,使之無法進行資料傳輸,環路消除:

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

STP工作過程

名詞解釋:

  1. BPDU:為了計算生成樹,交換機之間需要交換相關的資訊和參數則将資訊封裝在BPDU中,包括橋ID、路徑開銷和端口ID等參數。
  2. 橋ID(BID):橋ID由16位的橋優先級和48位的MAC位址構成。橋優先級預設為32768,可人工設定(0-65535),MAC位址是唯一的。
  3. 接口ID(PID):運作STP交換機的每個端口都有一個端口ID,端口ID由端口優先級和端口号構成(0-240)。
  4. 指定端口:交換機向所連網段轉發配置BPDU的端口,一個網段隻能有一個指定端口,根橋的每個端口總是指定端口。
  5. 根端口:非根交換機去往根橋路徑最優的端口,在一個運作STP協定的交換機上最多有一個該端口。
  6. 預備端口:不是根端口也不是指定端口,會被阻塞的端口。

如圖所示:

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

圖中:

D:指定端口

A:預備端口

R:根端口

第一步,選舉根橋:

根橋的角色相當于“樹”的根,是核心部分。

① 每一台交換機啟動STP後,都認為自己是根橋,并在發送給其他交換機的BPDU中,宣告自己為根橋。此時BPDU中的根橋ID為各自裝置的網橋ID。

② 各交換機收到網絡中其他裝置發送來的BPDU後,會比較BPDU中的根橋ID和自己的 BID。

③ 交換機不斷互動BPDU,同時對BID進行比較,最終選舉一台BID最小的交換機作為根橋,其他的則為非根橋。

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

第二步,給非根橋交換機選舉根端口:

① 交換機各端口會收到BPDU封包,裡面包含路徑開銷、BID、PID等資訊

② 先比較路徑開銷,越小越優,優則為根端口

③ 若路徑開銷相同,比較上行交換機的BID(也就是發送BPDU交換機的BID),越小越優,優則為根端口

④ 若上行交換機的BID相同,則比較上行交換機的PID,越小越優,優則為根端口

若上行交換機的PID相同,則比較本地各端口的PID,越小越優,優則為根端口

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

第三步,給每個網段選舉指定端口:

① 交換機各端口會收到BPDU封包,裡面包含路徑開銷、BID、PID等資訊

② 先比較路徑開銷,越小越優,優則為指定端口

③ 若路徑開銷相等,則比較鍊路兩端交換機的BID,越小越優,優則為指定端口

④ 若鍊路兩端交換機的BID相等,則比較鍊路兩端端口PID,越小越優,優則為指定端口

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

第四步,阻塞預備端口:

① 交換機會阻塞那些非根端口,非指定端口,這些端口不能轉發由終端計算機産生并發送的幀。

② 阻塞端口後,STP生成樹形成。

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

STP實驗驗證

實驗拓撲如下:

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

(1)華為交換機預設開啟STP功能,交換機剛開啟STP協定時,預設自己為根橋,其各端口為指定端口,STP資訊如圖:

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

(2)交換機會向網絡中其他交換機宣告自己是根橋,發送BPDU。使用Wires hark抓包軟體,在LSW1接口Eth0/0/1上進行資料抓包,詳細資訊如圖:

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

(3)交換機LSW2上STP詳細資訊如圖:

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

(4)在交換機LSW2接口Eth0/0/1上抓包資料如下:

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?
「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

(5)交換機LSW3上STP詳細資訊如圖:

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

由圖可知,根據STP算法堵塞了LSW3的Eth0/0/2接口。

總結:

STP協定通過阻塞端口實作消除環路,在選舉端口角色時,主要依靠各交換機發送的BPDU。

另外精心整理了一些【STP協定–思維導圖/ 視訊分析/ 實驗配置】,來進一步鞏固你的基礎;

「幹貨」路由交換技術 _深入了解華為STP原理與配置-STP協定又是如何消除環路的?

如果大家想入手以上相關的學習資料,私信 “ 學習 ” 免費領取哦!

繼續閱讀