STP Overview 生成树协议(STP)是用来防止当存在物理冗余链路的时候产生环路的层2协议.网桥之间STP信息的传递是通过网桥协议数据单元(BPDU)来完成的.BPDU分两种类型:$ v; U1 w, O: L7 L
1.配置BPDU:每2秒由根桥发送一次.
1 b: v q) n, `9 J 2.拓扑更改通知BPDU(TCN BDPU):由检测到拓扑发生变化的交换机发送给上游根桥.! Y( |3 \2 P# b+ x5 [
STP创建一个无环路的逻辑拓扑所使用的3个步骤:! `+ X& x9 H' s: S
1.选举一个根桥,网桥ID最低的成即为根桥.网桥ID又由网桥优先级和MAC地址组合而成.网桥优先级默认为32768.
% x! t6 C5 z0 T 2.选举一个根端口,到达根桥累积的路径开销最小的端口即为根端口.
( G" ]1 ]6 M0 A3 M& I" t+ v 3.选举指定端口,路径开销最小的端口为指定端口.; H! U4 G& w+ {% C9 x0 L8 |/ j7 v
STP中端口的几种状态:7 z2 d) P) ~5 Q' O9 v: T% |4 E
状态 动作9 X1 u, Z% n0 b: V8 _, N
转发 发送和接收数据! C6 a$ J* q( k2 o) C) \
学习 建立桥接地址表
( W. I; T+ n- A% s 监听 建立活动拓扑7 t; X8 J7 v' p7 f
堵塞 只接收BPDU3 f8 X, N2 b/ p# m4 W: J
关闭 人为管理性的关闭% _/ Y/ G+ Y# J6 d3 m
STP中的几种计时器:$ m: n6 L% C6 L' c% S4 T; R$ e
计时器 定义 时间间隔(秒) f; V4 A5 E7 V! _2 K4 u* I
转发延迟(Forward Delay) 经历监听和学习状态经历的时间 303 o3 ~/ e+ O C- ?3 ^8 \
最大生存周期(Max Age) BPDU在交换机上存储的时间 20
% a, \6 e8 v9 {9 g+ E; ]/ A Configuring STP& e# i5 j0 R C& b5 j6 D2 o8 X
STP默认是启用的,因此不需要手动配置.一些STP的辅助性的修改命令如下:
% b4 H& X" z- e! N& d$ F( D 1.设置STP模式,默认为PVST+模式:* u; A% q" g+ q* N \2 c. z' I
Aiko(config)#spanning-tree mode {pvst|mst|rapid-pvst}: }* a" v' F$ y3 s7 H
2.设置网桥优先级:
# p: m( S0 p B Aiko(config)#spanning-tree vlan {vlan-id} priority {priority}/ j( n, \4 H( S2 W
3.微调STP计时器:
; C v5 c7 `7 R( J Aiko(config)#spanning-tree vlan {vlan-id} {hello-time|forward-time|max-age} {seconds}4.手动指定根桥:
1 c# a Q+ O X( q7 g2 L Aiko(config)#spanning-tree vlan {vlan-id} root {primary|secondary}. ~( P# h7 G1 i' @
5.在接口配置模式下修改端口优先级,默认值为128,值越低优先级越高:
# Y: z2 @. y2 Y3 F- q' ^6 f* s Aiko(config-if)#spanning-tree [vlan vlan-id] port-priority {priority}
$ i# R7 O9 Q* o( z 6.在接口配置模式下修改端口的路径开销:6 n( s+ K1 z6 B- N- D
Aiko(config-if)#spanning-tree [vlan vlan-id] cost {cost} |