在局域网中,我们通常有多个交换机互联组成
为了避免广播风暴,我们要确保网络中不能出现路径环路
于是引入了STP(生成树协议),通过阻塞端口来避免环路的产生
用来解决二层环路
通过阻塞冗余链路来消除网络中可能存在的环路
且如果链路出现中断,那么冗余链路又会重新激活
恢复网络连通性
STP(Spanning Tree Protocol)生成树协议
协议标准为IEEE制定的802.1D
通过传输BPDU报文(Bridge Protocol Data Unit 桥协议数据单元),来保证设备完成生成树的计算过程
其中BPDU分为两类:配置BPDU
、TCN BPDU
配置 BPDU
Configuration BPDU 用来计算生成树和维护生成树拓扑的报文 传递的是STP的配置信息
TCN BPDU
当拓扑结构发送改变时候,会用此报文来通知相关设备拓扑发送变更 就是用于通告拓扑发送变更
1.首先在所有交换机中选出一台设备作为根网桥(Root Bridge),
在网络初始化的过程中,每个交换机默认自己都为根网桥Root Bridge
,设备之间通过传递BPDU报文来比较桥ID(Bridge ID)
,在所有的交换机中选举出一台根网桥
Bridge ID
桥ID,也可以叫BID,用来标识交换机身份
由优先级
和MAC地址
组成
在华三设备中,默认优先级都为32768
是4096
的倍数
默认情况下,桥ID越小的优先级越高
如果优先级相同,则比较MAC地址大小,MAC地址越小,优先成为根网桥。
2.在每个非根网桥交换机中选举出一个根端口(Root Port), 先判断到达根网桥的路径开销,开销最小的优先选择 如果开销相同则比较BID的大小,同样还是小的优先 其中默认端口ID小的优先
Cost开销
指的是路径消耗的代价和成本,带宽越大,开销越小 非根桥进行根端口选举时,根路径开销最小的端口为根端口 物理段进行指定桥选举时,路径开销最小的桥为指定桥
3.在每个物理端口上选出一个指定端口(Designated Port) 这个阶段和根端口的选举类似 到达根网桥开销小的优先选择 本地BID小的优先选择 端口ID小的优先选择 注意,根网桥上的所有端口都是指定端口
4.剩下没有角色的端口就是阻塞端口(Blocked Port)
Hello time:2秒,配置BPDU的发送周期
Max age[最大生成时间]:20秒,判断链路故障时间,10个hello time周期
Forwarding delay[转发延迟]:15秒,状态切换延迟
从一个状态进入另一个状态,中间有15秒的延时
/*开启STP*/
[H3C] stp global enable
/*关闭接口STP*/
[H3C-Ethernet1/0/1] undo stp enable
/*配置STP的工作模式*/
[H3C] stp mode [ stp | rstp | pvst | mstp ]
/*配置当前设备的优先级*/
[H3C] stp [ instance [ID] ] priority [priority]
/*配置接口为边缘端口*/
[H3C-Ethernet1/0/1] stp edged-port
/*查看生成树状态*/
[H3C]display stp
/*查看各接口状态*/
[H3C]display stp brief
RSTP(Rapid Spanning Tree Protocol)
快速生成树是生成树的优化版
IEEE802.1W定义了RSTP
端口状态减少到三种
端口角色增加到四种
新增了边缘端口机制
根端口和指定端口与STP保持不变
阻塞端口细分两种:
代替端口[Alternata port] 根端口的备份端口
备份端口[Backup port] 指定端口的备份端口
在选举当前根端口和指定端口时,同时再选举备份端口,可以有效快速的解决某一台设备故障,或某一条线路故障,端口的切换,省去STP中繁琐的选举过程(30S)。
解决网络中大量主机频繁上下线
当链路激活时,边缘端口会立即成为Forwarding[转发]状态,不参与STP计算。
其中,边缘端口的UP/DOWN不会触发STP的拓扑变更机制。
一般用在连接PC的端口,配置为边缘端口
交换机跑的Trunk链路上有多个VLAN
STP和RSTP都用的一个生成树
无法实现不同VLAN在多条Trunk链路上的负载分摊
会浪费链路资源,如下图所示:
PVST (Per VLAN Spanning Tree)
每个VLAN上运行一个独立的STP,不同STP计算结果不同,可实现基于VLAN的流量负载均衡
MSPT(Multiple Spanning Tree Protocol)多生成树协议
IEEE802.1s定义了MSTP
将多个VLAN捆绑到一个实例里(域概念),每个实例里面单独的跑生成树
这样就允许了多条Trunk链路上实现VLAN负载均衡
MSTP、PVST具有RSTP的快速收敛、同时又具有负载分担的机制
MSTP兼容STP和RSTP,在实际运用中较多
关于生成树,这里暂时只需要了解STP,我们后续会详细讲解RSTP与MSTP,在这只做概述了解