天天看點

STP生成樹協定的介紹

1. 前言

(1)備援功能:在第二層資料鍊路層的備援功能是通過添加裝置和電纜來實作備用網絡路徑,提升網絡可用性。就是有多條網絡路徑可用于資料傳輸時,即使一條路徑生效,也不會影響網絡裝置通信。就好比”條條大路通羅馬“,一條路不能走,那就走另外一條路,怎麼樣都能到達目的地。

(2)産生問題:

【1】廣播風暴:當卷入第 2 層環路的廣播幀(該幀會讓網絡上所有裝置都接收并響應)過多,導緻所有可用帶寬都被耗盡時,便形成了廣播風暴。此時沒有帶寬可供正常流量使用,網絡無法支援資料通信。環路網絡中不可避免的會産生廣播風暴。随着越來越多的裝置向網絡中發送廣播,卷入環路的流量也越來越多,最終形成廣播風暴,導緻網絡中斷。

【2】重複的單點傳播幀:廣播幀并不是會受環路影響的唯一一種幀。發送到環路網絡的單點傳播幀也可能造成目的裝置收到重複的幀。

【3】MAC位址震蕩:環路的産生會使裝置的MAC位址的表項無休止的,快速的變化,這就是翻擺現象,MAC位址表會消耗大量的資源來處理維護MAC位址表,這可能使交換機癱瘓。

2. STP的産生

(1)定義:為了得到環路帶來的好處(提高網絡連接配接的可靠性),同時又要避免因為環路而産生的災難性問題(廣播風暴,重複的單點傳播幀,MAC位址震蕩),IEEE 802.1D定義了STP(Spanning Tree Protocol)協定,為了解決網絡環路問題。

(2)基本術語:

【1】橋(Bride):就是交換機。

【2】橋的MAC位址(Bridge MAC Address):橋的每個端口都有一個MAC位址,我們把端口編号最小的那個端口作為MAC位址,即有GE0/0/1到GE0/0/10,取GE0/0/1這個端口MAC位址作為橋的MAC位址。

【3】橋ID(Bridge Identifier,BID):由橋優先級+MAC位址組成。橋優先級的值可以人為設定,預設值位0x8000(十進制:32768),先判斷橋優先級(2位元組)再判斷MAC位址(6位元組),均是越小越優先。

【4】端口ID(Port Identifier,PID):由端口優先級+端口編号組成,端口優先級可以人為設定,不同的裝置商所采用的PID定義可能不同;均是越小越優先。判斷端口編号,在端口優先級一緻的前提下,端口編号越小越優先,就是GE0/0/1到GE0/0/10,GE0/0/1優先。

(3)STP的生成:

在一個具有實體環路(有環)的交換網絡中,交換機通過運作STP協定,自動生成一個沒有環路(無環)的工作拓撲,該無環的拓撲稱為STP樹,STP樹包含唯一的根節點,任何一個節點到根節點的工作路徑不但是唯一的,而且最優的。STP會根據網絡拓撲的變化而變化。即有環的實體拓撲可以提高網絡連接配接的可靠性,無環的工作拓撲則可以避免因環路産生的問題。

STP樹的生成過程:1.選舉根橋(RB),2.确定根端口(RP)和指定端口(DP),3.确定阻塞備用端口(AP)。

【1】選舉根橋(比較BID):根橋使ST拍的根節點,是整個交換網絡的邏輯中心,不一定是它的實體中心;運作STP協定的交換機(簡稱STP交換機)會互相交換STP協定幀,這些協定的載荷資料稱為BPDU(網橋協定資料單元),BPDU包含與STP協定相關的所有資訊。

STP交換機初始啟動之後,都會認為自己是根橋,向網絡廣播發送BPDU宣告自己是根橋,當交換機收到其他交換機發送的BPDU會識别其中的BID,比較BPDU中指定的根橋BID和自己BID的大小,在這種過程會不斷的互動BPDU,直到确定BID最小的交換機作為根橋。

根橋隻判斷BID,因為有橋MAC位址的緣故,是以BID具有唯一性。

STP生成樹協定的介紹

【2】确定根端口(RP)和指定端口(DP)

根端口(RP):根橋确定之後,其他沒有成為根橋的交換機都是為非根橋。一台非根橋裝置可能有多個端口相連,為了保證從某台非根橋裝置到根橋裝置的工作路徑是最優且唯一的。就必須從該非根橋裝置的端口中确定出一個稱為”根端口“的端口,非根橋裝置有且隻有一個根端口。

根端口的選舉:1.RPC(根路徑開銷)比較,2.比較上行裝置的BID,3.比較上行裝置的PID。均是越小越優先。示例:

STP生成樹協定的介紹

首先連接配接的線類型一緻,則RPC相同,LSW2是根橋,對于LSW3會先比較上行裝置的BID,則比較LSW1和LSW4的BID,若LSW1的BID小,則LSW3的Ethernet0/0/4 為根端口,分之同理;對于LSW5比較的對象是同一個交換機LSW3,則要比較上行裝置的PID(即LSW3的Ethernet0/0/1和Ethernet0/0/2),若LSW3的Ethernet0/0/1 PID小,則LSW5的Ethernet0/0/1為根端口,反之同理。非根橋直連根橋的端口都是根端口。

STP生成樹協定的介紹

指定端口(DP):根端口保證了交換機與根橋之間工作路徑的唯一性和最優性,為了防止工作環路的存在,網絡中每個網段與根橋之間的工作路徑也必須是唯一且最優的。當一個網段有兩條或者兩條以上的路徑通向根橋時,與該網段相連的交換機就必須确定出一個唯一的指定端口。

指定端口也是通過比較RPC,BID和PID等。流程與選舉根端口相同。

STP生成樹協定的介紹

【3】确定阻塞備用端口(AP):在确定了根端口和指定端口後,交換機所有剩餘的非根端口和非指定端口統稱為備用端口,STP會将這些備用端口進行邏輯阻塞(即這些備用端口不能轉發計算機産生并發送的幀,這些幀稱為使用者資料幀),不過,備用端口可以轉發BPDU(STP協定幀)。而根端口和指定端口可以發送和接收STP協定幀,也可以轉發使用者資料幀。

一旦備用端口被邏輯阻塞後,STP樹(無環工作拓撲)的生成過程就完成了。

3. STP封包格式

STP交換機通過互動STP協定幀來建立和維護STP樹,并在網絡實體拓撲發送變化時重建立新的STP樹。STP協定幀由STP交換機産生,發送,接收,處理。STP協定幀是一組多點傳播幀,多點傳播位址為01-80-c2-00-00-00。采用IEEE802.3封裝格式,載荷資料被稱為BPDU。BPDU有兩種類型:Congfiguration BPDU和TCN(Topology Change Notification)BPDU。

(1)在STP樹生成,維護的過程中STP幀主要是Congfiguration BPDU,重點的有:

【1】Hello Time:交換機發送Congfiguration BPDU的時間間隔,STP樹生成後,修改時間間隔要在根橋修改才有效,預設值:2s。

【2】Forward Delay:端口狀态遷移的延遲資料。由于STP樹的生成需要一定的時間,在此過程中交換機的端口狀态的變化并不是同步的,如果選舉出的根端口和指定端口立刻開啟并轉發資料幀的話,就會産生臨時環路,是以STP引入了Forward Delay機制,選舉出的根端口和指定端口需要經過2倍的Forward Delay延時後才能進入使用者資料幀的轉發,此時已無環路,預設值:15s。(這帶來了STP收斂時間慢的問題)。

【3】Max Age:Congfiguration BPDU的最大生命周期。Max Age的值由根橋指定。預設值:20s。

(2)TCN BPDU:是由故障點的交換機根端口發送的

1.在網絡拓撲發送變化,位于故障點的交換機可以通過端口狀态直接感覺這種變化,但是其他交換機無法直接感覺這種變化,則故障點的交換機以Hello Time(2s)為周期通過根端口不斷向上遊交換機發送TCN BPDU。故障點的交換機直到上遊交換機發來TCA标志置1的Congfiguration BPDU 才會停止發送TCN BPDU。

2.上遊交換機收到TCN BPDU後,一方面通過指定端口回複TCA标志置1的Congfiguration BPDU,另一方面會以Hello Time周期通過根端口向上遊交換機發送TCN BPDU。

3.直到根接收到TCN BPDU,會發送TC 标志置1 的Congfiguration BPDU。通告所有的交換機網絡拓撲發送變化。

4.交換機收到了TC标志置1 的Congfiguration BPDU,意識到網絡拓撲發送變化,說明自己的MAC位址表的表項内容可以已經不正确,這時交換機将自己的MAC位址表的老化時間(預設300s)縮短為Forward Delay的時間長度(預設為15s),以加速MAC位址表的老化時間。

4. STP端口狀态

STP定義了三種端口角色:根端口,指定端口和備用端口;五種端口狀态:禁用(去能)狀态(Disabled),阻塞狀态(Blocking),偵聽狀态(Listening),學習狀态(Learning),轉發狀态(Forwarding)。

STP端口遷移:

STP端口遷移和STP端口遷移的列子會用另一篇文章做介紹,這裡就先蓋過,了解一下即可。

5. STP的改進

STP網絡中,STP樹的完全收斂需要依賴定時器的計時,端口狀态從Blocking遷移到Forwarding至少需要2倍Forward Delay的時間長度(Forward Delay預設值:15s,即至少需要30s),總的收斂時間太長,為了彌補STP收斂慢的缺陷,IEEE802.1w定義了RSTP(Rapid Spanning Tree Protocol)快速生成樹協定,在現實中,STP已經可以說是淘汰了,取而代之的是RSTP。

RSTP的改進有兩個:

1.端口狀态

RSTP中端口狀态隻有3種:Discarding、Learning、Forwarding。

2.P/A機制

P/A的根本目的:為了加快某DP端口和RP端口互聯鍊路上兩端口快速進入轉發狀态不等30s的2倍Forwarding Delay。P/A機制這個問題會和STP端口遷移以及STP端口遷移的示例中講解,這裡先了解P/A機制是一個主動與對端端口進行協商,通告協商并進行相關動作後,立刻進入Forwarding在狀态。

6. 簡單STP的配置

STP生成樹協定的介紹

關于STP生成樹協定,STP内容其實有很多,我是想一篇文章盡可能将知識點歸納,希望我的文章對你學習有所幫助。十分感想讀者的通路和閱讀。

繼續閱讀