当前位置: 首页 > news >正文

HCIP的学习(27)

RSTP—802.1W—快速生成树协议

STP缺陷:
1、收敛速度慢----STP的算法是一种被动的算法,依赖于计时器来进行状态变化
2、链路利用率低

​ RSTP向下兼容STP协议。(STP不兼容RSTP)

改进点1—端口角色

802.1D协议---根端口、指定端口、非指定端口
802.1W协议---根端口、指定端口、(替代端口、备份端口)替代端口----简单理解为根端口的备份。替代端口是收到其他交换机的BPDU报文从而被阻塞的端口。如果根端口发生故障,那么替代端口可以成为新的根端口,加快了网络的收敛速度。一台交换机,有且只有一个根端口;替代端口可以有0个或多个。如果存在多个,最优的替代接口将成为新的根端口。备份端口----理解为指定端口的备份。备份端口是一台设备上由于收到了自己所发送的BPDU报文从而被阻塞的接口。

改进点2----端口状态

在这里插入图片描述

改进点3----RST BDPU报文

在这里插入图片描述

bit 6----表示同意的含义,P/A机制
bit 5----表示转发状态
bit 4----表示学习状态
bit 3和bit 2----代表发送该报文的端口角色
bit 1----表示提议含义,P/A机制

RSTP在网络稳定后,任何设备,都可以周期性发送RST BPDU报文

P/A机制----加快收敛

​ 改变状态切换机制,将原本基于计时器的切换方式,修改为选择出端口角色,立即切换状态。

在这里插入图片描述

1、SW11发送P标记位置为1的BPDU报文,请求将本接口的状态切换为转发状态。---能切换的前提是后续网络无环
2、SW12收到该报文后,将本地除了根端口以外的端口全部阻塞。来保证本地无环这个阻塞接口的过程被称为“同步过程”
3、完成同步过程后,本地其他接口都处于丢弃状态,设备向上游发送A标记位置为1的BPDU报文,并将自己的根端口切换为转发状态。
4、SW11收到该报文后,将自己的接口转换为转发状态。
5、向下游重复该过程,直到所有的根端口和指定端口状态切换为转发状态。

改进点4—对BPDU处理方式

  1. 所有设备在网络收敛完成后,都会周期性发送BPDU报文
  2. 缩短了BPDU的超时时间
    • RSTP将最大老化时间修改为三个周期更新时间(6S)
  3. 对次优BPDU报文的处理方式
    • 每一个交换机的每一个接口都会保存一份BPDU报文。—一定是最优的BPDU报文
      • 对于根端口和非指定端口而言,交换机保存的是对端发送的BPDU报文。
      • 对于指定端口而言,交换机保存的是根据根节点发送的BPDU而计算出的本地的BPDU报文。
      • 次优BPDU===接口收到的不如接口保存的BPDU报文。
    • STP
      • 指定端口:收到一个次优BPDU报文,它将立即发送自己的BPDU报文。
      • 非指定端口:收到一个次优BPDU报文,需要等待接口所保存的BPDU报文老化后,重新计算自己的BPDU报文,并将新的BPDU报文发送出去。
    • RSTP
      • 无论任何接口角色,只要接口收到的次优BPDU报文,立即发送自己的BPDU报文

改进点5—快速收敛机制

  1. 根端口和指定端口的快速切换。

  2. P/A机制

  3. 边缘端口

    1. 如果交换机的某个端口处于网络的边缘,即不与其他交换设备相连,直接与终端设备直连,这种端口可以被设置为边缘端口----因为终端设备无法处理STP报文。

    2. 边缘端口不会参与到生成树的计算过程中,当某个接口被设置为边缘端口,则立即切换到转发状态

      1. 边缘端口的关闭或激活不会触发RSTP拓扑变更。
    3. [sw3-GigabitEthernet0/0/22]stp edged-port enable —设置为边缘端口

    4. 边缘接口会持续性发送BPDU报文。—但是这种持续性发送是没有必要的。

    5. [sw1-GigabitEthernet0/0/1]stp bpdu-filter enable ----激活接口的BPDU过滤功能,激活后,该接口不会再发送BPDU报文。并且,该接口收到BPDU报文后,会直接忽略掉。

    6. 注意:一旦边缘端口收到BPDU报文,会立即丧失边缘端口属性,成为普通的STP端口,并重新进行生成树计算,引发网络震荡。----故,上述两条配置一般共同使用

改进点6—保护功能

BPDU保护[Huawei]stp bpdu-protection  ---在全局激活BPDU保护功能,激活后,如果边缘端口收到的BPDU报文,
则交换机直接关闭边缘端口。受保护的边缘接口由于收到BPDU报文而被关闭,缺省时,不会自动恢复。需要网络管理员在接口下通过
undo shutdown命令打开。根保护如果在一个稳定的二层网络环境中,新加入一台第三方设备,并且该设备的BID小于根网桥。那么会
抢占原本的根网桥角色,从而引发网络的重新收敛。部署根保护功能后,根网桥上的指定接口在收到更优的BPDU报文后,会忽略这些BPDU报文并将接口状态
切换到丢弃状态。从而保证根网桥的地址。[Huawei-GigabitEthernet0/0/1]stp root-protection   ---开启根保护功能,只能在指定接口上激活。当接口不再收到更优的BPDU报文后,经过两倍的转发延迟时间,接口状态从丢弃直接切换到转发状态。

环路保护

在这里插入图片描述

​ 网络正常时,接口将持续收到BPDU报文,而当网络出现链路的单向故障或者网络拥塞等问题时,接口无法正常接收BPDU报文,导致交换机需要重新计算RSTP,此时接口角色和状态发生改变,可能引入环路。

开启保护后:

  • 根端口
    • 如果常时间没有收到BPDU报文,那么交换机会重新选举根端口,并且该端口调整为指定端口。该接口状态切换为丢弃状态,避免环路产生。
  • 替代端口
    • 如果长时间没有收到BPDU报文,该端口调整为指定端口。将其状态保持在丢弃状态。

[Huawei-GigabitEthernet0/0/20]stp loop-protection —开启接口的环路保护。

拓扑变更保护

在这里插入图片描述

​ 如果网络环境极度不稳定,导致TC报文频繁洪泛,又或者网络中存在攻击者发送大量的TC报文,那么交换机的性能将受到极大的损耗。

拓扑变更保护功能—在单位时间内只进行一定次数的TC报文处理,如果超出这个次数,则按照规定次数处理,对于超出的部分,等待一段时间后进行处理

[Huawei]stp tc-protection —开启TC保护

​ 在单位时间2S周期内,只会处理一次TC报文。

[Huawei]stp tc-protection threshold 3 —开启TC保护并修改次数

​ 在单位时间2S周期内,处理3次TC报文。

改进点7—拓扑变更机制的改进

在这里插入图片描述

1、如果SW3收不到根桥发送的BPDU报文,设备所有的指定端口和根端口启动一个TC计时器(4S)。并且
清空所有端口学习到的MAC地址。然后向外发送TC置位的BPDU报文。
2、一旦计时器超时,则停止发送BPDU报文
3、SW2收到该报文后,清空所有端口的MAC地址信息,将自己的接口也启动TC计时器,并将TC置位报文向上游发送。
4、重复上述过程。

MSTP—802.1S----多实例生成树

​ PVST----一个VLAN为一个生成树

​ MSTP—引入了“示例”----instance-----多个VLAN的集合

​ instance ID-----示例标识----12bit(BID16bit的后12bit)-------instance 0–华为默认存在的

MSTI—多生成树实例

一个实例能够包含多个VLAN,但是一个VLAN只能属于一个实例

MSTP域----类似于OSPF中的区域的概念。可以将一个交换网络划分为多个MST域,在一个MST域中,会存在单个或多个实例

  • 相同的域名
  • 相同的修订等级
  • 相同的vlan和instance的映射关系

必须保证上述三点完全一致,交换机对MSTP的认知才相同

在这里插入图片描述

[sw1]stp mode mstp 
[sw1]stp enable MST域的配置
[sw1]stp region-configuration  ----进入MST域配置视图
[sw1-mst-region]region-name HCIP  ---修改域名
[sw1-mst-region]revision-level ?  ---修改修订等级,默认为0INTEGER<0-65535>  Revision level 
[sw1-mst-region]instance 1 vlan 2 to 10  ---创建一个instance 1,并加入vlan2到10
[sw1-mst-region]instance 2 vlan 11 to 20
[sw1-mst-region]active region-configuration   ---激活MSTP配置,如果未激活,则之前的配置不生效[sw1]stp instance 0 root primary ---设定为实例0的主根
[sw1]stp instance 1 root primary 
[sw1]stp instance 2 root secondary 

在这里插入图片描述

默认情况下,域名使用的是交换机的MAC地址

相关文章:

  • 基于SpringBoot+Vue的公园管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
  • Spring高手之路19——Spring AOP注解指南
  • 【云原生】Docker Compose 使用详解
  • Python 关于字符串格式化
  • C++ : 模板初阶
  • MFC实现守护进程,包括开机自启动、进程单例、进程查询、进程等待、重启进程、关闭进程
  • Apache Calcite - 自定义标量函数
  • Anaconda创建python环境默认C盘,如何修改路径
  • C语言PTA练习题(期末考试成绩排名,新生舞会,约瑟夫游戏(序号+姓名+密码),排队点名)
  • 【学习Day4】计算机基础
  • 网安速成之选择题(详细解析版)
  • Kmeans聚类模型
  • Polar Web【简单】login
  • 【vue实战项目】通用管理系统:作业列表
  • 【免费Web系列】JavaWeb实战项目案例六
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 【140天】尚学堂高淇Java300集视频精华笔记(86-87)
  • 【翻译】babel对TC39装饰器草案的实现
  • JS+CSS实现数字滚动
  • RxJS 实现摩斯密码(Morse) 【内附脑图】
  • scrapy学习之路4(itemloder的使用)
  • vue:响应原理
  • 服务器之间,相同帐号,实现免密钥登录
  • 记一次和乔布斯合作最难忘的经历
  • 前端_面试
  • 双管齐下,VMware的容器新战略
  • 算法系列——算法入门之递归分而治之思想的实现
  • 赢得Docker挑战最佳实践
  • 关于Android全面屏虚拟导航栏的适配总结
  • #!/usr/bin/python与#!/usr/bin/env python的区别
  • ###C语言程序设计-----C语言学习(6)#
  • #我与Java虚拟机的故事#连载12:一本书带我深入Java领域
  • #我与Java虚拟机的故事#连载18:JAVA成长之路
  • (C语言)二分查找 超详细
  • (安全基本功)磁盘MBR,分区表,活动分区,引导扇区。。。详解与区别
  • (办公)springboot配置aop处理请求.
  • (附源码)apringboot计算机专业大学生就业指南 毕业设计061355
  • (三)Hyperledger Fabric 1.1安装部署-chaincode测试
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (一)spring cloud微服务分布式云架构 - Spring Cloud简介
  • (原+转)Ubuntu16.04软件中心闪退及wifi消失
  • (转)详解PHP处理密码的几种方式
  • (最全解法)输入一个整数,输出该数二进制表示中1的个数。
  • *ST京蓝入股力合节能 着力绿色智慧城市服务
  • .NET 2.0中新增的一些TryGet,TryParse等方法
  • .Net Core与存储过程(一)
  • .Net MVC + EF搭建学生管理系统
  • .net 程序发生了一个不可捕获的异常
  • .net 开发怎么实现前后端分离_前后端分离:分离式开发和一体式发布
  • .NET 跨平台图形库 SkiaSharp 基础应用
  • .Net 路由处理厉害了
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)
  • .NET高级面试指南专题十一【 设计模式介绍,为什么要用设计模式】
  • .net中的Queue和Stack
  • @GlobalLock注解作用与原理解析