STP--生成树协议:作用专门设计出来解决二层环路
问题的协议
线路冗余 设备冗余
交换机的广播风暴:洪范的数据帧在交换机之间来
回循环发送,浪费资源
MAC地址表的偏移
多帧复制
交换机会逻辑的阻塞一些端口,从而将一些链路断
开,形成一种树形结构,从而形成无环的拓扑,之
后当网络结构发生变换,STP会监控整个网络,进而
将原本阻塞的一些端口重新打开,形成备份路径
最短路径树--
IEEE组织
STP---802.1D标准下提出了生成树协议
PVST PVST+——思科提出的私有协议
RSTP-快速生成树 802.1W
MSTP--多生成树 802.1t标准提出
STP,一个交换网络只生成一颗树
跨层封装的协议---跨三四层封装的协议
STP发送的数据包称为BPDU----网桥协议数据单元
配置BPDU---用来做生成树的角色选举
配置BPDU---用来做生成树的角色选举
STP--PVI为0 RSTP 2 MSTP 3
ROOT-ID RID---指的是最终被选择成为树根设备
的ID
Brige ID B-ID---指的是交换机的编号
前16为二进制为设备的优先级
后48位为设备的MAC地址---
RPC--根路径开销:非根设备到达根设备的开销
PORT-ID PID---前四位是接口的优先级,后12位
是接口的编号
消息寿命默认是20
TCNBPDU---拓扑发送变化之后会发送TCNBPDU---刷新MAC地址表
只包含三个参数
一个是PID--协议ID
PVI--协议版本
BPDU-type 0X80代表TCN-BPDU
配置BPDU---选举生成树角色
根网桥(R B)---整个交换网络需要选择唯一的根
设备
根端口( R P)--所有非根设备都需要选择至少一个
接口成为根端口(用来接收配置BPDU)
指定端口( D P)---每段链路都会选择一个接口成
为指定接口(用来转发配置BPDU)
非指定端口(N DP)---最终会被阻塞的端口--没
有角色的接口都是非指定端口
根网桥(R B)---整个交换网络需要选择唯一的根
设备
设备对比配置BPDU的参数后选择----根据配置
BPDU中的BID选择
Brige ID B-ID---指的是交换机的编号
前16为二进制为设备的优先级后48位为设备的MAC地址---
优先级---0-65535 设备默认优先级数值为 32768
以4096作为步调修改--- 16 在stp协议中只使用前4
位,后12位在MSTP中才使用,实际stp的优先级范
围是0-61440
设备优先级的对比规则是数值越小越优--MAC地址
根端口( R P)--所有非根设备都需要选择至少一个
接口成为根端口(用来接收配置BPDU)----RPC到达根设备的开销
沿途累加开销----生成树的开销只看入接口开销
入向RPC--
1.会选择入向RPC值更小的作为根端口
2.会比较对端设备BID,会选择BID更小的设备对应
的接口作为根端口
3.选择对端这边PID--接口id更小的作为根端口
PID---16位二进制
前4位是接口的优先级,后12位是接口的编号
0-240 接口默认的优先级是128---16作为步调
修改接口优先级
4.如果对端设备PID一样时,将比较自身的接口
PID,选择pid数值更小的作为根端口
指定端口--DP
指定端口( D P)---每段链路都会选择一个接口成
为指定接口(用来转发配置BPDU)
0。如果一段链路对端是根端口,那么自身一定是
指定
1.先比较接口的出向RPC
2.如果出向RPC一样,会看本设备的BID小的作为指
定端口。
3,自环,选择自身端口PID更小的作为指定端口
4.只要接口收到自身发送的配置BPDU,则直接将
该接口阻塞。
如果在阻塞状态一直没有收到配置BPDU则,将
等待20s,之后直接进入下一个状态。如果收
到的配置BPDU则直接进入下一个状态。
listening状态,在进行生成树的选举---并且在
生成树必须在listening状态停留15S才能进入
下一个状态。生成树为了避免一些设备选举完
成一些设备没有完成的情况(害怕出现临时环
路)。一旦在选举过程中,接口被认定为非指
定接口,将直接回到阻塞状态。
learning状态:进行MAC地址表的学习,并且
会在该状态停留15S,作用:尽量减少发送数据
时广播的产生。
最终来到转发状态,这个状态接口才会发送业
务数据
生成树初始收敛至少需要50S的时间。收敛速度
慢。
根桥设备故障--需要50S的时间重新选举角色
(重新收敛)
直连链路故障--
当根端口故障,但是设备还可以通过其他的端
口收到配置BPDU,那么将直接进入listening
状态。之后进入学习状态,一共需要30S
非直连链路故障--当根端口故障,但是设备不
能通过其他的端口收到配置BPDU,那么将等
待20S后,直接进入listening状态。之后进入
学习状态,一共需要50S
配置:
[Huawei]stp enable -开启协议
[Huawei]stp mode stp --更改协议模式
[Huawei]display stp --查看stp的参数---
需要人为干涉生成树的选举结果
[Huawei]stp priority 24576--修改设备BID的优先级--数值越小约优
[Huawei]stp root primary ---配置设备成为根桥设备
实质是将优先级改为0
[Huawei]stp root secondary ---配置备份根桥实质是
将优先级改为4096
RSTP +MSTP
1.收敛速度慢的问题--RSTP
2.链路利用率低---MSTP
RSTP---
RSTP改进点
1.变更端口角色---根端口 指定端口 非指定端口
根端口 指定端口 替代端口(ALTE ) 备份端口
(backup)
替代端口(ALTE )---替代端口的作用是作为根端
口的备份--当设备的根端口故障后,会从自身其他
的替代端口中选择参数最优的作为新的根端口。
生成树比对配置BPDU中的一些参数最终参数不优的
一些端口---不是根端口和指定端口
备份端口(backup)---指定端口的备份:如果一
个接口收到了自身发送的配置BPDU则该端口为备
份端口。
2.修改端口状态---
禁用,阻塞,侦听,学习,转发--
DISCARDING----丢弃状态:不能转发业务数据也不
能进行MAC地址表的学习
Learning--学习状态:不能转发业务数据,但是可
以进行MAC地址表的学习
FORWARDING---转发状态---即能转发业务数据,也
可以进行MAC地址表的学习
3.修改了配置BPDU报文中一些参数
P/A机制---相当于是RSTP收敛速度的优化措施,本
质是将已经选择出角色的端口(指定端口)直接进
入转发状态,不需要等待生成树的计时器
同步状态是为了保证自身后面的交换网络漫游临时
环路。
4.加快了生成树的失效判断时间--在STP中该时间为
MAX AGE默认 20s,在RSTP中将其优化为3个周期
时间(2s)
5.快速收敛机制---总结
1.根端口和指定端口的快速切换---本质是设计了两
个新端口角色,省去了重新选举的时间
2.P/A机制
3.边缘端口
[Huawei-GigabitEthernet0/0/3]stp edged-port
enable ----作用让连接PC的端口直接进入转发状态
[Huawei-GigabitEthernet0/0/3]stp bpdu-filter
enable ----相当于过滤该接口的bpdu
[Huawei]stp bpdu-protection ---BPDU保护---如果边
缘接口收到配置BPDU将直接变成普通端口进行角
色选举
6.拓扑结构发生变化的处理机制---RSTP如果发生拓扑变更将直
接发生TC置为1的RST-BPDU直接让其他设备将MAC地址表老化
时间改为15S。
MSTP---多生成树协议
改进点1.考虑了VLAN,MSTP生成树提出了实例的概念
(instance )
Instance的取值范围----0-4094
0---默认情况下所以VLAN都属于实例0
同时MSTP还提出了域的概念(region)---单域MSTP交换网络
1.域名必须相同---region name必须一样
2.必须具备相同的修订等级--revision level
3.相同的VLAN和实例映射关系
MSTP配置:
1.配置VLAN
1.配置VLAN
[Huawei]vlan batch 1 to 10
[Huawei-GigabitEthernet0/0/2]port link-type trunk
[Huawei-GigabitEthernet0/0/2]port trunk allow-pass vlan 1 to 10
[Huawei]stp enable
[Huawei]stp
[Huawei]stp m
[Huawei]stp mode m
[Huawei]stp mode mstp
[Huawei-mst-region]region-name aa-配置MSTP域名称
[Huawei-mst-region]revision-level 1--修改修订等级,可以不修改
[Huawei-mst-region]instance 1 vlan 1 to 5
[Huawei-mst-region]instance 2 vlan 6 to 10--配置VLAN和实例映射关系
[Huawei-mst-region]active region-configuration ---必须激活配置
修改MSTP实例优先级
[Huawei]stp instance 1 root secondary --
链路聚合
VRRP
根端口只看接口收到的配置的BPDU的情况,指定端
口只看发送BPDU的情况。