淺談STP——生成樹協議
STP(spanning-tree protocol)生成樹協議,作用在2層網絡/交換網絡中,實現鏈路冗余的同時,防止環路的產生。
那麽STP是如何讓實現防止環路的產生?可以分為三個大方面來一同完成的;
一.確定交換機角色:
1.根交換機
2.非根交換機
判定選舉原則:任何一個交換機在STP中,都有名字BID- bridge id , 橋ID;
BID的組成: 優先級 + MAC地址(基mac);首先比較優先級,越小越好,為根交
換機;其次比較MAC,越小越好,為根交換機;
二.確定端口角色:
1.根端口:任何一個非根交換機上,有且只有一個距離根交換機最近的端口;
2.指定端口:任何一個“沖突域/網段”有且只有一個距離根交換機最近的端口;
3.非指定端口:其他端口,都叫做“非指定端口”
備註:到根交換機的距離的表示:cost - 開銷
三.端口狀態:
1.down:關閉狀態
2.listening : 偵聽,該狀態保持15s
3.learning :學習,該狀態保持15s
4.forwarding:轉發
5.block:阻塞
當把這些角色確定清楚後,非指定端口將不能進行數據的轉發,只有當其它線路出現問題時,非指定端口才可以正是“上位”變成指定端口,進行數據的轉發,從而達到2層網絡的鏈路沈余又避免了環路的產生。
擴展延伸:STP的類型
1.STP:生成樹,802.1d 公有標準--- PVST—> per-vlan STP
2.RSTP:快速生成樹,802.1w ,公有標準
3.MSTP:多生成樹,802.1s,公有標準
註意:
其實現在在設備上默認運行的都是 PVST (PVST+) 即基於 VLAN 的 STP 。在 STP 中引入了
VLAN 以後,就可以實現數據流量的負載均衡。
例如:
兩個核心交換機 Core-1和Core-2;
將Core-1作為vlan1和vlan2的根,vlan3和vlan4的輔根;
其他交換機作為一個普通的非根交換機
在Core-1上面的配置:
1、創建vlan;
vlan 1
vlan 2
vlan 3
vlan 4
2、將vlan1和vlan2的STP優先級調整為0;
將vlan3和vlan4的STP優先級調整為小於默認的32768;
但是得大於“主根交換機”的優先級;
Core-1(config)#spanning-tree vlan 1 priority 0
Core-1(config)#spanning-tree vlan 2 priority 0
Core-1(config)#spanning-tree vlan 3 priority 4096
Core-1(config)#spanning-tree vlan 4 priority 4096
在Core-2上面的配置:
1、創建vlan;
vlan 1
vlan 2
vlan 3
vlan 4
2、將vlan3和vlan4的STP優先級調整為0;
將vlan1和vlan2的STP優先級調整為小於默認的32768;
但是得大於“主根交換機”的優先級;
Core-1(config)#spanning-tree vlan 3 priority 0
Core-1(config)#spanning-tree vlan 4 priority 0
Core-1(config)#spanning-tree vlan 1 priority 4096
Core-1(config)#spanning-tree vlan 2 priority 4096
淺談STP——生成樹協議