生成树STP

背景作用:避免广播风暴,需要网络中不能存在环路。防止环路导致网络中产生的大量的广播报文,导致网络拥塞。

​ 生成树协议主要是解决2层环路的

​ 三层环路是根据许多的路由协议去解决的。

​ 如果两台交换机多余两条链路能够到达,就有环。

如果交换机没有环,要不要开启生成树?要开启,原因是:防止自身成环。

STP,

​ 交换机通过发送BPDU来传递生成参选信息

通过计算,来选举闭塞端口,来隔断环路

协议:BPDU,包含信息完成生成树的计算,BPDU(默认=每2秒发送一次),根桥=网桥ID最小的网桥

​ 配置BPDU:用来计算和维护生成树的报文

​ TCN BPDU:当拓扑发生变化时,用来通知上层网络设备:网络拓扑发生了变化

配置BPDU包含:

​ 1、根桥ID:根桥的优先级+MAC地址,网桥ID=2Byte 网桥优先级+6Byte MAC地址(网桥优先级可以人工更改)

​ 2、根路径开销(RPC):到根桥最小的路径开销,根桥RPC=0,非根桥,则是到达根桥的最短路径上所有路径的开销之和。

​ 3、指定桥ID:生产或者转发BPDU的桥ID,桥优先级+桥mac

​ 4、指定端口ID:发送BPDU端口ID,端口优先级+端口索引号。

生成树的选举流程:

​ (1)在整个网络中选举唯一的一台根桥,

​ (2)每台非根桥选举一个根端口

​ (3)每个物理段上选举一个指定端口。

生成树算法

1、根桥的选举:

​ 桥ID,优先级+桥MAC,唯一标识一台设备。BID最小的被选举为根网桥。

​ BID=优先级+MAC地址

​ 优先级默认是32768,所有交换机的优先级都是32768,看MAC地址,MAC地址全球唯一,各不相同,通过MAC地址可以找出根网桥,MAC地址最小的。

​ 先比较桥优先级,优先级值越小越优;若优先级相等,比较桥MAC地址,地址越小越优。

​ 根桥的所有端口都是指定端口(DP)

2、确定端口角色:(使用RPC来选择端口角色)

​ 指定端口:根桥上所有的端口(指定端口:发送的BPDU比接收的BPDU要优)

​ 在每段线路上找指定端口, 每个物理网段都选举一个指定端口。

​ (1) 该条链路两端所连交换机,谁到根桥的开销小,谁上的端口就是指定端口。

​ (2) 该条链路两端所连交换机,谁的网桥ID小,谁上的端口就是指定端口

​ (3) 该条链路两端,谁的端口ID小,谁就是指定端口。

​ 根端口:(非根网桥上选择),非根桥都选举一个唯一的根端口

​ 开销值直接和链路带宽相关,开销值越小带宽越大。开销值越小到达根网桥越快。

​ (1)到达网桥开销最小的优先

开销就是数据s到达一个目的耗费的资源和代价

​ (2) 流经的上游交换机BID小的优先

​ (3) 端口ID小的优先

​ (1)非根桥上到根桥,路径开销最小的端口。

​ (2)若开销相等,则选择:端口对端所连交换机网桥ID最小的端口。

​ 阻塞端口:将既不是根桥端口也不是指定端口的端口阻塞

端口的状态

接口状态的作用:防止stp开启前,链路中存在临时环路的产生

端口状态 描述
Disable 失效状态,不转发数据,不接收,不发送报文(物理端口Down)
Blocking 有效状态,接收报文,不发送报文
Listening 不转发数据,不学习地址,接收,发送BPDU消息
Learning 不转发数据,开始地址学习,接收,处理,发送BPDU消息
Forwarding 转发任何数据,地址学习,接收,处理,发送BPDU消息

网桥故障处理:

1、发送TCN BPDU给上游设备2、上游设备收到该BPDU后,上游不是根桥,把下一个配置BPDU的TCA置位,发送给下游网桥,3、上游网桥从根端口发送TCN BPDU4、根桥收到BPDU后,将下一个要发送的配置BPDU中的TCA 置位。作为收到TCN的确认5、根桥同时也会将该配置BPDU中的 TC置位,发送给网络中的网桥,,拓扑发生了变化。

在STP的环境中网桥的MAC地址为老化300s,配置BPDU老化时间为20s,

根桥收到TcN置位的BPDU后,将下一个bpdu中的TCA置位发送给下游设备做为TCN的确认,

同时发送TC置位的BPDU给所有的邻居,

20s+15s:根桥将bpdu中的TC置位

各个网桥收到TC置位的bpdu,将自己的mac地址的老化时间变为15s

RSTP

相比STP算法一样,只是对收敛速度做了优化

​ 减少了端口状态

​ discarding

​ learning

​ forwarding

在RSTP环境下:
拆分端口(ap端口拆分为ap和backup端口)AP端口时备份根端口的(替换端口)
备份根端口对端的DP是UP状态,则立马进入转发状态,但是在stp中则会等待2个forwording时间才能进行转发状态backup端口是共享环境内的备份指定端口的(被自己的bpdu给抑制了)
SWB下的线段了,backup立即转为转发状态

flag字段用到了全8位

0:tc

1:p位

2,3:端口角色

4,5:端口状态

6:A位

7:TCA位

RSTP对BPDU的处理

网桥自动产生配置BPDU,不需要来自根桥的配置BPDU,发送周期为hello time 2s

RSTP,MSTP:老化时间为3个连续的hello time时间 6s,stp的bpdu的老化时间为20s

STP的AP端口收到低优先级的配置BPDU,忽略该BPDU
RSTP的AP端口收到低优先级的配置BPDU,立即回应最优的BPDU给对端交换机

根端口的快速收敛:

​ AP端口时备份根端口的(替换端口)

​ 备份根端口对端的DP是UP状态,则立马进入转发状态,但是在stp中则会等待2个forwording时间才能进行转发状态

边缘端口的快速收敛:

指定端口,连接主机的端口。不是端口角色

特性:是一种快速收敛的机制

1、边缘端口指网桥上直接和终端相连的端口
2、边缘端口可以直接进入转发状态,不需要延时,
3、端口的变化并且不会触发拓扑改变,不会触发mac地址表
4、边缘端口收到BPDU后,(下面连接一个交换机)会转变为非边缘端口
5、边缘端口下的主机上下线不会触发拓扑改变

指定端口的快速收敛:

(1)共享环境内:backup端口备份指定端口的(被自己的bpdu给抑制了)

(2)在点对点链路上:(点对点链路是设备和主机)

​ 进行P/A机制的协商,协商完成后。实现指定端口的快速收敛

P/A协商:

I. 指定端口(SWA)向下发送P置位配置BPDUII. 接收交换机(SWB)检查接收到P置位BPDU的端口是否为根端口,是,则进行同步。否则不做处理III.同步是阻塞本网桥除边缘端口外的其他指定端口,然后SWB根端口进入转发状,同时向上游SWA发送A置位BPDU,上层收到,上层交换机的DP进入转发状态IV. 下层SW阻塞DP的原因是: 防止临时环路的产生,如何打开?答:往下层继续P/A协商。V.  P/A不依赖任何的定时器,能在新增链路或者链路恢复时实现快速的收敛

RSTP拓扑改变处理

拓扑触发条件:非边缘端口状态变成forwarding状态

1、没有使用TCN BPDU,谁接收到拓扑改变信息后在2倍的hello time时间内,直接发送TC置位的bPDU,不会发送TCN BPDU通知根桥发TC BPDU,

2、交换机接收到TC BPDU后,交换机清除所有DP端口和RP端口学来的mac地址,除接收到TC报文端口学到的MAC

​ 然后直接刷新MAC地址表,改刷新时间为15s,而不是像STP缩短老化时间。

TC报文时书刷新mac地址表的。

阻塞端口对于次优BPDU能做处理,目的是让发送次优BPDU的设备能进快确定角色进入转发状态

处理方式:从所有DP和RP发送TC置位BPDU,和STP设备混合使用会失去快速收敛特性,注意是该接口

MSTP

STP和RSTP都是单树的,不能实现在2层网络中实现负载分担 ,只能是链路的备份,浪费了带宽资源

MSTP基于实例构建多棵树,不但能够实现备份和快速收敛,还能够实现数据的负载分担

MSTP可以构建多个MST域如果要保证网桥在同一个MST的域

配置MSTP注意:

(1)域名一致:默认是以交换机的MAC地址做为域名

​ (2) 修订级别:默认是0 没实际含义 可以修改

(3)映射关系:VLAN和实例的映射关系一致

CST、IST、CIST

(公共生成树,内部生成树,公共和内部生成树)

把域逻辑成网桥,逻辑网桥之间构建的生成树是CST域内实例0的树指的是IST的树域内和域间的网桥构建的树是CIST

CIST的总根和域根

总根:所有交换机中桥ID最小的交换机是

域根:域内IST的交换机去往总根开销最小的设备为域根

(其他域的域根不一定是桥ID最小的交换机)

选举过程:1、初始环境下,,每一个域内的交换机交互BPDU,选举根桥。2、域间比较整个CIST的交换机的桥id,最小的为总跟3、所有域内离总根开销最小的

什么是msti和msti的域根?

非实例0的树为msti的树msti树的根桥为msti的域根不同msti的树一般对应不同的拓扑结构,也可以是相同的。总根比较桥id,IST根比较去往总共开销,MSTI域根比较桥id

MSTP中的端口角色:master端口

IST域内可以存在2个或者多个域边界端口,
域根指向总根的端口为master端口 (可以理解为CST的RP)
连接其他域的边界端口可以理解为CST的DP如果没有master,那这些交换机在同一个域内
MSTP的计算包括 CST的计算,IST的计算,MSTI的计算,但是在完成收敛的时候是同时进行的 CST计算:把域逻辑成网桥,逻辑网桥的代表是域根,总根所在域的代表为总根。总根所在的域在CST计算时可以理解为根桥,其余为非根桥,算法和标准的算法一样IST的计算:域根比较的不是桥ID,而是去往总根最近的。算法和STP一样MSTI计算,域根比较的桥ID小的算法和STP算法一样H3C设备和其他设备混合使用要保证网桥工作在同一个MST域需要开启摘要侦听。直接复制收到的摘要发给对端设备,不做摘要计算MSTP收敛和RSTP一样,和RSTP结合使用的时候,如果RSTP是上游设备,MSTP是下游设备,要在MSTP的设备开启不检查A置位的BPDU。因为MSTP要检查P.A同时置位才同步

CIST优先级向量:

​ 1、首先比较CIST总根的ID,ID小的为优

​ 2、若总根的ID相同,则比较CIST的外部路径开销,开销小的为优

​ 3、若开销一定,则比较域根的id,id小者为优

​ 4、如果域根的id相同,则比较CIST的内部路径开销,开销小的为优

​ 5、若内部开销相同,则比较CIST的指定桥ID,指定桥ID小者为优

​ 6、指定桥id相同,则比较CIST指定端口id,端口id小的为优

​ 7、如果上述都相同,则比较CIST的接收端口ID,接收端口id小的为优

MSTP的PA机制:

对于MSTP,下游设备在收到上游设备的proposal和Agreement消息后,回应一个Agreement的置位的BPDU

RSTP的PA机制:

对于RSTP,下游设备在收到上游设备的proposal消息后,回应一个Agreement的置位的BPDU

STP保护机制(4种)

1、BPDU保护

​ 交换机一般把连接终端的端口设置为边缘端口

​ 防止从边缘端口发起的请求对网络进行攻击,开启后边缘端口收到BPDU后,关闭端口

配置:

[H3C]stp bpdu-protection (bpdu的保护)
[H3C]int gi1/0/1
[H3C-GigabitEthernet1/0/1]stp edged-port

2、根桥保护

​ 为了防止新加入的设备影响根桥的地位,比如新加入的交换机优先级较为优,抢占核心根桥的位置,导致根桥到接入设备。开启后如果接口收到其他更优的BPDU该接口状态设为discarding状态。

配置代码:
[H3C-GigabitEthernet1/0/2]stp root-protection
[H3C-GigabitEthernet1/0/2]%Aug  2 10:06:39:103 2021 H3C STP/4/STP_ROOT_PROTECTION:
Instance 2's ROOT-Protection port GigabitEthernet1/0/2 received superior BPDUs.

3、环路保护:

​ 接口UP但是数据发送不出去:

​ 原因:1、可能是网路拥塞

配置了环路保护的端口,当接收不到上游设备发送的BPDU报文时,环路保护生效。
如果该端口参与了STP计算,则不论其角色如何,该端口在所有实例都将处于
Discarding状态"

配置:在接入交换机的上行端口配置。在有阻塞端口的交换机上配置就行了
[H3C-GigabitEthernet1/0/2]stp loop-protection
[H3C-GigabitEthernet1/0/3]stp loop-protection

TC-保护:

TC-BPDU的作用:

​ 通知其他的交换机的mac地址表的老化时间为15s,

一旦主机持续发送伪造的TC-BPDU,造成交换机持续收到,并刷新mac地址表,导致交换机中mac地址表是空的,发送单播帧时,一直在洪泛,

RSTP、MSTP中:运行RSTP和MSTP的交换机接收到TC-BPDU后,马上刷自己接口收到的MAC地址表,

[H3C]stp tc-protection
[H3C]stp tc-protection threshold 15

华三STP、RSTP、MSTP的详解相关推荐

  1. STP/RSTP/MSTP 精华详解

    STP/RSTP/MSTP 精华详解: STP 概述 : 因为二层设备的互联,并因为交换机的转发原理,会导致物理环路的产生.这时就会使用到STP协议 STP:在有环的拓扑里面形成一个无环的逻辑拓扑(从 ...

  2. 华三路由追踪命令 tracert详解

    华三路由追踪命令 tracert 此命令用来查看IPv4报文从源端传到目的端所经过的路径 tracert [ -a source-ip | -f first-ttl | -m max-ttl | -p ...

  3. 华为、H3C、锐捷三家交换机配置命令详解

    一.华为交换机基础配置命令 1.创建vlan: <Quidway> //用户视图,也就是在Quidway模式下运行命令. <Quidway>system-view //进入配置 ...

  4. STP/RSTP/MSTP协议简介

    STP/RSTP/MSTP协议简介 STP 一.STP协议 二.为什么要有STP协议? BPDU 一.什么是BPDU? 二.BPDU的功能 三.BPDU的类型 端口 一.端口角色 二.端口状态描述 三 ...

  5. 【HCIE-RS 天梯路】STP RSTP MSTP

    生成树协议 STP(Spanning Tree Protocol)用于二层破环 不使用生成树协议可能会导致:       1. 广播风暴 2. MAC地址漂移 三层口没有STP 生成树协议模式:(实例 ...

  6. STP/RSTP/MSTP的概念及特点

    STP/RSTP/MSTP的概念及特点 一.STP 1 基本概念 STP(Spanning Tree Protocol)即IEEE 802.1D,其作用主要有三个,第一是eliminate logic ...

  7. 简洁版本 STP/RSTP/MSTP的区别以及各自的特点

    参考:https://blog.csdn.net/cisco_eigrp/article/details/47134357 生成树相关的几个概念STP/RSTP/MSTP STP:IEEE Std 8 ...

  8. Android复习14【高级编程:推荐网址、抠图片上的某一角下来、Bitmap引起的OOM问题、三个绘图工具类详解、画线条、Canvas API详解(平移、旋转、缩放、倾斜)、矩阵详解】

    目   录 推荐网址 抠图片上的某一角下来 8.2.2 Bitmap引起的OOM问题 8.3.1 三个绘图工具类详解 画线条 8.3.16 Canvas API详解(Part 1) 1.transla ...

  9. QT快速入门、三点求圆心实现详解

    在编程中,会经常用到数学计算,所以C++将常用的数学计算,例如求正余弦等,封装成函数(正是我们在3.2 数学计算中学习到的),我们只需要写入简单的语句就可以执行所需要的功能,这正是函数的意义.在这一章 ...

  10. 圆形界面 开启相机_「基础篇三」手机摄影拍照界面详解

    ​[基础篇三]手机摄影拍照界面详解 手机拍照对我们来说已习以为常,每天我们都会用手机相机功能或多或少的拍出几张照片.故手机拍照界面对我们来说也不陌生,但手机拍照界面上的那些按钮,那些功能你都用过吗?你 ...

最新文章

  1. PostgreSQL 10.1 手册_部分 II. SQL 语言_第 12 章 全文搜索_12.9. GIN 和 GiST 索引类型
  2. 远程调用RestTemplate
  3. Java 洛谷 P1308 统计单词数
  4. 一击进榜!达摩院十年“扫地僧”,揭秘阿里云数据仓库逆袭之旅
  5. 约瑟夫环 java实现
  6. The compiler compliance specified is 1.7 but a JRE
  7. A. And Then There Were K
  8. Mybatis—注解开发
  9. go爬虫和python爬虫哪个好_python 爬虫实战项目--爬取京东商品信息(价格、优惠、排名、好评率等)-Go语言中文社区...
  10. 调剂厦大计算机,2017智能系硕士统考研究生调剂信息
  11. Python字典技巧一锅炖
  12. Web-Attak系列教程第二季0x12讲——HTTP的请求与响应格式
  13. 百度网盘资源下载快速提速方法,无需破解
  14. vue 日历插件ele-calendar
  15. OpenGL ES 2.0 系列一
  16. grldr引导iso PE img 文件
  17. 在腾讯轻量云上搭建 CS:GO 服务器
  18. python pandas如何实现类似于excel中left或者right函数
  19. 基于JAVA医院预约挂号系统设计与实现 开题报告
  20. python 实现多继承

热门文章

  1. mysql下载32位安装教程_MySQL下载安装教程
  2. iVMS-4200 Vs区别_异地恋 VS 网恋,哪个更难坚持到最后?| Newth互动158
  3. CAD第一堂课:面板介绍(上)
  4. Microsoft ODBC Driver 17 for SQL Server: 以前的某个安装需要重新引导计算机以便使更改生效。若要继续,请重新启动计算机,然后再次运行安装程序
  5. Android APP存储路径和缓存清理规范
  6. HTML5+JS手机web开发之jQuery Mobile初涉
  7. 基于QT-QGraphicsView的网络拓扑图
  8. 避免刷新页面时重复提交表单数据
  9. 《善用大脑高效学习》——比尔·卢卡斯
  10. 启发式路径搜索算法介绍