STP 生成树协议

STP(Spanning Tree Protocol):生成树协议,用来提高网络链路的冗余,又可防止交换机环路(交换机默认是开启STP生成树协议)

STP协议算法原理:通过运行STP算法来阻塞特定的接口,实现链路冗余无环【根据STP算法原理,上图网络拓扑中SW1的G0/0/2口将会被阻塞】交换机每隔一段周期互发BPDU(Bridge Protocol Data Unit)报文来维护根桥,BPDU报文含有“桥优先级”和“桥MAC”


  • 修改交换机STP的优先级,在需要设置为根桥的交换机上配置(在SW1上配置命令;使SW1成为根桥):
<sw3>system-view        #进入系统视图
[sw3]stp priority 0        #将优先级改为最小值0,

注:优先级值必须是4096的倍数


查看STP根桥:
<sw1>display stp

-------[CIST Global Info][Mode MSTP]-------
CIST Bridge         :4096 .4c1f-cc70-7e80
Config Times        :Hello 2s MaxAge 20s FwDly 15s MaxHop 20
Active Times        :Hello 2s MaxAge 20s FwDly 15s MaxHop 20
CIST Root/ERPC      :4096 .4c1f-cc70-7e80 / 0    根桥设备ID
CIST RegRoot/IRPC   :4096 .4c1f-cc70-7e80 / 0
CIST RootPortId     :0.0
BPDU-Protection     :Disabled
TC or TCN received  :42
TC count per hello  :0
STP Converge Mode   :Normal 
Time since last TC  :0 days 0h:25m:1s
Number of TC        :16
Last TC occurred    :GigabitEthernet0/0/1
----[Port25(GigabitEthernet0/0/1)][FORWARDING]----
 Port Protocol       :Enabled
 Port Role           :Designated Port
 Port Priority       :128
 Port Cost(Dot1T )   :Config=auto / Active=20000
 Designated Bridge/Port   :4096.4c1f-cc70-7e80 / 128.25
 Port Edged          :Config=default / Active=disabled
 Point-to-point      :Config=auto / Active=true
 Transit Limit       :147 packets/hello-time
 Protection Type     :Root

  • 交换机端口由down到端口转发状态大概需要30s【状态由 Down----->Listening----->Learning----->Forwarding】
  • 边缘端口:建议将连接PC的端口配置为边缘端口(减少接口收敛时间)
  • 配置边缘端口:
<sw2>system-view        #进入系统视图
[sw2]interface GigabitEthernet 0/0/3        #进入g/0/3接口视图
[sw2-GigabitEthernet0/0/3]stp edged-port enable        #将接口配置为边缘端口,减少端口收敛时间
  • 未配置边缘端口前:

  • 将SW3的g/0/3接口配置为边缘端口后:


  • STP根保护;建议到根桥的接口下配置【一旦开启根保护功能的指定端口收到优先级更低的BPDU时,端口状态将进入Discarding状态,在经过一段时间后,如果端口再没有收到优先级更低的BPDU时,端口会自动恢复到Forwarding状态】
<sw1>system-view        #进入系统视图
[sw1]interface GigabitEthernet 0/0/1        #进入g0/0/1接口
[sw1-GigabitEthernet0/0/1]stp root-protection        #开启根保护
[sw1-GigabitEthernet0/0/1]inter gig0/0/2    #进入g0/0/2接口
[sw1-GigabitEthernet0/0/2]stp root-protection        #开启根保护


注:该指令只有在交换机指定端口下配置才生效



  • STP BPDU防护:根保护【开启BPDU保护后,如果从边缘端口收到STP报文,交换机会自动将该接口shutdown,从而确保根桥不被抢占,同时确保不会环路】
<sw2>system-view         #进入系统视图
[sw2]stp bpdu-protection        #开启STP BPDU防护,该命令只对边缘端口生效

[sw2]error-down auto-recovery cause bpdu-protection interval 30    #因BPDU报文引起的端口shutdown,端口间隔30s后自动up


  • 如果不希望SW1的G0/0/2接口被阻塞,而是希望SW1的G0/0/1口被阻塞那该怎么办呢?只能将G0/0/2接口的COST调小,使得从这个接口上收到的BPDU累加COST比G0/0/1口的累加值要小(端口COST默认值为20000),也就是使得这个接口距离根桥SW2的“开销”更小、“更近”
[sw1]interface GigabitEthernet 0/0/2        #进入g0/0/2接口
[sw3-GigabitEthernet0/0/2]stp cost 5000        #将COST改为5000,默认值为20000,数值越小越优先
  • RSTP:rapaid STP   快速的生成树协议;STP协议升级版
[sw2]stp mode rstp        #将STP模式切换为RSTP
原文地址:https://www.cnblogs.com/xiykj/p/14678048.html