HCIP——STP配置案例

STP配置案例

  • 一、简介
  • 二、实现说明
    • 1、华为实现说明
    • 2、其他厂商实现
  • 三、STP原理
    • 1、协商原则
    • 2、角色和状态
    • 3、报文格式
    • 4、BPDU报文处理流程
      • 4.1 BPDU报文的分类
      • 4.2 BPDU报文的处理流程
      • 4.3 BPDU报文格式
  • 四、使用注意事项
  • 五、配置举例
    • 1、组网需求
    • 2、配置思路
    • 3、操作步骤
    • 4、配置文件

一、简介

在二层交换网络中,一旦存在环路就会造成报文在环路内不断循环和增生,产生广播风暴,从而占用所有的有效带宽,使网络变得无法正常通信。
在这种环境下生成树协议应运而生,生成树协议是一种二层管理协议,它通过有选择性地阻塞网络冗余链路来达到消除网络二层环路的目的,同时具备链路备份功能。
生成树协议和其他协议一样,是随着网络的不断发展而不断更新换代的。最初被广泛应用的是IEEE802.1D-1998 STP(Spanning Tree Protocol,生成树协议),随后以它为基础产生了IEEE 802.1w RSTP(Rapid Spanning Tree Protocol,快速生成树协议)和IEEE 802.1s MSTP(Multiple Spanning Tree Protocol,多生成树协议)。
三种生成树协议特点比较:

生成树协议特点应用场景
STP形成一棵无环路的树,解决广播风暴并实现冗余备份。
收敛速度较慢。
无需区分用户或业务流量,所有VLAN共享一棵生成树。
RSTP形成一棵无环路的树,解决广播风暴并实现冗余备份。
收敛速度快。
无需区分用户或业务流量,所有VLAN共享一棵生成树。
MSTP形成多棵无环路的树,解决广播风暴并实现冗余备份。
收敛速度快。
多棵生成树在VLAn间实现负载均衡,不同AN的流量按照不同的路径转发。
需要区分用户或业务流量,并实现负载分担。不同的LAM通过不同的生成树转发流量,每棵生成树之间相互独立。

二、实现说明

1、华为实现说明

STP在交换机所有版本,所有形态都支持。
华为交换机默认STP模式是MSTP。需要运行STP或RSTP模式时,必须要手动配置。
华为交换机在STP模式下,使用的端口角色和RSTP是一样的,也就是说支持下面5种端口角色:指定端口、根端口、Alternate端口、Backup端口和边缘端口。
华为交换机在STP模式下,支持下面4种保护功能:BPDU保护、Root保护、环路保护和防TC-BPDU攻击保护。
版本差异说明:

  • 从V100R006版本开始,华为X7交换机全局默认使能STP功能。其它交换机全局默认不使能,但是端口默认使能STP功能。
  • V200R001版本及之后版本,开始支持边缘端口属性自动探测功能。即如果端口从未收到过BPDU报文,则边缘端口属性自动生效(端口下不会自动生成stp edged-port enable配置)。
  • V200R001版本及之后版本,如果端口已经配置stp edged-port enable,可以再配置根保护和环路保护,而其他版本会提示Error。

在这里插入图片描述

2、其他厂商实现

H3C

  • H3C交换机STP相关命令配置与S系列交换机基本没有差异。
  • H3C交换机默认采用legacy标准来计算路径开销,而S系列交换机默认为dot1t。在与S系列交换机对接时,建议配置相同的计算标准。
  • 某些H3C老形态设备,全局不使能STP或全局使能端口不使能STP时,端口收到BPDU报文后,可以当做普通组播数据报文在VLAN内转发。S系列交换机端口默认会丢弃。

Cisco
Cisco交换机所支持的生成树协议类型分别有:PVST(Per VLAN Spanning Tree)、PVST+(Per VLAN Spanning Tree Plus)、Rapid-PVST+(Rapid Per VLAN Spanning Tree Plus)和MST(Multiple Spanning Tree)。这几种生成树协议的某些BPDU报文采用其私有的报文格式,与IEEE标准的BPDU报文格式不一样。

  • 当Cisco交换机运行私有的PVST+或Rapid-PVST+生成树协议时,与S系列交换机能否互通,取决于Cisco侧的端口链路类型:

    • 如果端口链路类型为trunk且退出VLAN 1,与S系列交换机无法实现互通。Cisco侧端口在非VLAN 1中发送其私有的BPDU报文,S系列交换机默认不会处理该报文,当做普通组播数据报文进行转发,可以通过配置l2protocol-tunnel进行透传。S系列盒式交换机通过l2protocol-tunnel透传PVST+报文时,全局需要配置bpdu mac-address 0100-0ccc-cccd。
    • 如果端口链路类型为trunk而且加入VLAN 1,只可以在VLAN 1中与S系列交换机互通。
    • 如果端口链路类型为access,可以与S系列交换机互通。
  • 当Cisco交换机运行MST协议时,可以理解为标准的MSTP模式,可以与S系列交换机互通。但是需要注意:在使用MSTP协议的S系列交换机与使用MST的Cisco交换机采用相同的域配置(域名、修订级别、VLAN与实例的映射关系)的情况下,要想实现域内互通,需要在S系列交换机端口配置摘要侦听功能stp config-digest-snoop。这是两者由于采用不同的密钥来生成MSTP的摘要信息,因此端口发送的BPDU报文中的摘要信息不同。由于摘要信息不同,则属于不同的MST域,会进行域间互通。

注意以下介绍的STP是狭义的STP,即IEEE 802.1D-1998 中定义的STP 协议。

三、STP原理

1、协商原则

STP协议是根据4个维度进行选举协商的,设备之间通过发送BPDU报文,经过4个维度的比较,最终会阻塞综合能力最差的端口。
选举维度(桥ID,累计根路径开销,发送设备BID,发送端口PID)

维度定义作用
桥IDBID(Bridge ID),是由16位的桥优先级(BridgePriority)与桥MAC地址构成。BID桥优先级占据高16位,其余的低48位是MAC地址。确定根桥。桥ID最小的设备会被选举为根桥
累计根路径开销某端口到根桥累计的路径开销就是所经过的各个桥上的各端口的路径开销累加而成。选举根端口、指定端口和阻塞端口时使用。
发送设BID发送BPDU报文的桥ID。选举根端口、指定端口和阻塞端口时使用。
发送端口PID发送BPDU报文的端口ID。PID由两部分构成的,高4位是端口优先级,低12位是端口号。只在存在Backup端口时使用。

2、角色和状态

经过4个维度的比较,最终会协商出端口的角色和状态,确定报文流量的转发路径。STP角色的定义,如图所示。
在这里插入图片描述

  • 根桥:就是桥ID最小的设备。桥ID是由16位的桥优先级与桥MAC地址构成。BID桥优先级占据高16位,其余的低48位是MAC地址。华为交换机默认桥优先级都是32768。所以在不修改桥优先级时,MAC地址最小的设备就是根桥。
  • 指定端口:就是负责转发BPDU报文的端口。根桥上的端口都是指定端口。该端口可以正常转发流量。
    在这里插入图片描述
  • 根端口:就是去往根桥路径开销最小的端口。该端口可以正常转发流量。
    在这里插入图片描述
  • 阻塞端口:就是禁止转发流量的端口。
    在这里插入图片描述

从上面的官方定义,可以看出:STP协商完成后,端口要么被阻塞,要么正常转发报文。其实在STP进行协商的过程中,是有一些中间状态的。

端口状态目的说明
Forwarding端口既转发用户流量也处理BPDU报文。只有根端口或指定端口才能进入Forwarding状态
Learning设备会根据收到的用户流量构建MMAC地址表,但不转发用户流量。过渡状态,增加Learming状态防止临时环路
Listening确定端口角色,将选举出根桥、根端口和指定端口。过渡状杰。
Blocking端口仅仅接收并处理BPDU,不转发用户流量。阻塞端口的最终状态。

3、报文格式

STP协议报文是通过BPDU报文封装的,目的MAC是组播MAC:01-80-C2-00-00-00,封装格式是IEEE 802.3。
在这里插入图片描述

4、BPDU报文处理流程

4.1 BPDU报文的分类

  • 配置BPDU报文:根据Flags标记位,分为3类
    • 第一类配置BPDU报文: Flags的TCA和TC位都置为0的配置BPDU报文
    • 第二类配置BPDU报文: Flags的TCA和TC位都置为1的配置BPDU报文
    • 第三类配置BPDU报文:Flags的TCA位置为0,TC位置为1的配置BPDU报文
  • TCN BPDU报文: BPDU Type为0x80的BPDU报文,叫做TCN BPDU报文

4.2 BPDU报文的处理流程

在这里插入图片描述

4.3 BPDU报文格式

配置BPDU报文:BPDU Type为0x00的BPDU报文,都叫做配置BPDU报文

  1. 第一类配置BPDU报文: Flags的TCA和TC位都置为0的配置BPDU报文
    该报文用于STP状态的协商和维持。具体报文格式如下:
    在这里插入图片描述
  2. 第二类配置BPDU报文: Flags的TCA和TC位都置为1的配置BPDU报文
    该报文用于通知下游设备停止发送TCN BPDU报文。具体报文格式如下:
    在这里插入图片描述
  3. 第二类配置BPDU报文: Flags的TCA位置为0,TC位置为1的配置BPDU报文
    该报文用于通知下游设备删除MAC地址表项。具体报文格式如下:
    在这里插入图片描述
  • TCN BPDU报文:BPDU Type为0x80的BPDU报文,叫做TCN BPDU报文,用于通知上游设备网络拓扑变更。具体报文格式如下:
    在这里插入图片描述

四、使用注意事项

  • 盒式交换机需要通过“bpdu enable”使能BPDU报文上送CPU处理的功能,才能使STP报文上送CPU处理,否则STP状态无法收敛。
    V100R005及之前版本,在S2700系列设备,检查全局是否配置bpdu enable;其他系列盒式交换机,检查物理端口、Eth-trunk接口下是否配置bpdu enable。
    V100R006及后续版本,对应形态设备全局或端口默认使能bpdu enable。
  • Eth-Trunk接口使能STP时,建议修改Eth-Trunk接口的cost值使其小于物理端口的cost值,使其不易协商为备份端口。一是因为Eth-Trunk接口的开销为单个成员接口的开销除以成员接口数量,当成员口状态变化时Eth-trunk接口的cost值会变化;二是cost值越小说明链路质量越高。
  • 通过命令“display stp brief”查看端口状态时,只会显示使能STP且UP的端口。
  • 可以通过修改路径开销和发送者的BID,选择阻塞指定的端口。

五、配置举例

1、组网需求

在这里插入图片描述
如图所示,当前网络中SwitchA、SwitchB、SwitchC和SwitchD通过环形组网备份链路。希望通过运行生成树协议阻塞端口,将环形网络结构修剪成无环路的树形网络结构。

  • 在主链路故障时,对切换到备份链路的时间要求不高,要求配置简单,所以这里使用STP模式。
  • SwitchA设备的性能较高,希望作为根桥,SwithB为备份根桥。
  • SwtichC和SwitchD设备连接用户,希望阻塞SiwtchC和SwitchD之间的链路。
  • SwitchC和SwitchD连接用户的接口GE0/0/3不要参与STP计算。

2、配置思路

采用如下的思路配置STP:

  1. 配置模式是STP模式。
  2. 配置SwitchA为根桥,SwitchB为备份根桥。
  3. 统一使用默认路径开销。华为交换机默认的路径开销计算标准使用的是标准的dot1t。GE接口默认路径开销是20000,而Ethernet接口默认路径开销是200000。注意:eNSP模拟器中,STP的路径开销默认是1。
  4. SwitchC和SwitchD的GE0/0/3端口去使能STP协议。
  5. SwitchA、SwitchB、SwitchC和SwitchD使能STP协议。

3、操作步骤

步骤1:配置模式为STP模式。

<HUAWEI> system-view
[HUAWEI] sysname SwitchA
[SwitchA] stp mode stp
<HUAWEI> system-view
[HUAWEI] sysname SwitchB
[SwitchB] stp mode stp
<HUAWEI> system-view
[HUAWEI] sysname SwitchC
[SwitchC] stp mode stp
<HUAWEI> system-view
[HUAWEI] sysname SwitchD
[SwitchD] stp mode stp

步骤2:配置SwitchA为根桥,SwitchB为备份根桥。

[SwitchA] stp root primary   //也可以使用命令stp priority 0 配置优先级为0,和stp root primary的作用是一样的。
[SwitchB] stp root secondary  //也可以使用命令stp priority 4096 配置优先级为4096,和stp root secondary的作用是一样的。

步骤3:去使能SwitchB和SwitchC设备GE0/0/3端口的STP功能。

[SwitchC] interface gigabitethernet0/0/3
[SwitchC-GigabitEthernet0/0/3] stp disable
[SwitchC-GigabitEthernet0/0/3] quit
[SwitchD] interface gigabitethernet 0/0/3
[SwitchD-GigabitEthernet0/0/3] stp disable
[SwitchD-GigabitEthernet0/0/3] quit

步骤4:全局使能STP功能。
华为X7系列交换机默认是使能,该步骤可以省略。

[SwitchA] stp enable
[SwitchB] stp enable
[SwitchC] stp enable
[SwitchD] stp enable

步骤5:验证配置结果。
查看STP简要信息,通过STP简要信息可以快速的看出端口的角色和状态。
在这里插入图片描述

4、配置文件

SwitchA的配置文件

#
sysname SwitchA
#
stp mode stp
stp instance 0 root primary
#
return

SwitchB的配置文件

#
sysname SwitchB
#
stp mode stp
stp instance 0 root secondary
# 
return 

SwitchC的配置文件

#
sysname SwitchC 
# 
stp mode stp
# 
interface GigabitEthernet0/0/3
 stp disable
# 
return 

SwitchD的配置文件

#
sysname SwitchD
#
stp mode stp
# 
interface GigabitEthernet0/0/3
 stp disable
# 
return

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数据结构---串(赋值,求子串,比较,定位)

目录 一.初始化 顺序表中串的存储 串的链式存储 二.赋值操作&#xff1a;将str赋值给S 链式表 顺序表 三.复制操作&#xff1a;将chars复制到str中 链式表 顺序表 四.判空操作 链式表 顺序表 五.清空操作 六.串联结 链式表 顺序表 七.求子串 链式表 顺序表…

系统架构合理性的思考 | 京东云技术团队

最近牵头在梳理部门的系统架构合理性&#xff0c;开始工作之前&#xff0c;我首先想到的是如何定义架构合理性&#xff1f; 从研发的角度来看如果系统上下文清晰、应用架构设计简单、应用拆分合理应该称之为架构合理。 基于以上的定义可以从以下三个方面来梳理评估&#xff1…

java面试基础 -- 深克隆 浅克隆

引例 说到java的克隆你还记得多少? 一说到克隆你可能就会想起来那个接口, 没错, 他就是Cloneable Cloneable是java里面内置的很常用的接口, 我们说 Object类中也有一个clone方法: 但是要想合法调用 clone 方法, 必须要先实现 Clonable 接口, 否则就会抛出 CloneNotSupportedEx…

【哈希表】HashSet HashMap LeetCode习题

目录 136.只出现一次的数字 137.只出现一次的数字 || 217.存在重复元素 219.存在重复元素 || 771.宝石与石头 旧键盘(牛客) 首先需要导包 import java.utli.*; 表中常用的是前两个&#xff0c;时间复杂度低。O(1) Set<E> set new HashSet<>(); set.conta…

6.Web后端开发【SpringBoot入门】

文章目录 1 SpringBoot快速入门1.1 Web分析 2. HTTP协议2.1 HTTP-概述2.1.1 介绍2.2.2 特点 2.2 HTTP-请求协议2.3 HTTP-响应协议2.3.1 格式介绍2.3.2 响应状态码 常见的相应状态码 3 WEB服务器3.1 服务器概述 1 SpringBoot快速入门 Spring的官网Spring Boot 可以帮助我们非常…

行为型(二) - 模板模式

一、概念 模板模式&#xff08;Template Pattern&#xff09;&#xff1a;模板方法模式在一个方法中定义一个算法骨架&#xff0c;并将某些步骤推迟到子类中实现。模板方法模式可以让子类在不改变算法整体结构的情况下&#xff0c;重新定义算法中的某些步骤。 二、实现 这里…

Matlab使用

Matlab使用 界面介绍 新建脚本&#xff1a;实际上就是新建一个新建后缀为.m的文件 新建编辑器&#xff1a;ctrlN 打开&#xff1a;打开最近文件&#xff0c;以找到最近写过的文件 点击路径&#xff0c;切换当前文件夹 预设&#xff1a;定制习惯用的界面 常见简单指令 ;…

一体全栈、开箱即用!麒麟信安与灵雀云携手打造“操作系统+云平台”联合解决方案

近日麒麟信安与北京凌云雀科技有限公司&#xff08;以下简称“灵雀云”&#xff09;开展生态合作&#xff0c;共同完成了灵雀云企业级全栈云原生平台ACPV3与麒麟信安操作系统V3等系列产品的兼容性认证测试。基于双方产品兼容性良好、稳定运行、性能表现卓越&#xff0c;麒麟信安…

工业类LMQ61460AASRJRR,汽车类LMQ61460AFSQRJRRQ1、LMQ61460AASQRJRRQ1 6A、降压转换器简化原理图

一、LMQ61460AASRJRR器件概述&#xff1a; LMQ61460 是一款具有集成旁路电容器的高性能直流/直流同步降压转换器。该器件具有集成式高侧和低侧MOSFET&#xff0c;能够在 3.0V 至 36V 的宽输入电压范围内提供高达 6A 的输出电流&#xff1b;可耐受 42V 电压&#xff0c;简化了输…

Spring Boot

前言 什么是Spring Boot&#xff1f;为什么要学Spring Boot&#xff1f; Spring 的诞⽣是为了简化Java 程序的开发的&#xff0c;⽽Spring Boot 的诞⽣是为了简化Spring 程序开发 的。Spring就像汽车&#xff0c;相比以前人只能其自行车走路&#xff0c;汽车可以帮助人们更快…

cad图怎么转换成pdf格式?一招教你轻松转换

将CAD文件转换成PDF格式有很多优势。首先&#xff0c;PDF格式是一种非常流行的文件格式&#xff0c;几乎所有电脑上都可以打开。这意味着即使将PDF文件发送给其他人&#xff0c;他们也可以轻松地查看文件&#xff0c;此外&#xff0c;PDF格式可以保留CAD文件的图形和布局&#…

Vue开发中如何解决国际化语言切换问题

Vue开发中如何解决国际化语言切换问题 引言&#xff1a; 在如今的全球化时代&#xff0c;应用程序的国际化变得越来越重要。为了让不同地区的用户能够更好地使用应用程序&#xff0c;我们需要对内容进行本地化&#xff0c;以适应不同语言和文化环境。对于使用Vue进行开发的应用…

【自适应稀疏度量方法和RQAM】疏度测量、RQAM特征、AWSPT和基于AWSPT的稀疏度测量研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

软件测试报告:包含哪些内容?

软件测试报告的内容 软件测试报告通常包括以下内容&#xff1a; 1、项目背景&#xff1a;介绍测试报告的编写目的、测试系统名称、测试环境和用到的专业术语。 2、需求内容&#xff1a;罗列该项目的测试功能点,具体到每个模块功能&#xff0c;以新增的功能和修改的功能为主&…

【excel密码】如何禁止移动、删除excel工作表?

想要工作表不被他人移动、删除等操作&#xff0c;该如何设置&#xff1f;今天分享如何设置才能够禁止excel工作表移动、删除。 打开excel工作表&#xff0c;点击工具栏中的审阅 – 保护工作簿 点击保护工作簿之后&#xff0c;会有弹框出现&#xff0c;输入想要设置的excel密码…

Ubuntu本地快速搭建web小游戏网站,并使用内网穿透将其发布到公网上

文章目录 前言1. 本地环境服务搭建2. 局域网测试访问3. 内网穿透3.1 ubuntu本地安装cpolar内网穿透3.2 创建隧道3.3 测试公网访问 4. 配置固定二级子域名4.1 保留一个二级子域名4.2 配置二级子域名4.3 测试访问公网固定二级子域名 前言 网&#xff1a;我们通常说的是互联网&am…

光伏发电+boost+储能+双向dcdc+并网逆变器控制(低压用户型电能路由器仿真模型)【含个人笔记+建模参考】

MATALB代码链接&#xff1a;光伏发电boost十储能十双向dcdc十并网逆变器 个人笔记与建模参考请私信发送 包含Boost、Buck-boost双向DCDC、并网逆变器三大控制部分 boost电路应用mppt&#xff0c; 采用扰动观察法实现光能最大功率点跟踪 电流环的逆变器控制策略 双向dcdc储能系…

A. Two Semiknights Meet

题目描述 可知走法为中国象棋中的象的走法 解题思路 利用结构体来存储两个 K K K的位置 x , y x,y x,y&#xff0c;因为两个 K K K同时走&#xff0c;所以会出现两种情况 相向而行&#xff0c;两者距离减少 相反而行&#xff0c;两者距离不变 我们完全可以不考虑格子是好…

分布式 - 消息队列Kafka:Kafka 消费者消费位移的提交方式

文章目录 1. 自动提交消费位移2. 自动提交消费位移存在的问题&#xff1f;3. 手动提交消费位移1. 同步提交消费位移2. 异步提交消费位移3. 同步和异步组合提交消费位移4. 提交特定的消费位移5. 按分区提交消费位移 4. 消费者查找不到消费位移时怎么办&#xff1f;5. 如何从特定…

DSO 系列文章(2)——DSO点帧管理策略

文章目录 1.点所构成的残差Residual的管理1.1.前端残差的状态1.2.后端点的残差的状态1.3.点的某个残差的删除 2.点Point的管理2.1.如何删除点——点Point的删除2.2.边缘化时删除哪些点&#xff1f; 3.帧FrameHessian的管理 DSO代码注释&#xff1a;https://github.com/Cc19245/…