生成树原理
STP
- STP(IEEE 802.1D),在局域网中消除数据链路层环路。
- 大型复杂结构网络冗余产生的问题:广播风暴 重复帧拷贝 MAC地址不稳定。
- 基本概念:一个根桥,两种度量,三个选举要素,四个比较原则,五种端口状态。
(1)一个根桥:具有最小桥ID的网桥,有且只有一个;
(2)两种度量
①ID
BID:桥ID,16位桥优先级+48位桥MAC地址;
PID:端口ID,8位端口优先级+8位端口号;
(优先级:BID默认32768,PID默认128)
②路径开销:由端口速率决定;
根桥上所有端口的根路径开销为0;
同交换机上不同端口间的路径开销值为0;
(3)三个选举要素
①根桥
②根端口:负责向根桥方向发送数据;
先比较路径开销,再比较桥ID,最后比较PID;
注意:同一设备根端口只有一个,根桥没有根端口。
③指定端口:与本机直连并且负责向本机转发配置 消息的设备就是指定桥,指定桥中向本桥转发配置消息的端口就是指定端口。
(4)四个比较原则
①最小ID:用于选举根桥,先比较桥优先级再比较桥MAC;
②最小累计根路径开销:用于在非根桥设备选举根端口;
③最小发送者ID:用于在非根桥上选择指定桥和根端口;
④最小PID:以上均相等时,选择PID值较小的端口;
(5)五种状态
①禁用:down;
②阻塞:处理BPDU但是不转发数据流量;
③侦听:确定端口角色;
④学习:根据用户流量构建MAC地址表,但不转发数据;
⑤转发:既转发流量也转发BPDU;
注意:等待两倍转发延迟才转发。(30S)
- STP定时器
(1) Hello Time定义发送BPDU时间间隔:2S(默认)
(2) 转发延迟:防止网络延迟而产生临时环路:15S(默认)
(3) Max Age BPDU最大老化时间 20S(默认)
非根桥接收到配置BPDU后比较比对报文Message Age和Max Age
如果Message < Max 那么继续转发
如果Message > Max 那么直接丢弃 - BPDU(桥协议数据单元)
①配置BPDU:用来进行STP计算和维护STP拓扑结构;
②TCN BPDU:当拓扑稳定后,下游通知上游网络出现链路故障所发送的BPDU报文;组播发送:组播MAC地址 01-80-C2-00-00-00;
③处理条件:长度至少35字节,且当发送者BID和发送端口PID至少一个和本桥接受端口不同时才会处理; - 报文基本格式
(1)消息类型:
0x00 配置BPDU
0x80 TCN BPDU
(2)区别:TCN BPDU只包含协议ID 、协议版本和消息类型;
(3)同时收到BPDU时,比较规则如下:
先比较->根桥ID
再比较->根路径开销
次比较->桥ID
最后比较->PID
- 配置命令:(仅限华为eNSP模拟器)
stp enable/disable(开启/关闭STP功能,缺省时开启)
stp mode stp/rstp/mstp(STP运行模式,缺省时mstp)
stp priority X(优先级,范围0-61440,步长4096,缺省32768)
RSTP
- RSTP(IEEE 802.1W),保留了STP的大部分算法和计时器,只在细节进行改进。
- 端口角色:根端口、指定端口、预备端口、备份端口、边缘端口。
预备端口和备份端口都不处于转发状态;
预备端口是根端口的备用;
备份端口是指定端口的备用;
边缘端口是用于连接PC或者不需要运行STP交换机的端口; - 端口状态:
不转发流量也不学习MAC地址 -> discarding丢弃
不转发流量但是学习MAC地址 -> learning学习
转发流量且学习MAC地址 -> forwarding转发 - RSTP只需要保证网络没有临时环路即可切换;
RSTP运行条件:该端口所处网段为P-2-P链路端口;
注意:在设计RSTP网络时一定要解决临时环路,保证RSTP正常切换。 - 快速收敛机制
(1)P/A机制
(2)根端口快速切换
(3)边缘接口 - 当网络中既存在STP,又存在RSTP时,整网迁就为STP协议;
当运行STP协议消失时,华为设备支持切换回RSTP。 - 配置为边缘端口的命令:(仅限华为eNSP模拟器)
stp edged-port enable/disable(边缘/非边缘,缺省时非边缘)
MSTP
- MSTP(IEEE 802.1S)
- 普通生成树缺点
(1)部分VLAN路径不通
(2)无法负载均衡(流量分担)
(3)次优二层路径
- MSTP域中可以有多个实例,每个实例可包含多个VLAN,但同一VLAN仅能属于一个实例。
- 配置命令:(仅限华为eNSP模拟器)
(1)开启MSTP配置
stp region-configuration
(2)设置所属MSTP区域
region-name X
(3)配置版本号
revision-level 1
(4)添加生成树实例
instance X vlan X
(5)激活MSTP配置
active region-configuration