HCIP STP(生成树)

news2024/11/24 8:27:41

目录

一、STP概述

二、生成树协议原理

三、802.1D生成树

四、STP的配置BPDU

1、配置BPDU的报文格式

2、配置BPDU的工作过程

3、TCN BPDU

4、TCN BPDU的工作过程

五、STP角色选举

1、根网桥选举

2、根端口选举

3、指定端口选举

4、非指定端口选举

六、STP的接口状态

1、接口状态

2、接口状态迁移

3、首次收敛

七、STP基本配置

1、配置生成树工作模式

2、配置网桥(可选)

3、备份根桥(可选)

4、配置交换机的STP优先级

5、配置接口路径开销(可选)

八、RSTP--快速生成树协议

1、802.1D生成树的缺点

2、快速生成树(RSTP)的改进点

1)端口角色

2)端口状态

3)RST BPDU

4)快速收敛机制

5)配置BPDU的处理

6)BPDU保护功能

3、快速生成树的原理

九、MSTP--多生成树协议

1、STP、RSTP缺点

2、MSTP概述

3、MST Region

4、MSTP配置

1)配置首生成树工作模式

2)启用MSTP

3)配置MST域

① 进入MST域视图

② 配置MST域的域名

③ 配置多生成树实例与VLAN的映射关系

           ④ 激活MST域的配置

4)MSTP配置根桥和备份根桥

5)修改优先级--可选


一、STP概述

以太网交换机网络中为了进行链路备份,提高网络的可靠性,通常会使用冗余链路。但是使用冗余链路会在交换网络上产生环路,引发广播风暴以及MAC地址表不稳定等故障现象,从而导致用户通信质量较差,甚至通信中断。为了解决交换网络中的环路问题,提出了生成树协议(STP)--Spanning Tree Protocol。

二、生成树协议原理

在二层交换网络中,逻辑的阻塞部分的接口,实现从根交换机到所有节点唯一的路径且为最佳路径,生成一个没有环路的拓扑,当最佳路径出现故障时,个别被阻塞的接口将打开,形成备份链路。生成树在生成过程中,应该尽量的生成一棵星型结构,且最短路径树;

三、802.1D生成树

生成树是相对比较早的一个协议了,所以,也经历了多种版本的更替。我们现在常见的主要是802.1D生成树,RSTP快速生成树协议--定义在802.1W中,也被称为802.1W生成树,MSTP多生成树协议--定义在802.1S中,也被称为802.1S生成树。

四、STP的配置BPDU

所谓BPDU---Bridge Protocol Data Unit,网桥协议数据单元--其实就是生成树需要发送的数据包的叫法。

        BPDU是能够正常工作的根本,BPDU是STP的协议报文。

        STP交换机之间会交互BPDU报文,这些BPDU报文携带着一些重要信息,正是基于这些信息,STP才能够顺利工作。

PBDU主要分为两大类:1、配置BPDU;2、TCN-BPDU。其中配置BPDU是STP进行拓扑计算的关键;TCN BPDU只在网络拓扑发生变更时才会触发。

1、配置BPDU的报文格式

2、配置BPDU的工作过程

所有交换机刚启动,所有接口都激活STP,一开始,并不知道谁是根,则所有设备都将自己判定为根网桥,从自己的所有激活了STP的接口发送配置BPDU,则其中将包含本机参数。之后,所有设备都交换参数后,将根据参数数值进行选举,之后将选举一个真正的根网桥。之后,只有根网桥将周期的发送配置BPDU,而其他非根网桥只能在接受到根网桥发送BPDU后进行转发。(转发时可以修改其中的参数)---发送周期为2S,MAX AGE---20S。

3、TCN BPDU

报文格式---仅拥有配置BPDU的前三个参数,其中BPDU类型指端为0x80。

4、TCN BPDU的工作过程

本地交换机链路故障后,STP重新收敛,为了快速刷新全网所有交换机的MAC表,将向本地所有STP接口发送TCN(标记位中的TCN位置1),邻居交换机收到TCN后,先标记为ACK位为回复,用于可靠传输消息;之后将TCN逐级转发到根网桥处,由根网桥回复TC消息来逐级回复到所有交换机;使所有交换机临时将MAC表的老化时间修改为15s(默认的,转发延时)

五、STP角色选举

1、根网桥选举

在一棵生成树实例中,有且仅有一台交换机为root;

BPDU中的 桥ID来决定

桥ID= 网桥优先级(0-65535公有) 默认32768 +  MAC地址(只有存在svi接口的交换机才拥有mac地址,若存在多个mac选数值最小)

根网桥的选举   先比较优先级,小优;   若优先级相同,比较mac,数值小优;

2、根端口选举

选举过程

1)首先比较根路径开销RPC,RPC值越小越优选;

2)当RPC相同时,比较上行交换机的BID,值越小越优选;

3)当上行交换机的BID相同时,比较上行交换机的PID,值越小越优选;

4)当上行PID相同时,比较本地交换机的PID,值越小越优选。

3、指定端口选举

选举过程

1)首选比较根路径开销RPC,RPC值越小越优选;

2)当RPC相同时,则比较链路两端交换机的的BID,值越小越优选;

3)当BID相同时,比较链路两端端口的PID,值越小越优选;

4、非指定端口选举

STP会对这些非指定端口的进行逻辑阻塞,即这些端口不能进行转发由终端计算机产生并发送的帧(用户数据帧)。

一旦非指定端口被逻辑阻塞后,STP(无环路工作拓扑就生成了)。

注:非指定端口可以接受并处理BPDU。

六、STP的接口状态

1、接口状态

2、接口状态迁移

1)Forwarding:转发状态,端口既可转发用户流量也可以转发BPDU,只有根端口或者指定端口才能进入Forwarding状态。

2)Learning:学习状态,端口可根据收到的用户流量构建MAC地址表,但不转发用户流量。增加Learning状态是为了防止临时环路。

3)Listening:侦听状态,端口可以转发BPDU报文,但不能转发用户流量。

4)Blocking:阻塞状态,端口仅仅能接收并处理BPDU,不能转发BPDU,也不能转发用户流量。此状态是预备端口最终状态。

5)Disabled:禁用状态,端口既不能处理和转发BPDU报文,也不能转发用户流量

3、首次收敛

首次收敛,所有设备最先进入的是阻塞状态,需要先停留20S(最大寿命时间)之后进入侦听状态,此状态停留15S选举角色,之后进入学习状态,再停留15S,总共50S。

七、STP基本配置

1、配置生成树工作模式

[Huawei]stp mode stp | rstp | mstp #三选一个模式

交换机支持STP、RSTP、MSTP三种生成树工作模式,默认情况工作再MSTP模式。

2、配置网桥(可选)

[Huawei]stp root primary 

配置挡墙设备为根桥,缺省情况下,交换机不作为任何生成树的根桥,配置后该设备优先级数值自动为0,并且不能更改设备优先级。

3、备份根桥(可选)

[Huawei]stp root secondary 

配置挡墙交换机为备份根桥,缺省情况下,交换机不作为任何生成树的备份根桥,配置后该设备优先级数值为4096,并且不能更改设备优先级。

4、配置交换机的STP优先级

[Huawei]stp priority ?
  INTEGER<0-61440>  Bridge priority, in steps of 4096

缺省情况下,交换机的优先级取值是32768.

5、配置接口路径开销(可选)

[Huawei]stp pathcost-standard ?
  dot1d-1998  IEEE 802.1D-1998
  dot1t       IEEE 802.1T
  legacy      Legacy

配置接口路径开销计算方法,缺省情况下,路径开销之=值得计算方法为IEEE 802.1t(dot1t)标准方法。同一网络内所有交换机得接口路径开销应使用相同得计算方法。

[Huawei]int g0/0/1
[Huawei-GigabitEthernet0/0/1]stp cost  ?
  INTEGER<1-200000000>  Port path cost

设置当前接口得路径开销值。

八、RSTP--快速生成树协议

1、802.1D生成树的缺点

1)网络拓扑收敛慢,影响了用户通信质量;

2)STP没有细致区分接口状态和接口角色;

3)STP算法是被动算法,依赖定时器等待的方式判断拓扑变化,导致收敛速度慢。

4)STP算法要求在稳定的拓扑中,根桥主动发出配置BPDU,而其他设备进行处理,传遍整个STP网络,这也是导致拓扑收敛慢的原因之一。

2、快速生成树(RSTP)的改进点

1)端口角色

RSTP的端口角色共有四种:根端口、指定端口、Alternate端口和Backup端口。

根端口和指定端口的作用同STP中定义,Alternate端口和Backup端口的描述如下:

从配置BPDU报文发送角度来看:

        Alternate端口就是由于学习到其他网桥发送的配置BPDU报文而阻塞的端口。

        Backup端口就是由于学习到自己发送的配置BPDU报文而阻塞的端口。

从用户流量角度来看:

        Alternate端口提供了从指定桥到根的另一条可切换路径,作为根端口的备份端口。

        Backup端口作为指定端口的备份,提供了一条从根桥到相应网段的备份通路。给一个RSTP域内所有端口分配角色的过程就是整个拓扑收敛的过程。

2)端口状态

RSTP的状态规范缩减为3种,根据端口是否转发用户流量和学习MAC地址来划分:

        Discarding状态:不转发用户流量也不学习MAC地址;

        Learning状态:不转发用户流量但是学习MAC地址;

        Forwarding状态:既转发用户流量又学习MAC地址。

3)RST BPDU

RSTP 的配置BPDU充分利用了STP报文中的Flag字段,明确了端口角色。

除了保证和STP格式基本一致之外,RSTP作了如下变化:

        Type字段:配置BPDU类型不再是0而是2,所以运行STP的设备收到RSTP的配置BPDU时会丢弃。

        Flag字段:使用了原来保留的中间6位,这样改变的配置BPDU叫做RST BPDU。

RST BPDU报文格式:

 4)快速收敛机制

 注:这个P/A机制是RSTP快速收敛的核心手段,因为他改变了STP依照计时器收敛的方法,可以理解为完成收敛选举后立即切换状态,完成收敛。

5)配置BPDU的处理

6)BPDU保护功能

 在交换机上,通常将直接与用户终端(如PC机)或文件服务器等非交换设备相连的端口配置为边缘端口。

如上图所示,SW3与某主机互联,并设置该互联接口为边缘端口;后来该主机被恶意用户侵占,并伪造RST BPDU攻击SW3,因此边缘端口会收到RST BPDU,失去边缘端口特征,并进行生成树计算。

3、快速生成树的原理

取消了计时器,而是在一个状态工作完成后,直接进入下一状态;

分段式同步,两台设备间逐级收敛;使用请求和同意标记;依赖标记位的第1和第6位

BPDU的保活为6s;hello time 2s;

将端口加速(边缘接口)、上行链路加速、骨干加速集成了

兼容802.1d和PVST,但802.1d和PVST没有使用标记位中的第1-6位,故不能快速收敛;因此如果网络中有一台设备不支持快速收敛,那么其他开启快速收敛的设备也不能快速;

当tcn消息出现时,不需要等待根网桥的BPDU,就可以刷新本地的cam表;

注:RSTP配置与STP一样,只需要修改模式为RSTP即可。

九、MSTP--多生成树协议

1、STP、RSTP缺点

RSTP在STP基础上进行了改进,实现网络拓扑快速收敛,但在划分VLAN的网络中运行RSTP/STP,局域网所有的VLAN共享一颗生成树,被阻塞后的链路将不承载任何流量,无法在VLAN间实现流量的负载均衡,导致链路带宽利用率、设备资源利用率较低。

为了弥补RSTP/STP的缺陷,IEEE2002年发布了802.1S标准MSTP--多生成树协议,MSTP兼容STP和RSTP,通过建立多颗无环的树,解决广播风暴并实现冗余备份。

2、MSTP概述

MSTP是IEEE802.1S中定义的生生成树协议,MSTP兼容STP和RSTP,既可以快速收敛,又提供了数据转发的多个冗余路径,在数据转发过程中实现VLAN数据的负载均衡。

MSTP可以将一个或多个VLAN映射到一个instance(实例),再基于instance计算生成树,映射到同一个instance的VLAN共享同一棵生成树。

 

如上图,经计算生成两棵生成树:

        instance1对应的生成树以SW1为根交换设备,转发VLAN1-VLAN10的报文;

        instance2对应的生成树以SW2为根交换设备,转发VLAN11-VLAN20的报文;

        不同VALN的报文沿不同的路径转发,实现了负载分担。

        注:生成树不是基于VLAN运行的,而是基于instance运行的。 

3、MST Region

 注:instance0是缺省存在的,而缺省时,华为交换机上所有的VLAN都映射到了instance0。

通过设备VLAN映射表(即VLAN和MSTI的对应关系),把VLAN和MSTI联系起来。

每个VLAN只能对应一个MSTI,即同一个VALN的数据只能再一个MSTI中传输,而一个MSTI可能对应多个VLAN。

4、MSTP配置

1)配置首生成树工作模式

[SW1]stp mode mstp 

2)启用MSTP

[SW1]stp enable 

3)配置MST域

        ① 进入MST域视图
[SW1]stp region-configuration 
        ② 配置MST域的域名
[SW1-mst-region]region-name ?
  STRING<1-32>  A maximum of 32 characters can be entered
[SW1-mst-region]region-name xixi
       ③ 配置多生成树实例与VLAN的映射关系
[SW1-mst-region]instance ?
  INTEGER<0-48>  Identifier of spanning tree instance
[SW1-mst-region]instance 1 vlan	
[SW1-mst-region]instance 1 vlan ?
  INTEGER<1-4094>  VLAN ID
[SW1-mst-region]instance 1 vlan 1 ?
  INTEGER<1-4094>  VLAN ID
  to               Range of VLAN
  <cr>             
[SW1-mst-region]instance 1 vlan 1 to 5

        ④ 激活MST域的配置

[SW1-mst-region]active region-configuration 

4)MSTP配置根桥和备份根桥

[SW1]stp instance ?
  INTEGER<0-48>  Identifier of spanning tree instance
[SW1]stp instance 1 ?
  priority  Specify bridge priority
  root      Specify root switch
[SW1]stp instance 1 root ?
  primary    Primary root switch #主根
  secondary  Secondary root switch #备根
[SW1]stp instance 1 root primary 

5)修改优先级--可选

[SW1]stp instance 1 priority ?
  INTEGER<0-61440>  Bridge priority, in steps of 4096

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

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

相关文章

免费思维导图软件有哪些?精选6款免费好用、功能强大的思维导图软件!

相信大家或多或少都听说过思维导图以及它的强大作用&#xff0c;它简单又高效&#xff0c;能够将散点链接成为相关联的、有逻辑的整体&#xff0c;更好地梳理和管理知识。不管你有没有真正体验过思维导图带来的神奇效果&#xff0c;相信你一定也在寻找一款免费好用的思维导图软…

找不到msvcp120dll,无法继续执行代码,怎么解决?

当msvcp120.dll文件丢失或找不到时&#xff0c;会导致无法运行使用C编写的程序。这可能是由于以下原因导致的&#xff1a; 1.删除或移动文件&#xff1a;如果你不小心删除了或移动了msvcp120.dll文件&#xff0c;你将无法找到它并加载它&#xff0c;从而导致程序无法正常运行。…

2023上半年京东奶粉行业品牌销售排行榜(京东数据分析平台)

近年来&#xff0c;受新生儿人口数量下降的影响&#xff0c;婴幼儿奶粉市场的需求量萎缩&#xff0c;市场由增量竞争转为存量竞争。根据鲸参谋电商数据分析平台的数据显示&#xff0c;今年上半年&#xff0c;京东婴幼儿奶粉市场的销量将近4400万&#xff0c;环比下降约19%&…

AtcoderABC224场

A - TiresA - Tires 题目大意 题目要求判断给定字符串S的末尾是以"er"还是"ist"结尾&#xff0c;并输出对应的结果。 思路分析 使用substr函数获取字符串S的末尾2个字符或3个字符。 判断获取到的子字符串是否等于"er"或"ist"&#…

赛事 | 第25届中国机器人及人工智能大赛全国决赛榜单发布

第25届中国机器人及人工智能大赛成功举办 2023年6月13日至14日&#xff0c;第二十五届中国机器人及人工智能大赛于海南科技职业大学成功举办。大赛由中国人工智能学会主办&#xff0c;共有来自清华大学、哈尔滨工业大学、中国科学技术大学、西安交通大学等500多所高校进入全国…

Vue2:路由

Vue2&#xff1a;路由 Date: May 28, 2023 Sum: vue-router基本使用、高级用法 单页面应用程序 概念&#xff1a;SPA【Single Page Application】是指所有的功能都在一个html页面上实现 案例&#xff1a; 单页应用网站&#xff1a; 网易云音乐 https://music.163.com/ 多页…

8.10 用redis实现缓存功能和Spring Cache

什么是缓存? 缓存(Cache), 就是数据交换的缓冲区,俗称的缓存就是缓冲区内的数据,一般从数据库中获取,存储于本地代码。 通过Redis来缓存数据&#xff0c;减少数据库查询操作; 逻辑 每个分类的菜品保存一份缓存数据 数据库菜品数据有变更时清理缓存数据 如何将商品数据缓存起…

Spring AOP(AOP概念,组成成分,实现,原理)

目录 1. 什么是Spring AOP&#xff1f; 2. 为什么要用AOP&#xff1f; 3. AOP该怎么学习&#xff1f; 3.1 AOP的组成 &#xff08;1&#xff09;切面&#xff08;Aspect&#xff09; &#xff08;2&#xff09;连接点&#xff08;join point&#xff09; &#xff08;3&a…

Qt画波浪球(小费力)

画流动波浪 #ifndef WIDGET3_H #define WIDGET3_H#include <QWidget> #include <QtMath> class widget3 : public QWidget {Q_OBJECT public:explicit widget3(QWidget *parent nullptr);void set_value(int v){valuev;}int get_value(){return value;} protecte…

FineReport 使用汇总(不定期更新)

1&#xff0c;下载地址 免费下载FineReport - FineReport报表官网 这里注意 2&#xff0c;后台统计 sql 还是需要自己写 就会有数据 而直接查询表&#xff0c; 没有数据 不过&#xff0c;可能是我不会用。还需要再研究。

Java ThreadLocal是什么

文章目录 引子&#xff1a;SimpleDateFormat类ThreadLocal是什么ThreadLocal 的另一个用途**总结**ThreadLocal的两大用途ThreadLocal 的源代码ThreadLocalMapThreadLocalMap 的问题ThreadLocal的key为什么设置成弱引用&#xff1f;value为什么不是弱引用&#xff1f;Thread、T…

ubuntu 安装 nvidia 驱动

ubuntu 安装 nvidia 驱动 初环境与设备查询型号查询对应的驱动版本安装驱动验证驱动安装结果 本篇文章将介绍ubuntu 安装 nvidia 驱动 初 希望能写一些简单的教程和案例分享给需要的人 环境与设备 系统&#xff1a;ubuntu 设备&#xff1a;Nvidia GeForce RTX 4090 查询型…

每天一道leetcoed:剑指 Offer 28. 对称的二叉树(适合初学者树)

今日份题目&#xff1a; 请实现一个函数&#xff0c;用来判断一棵二叉树是不是对称的。如果一棵二叉树和它的镜像一样&#xff0c;那么它是对称的。 例如&#xff0c;二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \ 3 4 4 3 但是下面这个 [1,2,2,null,3,nu…

【打印100之内的素数——筛选法】

打印100之内的素数——筛选法 筛选法 1.题目分析 素数&#xff1a;约数为1和该数本身的数字称为素数&#xff0c;即质数 2.方法解析 筛选法&#xff1a;又称为筛法。先把N个自然数按次序排列起来。1不是质数&#xff0c;也不是合数&#xff0c;要划去。第二个数2是质数留下来…

[C++ 网络协议] 套接字

目录 1. 套接字 1.1 在Linux平台下构建套接字 1.1.1 用于接听的套接字(服务器端套接字) 1.1.2 用于发送请求的套接字(客户端套接字) 1.2 在Windows平台下构建套接字 1.2.1 Winsock的初始化 1.2.2 用于接听的套接字(服务器端套接字) 1.2.3 用于发送请求的套接字(客户端套…

Linux Linux系统上C程序的编译与调试

一、环境配置 在Linux操作系统中&#xff0c;打开终端&#xff0c;以管理员root模式登录 1.更新&#xff1a;输入命令apt update 2.下载vim&#xff1a;输入命令apt install vim -y 3.下载gcc&#xff1a;输入命令apt install gcc -y 4.下载g&#xff1a;输入命令apt install …

7.6 通俗易懂解读残差网络ResNet 手撕ResNet

一.举例通俗解释ResNet思想 假设你正在学习如何骑自行车&#xff0c;并且想要骑到一个遥远的目的地。你可以选择直接骑到目的地&#xff0c;也可以选择在途中设置几个“中转站”&#xff0c;每个中转站都会告诉你如何朝着目的地前进。 在传统的神经网络中&#xff0c;就好比只…

八、复用(2)

本章概要 结合组合和继承 保证适当的清理名称隐藏 组合与继承的选择protected向上转型 再论组合和继承 结合组合与继承 你将经常同时使用组合和继承。下面的例子展示了使用继承和组合创建类&#xff0c;以及必要的构造函数初始化: class Plate {Plate(int i) {System.out.…

君子签“签约+存证+诉讼”为银行建立可靠的契约关系和信任机制

随着互联网金融业的发展&#xff0c;商业银行经营转型与创新发展任重而道远。根据现有银行开展的业务来看&#xff0c;业务拓展过程中遇到的瓶颈越来越明显&#xff0c;集中体现在以下几个方面&#xff1a; 传统签署方式存在多种弊端&#xff0c;亟需转型 互联网金融服务采用…

【广州华锐视点】AR电力职业技能培训系统让技能学习更“智慧”

随着科技的发展&#xff0c;教育方式也在不断地进步和创新。其中&#xff0c;增强现实(AR)技术的出现&#xff0c;为教育领域带来了全新的可能。AR电力职业技能培训系统就是这种创新教学方法的完美实践&#xff0c;它将虚拟与现实相结合&#xff0c;为学生提供了一个沉浸式的学…