HCIP —— 快速生成树 (RSTP)

2024-03-25 23:28
文章标签 快速 生成 hcip rstp

本文主要是介绍HCIP —— 快速生成树 (RSTP),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

RSTP --- 802.1w --- 快速生成树

主要针对STP的收敛速度进行改进升级。

RSTP 改进点:

1.更改端口角色

2.修改端口状态

3.对配置的BPDU的报文内容进行修改:P/A机制   (核心机制)

4.对配置的BPDU的处理方式

5.快速收敛机制 (总结)

6.拓扑变更,重新收敛机制

1.更改端口角色

生成树端口角色:根端口、指定端口、非指定端口

快速生成树端口角色:根端口、指定端口、替代端口、备份端口

非指定端口 ——   > 替代端口、备份端口

替代端口:

相当于根端口的替代通过和对端端口比较配置BPDU,则参数不优,导致落选的端口。如果根端口故障,将直接选择设备的替代端口最好的直接成为新的根端口,则直接进入转发状态(Forwarding)

备份端口:

备份指定端口(连接集线器(物理层设备),可能导致自环)。因为自身发送的配置BPDU导致阻塞端口,如果指定端口故障,将直接选择设备替代端口最好的端口,直接成为新的指定端口,则直接进入转发状态。

2.修改端口状态

                                                                STP与RSTP端口状态的对比

根据图可知,RSTP端口状态中把Listening侦听、Blocking阻塞、Disabled禁用 三个状态合成一个 Discarding 丢弃状态,但是总体的工作过程未发生改变。

Alternate ---- 替代端口   backup ---- 备份端口

3.对配置的BPDU的报文内容进行修改:P/A机制   (核心机制)

STP中,Flag 只用到了 Bit7 和 Bit0

RSTP中,启用了中间六位:

Agreement : A 位

Forwarding: 若置 1 ,则进入转发状态

Learning: 若置1 ,则进入学习状态

Port Role : 00  --- 刚开始建立生成树还没有确定端口,保留结果  

01  ---  Alternate替代 / Backup备份 端口  10  --- 根端口   11 --- 指定端口

Proposal:P位

RSTP 将选举角色的过程变更成 两两交换机之间的行为,优先级高的设备会发送一个P位  置1的RSTP - BPDU,请求该端口直接进入 转发 状态,对端设备收到后,将进入  “同步状态”  --- 将自身其他没有角色的端口进行直接关闭(保证在此期间内不会产生临时环路)

4.对配置的BPDU的处理方式

STP只有根桥每2S为周期发送配置BPDU,而在RSTP所有的设备均可以发送 RST - BPDU完成角色的选举。 Max age 减少为3个周期发送RST - BPDU 的时间,即 2S*3=6S。

5.快速收敛机制 (总结)

RSTP修改端口角色

非指定端口  —— > 替代端口:相当于根端口的替代。  通过和对端端口比较配置BPDU参数不优,导致落选的端口。如果根端口故障,将直接选择设备的替代端口最好的直接成为新的根端口,则直接进入转发状态

备份端口:备份指定端口   (连接集线器时,可能导致自环(物理层设备)):因为自身发送的配置BPDU导致阻塞端口,如果指定端口故障,将直接选择设备替代端口最好的直接成为新的指定端口,则直接进入转发状态

边缘接口 (交换机与PC端直接相连的接口)  --- 设置边缘接口,仅仅是 不让这个接口参与生成树的选举。

[sw5 - g0/0/0]stp edged-port enable --- 将连接PC的端口配置为边缘端口,快速进入转发状态,该发BPDU 依然会发。

[sw5-g0/0/4]stp bpdu-filter enable --- 不让交换机接口发送BPDU  --- 类似沉默接口

[sw5]stp bpdu-protection --- BPDU 保护

万一配置错误,交换机对交换机,一旦配置为边缘端口的接口收到BPDU,那么该接口将直接变成普通端口,重新进行生成树的选举。

6.拓扑变更,重新收敛机制

如果拓扑发生变化,首先感知到变化的设备,直接将自身的Mac地址表清空,然后和对端直连设备发送TC位置1的RST - BPDU 告知其他设备清空自身Mac地址表,如果有数据发送,则重新记录。


 

这篇关于HCIP —— 快速生成树 (RSTP)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/846587

相关文章

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

Python利用ElementTree实现快速解析XML文件

《Python利用ElementTree实现快速解析XML文件》ElementTree是Python标准库的一部分,而且是Python标准库中用于解析和操作XML数据的模块,下面小编就来和大家详细讲讲... 目录一、XML文件解析到底有多重要二、ElementTree快速入门1. 加载XML的两种方式2.

IDEA自动生成注释模板的配置教程

《IDEA自动生成注释模板的配置教程》本文介绍了如何在IntelliJIDEA中配置类和方法的注释模板,包括自动生成项目名称、包名、日期和时间等内容,以及如何定制参数和返回值的注释格式,需要的朋友可以... 目录项目场景配置方法类注释模板定义类开头的注释步骤类注释效果方法注释模板定义方法开头的注释步骤方法注

Python如何自动生成环境依赖包requirements

《Python如何自动生成环境依赖包requirements》:本文主要介绍Python如何自动生成环境依赖包requirements问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录生成当前 python 环境 安装的所有依赖包1、命令2、常见问题只生成当前 项目 的所有依赖包1、

MySQL中动态生成SQL语句去掉所有字段的空格的操作方法

《MySQL中动态生成SQL语句去掉所有字段的空格的操作方法》在数据库管理过程中,我们常常会遇到需要对表中字段进行清洗和整理的情况,本文将详细介绍如何在MySQL中动态生成SQL语句来去掉所有字段的空... 目录在mysql中动态生成SQL语句去掉所有字段的空格准备工作原理分析动态生成SQL语句在MySQL

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

Java利用docx4j+Freemarker生成word文档

《Java利用docx4j+Freemarker生成word文档》这篇文章主要为大家详细介绍了Java如何利用docx4j+Freemarker生成word文档,文中的示例代码讲解详细,感兴趣的小伙伴... 目录技术方案maven依赖创建模板文件实现代码技术方案Java 1.8 + docx4j + Fr

Java编译生成多个.class文件的原理和作用

《Java编译生成多个.class文件的原理和作用》作为一名经验丰富的开发者,在Java项目中执行编译后,可能会发现一个.java源文件有时会产生多个.class文件,从技术实现层面详细剖析这一现象... 目录一、内部类机制与.class文件生成成员内部类(常规内部类)局部内部类(方法内部类)匿名内部类二、

使用Jackson进行JSON生成与解析的新手指南

《使用Jackson进行JSON生成与解析的新手指南》这篇文章主要为大家详细介绍了如何使用Jackson进行JSON生成与解析处理,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 核心依赖2. 基础用法2.1 对象转 jsON(序列化)2.2 JSON 转对象(反序列化)3.

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.