2tfwe 发表于 2015-7-23 08:42:03

cisco交换实验生成树-spanning-tree-pvst


实验拓扑:

实验配置:
准备阶段
关闭不必要的端口:
sw1:
conft
inte3/1
shutdown
inte3/2
shutdown

sw2:
conft
inte3/1
shutdown
inte2/2
shutdown

sw3:
conft
inte2/2
shutdown
inte3/2
shutdown

配置trunk;
sw1:
conft
inte3/0
switchporttrunk encapsulation dot1q
switchportmode trunk
inte3/3
switchporttrunk encapsulation dot1q
switchportmode trunk

sw2:
conft
inte3/0
switchporttrunk encapsulation dot1q
switchportmode trunk
inte2/3
switchporttrunk encapsulation dot1q
switchportmode trunk

sw3:
conft
inte2/3
switchporttrunk encapsulation dot1q
switchportmode trunk
inte3/3
switchporttrunk encapsulation dot1q
switchportmode trunk

配vtp:
sw1:
conft
vtpmode server
vtpdomain zb
vtppassword 123
vtppruning

sw2:
conft
vtpmode client
vtpdomain zb
vtppassword 123
vtppruning

sw3:
conft
vtpmode client
vtpdomain zb
vtppassword 123
vtppruning

配置vlan:
sw1:
vlandatabase
vlan2
vlan3
exit




查看一下vlan:





可以看出vlan1和vlan2的生成树的根桥都是sw1
Pvst的特性1:portfast
只能用在接入端口(access),可以加速收敛时间。

-------------------------------------------------------------------------
将sw3的e3/3接口down掉





Sw3上的e2/3从阻塞状态到转发状态我们知道需要30秒的时间。

再将e3/3接口激活:






可以看出e3/3从down状态到转发状态同样也需要30秒。


Pvst的特性2:uplinkfast
uplinkfast特性:当altn端口和故障链路在同一个交换机上时,能加速阻塞端口的阻塞状态到转发状态的收敛时间由30秒缩短到2秒。

sw1:
conf t
spanning -treeuplinkfast
sw2:
conf t
spanning -treeuplinkfast
sw3:
conf t
spanning -treeuplinkfast
现在再将sw3的e3/3 shutdown
int e3/3
shutdown
end
show spanning-treevlan 2


可以看出很快就转发了,上面接口e3/3一down,e2/3阻塞端口就进入转发状态。
Pvst的特性3:backbonefast
当故障链路和阻塞端口不在同一switch上时,uplinkfast就不能加速阻塞端口收敛时间,阻塞端口收敛时间仍需要50秒,如果用backbonefast可以让阻塞端口跳过20秒的等待时间。

先在sw3上开启debug
sw3#debugspanning-tree events
我们先在在交换机sw2上将e3/0 down掉。
sw2:
int e3/0
shutdown

可以看出sw2上的e2/3每2秒发送一次bpdu,发了10次,也就是20秒,之后sw3的e2/3阻塞端口进入监听状态。 sw2上的e3/0 down了,sw2就失去到根桥的连接。此时sw2就要向唯一的邻居sw3发送bpdu说自己是根,sw3的e2/3阻塞端口收到bpdu后,阻塞端口会登待20秒,若20秒内故障链路没有恢复,阻塞端口就会进入监听状态,学习状态,最后进入转发状态,这个过程需要50秒。

现在开启backbonefast,backbonefast要在所有交换机上启用。

sw3:
conf t
spanning-tree baclbonefast

sw2:
conf t
spanning-tree baclbonefast

sw1:
conf t
spanning-tree baclbonefast




配置了baclbonefast,阻塞端口,会立即从阻塞状态变到监听状态,不需再等待20秒

RSTP快速生成树
在做快速生成树之前,先把前面的配置删掉:
no spanning-treeuplinkfast
no spanning-treebackbonefast

每个交换机都要敲。
sw1:
conf t
spanning-tree moderapid-pvst

sw2:
conf t
spanning-tree moderapid-pvst

sw3:
conf t
spanning-tree moderapid-pvst
故障链路和阻塞端口在同一个交换机上:
现在把sw3的e3/3down掉,看现在的收敛速度

速度很快


故障链路和阻塞端口不在同一个交换机上
把sw2的e3/0down掉,


可以看出sw3的s2/3从阻塞状态到转发状态只需30秒。




修改生成树的根:实现vlan流量的负载均衡。
现在sw1是所有vlan的根。
我现在让sw2成为vlan3的根

在sw2上一条命令搞定:
sw2:
conf t
spanning-tree vlan 3 root primary
这条命令直接修改了生成树的优先级。优先
级是4096的倍数。
查看一下:
Sw2:
show spanning-tree vlan 3





先在vlan3的流量走sw3的e2/3的链路,vlan2走sw3的e3/3的链路,这就实现vlan流量的负载均衡。

端口阻塞了并不意味着端口down了,只是在某一个vlan里面不能传流量,这是因为spanning-tree的选举,把这个端口阻塞了,不
能走流量,这就使得所有vlan的流量都不能走阻塞端口这条链路。这时我们通过修改vlan的根,使得vlan2和vlan3的生成树不相同,就可以解决这根问题。
因此spanning-tree除了避免环路,提供冗余,还可以做基于vlan流量的负载均衡。

页: [1]
查看完整版本: cisco交换实验生成树-spanning-tree-pvst