交換機配置教程 生成樹協議STP防止環路(1) |
發布時間: 2012/5/29 17:41:26 |
前面曾經有過一篇文章,介紹如果企業只使用一臺交換機來組網,就會存在單點故障,如果交換機壞了,此時的幾個模塊之間都無法進行正常的工作,客戶機不能訪問服務器,不能連接internet,不能訪問打印機,也就是一點發生故障,則整網絡無法正常工作。所以在一般的交換式網絡中,我們都需要對交換機進行冗余,但是引入冗余又會發生一個問題,一個很嚴重的問題,就是網絡環路。那么網絡環路會帶來廣播風暴、多重復數據幀、MAC地址表不穩定等因素。那么大家可以看到網絡環路的問題確實不小,解決方法就是利用生成樹協議STP。 Spanning-Tree Protocol:簡稱為STP,該協議可應用于環路網絡,通過一定的算法實現路徑冗余,同時將環路修剪成無環路的樹型網絡,從而避免報文在環路網絡中“長生不老”。 以太網交換所所實現的快速生成樹協議RSTP(Rapid Spanning Tree Procotol)是生成樹協議的優化版,其“快速”體現在根端口和指定端口進入轉發狀態的延時在某種條件下大大縮短,從而縮短了網絡拓撲穩定所需要的時間。 MSTP(Multiple Spanning Tree Procotol)是多生成樹協議的縮寫,該協議兼容STP和RSTP。 咱們來詳細介紹一下STP:STP是為克服冗余網絡中透明橋接的問題而創建的,目的是通過協商一條到根網橋的無環路徑來避免和消除網絡中的環路,它通過判定網絡中存在環路的地方并動態阻斷冗余鏈路來實現這個目的。通過這種方式,它確保到每個目的地都只有一個路徑,所以永遠都不會產生環路。 將環路中的一個次優接口設置在Block(阻止)狀態,從而將環路打破。注意,僅僅是該接口設置為Block狀態,僅僅是一個狀態,而不是真正的將此接口關閉。因為一旦網絡中其他鏈路出現了問題,這個被block的接口還可以還原為forwarding(轉發)狀態。如圖所示: 基本思想:在此把每個交換機稱為網橋,所以我們在介紹的時候,如果講到網橋,就知道是指的交換機就可以了。每個交換機在啟動的時候,都認為自己是根橋,那么就討論開始競爭到底誰當根,大家定義好一個游戲規則,在網橋之間傳遞特殊的消息BPDU(Bridge Procotol Data Unit)網橋協議數據單元,包含足夠的信息做以下工作:從網絡中的所有網橋中,選出一個作為根網橋,然后再計算本網橋到根網橋的最短路徑。而且根橋是每2秒鐘發送一次BPDU。BPDU數據幀中包括了很多內容,如圖所示: 我們在這里只關心網橋ID(包括兩個字節的優先級和6個字節的MAC地址)。 選擇根橋的方法是比較每一個交換機的Bridge ID也就是橋ID,這個橋ID的格式是: 有兩部分組成:一個是橋優先級,一個是MAC地址,但是思科的交換機優先級默認都是32768,如果優先級相同,再比較后面的MAC地址,MAC肯定是不同的,所以小的就是根橋, 在一個網絡中,只能有一個根網橋,其他的網橋就稱為非根橋;根橋上的每一個端口都稱為指派端口,也可以說根橋上的每個端口都是根端口,但是非根橋上的端口叫法就不同的,非根橋有一個端口叫根端口,其他端口叫非指派端口。 剛才我們說了,如果有多個交換機,選擇根網橋使用的是bridgeID,那這里在非根橋上我怎么知道哪個是根端口,哪個是非指派端口呢,這里也有一個準則,就是依次比較每個端口到達根網橋所花代價+優先級+MAC地址+端口號(從左到右依次比較軟小者),這里又可以分為是一個交換機的多個端口和多個交換機的多個端口之間如果選擇。 本文出自:億恩科技【www.laynepeng.cn】 |