【实验名称】:生成树协议STP配置(Boson Netsim模拟器只能实现部分功能)
【实验目的】:
掌握生成树STP协议的基本概念
掌握使用STP端口权值实现负载均衡
掌握配置STP路径值的负载均衡
【实验仪器及用品】:BOSON NETSIM模拟器
【实验内容】:
生成树协议(Spanning Tree Protocol,STP)是交换式以太网中的重要概念和技术,该协议的目的是在实现交换机之间的冗余连接的同时,避免网络环路的出现,实现网络的高可靠性。它通过在交换机之间传递桥接协议数据单元(Bridge Protocol Data Unit,BPDU)来互相告知诸如交换机的桥ID、链路性质、根桥ID等信息,以确定根桥,决定哪些端口处于转发状态,哪些端口处于阻断状态,以免引起网络环路。
1.使用STP端口权值实现负载均衡
当同一台交换机的两个口形成环路时,STP端口权值用来决定哪个口是交换状态的,哪个口是阻断的。可以通过配置端口权值来决定两对Trunk各走哪些VLAN,有较高权值的端口(优先级数字较小的)Vlan将处于转发状态,同一个Vlan在另一个Trunk有较低的权值(优先级数字较大),则将处于阻断状态。同一个VLAN只在一个Trunk上发送接收。
基于端口权值的负载均衡示意图。假设有5个VLAN1-5,Trunk1将发送和接收VLAN1-2的数据,Trunk2将发送和接收VLAN3-5的数据。
STP端口权值的负载均衡
配置VTP
用端口f0/11做Trunk1,用端口f0/12做Trunk2
switch1#vlan database (进入VLAN配置子模式)
switch1(vlan)#vtp server (设置本交换机为Server模式)
switch1(vlan)#vtp domain vtpserver (设置域名)
Changing VTP domain from NULL to vtpserver
switch1(vlan)#exit (退出VLAN配置模式)
APPLY completed.
Exiting....
switch1#show vtp status (验证VTP设置信息)
switch1#config terminal
Enter configuration commands, one per line. End with CNTL/Z.
switch1(config)#interface f0/11 (进入端口11配置模式)
switch1(config-if)#switchport mode trunk(设置当前端口为Trunk模式)
switch1(config-if)#exit
switch1(config)#interface f0/12
switch1(config-if)#switchport mode trunk
switch1(config-if)#end
我们省略配置VLAN的命令,在对Switch1交换机做完以上配置及VLAN配置后,在Switch2交换机上也做以上相同的配置,只是将Switch2的VTP模式设置成Client模式,这样Switch2交换机就可以学习到Switch1交换机上的VLAN信息,可以用show vlan 命令来验证Switch2交换机是否学习到了VLAN信息。配置完Switch2交换机的VTP 和Trunk以后又回到Switch1交换机上来配置STP。
(配置STP权值)
Switch1#config terminal
Switch1(config)#interface f0/11 (进入端口11配置模式,Trunk1)
Switch1(config-if)#spanning-tree vlan 1 port-priority 10(将VLAN1的端口权值设为10)Switch1(config-if)#spanning-tree vlan 2 port-priority 10(将VLAN2的端口权值设为10)Switch1(config-if)#exit
Switch1(config)#interface f0/12(进入端口24配置模式,Trunk2)
Switch1(config-if)#spanning-tree vlan 3 port-priority 10(将VLAN 3端口权值设为10)Switch1(config-if)#spanning-tree vlan 4 port-priority 10(将VLAN4端口权值设为10)Switch1(config-if)#spanning-tree vlan 5 port-priority 10(将VLAN5端口权值设为10)Switch1(config-if)# end
Switch1# copy running-config startup-config (保存配置文件)
由于我们分别设置了不同Trunk上不同VLAN的权值,而默认情况下的权值为128。这样STP协议就可以根据权值的大小来使Trunk1发送和接收VLAN1-2的数据,Trunk2发送和接收VLAN3-5的数据,实现了负载均衡。
2.配置STP路径值的负载均衡
也可以通过配置STP路径值来实现负载均衡,如下图所示Trunk1走VLAN1-2的数据,Trunk2走VLAN3-5的数据。
其中VTP及VLAN Trunk的配置和上面相同,在此不再列出。我们只说明在配置好VTP协议和VLAN Trunk端口后在服务器(Switch1)上来如何配置STP路径值。
STP路径值的负载均衡
Switch1# config Terminal
Switch1(config)#interface f0/23 (进入端口23配置模式,配置Trunk1)Switch1(config-if)#spanning-tree vlan 3 cost 30(设置VLAN 3生成树路径值为30)Switch1(config-if)#spanning-tree vlan 4 cost 30(设置VLAN 4生成树路径值为30)Switch1(config-if)#spanning-tree vlan 5 cost 30(设置VLAN 5生成树路径值为30)Switch1(config-if)#exit
Switch1(config)#interface f0/24 (进入端口24配置模式,配置Trunk1)
Switch1(config-if)#spanning-tree vlan 1 cost 30
Switch1(config-if)#spanning-tree vlan 2 cost 30
Switch1(config-if)#end
Switch1#
这样我们将希望阻断的VLAN生成树路径设大,STP协议就会阻断该VLAN从该Trunk上通过,从而可以把负载均衡到多个Trunk端口上。