一、实验前先理解生成树决策的4 个步骤:
二、实验拓扑
1. 实验描述:
由于业务的要求,要有可靠的链路,要对链路实现冗余,但链路的冗余有可能给网络带来广播风暴,重复帧,MAC 地址表不稳定的问题,Spanning Tree protocol 在可以实现冗余的同时又可以解决以上三个问题.
2.实验1:验证CST(公共生成树)
CST 是IEEE 在虚拟局域网上处理生成树的特有方法,这是一种VLAN 解决方案,称为单一或者公共生成树。生成树协议运行在VLAN1 即缺省的VLAN 上。所有的交换机都举出同一个根网桥,并建立与该根网桥的关系
CISCO 的交换机默认就启用了生成树Spanning Tree protocol,不需配置就可以实现链路冗余能力.
实验拓扑:
实验
实验拓扑描述:
在以上交换网络拓扑中只有交换机默认存在的 VLAN1,交换机默认情况下所有端口属于VLAN1。
根据以上拓扑,也就是只有 VLAN1 存在的情况下我们来验证CST(公共生成树)
建议手工配置 SW1,SW2 的F0/23,F0/24 接口的trunk 模式
配置 SW1:
SW1(config)#int range fastEthernet 0/23 – 24 —–注:进入一个接口范围,同时对多个端口进行配置
SW1(config-if-range)#switchport mode trunk
SW1(config-if-range)#no shutdown
配置SW2:
SW2(config)#int range fastEthernet 0/23 – 24
SW2(config-if-range)#switchport mode trunk
SW2(config-if-range)#no shutdown
在 SW1 上用show spanning-tree 验证生成树:
SW1#show spanning-tree
VLAN0001
Spanning tree enabled protocol ieee
Root ID Priority 32769
Address 0008.20ff.6400
This bridge is the root ————————注: SW1 为根网桥
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
————-注:根交换机的网桥ID
Bridge ID Priority 32769 (priority 32768 sys-id-ext 1)
Address 0008.20ff.6400
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 15 ——注: SW1 的网桥ID
Interface Role Sts Cost Prio.Nbr Type
—————- —- — ——— ——– ——————————–
Fa0/23 Desg FWD 19 128.23 P2p
——————————-注: Desg:表示F0/23 为指定端口
FWD 表示:端口的生树成状态
为转发状态表示 F0/23 到根网桥
的花费为 19 128.23:这里128 表
示端口优先级,23 表示端口号,
这里可以先不用考虑这个。
Fa0/24 Desg FWD 19 128.24 P2p
<Desg 表示指定端口>
注: CST 是IEEE 在虚拟局域网上处理生成树的特有方法,这是一种VLAN 解决方案,称为单一
或者公共生成树。生成树协议运行在VLAN1 即缺省的VLAN 上。
在 SW2 上用show spanning-tree 验证生成树:
SW2#show spanning-tree
VLAN0001
Spanning tree enabled protocol ieee
Root ID Priority 32769 —————————–注:根交换机的网桥ID
Address 0008.20ff.6400
Cost 19
Port 23 (FastEthernet0/23)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 32769 (priority 32768 sys-id-ext 1)
Address 000d.bce7.5940
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300 ——————- SW2 的网桥ID
Interface Role Sts Cost Prio.Nbr Type
—————- —- — ——— ——– ——————————–
Fa0/23 Root FWD 19 128.23 P2p
Fa0/24 Altn BLK 19 128.24 P2p
注:解释:F0/24 为altn(后备端口),端口的生成树状态为BLK(blocking)状态,Root 表示根端口,Altn 表示
后备端口。
回顾生成树决策的4 个步骤:
通过在 SW1,SW2 上show spanning-tree 得到以下结果.
SW1(根交换机)
F0/23——————-指定端口
F0/24——————-指定端口
SW2(非根交换机)
F0/23——————-根端口
F0/24——————-blocking 端口
生成树决策过程:
·选根交换机:
One root bridge per network(每个网络只有一个根桥)
根桥的选举:Lowest BID (最小的BID)
SW1 的竞选根交换机参数:
Bridge ID: Priority 32768
MAC Address 0008.20ff.6400
SW2 的竞选根交换机参数:
Bridge ID: Priority 32768
MAC Address 000d.bce7.5940
选择根交换机第一个条件先看优先级 Priority 再看MAC 地址,缺省SW1 和SW2 的优先级都是32768,通
过优先级无法选择根交换机,只能通过MAC 地址选择,交换机的MAC 地址可以通过show version 查看.
SW1 的MAC 地址0008.20ff.6400 比SW2 的MAC 地址000d.bce7.5940 小,越小越优先,所以SW1为根
交换机
·选根端口:
One root port per nonroot bridge(每个非根桥都有一个根端口)
根端口(RP):Lowest path cost to root bridge 每个非根桥有且只有一个根端口,非根桥到达根桥所需
开销最小的那个端口即为根端口。(可转发流量)
选举RP/DP的方法:(RP—根端口 ,DP—指定端口)
1.Lowest RID(最小的RID) 这里是(根桥)的BID
2.Lowest path cost to root bridge(到达根的最小路径开销)
3.lowest sender BID (最小的发送BID)
4.Lowest sender port ID 当两台交换机之间有两条线路直连时会用到这一项来选 (比如本实验中
批定端口的选择就会用到这一项)
SW1 为根桥,不会有根端口,因为只有非根桥有根端口:
SW2 为非根桥,根端口肯定是F0/23 ,F0/24 的其中一个:
F0/23 ,F0/24 这个两个端口选举根端口的条件: (非根桥到达根桥所需开销最小的那个端口即为根端口)
F0/23 到达根网桥的开销(cost)为19
F0/24 到达根网桥的开销(cost)为19
通过非根桥到达根桥所需开销最小这个条件没法选出根端口,只能再看生成树决策的第3个条件即
lowest sender BID (最小的发送BID)
通过lowest sender BID (最小的发送BID)选举,但F0/23,F0/24 都是在SW2(非根桥)上的两个端口
lowest sender BID 都是:
Bridge ID: Priority 32768
MAC Address 000d.bce7.5940
所以这里无法通过lowest sender BID选出根端口,只能再看生成树决策的第4个条件Lowest sender port
ID,当两台交换机之间有两条线路直连时会用到这一项(端口号越小越优先)
F0/23比F0/24小,所以F0/23优先.最终可以选出根端口F0/23
SW2上剩下F0/24的就是blocking端口
在SW2上show spanning-tree验证:
SW2#show spanning-tree
VLAN0001
Spanning tree enabled protocol ieee
Root ID Priority 32769
Address 0008.20ff.6400
Cost 19
Port 23 (FastEthernet0/23)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 32769 (priority 32768 sys-id-ext 1)
Address 000d.bce7.5940
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300
Interface Role Sts Cost Prio.Nbr Type
—————- —- — ——— ——– ——————————–
Fa0/23 Root FWD 19 128.23 P2p ————–注: F0/23 为根端口
Fa0/24 Altn BLK 19 128.24 P2p ——注: SW2 上F0/24 就是blocking 端口
总结:
看上图,从SW2到SW1的所有数据流量最终通过线点1到达,SW2的F0/24处于备份状态,在SW2上show spanning-tree可以看到F0/24的端口角色为Altn,即线路2作为线路1上备份链路.
CST 的缺点:最终有一条链路总是处在备份的状态,就像本实验中线路2 处在备份的状态,我们想象假如线路1 永远不会出问题,如果这样,那好像线路2 的存在是多余的,于是我们有个想法就是能不能两条链路都利用起来,比如说一部分流量走线路1,另一部分流量走线路2,其实是可以的,CISCO的PVST+产生就由来于此
转载于:https://blog.51cto.com/dongw/1103742