STP---生成树协议

news2025/4/16 1:44:45
STP的作用

a)Stp通过阻塞端口来消除环路,并能够实现链路备份目的

b)消除了广播风暴

c)物理链路冗余,网络变成了层次化结构的网络

STP操作
  1. 选举一个根桥
  2. 每个非根交换机选举一个根端口
  3. 每个网段选举一个指定端口
  4. 阻塞非根,非指定端口
STP--生成树协议:作用专门设计出来解决二层环路问题的协议
线路冗余 设备冗余
交换机的广播风暴:洪范的数据帧在交换机之间来回循环发送,浪费资源
MAC 地址表的偏移
多帧复制
交换机会逻辑的阻塞一些端口,从而将一些链路断开,形成一种树形结构,从而形成无环的拓扑,之后当网络结构发生变换,STP 会监控整个网络,进而将原本阻塞的一些端口重新打开,形成备份路径
最短路径树--
IEEE组织
STP---802.1D标准下提出了生成树协议
PVST PVST +——思科提出的私有协议
RSTP- 快速生成树 802.1W
MSTP --多生成树 802.1t标准提出
STP ,一个交换网络只生成一颗树
跨层封装的协议---跨三四层封装的协议
STP 发送的数据包称为 BPDU---- 网桥协议数据单元
配置 BPDU ---用来做生成树的角色选举

       为了计算生成树,交换机之间需要交换相关的信息和参数,这些信息和参数被封装在BPDU( Bridge Protocol Data Unit )中。
        BPDU 有两种类型:配置 BPDU 和 TCN BPDU 。
        配置BPDU 包含了桥 ID 、路径开销和端口 ID 等参数。 STP 协议通过在交换机之间传递配置 BPDU 来选举根交换机,以及确定每个交换机端口的角色和状态。在初始化过程中,每个桥都主动发送配置 BPDU 。在网络拓扑稳定以后,只有根桥主动发送配置 BPDU ,其他交换机在收到上游传来的配置 BPDU 后,才会发送自己的配置 BPDU 。
        TCN 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 ---拓扑发送变化之后会发送TCN
BPDU---刷新MAC地址表
只包含三个参数
一个是 PID --协议ID
PVI--协议版本
BPDU -type 0X80代表TCN-BPDU
配置BPDU---选举生成树角色

根桥:生成树里面的‘老大’,桥id最小
备份根桥:生成树里面的“二把手”,老大挂了的时候,我当老大,桥ID第二小。
非根交换机:干活的小弟,都有一个根端口
根端口:离根桥最近的端口
指定端口:根桥所有参与生成树选举的端口,都一定是指定端口
非根非指定端口:被阻塞的端口---备用链路的端口
路径开销:是端口Cost值,可以用来选择最优的路径,值越小越优。根路径开销是端口到达根桥的过程中累计的路径开销。
BID:桥ID:是由桥优先级和桥MAC地址构成,桥优先级为高16位,MAC地址是低48位。
PID:端口ID:是由端口优先级和端口号构成,端口优先级为高4位,端口号                                   根网桥(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,则直接将该接口阻塞。
[Huawei]undo stp enable
[Huawei-GigabitEthernet0/0/1]undo stp enable --只关闭接口生成树
如果在阻塞状态一直没有收到配置 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
[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 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 的情况。
配置BPDU--用来STP做角色选举的BPDU,初始情况下交换机没有根的情况下,所有交换机会先把自己当作根设备去发生配置BPDU--之后比对其中的参数,选择唯一的树根。选择出树根之后,只有根设备会每2秒发生配置
BPDU用来设备保活,之后其他设备只转发根设备M发送的配置BPDU。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1495672.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java 数据结构之链表

public ListNode getIntersectionNode(ListNode headA, ListNode headB) {if (headA null || headB null) return null;ListNode pA headA, pB headB;while (pA ! pB) {pA pA null ? headB : pA.next;pB pB null ? headA : pB.next;}return pA;} public ListNode rev…

Linux cgrpup技术解析和验证测试

Linux cgrpup技术解析和验证测试 1. cgroup技术解析和分类1.1. 相关概念介绍1.2 cgroup子系统 2. cgroup子系统详解2.1 cpu子系统2.2 cpuacct子系统2.3 cpuset子系统2.4 memory子系统2.5 blkio子系统2.6 ns子系统 3. cgroup使用3.1 通用使用流程3.1.1 限制进程的cpu资源3.1.2 绑…

【开源项目】ollama:本地部署大模型

文章目录 1. 安装2. 使用体验2.1. 运行llama22.2. 运行llama2-chinese 项目地址:Github - ollama/ollama 注意:项目对硬盘容量、内存要求比较高。 1. 安装 从Github项目的最新release下载安装包,点击运行即可。 2. 使用体验 2.1. 运行ll…

中小企业如何降低网络攻击和数据泄露的风险?

德迅云安全收集了Bleeping Computer 网站消息, Arctic Wolf 表示 Akira 勒索软件组织的攻击目标瞄准了中小型企业,自 2023 年 3 月以来,该团伙成功入侵了多家组织,索要的赎金从 20 万美元到 400 多万美元不等,如果受害…

基于OpenCV的图形分析辨认05(补充)

目录 一、前言 二、实验内容 三、实验过程 一、前言 编程语言:Python,编程软件:vscode或pycharm,必备的第三方库:OpenCV,numpy,matplotlib,os等等。 关于OpenCV,num…

常见排序算法解析

芝兰生于深林,不以无人而不芳;君子修道立德,不为穷困而改节 文章目录 插入排序直接插入排序希尔排序 选择排序直接选择排序堆排序 交换排序冒泡排序快速排序优化挖坑法前后指针法非递归版 归并排序递归非递归 总结 插入排序 插入排序&#…

论文阅读笔记 | MetaIQA: Deep Meta-learning for No-Reference Image Quality Assessment

文章目录 文章题目发表年限期刊/会议名称论文简要动机主要思想或方法架构实验结果 文章链接:https://doi.org/10.48550/arXiv.2004.05508 文章题目 MetaIQA: Deep Meta-learning for No-Reference Image Quality Assessment 发表年限 2020 期刊/会议名称 Publi…

Unity性能优化篇(八) 导入的模型网格优化设置

模型导入Unity后,可以选中这个模型,在Inspector窗口设置它的属性。下面说的都是可自定义选择优化的地方 Model选择卡: 1.在Model选项卡,启用Mesh Compression可以压缩模型,压缩程度越高,模型精度越低,但是…

Docker前后端项目部署

目录 一、搭建项目部署的局域网 二、redis安装 三、MySQL安装 四、若依后端项目搭建 4.1 使用Dockerfile自定义镜像 五、若依前端项目搭建 一、搭建项目部署的局域网 搭建net-ry局域网,用于部署若依项目 docker network create net-ry --subnet172.68.0.0/1…

网络安全审计是什么意思?与等保测评有什么区别?

网络安全审计和等保测评在信息安全领域中都是非常重要的环节。但不少人对于这两者是傻傻分不清楚,今天我们就来简单聊聊网络安全审计是什么意思?与等保测评有什么区别? 网络安全审计是什么意思? 网络安全审计是通过对网络系统和网…

python 蓝桥杯填空题

文章目录 字母数判断列名(进制问题)特殊日期大乘积星期几 字母数 由于是填空题,那么寻找的话,就直接让每一个位置都是A,通过计算看看是不是结果大于2022即可 判断列名(进制问题) 这道题目,我们可…

Linux篇:基础IO

一 预备知识 1. 文件内容属性,内容与属性都是数据,都要在磁盘中保存。 2. 文件分为打开的文件和没打开的文件。 3. 进程在访问一个文件的时候,都是要先打开这个文件。打开文件之前,文件在磁盘,打开文件之后&#xff0…

RocketMQ架构详解

文章目录 概述RocketMQ架构Broker 高可用集群刷盘策略 概述 RocketMQ一个纯java、分布式、队列模型的开源消息中间件,前身是MetaQ,是阿里研发的一个队列模型的消息中间件,后开源给apache基金会成为了apache的顶级开源项目,具有高…

Mybatis-Spring | Mybatis与Spring的“整合“

目录 : 一、配置环境1. 整合环境需导入的JAR :Spring框架所需JARMybatis框架所需JARMyBatis与Spring整合的中间JAR数据库驱动JAR包数据源所需JAR包 (下面的例子中 : 用的不是这个数据源) 2. 编写“配置文件” 和 “.properties文件” ( 只是概述&#xf…

mysql从旧表 取出部分列并保存到新表几种方式介绍

在MySQL中,从旧表取出部分列并保存到新表有多种方式,主要包括以下几种: 1. 使用INSERT INTO ... SELECT语句: 这是最常用的方法。通过SELECT语句从旧表中选择需要的数据,然后使用INSERT INTO语句将数据…

【PHP】PHP通过串口与硬件通讯,向硬件设备发送数据并接收硬件返回的数据

一、前言 之前写过两篇PHP实现与硬件串口交互的文章,一篇是【PHP】PHP实现与硬件串口交互,接收硬件发送的实时数据(上)_php串口通信-CSDN博客,另一篇是【PHP】PHP实现与硬件串口交互,向硬件设备发送指令数…

Vue3+Vue Router使用<transition>过渡动画实现左右分栏后台布局

摘要 利用Vue3及其配套的Vue Router实现后台管理系统中的页面过渡动画。文章首先简要介绍了Vue3的特性和Vue Router的基本用法,利用Vue3提供的组件以及Vue Router的路由钩子函数来实现页面过渡效果。 代码结构 在 components 里有4个组件,其中 Layout…

HTTPS是什么,那些行业适合部署呢?

随着在线活动的增加,对您共享的关键数据的威胁已经产生了严重的后果,包括欺诈性金融交易、在线身份盗窃等。此外,随着技术使用的增加,网络攻击也变得更加复杂和具有挑战性。 毫无疑问,互联网用户的数据安全意识成倍增长…

(学习日记)2024.03.06:UCOSIII第八节:空闲任务+阻塞延时+main函数修改

写在前面: 由于时间的不足与学习的碎片化,写博客变得有些奢侈。 但是对于记录学习(忘了以后能快速复习)的渴望一天天变得强烈。 既然如此 不如以天为单位,以时间为顺序,仅仅将博客当做一个知识学习的目录&a…

uniapp小程序获取位置权限(不允许拒绝)

需求 小程序上如果需要一些定位功能,那么我们需要提前获取定位权限。我们页面的所有功能后续都需要在用户同意的前提下进行,所以一旦用户点了拒绝,我们应该给予提示,并让用于修改为允许。 实现 1.打开手机GPS 经过测试发现即使…