一.思维导图
STP(Spanning Tree Protocol)是生成树协议的英文缩写,可应用于计算机网络中树形拓扑结构建立,主要作用是防止网桥网络中的冗余链路形成环路工作。但某些特定因素会导致STP失败,要排除故障可能非常困难,这取决于网络设计。生成树协议适合所有厂商的网络设备,在配置上和体现功能强度上有所差别,但是在原理和应用效果是一致的。
原理
生成树的类型:
STP(标准生成树,又称为802.1D )
PVST,PVST+(Cisco私有生成树协议)
RSTP(快速生成树,又称为802.1W)
MSTP(多生成树协议,又称为802.1S)
1.1 802.1D
802.1D的端口角色有
根端口 指定端口 非指定端口
端口角色:
1.根端口 (RP):存在于非根网桥之上,一个非根网桥仅有一个,用于接收来自于根的BPDU
2.指定端口(DP):在一条链路中有且仅有一个,用于转发BPDU
3.阻塞端口(NDP):被逻辑上关闭的接口
在802.1D中除了存在角色外,还存在接口的状态;
接口状态状态:
down: 初始化所有接口状态
侦听: (15s)所有接口收发BPDU,选举各种角色 根端口 + 指定端口 进入学习状态
非指定端口进入阻塞状态
学习: (15s) 根端口 + 指定端口 记录所有进出数据帧中的源mac地址,生成mac地址表;
之后进入转发状态
转发、 阻塞。
保活时间: 20s 每隔20s进行一次激活接口
端口状态:
1.disable —关闭状态 1.关闭生成树协议 2.接口物理关闭
2.blocking—阻塞状态 ,不能发送BPDU ,可以接收BPDU ,不能发送和接收数据
3.listening —监听状态,可以发送并接收BPDU,不能发送和接收数据;(进行生成树选举
的)
4.learning —学习状态,可以发送并接收BPDU,不能发送和接收数据;(学习MAC地址
表)—目的:限制未知单播帧的泛洪
5.forwarding—转发状态,可以发送并接收 BPDU和数据
**
802.1D收敛时间:
**
初次收敛:30s
结构变化 - 重新收敛
1、存在直连检测 —— 交换机仅存在一个阻塞端口可以收到来自根网桥的BPDU;30s(15s侦听+15s学习)
2、非直连检测 —— 50s = 20s hold time(保活时间)+ 30s收敛时间
COST: 开销值
不同带宽的链路使用不同的cost (该cost值是内部编码的),非线性过程。
802.1D-1998
10G—2
1G—4
100M—19
10M—100
STP生成树选举:
1.选举 根网桥 (标识一颗树,在一个生成树中有且仅有一个)
选举规则: 最小的BID(先比较BID优先级,再比较MAC地址)
2.选举端口角色
选举根端口: 接收数据1.接口最小的开销值(RPC+PC)
2.最小的BID(上级)
3.最小的PID(上级)
4.比较本地PID
选举指定端口:发送数据1.本设备根端口的最小开销值
2.最小的BID(本地)
3.最小的PID(本地)
4.阻塞
生成树配置:
选择生成树的模式:
[Huawei]stp mode ?
mstp Multiple Spanning Tree Protocol (MSTP) mode
rstp Rapid Spanning Tree Protocol (RSTP) mode
stp Spanning Tree Protocol (STP) mode
802.1D生成树的缺点
1、收敛速度很慢
2、链路利用率低
3、不支持上行链路和骨干链路加速的
1.2 PVST —— Cisco私有生成树协议
PVST:基于vlan的生成树协议
提高链路利用率; 一个vlan一棵树,但每棵树依然是802.1D算法
选举默认有:网桥优先级 默认32768 mac地址 接口优先级128 接口编号
vlan2 网桥优先级 32768+2 mac地址 接口优先级128 接口编号
vlan3 网桥优先级 32768+3 mac地址 接口优先级128 接口编号
修改网桥优先级 只能以32768 + 4096 这样整倍的加,
不然如果是 32769 -32768 =1 会默认为是vlan1 的根网桥
优点:提高链路利用率
缺点:
1、收敛慢
2、树过于多 —— Cisco专门有独立的芯片解决树多的生成树;不占CPU也不占用内存
3、私有 —— 不兼容的 802.1q
1.3 PVST+ :在PVST的基础上,进行了升级;
1、兼容802.1q
2、可以部分的加速
加速在:1、端口加速 —— 用于接入层连接终端的接口
spanning-tree portfast 只要插上网线,2s变成转发状态;
stp edged-port enable 华为接口设为边缘接口也就是端口加速
2、上行链路加速 —— 所有接入层交换机 ;
在直连检测(只剩一个阻塞端口可以收到DBU)条件下直接将阻塞端口变为根端口,不再需要30秒,但是本地网桥优先级会被改大
3、骨干加速 —— 所有交换机配置;
针对次优BPDU 省去20s的hold time,直接开始侦听和学习
spanning-tree portfast ,交换机会发出BPDU,不会回来BPDU;
PVST+的缺点:
1、树多
2、加速不彻底
3.私有协议
1.4 快速生成树:RSTP(802.1W)
生成树选举:与802.1D完全一致
提出意义:不再计时
公有组织从 802.1D —> 802.1W 整个交换网络一棵树 华为厂家默认用 802.1W
私有组织从 PVST+ —> RSTP 基于vlan的快速生成树,一个vlan一棵树 思科默认用PVST+,RSTP
802.1W特性(以及与802.1D区别):
1.收敛机制:PA机制
2.端口状态:3个
3.端口角色:4
4.支持边缘端口(但默认不启用的)
5.自动集成上行链路加速(节约30s)
6.自动集成骨干链路加速 (节约50s)
7.在802.1W中所有的交换机都有发送BPDU的能力,BPDU超时时间为6s
配置: 与802.1D一致
1.5 MSTP(802.1s)基于组的快速生成树
MSTP(802.1s)—— 多生成树
一个组一棵树,整个的分组配置必须完全一致(华为交换机默认允许MSTP)
工作原理:将多个VLAN捆绑在一起,运行在一个STP实例里面,不同实例间的STP互相独立
在每个交换机上创建1-100的VLAN,将端口化为trunk:
SMTP配置 交换机SW1-3上都按此配置
[SW1]stp region-configuration //激活SMTP域配置
[SW1-mst-region]region-name huawei //设置SMTP域名字
[SW1-mst-region]instance 1 vlan 50 //将VLAN1-50划分到实例1里面
[SW1-mst-region]instance 51 vlan 100 //将VLAN51-100划分到实例2里面
[SW1-mst-region]active region-configuration //激活MST域的配置
[Huawei]dis stp instance 1 brief //查看交换机实例1中端口状态
MSTID Port Role STP State Protection
1 GigabitEthernet0/0/1 ROOT FORWARDING NONE
1 GigabitEthernet0/0/2 DESI DISCARDING NONE //阻塞端口