生成树总结

生成树总结

一、基础知识

为了保证交换网络高可用性,在交换机之间使用冗余链路,优于网络中的泛洪机制可能造成二层的桥接环路

二层环路导致的问题:
1、广播风暴
2、 MAC地址表翻滚:

MAC地址在交换机中的刷新时间为5min,一个接口可以对应多个MAC;
但一台交换机上同一MAC地址只能对应一个接口;

3、 同一数据帧的重复拷贝
生成树协议:
1、在一个二层交换网络,逻辑的阻塞部分接口;
2、当最佳路径故障时,自动疏通部分接口来实现链路备份;
生成树:
1、在一个二层交换网络中,生成一棵树型结构,逻辑的阻塞部分接口,使得从根到所有的节点仅存在唯一的路径;
2、当最佳路径故障时,自动打开部分阻塞端口,来实现线路备份的作用;

生成树在生成过程中,应该尽量的生成一棵星型结构,且最短路径树

二、生成树的类型

1、STP(标准生成树,又称为802.1D)

一 个 交 换 网 络 内 仅 存 在 一 棵 生 成 树 实 例

交换机间使用BPDU — 桥协议数据单元 — 交换机间沟通互动收发的数据

BPDU(网桥协议数据单元):

1)配置BPDU(用于生成树的选举以及重收敛)
2)拓扑变更 BPDU(通知交换网络出现了拓扑变更)

BPDU的数据结构:

在这里插入图片描述

Message type
代表着BPDU 的类型 (0X00 配置 0X80 拓扑TC)

Flags
标记位,在802.1D中,标识BPDU 是拓扑变更还是拓扑变更确认BPDU

Root ID
根标识符,用于标记一颗树的树根。与根网桥的BID 一致

Bridge ID
网桥标识符, BID , 用于标识本设备在本生成树的唯一性

Port ID
端口标识符, PID ,用于标识设备上某接口的唯一性。

Cost of path
路径开销。在华为设备中,称作root
path cost (RPC)
根路径开销

Hellotime
默认为2s ,BPDU 发送的间隔

Max-age
最大时间,可以理解为hello包的超时时间。默认时间为20s

Forward delay
转发延时,状态切换时间,默认为15s

Message age
在思科中默认为300s,就是对应的MAC地址条目的老化时间,(但实际上 该时间为此BPDU 经过的跳数);
华为中,代表着该BPDU传递的跳数(默认值为0,没经过一台交换机值+1)

Max-hop
默认为20 ,收到BPDU之后,将message age中的时间与max-hop进行比较
若小于,则正常使用该BPDU;若大于,则忽略BPDU

BID

使用8字节构成,组成方式: BID优先级字段(4个bit)+扩展系统ID(12个 bit)+Mac地址(6个字节)

BID 的使用:

1)比较 BID 优先级
2)比较MAC地址

BID优先级:

4位,默认值为32768 ,范围0-65535(实际范围0-61440),越小越优
BID 优先级单位4096(调整BID优先级时 值必须为4096的倍数)

扩展系统ID:

8位,在802.1D和802.1W 无意义,在802.1S中有用的

Mac地址:

为交换机 背板地址池中所有MAC地址中最小的,MAC地址越小越优。

PID

端口标识符 2个字节构成,组成部分:PID优先级(4个bit构成)+端口标识符(12个 bit构成)

使用方法:

1、比较PID优先级
2、Port number

PID优先级:

默认值为126,范围0-255(时间范围0-240),单位16

Port number

标识唯一性

RPC

根路径开销

COST

开销值
在这里插入图片描述

生成树选举

1)根网桥:

在每一棵生成树实例中,有且仅有一台交换机作为根桥;负责发送BPDU,计算和指挥整个树的收敛;作为树形结构的根部,交换网络部分的中心节点;

a)对比BPDU中的桥ID
桥ID=网桥优先级 + MAC地址(本地背板池)

b)交换机作为网桥设备时,关注终端设备发送的数据帧中的MAC地址,但交换机本地无MAC

c)需要运行STP协议的交换机,必须在出厂时由厂家进行MAC的写入(存储于交换机的背板地址池中)

d)若交换的背板地址池中MAC地址为多个,将选择数值最小的地址来进行选举

e)先比较网桥优先级(0-65535,默认32768)小优
若优先级一致,比较MAC地址,数值小优

2)根端口:

在每一台非根网桥上有且仅有一个接口;本地离根网桥最近的接口,用于接收来自根网桥的BPDU,同时转发终端的数据帧;

a)比较从根网桥发出,之后通过该接口进入时最小的cost值;

b)若入向的cost相同,比较接口对端的设备的BID,小优

c)若对端设备的BID相同,那么比较对端接口的PID;小优

d)若对端设备的PID相同,那么比较本地的PID,小优

PID=端口ID = 接口优先级(0-240,默认128 小优)+ 接口编号
先比较优先级,小优;若优先级相同比较接口编号,数值小优

3)指定端口:

在每一段运行了STP的物理链路上有且仅有一个接口;转发来自根网桥的BPDU,同时转发终端的数据帧;根网桥上所有接口均为指定端口;根端口的对端一定为指定端口;

a)比较转发来自根网桥的BPDU是,出项的最小cost值

b)若出向cost值相同,比较本地的BID,小优

c)若本地的BID相同,比较本地的PID,小优

d)若本地PID相同,将直接阻塞该端口

4)非指定端口:

a)以上所有角色选举完成后,剩余各个接口的角色为非指定端口;
该接口处于阻塞状态;

b)接口阻塞是逻辑上的,并不是接口被关闭;
该接口处于可以接收到数据,但不进行转发的状态;

接口状态

Down 所有接口通电后进入下一状态

侦听 交换机收发BPDU,选出所有角色;根端口、指定端口15s后进入学习状态,非指定端口进入阻塞

学习 终端设备发出数据帧中的源mac地址,生成交换机的MAC表(CAM表),15s后进入转发状态

转发 根端口、指定端口可以开始转发终端的数据帧

阻塞 逻辑阻塞

802.1D的收敛时间:

1)初次收敛 30s 15s侦听+15s学习
2)结构变化

a)存在直连检测 –本地仅存在一个阻塞端口可以接收到来自根网桥的BPDU;需要30s收敛

b)无直连检测 — 20s hold time等待+30s收敛=50s

802.1D算法的缺点:

1)收敛速度慢
2)链路利用率低 – 备份链路正常不转发数据

生成树配置

选择生成树类型

在这里插入图片描述

修改BID优先级

方法一:
在这里插入图片描述

方法二: 设置主备根
在这里插入图片描述

修改cost值

在这里插入图片描述

修改PID优先级

在这里插入图片描述

查看生成树

在这里插入图片描述

查看生成树端口状态

在这里插入图片描述

2、RSTP(快速生成树,又称为802.1W)

基于PA机制进行收敛(请求、同意),可以在2-3之内完成收敛;基于BPDU flags 字段内容进行分布式收敛
在这里插入图片描述

生成树选举

与802.1D完全一致

端口状态

Discarding 丢弃状态(disable blocking listening ),可以发送并接收BPDU,但是不能 发送接收数据

Learning 学习状态

Forwarding 转发状态

端口角色

根端口
指定端口
替代端口

阻塞,同一个交换机上使用阻塞端口替代根端口(替换时间0s,相当于自动集 成uplink-fast)

备份端口

阻塞,同一个交换机上针对同一条链路备份指定端口(备份端口切换时间 30s,因为出现备份端口一定存在hub,hub是半双工的,不能使用802.1W的机制)

边缘端口

边缘端口 、非边缘端口 ,一般在连接终端的接口上实施(access)
在这里插入图片描述

作用

1)自动启用端口加速(节约30s)

2)若收到 proposal 置位的BPUD,边缘端口不会同步

3)若收到 TC位置位的配置BPDU,不通过边缘端口转发

4)若启用边缘端口的接口收到了BPDU,则边缘端口特性失效

5)若收到TC位置位的BPDU,边缘端口学习到的MAC地址时间不变化(依然为300s)

链路类型

802.1W中存在两种链路类型

1)point-to-point 点对点类型
2)shared 共享型

802.1W特性(以及与802.1D区别)

1)收敛机制:PA机制
2)端口状态:3个
3)端口角色:4
4)支持边缘端口(但默认不启用的)
5)自动集成上行链路加速(节约30s)
6)自动集成骨干链路加速(节约50s)
7)在802.1W中所有的交换机都有发送BPDU的能力,BPDU超时时间为6s

配置

与802.1D一致

3、MSTP(多生成树协议,又称为802.1S)

多生成树配置

1)域名 name
2)reversion leave 版本等级
3)instance 实例映射

启用MSTP

在这里插入图片描述

MSTP 配置

在这里插入图片描述

修改instance 1 的BID 优先级

在这里插入图片描述

修改instance 1 的PID 或COST值

在这里插入图片描述

查看

在这里插入图片描述

查看接口状态

在这里插入图片描述

生成树的弹性(特性):

1.portfast
2.uplink fast
3.backbone fast
4.BPDU 防护

思科 BPDU guard
华为 BPDU protection
若启用了BPDU防护的接口收到BPDU ,则会导致接口down(error-down)
默认在华为BPDU 防护只能全局设置,并且仅仅针对边缘端口

在思科中BPDU guard 可以针对接口也可以针对全局
在这里插入图片描述
查看错误日志信息
在这里插入图片描述
恢复由于BPDU 防护导致接口shutdown(error-down)
1.手工(先物理关闭接口再重新开启)
2.自动(开启自动恢复)
在这里插入图片描述
查看: 在这里插入图片描述

5.BPDU-fitter BPDU 过滤

开启之后,该接口不发送也不接收BPDU信息,若接收到了BPDU ,则直接忽略,可以全局启用也可以接口启用,全局启用同样仅仅针对边缘端口,接口启用无所谓

全局做法

在这里插入图片描述

接口

在这里插入图片描述

6.root-protection 根防护

一般建议在连接新交换机的接口上启用,若该接口收到了优质根的BPDU信息,则接口进入discarding
在这里插入图片描述
查看
在这里插入图片描述

7.loop-protection 环路防护

防止当出现单向链路故障时,导致生成树出现转发环路,所以可以在阻塞端口上启用loop-protection,使阻塞接口可以发送BPDU ,进行链路双向检测
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_45756724/article/details/107550702