文章目录
STP生成树协议原理与配置
前言
交换机工作原理回顾:
1.基于源MAC地址学习
2.基于已知目标MAC地址转发
3.当目标MAC地址未知时,泛洪处理
4.交换机收到广播/组播帧时,无条件泛洪处理
5.交换机一个接口可以学习多个MAC地址
6.交换机学习到同一个MAC地址,但是是从不同的端口学习到的,此时,将此MAC与后学习到的端口绑定起来
环路引起的问题:
1.广播风暴
广播是比较占用带宽的
2.MAC地址表不稳定
一、STP生成树协议的作用
为了解决环路的问题,所以产生了STP生成树协议
为什么要有生成树协议?
因为当有环路存在时,广播的发送会引起全网的广播风暴,因此需要打破环路生成的条件,而生成树协议就是解决二层广播风暴的重要手段,另外我们会阻塞一些端口,打破环路生成条件,当链路出现问题时,这些被阻塞的端口可以过渡到转发状态,实现链路的备份的作用。
STP生成树的作用:
消除环路(自动计算阻塞哪个端口)
链路备份(原来阻塞的端口进行up)
二、STP各种选举的报文–BPDU
BPDU网桥协议数据单元:
STP的各种选举是通过交换BPDU报文来实现的,BPDU是直接封装在以太网帧中的。
对于参与STP的所有SW,它们都通过数据消息的交换来获取网络中其他SW的信息,这种消息被称为BPDU。
BPDU是直接封装在二层的协议
BPDU的功能:
1.选举根桥
2.确定冗余路径的位置
3.通过阻塞特定端口来避免环路
4.通过网络的拓扑变更
5.监控生成树的状态
BPDU每2S由根桥发送一次。(拥有最小bridge-id的交换机成为根桥)
最初的网络,每个SW都认为自己是根桥,都会发送BPDU,比较Lowest BID,选举出一个根桥,此时就只有根桥发送BPDU。非根桥只进行转发,转发时只修改bridge-id和cost字段。
BPDU分两种类型:
配置BPDU—通常由根网桥以周期性间隔发出,包括了STP参数,用于进行各种选举。
TCN(topology change notification拓扑变更通告)BPDU—这种BPDU是当交换机检测到拓扑发生变更时所产生。
TCNBPDU:这种BPDU是SW检测到拓扑变更时产生的。可由非根网桥发出。
选举根交换机的规则:
Lowest BID=网桥优先级 + MAC地址 (越小越优)
交换机默认网桥优先级是32768
设置成根网桥两种方法:
1.修改网桥优先级命令
[SW1]stp priority 0(数值需要设定为4096的倍数)
2.设置此网桥为根网桥
[SW1]stp root primary(优先级将变为0)
查看谁是根网桥的命令:
display stp
三、STP协议中交换机端口角色
端口角色:
RP:根端口.每个非根网桥上有且只有一个,选举到达根网桥上路径开销值最小的成为根端口
DP:指定端口.根网桥上每个端口都是指定端口,非根网桥上需要转发数据的端口也是指定端口
AP:预备端口.该接口状态为blocking状态,只收BPDU,不发BPDU
端口状态描述:
Disabled(禁用状态):不转发数据帧,不学习MAC地址表,不参与生成树计算.
Blocking(阻塞状态):不转发数据帧,不学习MAC地址表,接收并处理BPDU,不发送BPDU
Listening(监听状态):不转发数据帧,不学习MAC地址表.参与生成树计算,接收并发送BPDU
Learning(学习状态):不转发数据帧,学习MAC地址表,参与生成树计算,接受并发送BPDU
Forwarding(转发状态):转发数据帧,学习MAC地址表,参与生成树计算,接受并发送BPDU
端口由Blocking过度到Forwarding有50S延时,Blocking到Listening有20S老化时间,Listening到Learning有15S过度时间,Learning到Forwarding有15S过度时间.
AP:blocking状态 RP和DP:forwarding状态
转发状态和阻塞状态是稳定状态,监听和学习状态是过渡状态
注意:华为模拟器里阻塞状态显示的是discarding
选举根端口、指定端口的规则:
1:Lowest path cost to root bridge (到达根的最小路径开销)
2:Lowest secder BID(最小的发送方BID)
3:Lowest sender port ID (最小的发送方PID)端口优先级(默认128)+发送方端口号
BW Cost
10M 100
100M 19
1G 4
10G 2
四、RSTP快速生成树协议
RSTP:快速生成树协议 缩短生成树端口由阻塞到转发状态的过度时间
(blocking到forwarding只要30s)
开启快速生成树方法
[Huawei]stp enable
[Huawei]stp mode rstp
五、MSTP多实例生成树协议
MSTP:多实例生成树,让指定的一个vlan或者是多个vlan生成一棵树,实现链路的负载均衡 (生产环境常用)
如何配置的命令整理如下:
stp mode mstp ##stp模式设置为mstp
stp region-configuration ##进入mstp设置模式
region-name huawei ##区域名称为huawei
revision-level 1 ##版本级别为1
instance 1 vlan 10 ##定义实例1为vlan10
instance 2 vlan 20 ##定义实例2为vlan20
active region-configuration ##对mstp配置保存
[Huawei]stp instance 1 root primary ##定义本交换机为实例1的根
[Huawei]stp instance 2 root secondary ##定义本交换机为实例2的备选根
实验拓扑图
实验过程
1.先使用hybrid口使得两台PC互通
2.查看各个交换机此时的接口状态
3.按照步骤配置多实例生成树
配置如下:
stp mode mstp ##stp模式设置为mstp
stp region-configuration ##进入mstp设置模式
region-name huawei ##区域名称为huawei
revision-level 1 ##版本级别为1
instance 1 vlan 10 ##定义实例1为vlan10
instance 2 vlan 20 ##定义实例2为vlan20
active region-configuration ##对mstp配置保存
[Huawei]stp instance 1 root primary ##定义本交换机为实例1的根
[Huawei]stp instance 2 root secondary ##定义本交换机为实例2的备选根
4.查看配置结果