生成树的解析
为什么要使用生成树
生成树的概念
个人简介
交换机的三个功能
地址学习
帧的转发/过滤
环路防止
生成树的作用
防止二层环路
哪台设备的接口?
- 选择根桥root
- 非根桥
比较参数 桥ID =bridge ID
两个部分:
- bright priority =32768
支持修改 -最小 0 4096倍数进行
- bridge mac = 桥 MAC地址
背板MAC = 基MAC = CPU MAC
查看命令 show mac address-table
查看所有show spanning-tree
桥MAC越小越好 == 交换机 根桥
根桥上所有的接口都不会被down掉
根桥上连接非根桥的接口 = 指派端口
非根桥 需要断掉一个接口才行
cost == 根据带宽计算出来的 = 开销值
如果两端的开销值一样的
比较bridge ID
比较BID 越小越好
比较PID = 端口ID
-- port priority 端口优先级 = 128 | 0 ,16倍数
-- port num 端口号
连接速率 代价(修订号 IEEE 规范) 代价(旧IEEE 规范)
10Gbps 2 1
1Gbps 4 1
100Mbps 19 10
10Mbps 100 100
### 生成树算法 —— 选举根交换机
1. 根交换机的选举条件:网桥ID(BID)最小者当选。
2. 网桥ID(BID)由以下两部分构成:
- 优先级
- 范围 0 - 61440
- 步长 4096
- 默认值 32768
- 交换机的基本MAC地址
3. 网桥ID(BID)的比较方法
- 优先级取值越小,则网桥ID(BID)就越小。
### 生成树算法 —— 选举根端口
(1). 在一个非根交换机上选举出一个根端口RP(Root Port)。并且只能是一个。
(2). 根端口RP用于接收根交换机发来的BPDU。也用于转发普通流量。
(3). 根端口RP的选举条件:
- BPDU接收端口到根交换机的路径成本最小。
- 对端的网桥ID(BID)最小。
- 对端的端口ID(PID)最小。
- 优先级
- 范围 0 - 240
- 步长 16
- 默认值:128
### 生成树算法 —— 选举指定端口并阻塞备用端口
《1》. 在每个段上选出一个指定端口DP(Designated Port)并且只能是一个。
《2》. 指定端口DP用于转发根交换机发来的BPDU,也用来转发普通流量。
《3》. 指定端口DP的选举条件:
- 根交换机的所有端口都是指定端口DP。
- 根端口的对端端口一定是指定端口DP。
- BPDU转发端口到根交换机的路径成本最小。
- 本端的网桥ID(BID)最小。
《4》. 剩余端口成为备用端口AP(Alternate Port),将它们阻塞。
- 选根桥 - 根ID(桥优先级 + 桥MAC)-根桥上使用接口 都叫指派端口 ----非根桥连接根桥的端口 =根端口 -cost值 -以根桥为圆点 累加达到非根桥入口cost -根桥到达非根桥cost值,比较桥ID -包含桥MAC
- 桥ID比不出来 -开始比较PID -包含端口优先级和端口号 - 根桥的端口号
思科设备:PVST -基于每个vlan生成树 per - vlan stp
华为设备:MST -多实例生成树 基于组的生成树 A B = 实例
BPDU -bridge protocol data unit 桥协议数据单元
-选举 根桥 和 非根桥 ----根桥上的所有接口都不会关掉
根桥上的所有端口 = 指派端口 = D口
--BID(bridge ID)= 【bridge priority + bridge mac 地址 】
32768 交换机最小MAC
4096的倍数
-非根桥选举哪个口不断(根端口)= 非根桥连接根桥最优路径端口
- 比较入接口的cost值
- 比较PID参数port ID = 【port priority + port number】
128
16的倍数
非根桥上 没有被断掉的接口 =根端口
非根桥上 被断掉的接口 ==== 非指派端口
- 比较自己本地的PID
设备角色 === 根桥 非根桥
端口角色 ==== 指派端口 根端口 非指派端口
比较参数 === BID优先级 +MAC /带宽开销值COST / PID 优先级 + 端口号
快速端口 === portfast
端口状态类型
1.disable (禁用) (down) 命令:配置模式: spanning-tree portfast default
blocking(阻止) (discarding) 绿色状态 = 转发状态
2.listening(监听) (listening) 黄色状态 = 收敛状态
3.learning(学习) 30s时间 (learning)
4.forwarding(转发) (forwarding)
PVST PVST+=rapid PVST RSTP MST 常规 802.1D
1.Access(接入)设备通常位于网络边缘,用于连接终端设备(如计算机、IP电话和无线访问点)与核心网络之间。它们处理设备的接入和流量转发。
2.Distribution(分发)设备位于核心和接入设备之间,用于连接不同的网络区域或分段。它们负责路由、策略控制和流量分发等功能。
3.Core(核心)设备是网络的中央枢纽,用于连接分布设备和其他网络区域。它们通常处理大量的流量转发、数据中心连接和核心路由等关键任务。
4.Firewall(防火墙)设备用于网络安全,通过检查和过滤网络流量来保护网络免受恶意攻击和未经授权的访问。
5.Router(路由器)设备用于在不同的网络之间转发数据,并根据网络协议(如IP)进行路由决策和转发。
6.Switch(交换机)设备是网络中的数据交换设备,用于将数据包从一个端口转发到另一个端口,实现局域网内的连接和通信。
拓扑图
配置命令
接口配置
SW1(config)#int e0/0
SW1(config-if)#sw tr en do
SW1(config-if)#sw mo tr
SW1(config-if)#int e0/1
SW1(config-if)#sw tr en do
SW1(config-if)#sw mo tr
SW2(config)#int e0/0
SW2(config-if)#sw tr en do
SW2(config-if)#sw mo tr
SW2(config)#int e0/2
SW2(config-if)#sw tr en do
SW2(config-if)#sw mo tr
SW3(config)#int e0/1
SW3(config-if)#sw tr en do
SW3(config-if)#sw mo tr
SW3(config-if)#int e0/2
SW3(config-if)#sw tr en do
SW3(config-if)#sw mo tr
创建VLAN
SW1(config)#vlan 10
SW1(config-vlan)#vlan 20
SW1(config-vlan)#ex
SW2(config)#vlan 10
SW2(config-vlan)#vlan 20
SW2(config-vlan)#ex
SW3(config)#vlan 10
SW3(config-vlan)#vlan 20
SW3(config-vlan)#ex
查看生成树信息
查看生成树VLAN1的信息
sw1
sw2
sw3
查看sw3的VLAN20生成树信息
修改VLAN20的根桥优先级
修改VLAN20根桥优先级(设置根端口)
SW2(config)#spanning-tree vlan 20 root primary 默认值24567
SW2(config)#spanning-tree vlan 20 priority 0
查看sw3的生成树信息
修改cost值
删除生成树优先级
sw2(config)#no spanning-tree vlan 20 priority 0
查看sw3的VLAN20生成树信息
修改接口VLAN20的cost值
SW3(config)#int e0/1
修改接口cost值
SW3(config-if)#spanning-tree vlan 20 cost 2000(不能小于201)