华为交换机MSTP公有生成树协议

一、 MSTP协议

MSTP是一个共有的生成树协议,在实际生产环境中得到广泛的应用。

传统的生成树只运行一个实例,且收敛速度慢,RSTP再传统STP基础上通过改进达到了加速网络拓扑收敛的目的,但是依然存在缺陷。由于 STP和RSTP再整个局域网中,所有的VLAN共享一个生成树实例,因此无法实现基于VLAN的负载均衡,网络环境稳定状态下备份链路始终不能转发数据流量,造成带宽的浪费。

MSTP(Multiple Spanning tree Algorithm and protocol)是多生成树技术,允许在一个交换环境中运行多个生成树,每个生成树称为一个实例(instance)。实例时间的生成树彼此独立,如一个实例下的阻塞接口在另一个实例上可能是一个转发端口。和Cisco私有的PVST技术不同,MSTP允许多个vlan运行一个生成树实例,相比较Cisco的PVST技术,这是一个优势,因为在Cisco交换机中,运行PVST技术,是一个实例一棵树,实例越多,生成树越多,交换机维护这些生成树,也是需要消耗硬件资源及网络开销的。大部分情况下,运行多个生成树实例的好处就在于链路的负载分担,但是当只有一条冗余链路时,运行两个生成树实例完全可以实现负载均衡,同时又能节约系统开销。

上图网络环境中存在两个生成树实例,不同实例的根网桥再不同物理交换机上,不但可以实现负载分担,而且不会因为过多的实例而占用系统资源。

MSTP将环路网络修剪成一个无环的树形网络,避免广播风暴的产生,同时还提供了数据转发的多个冗余路径,在数据转发过程中实现VLAN数据的负载均衡。MSTP还兼容STP和RSTP。

MSTP把一个交换网络划分成多个域,每个域内形成多棵生成树,生成树之间彼此独立。每棵生成树称为一个多生成树实例(Multiple spanning tree instance,MSTI),每个域称为一个MST域。

MSTP通过设置VLAN映射表(即VLAN和MSTI的对应关系表),把VLAN和MSTI联系起来。每个VLAN只能对应一个MSTI,即同一VLAN的数据只能在一个MSTI中传输,而一个MSTI可以对应多和VLAN。如上图所示,instance 1对应vlan 10,instance 2对应vlan 20,S1为MSTI1的根交换机,S2为MSTI2的根交换机,instance 1阻塞S2与S3之间链路,instance 2阻塞S1与S3之间链路,可以充分利用网络带宽,有效避免资源浪费。

二、MSTP的基本原理是什么?

在MSTP中,通过把整个互联的二层网络划分成若干个域。在域内,把其中的vlan分成若干组,每组具有相同的拓扑结构,然后定义若干个MSTI,并把这些生成树实例和不同的vlan映射起来。

所谓实例就是多个vlan的一个集合。通过将多个vlan映射到一个实例,可以节省通信开销和资源占用率。MSTP各个实例拓扑的计算相互独立,在这些实例上可以实现负载均衡。可以把多个相同拓扑结构的vlan映射到同一个实例里,这些vlan在接口上的转发状态取决于接口在对应MSTP实例的状态。

如果仅仅是为了防止广播风暴等环路问题,运行CST(CST也是一种生成树协议,关于CST技术自行查阅相关资料,这里不叙述了)已经足够。运行多实例的主要目的在于使其负载分担链路负载。所以运行的生成树实例数量一般取决于冗余线路的数量,如果只有一条冗余链路,那么最好运行两个实例。如果有两条冗余链路,那么运行三个实例将是最好的选择,并尽可能保证每个实例中流量相差不大。

1、 MSTP的网络层次

一个二层交换网络可以划分多个MST域(多生成树域),每个生成树域可以划分多个MSTI,每个实例中可以映射多个vlan。

如上图中的MSTP网络包含3个MST域,分别是A、B、C。每个MST域中包含一个或多个MSTI。MST域B中包含两个MSTI,分别是instance 1和instance 2。instance 1和vlan 1-5映射,instance 2和vlan 6-10映射。

2、 MST域

MST域是多生成树域,由局域网中的多台交换机及他们之间的网段构成。一个局域网可以存在多个MST域,各MST域之间在物理上直接相连。用户可以通过MSTP配置命令把多台交换机划分在同一个MST域内。MST域中的交换机都启用了MSTP,配置了相同的域名及vlan映射表(VLAN映射表是MST域的属性,它描述了VLAN和MSTI之间的映射关系)。

3、MSTI

一个MST域内可以运行多个MSTI,MSTI之间彼此独立,MSTI可以与一个或者多个VLAN对应,但一个VLAN只能与一个MSTI对应。

4、端口角色

MSTP中的端口角色主要有根端口,指定端口 ,预备端口,备份端口和边缘端口。除边缘端口外其他端口角色都参与MSTP的计算过程。同一端口在不同的MSTI中可以担任不同的角色。

根端口:非根交换机上到根交换机开销最小的端口就是该交换机的根端口,根端口能够转发数据流量到根交换机。下图中的P3、P4和P8为根端口。
指定端口:该交换机向下游交换机发送BPDU(一种桥协议数据单元,用来交换网桥ID、根路径成本等信息,用来选举交换机端口角色)或者数据流量的端口。在下图中,P1、P2和P6为指定端口(当S3优先级高于S2时)。
边缘端口:位于网络最边缘处,不参与生成树计算,一般连接非交换机设备,如终端服务器、PC、路由器等。
预备端口:从转发数据流量的角度来看,预备端口提供了到达根交换机的一条备份链路,其接口状态为阻塞,不转发数据流量,当根端口被阻塞时,预备端口将成为新的根端口。在下图中P5为预备端口。
备份端口:当同一台交换机的两个端口互相连接时就存在一个环路(聚合链路除外),此时,交换机就会将其中一个端口阻塞,备份端口就是被阻塞的那个端口。从发送BPDU来看,备份端口就是由于学习到本设备上其他端口发送的BPDU而被阻塞的端口。从转发数据流量来看,备份端口作为指定端口的备份,提供了一条从根交换机到非根交换机的备份链路,在下图中,P7就是备份端口。

5、MSTP的端口状态

Forwarding(转发状态):在这种状态下,端口即转发用户流量,又接收/发送BPDU报文。
Learning(学习状态):这是一种过渡状态,在Learning状态下交换机会根据收到的用户流量,学习MAC地址表,但不转发用户流量,所以称为学习状态。Learning状态的端口接收/发送BPDU报文,不转发用户流量。
Discarding(阻塞状态):在这种状态下,端口只接收BPDU报文。

三、 MSTP的保护功能

在面对一些二层生成树攻~击时,下面四个技术可以增加生成树的安全性。

1、 BPDU保护

在交换机上,通常将直接与用户终端(如PC机)或服务器等非交换机设备相连的端口配置为边缘接口,以实现这些端口的快速收敛,正常情况下,这些端口是不会接收到BPDU。如果有人伪造BPDU恶意攻~击交换机,当这些端口收到BPDU时,交换机会自动将这些端口设置为非边缘端口,并重新进行生成树计算,从而引起网络震荡。
启用BPDU保护功能后,如果接口收到BPDU报文,那么该接口将被自动关闭,从而避免了后续的攻~击及由此带来的网络震荡。

配置命令如下:

[LSW1]stp bpdu-protection            #开启BPDU保护

2、 根保护

由于网络管理人员失误或人为恶意攻 击,网络中的合法交换机端口可能会收到优先级更高的BPDU,这将使目前网络中的根失去根地位,之后将重新计算生成树,引起网络震荡,还有可能将网络流量从高速链路上转移到低俗链路中,造成网络拥塞。为了防止这种情况出现,交换机提供根保护功能。根保护功能通过维持指定端口的角色来保护根交换机的地位。配置了根保护功能的端口,在所有实例上的端口角色都保持为指定端口。当端口接收到优先级更高的BPDU时,端口角色不会变为非指定端口,而是进入侦听状态,不再转发报文。经过足够长的时间,如果端口一直没有再收到优先级较高的BPDU,端口会恢复到原来的正常状态。

配置命令如下:

[LSW1]in g0/0/1               #进入指定端口
[LSW1-GigabitEthernet0/0/1]stp root-protection   #开启根保护

3、 环路保护

根端口和其他阻塞端口状态会周期性地接收来自上游交换机(在本博文的第三张配图中,R1就是R2和R3的上游交换机,R4就是R2和R3的下游交换机)的BPDU。当链路拥塞或者单向链路故障时,这些端口无法接收来自上游交换机的BPDU,交换机会重新选择根端口。原先的根端口会转变为指定端口,而原先的阻塞端口会迁移到转发状态,从而造成交换网络中可能产生环路。环路保护功能会抑制这种环路产生。在启动了环路保护功能后,如果根端口收不到来自上游的BPDU,根端口会被设置进入阻塞状态;而阻塞端口则会一直保持在阻塞状态,不转发报文,从而不会在网络中形成环路 。

配置命令如下:

[LSW1]in g0/0/1           #进入根端口
[LSW1-GigabitEthernet0/0/1]stp loop-protection        #启用环路保护功能

4、 TC保护

交换机在接收到TC-BPDU报文后,会执行MAC地址表项和ARP表项的删除操作,如果有人伪造TC-BPDU报文恶意攻~击交换机,交换机短时间内会收到很多TC-BPDU报文,频繁的删除操作会给交换机造成很大的负担,给网络的稳定性带来很大的隐患,启用TC保护功能后,在固定的时间内,MSTP进程处理TC类型BPDU报文的次数可配置。如果在固定的时间内,MSTP进程收到TC类型的BPDU报文数量大于配置的阈值,那么MSTP进程只会处理阈值指定的次数。对于其他超出阈值的TC类型BPDU报文,定时器到期后,MSTP进程对其统一处理一次。这样可以避免频繁地删除MAC地址表项和ARP表项,从而达到保护交换机的目的。

配置命令如下:

[LSW1]stp tc-protection threshold 3             #指定阈值为3。

四、 简单配置MSTP

实验环境:
三台交换机,两天终端PC,交换机开启MSTP协议,区域名称HUAWEI,修订版本级别为1。分别建立MSTI1和MSTI2,VLAN10映射到MSTI1,VLAN20映射到MSTI2,MSTI1的根网桥在S1上,MSTI2的根网桥在S2上。VLAN10中的客户端地址为10.1.10.1,VLAN20中的客户端地址为10.1.20.1。利用MSTP实现VLAN10和VLAN20的互访,并且VLAN10的流量通过路径S3→S1→R1到达网关,VLAN20的流量通过路径S3→S2→R1到达网关。
拓扑图如下:

推荐步骤:

  1. 配置客户端和路由器的IP地址
  2. 配置VLAN及Trunk
  3. 配置MSTP
  4. 验证

操作步骤:

  1. 配置客户端和路由器的IP地址

R1

[R1]INT G0/0/0           #进入接口
[R1-GigabitEthernet0/0/0]ip add 10.1.10.254 24    #配置IP地址
[R1-GigabitEthernet0/0/0]int g0/0/1           #进入接口
[R1-GigabitEthernet0/0/1]ip add 10.1.20.254 24       #配置IP地址
[R1-GigabitEthernet0/0/1]quit           #保存退出
  1. 配置VLAN及Trunk

S1

[S1]vlan batch 10 20          #批量创建vlan
[S1]int g0/0/2                    #进入接口
[S1-GigabitEthernet0/0/2]port link-type trunk          #配置为trunk模式
[S1-GigabitEthernet0/0/2]port trunk allow-pass vlan all   #配置承载所以vlan通信
[S1-GigabitEthernet0/0/2]int g0/0/1              #进入接口
[S1-GigabitEthernet0/0/1]port link-type trunk     #配置为trunk
[S1-GigabitEthernet0/0/1]port trunk allow-pass vlan all   #配置承载所有vlan通信
[S1-GigabitEthernet0/0/1]int g0/0/3                 #进入接口
[S1-GigabitEthernet0/0/3]port hybrid untagged vlan 10      #转发数据移除vlan 10的标识
[S1-GigabitEthernet0/0/3]port hybrid pvid vlan 10                #配置PVID为vlan 10
[S1-GigabitEthernet0/0/3]quit                 #保存退出

S2

[S2]vlan  batch 10 20
[S2]int g0/0/2
[S2-GigabitEthernet0/0/2]port link-type trunk
[S2-GigabitEthernet0/0/2]port trunk allow-pass vlan all
[S2-GigabitEthernet0/0/2]int g0/0/1
[S2-GigabitEthernet0/0/1]port link-type trunk
[S2-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[S2-GigabitEthernet0/0/1]int g0/0/3
[S2-GigabitEthernet0/0/3]port link-type hybrid
[S2-GigabitEthernet0/0/3]port hybrid untagged vlan 20      #转发数据移除vlan 20的标识
[S2-GigabitEthernet0/0/3]port hybrid pvid vlan 20             #配置PVID为vlan 20
[S2-GigabitEthernet0/0/3]quit

S3

[S3]vlan batch 10 20            #批量创建vlan
[S3]int eth0/0/3                       #进入接口
[S3-Ethernet0/0/3]port link-type access    #接口配置为access模式
[S3-Ethernet0/0/3]port default vlan 10       #vlan 10加入接口
[S3-Ethernet0/0/3]int eth 0/0/4           #进入接口
[S3-Ethernet0/0/4]port link-type access        #接口配置为access模式
[S3-Ethernet0/0/4]port default vlan 20         #vlan 20加入接口
[S3-Ethernet0/0/4] int eth0/0/1               #进入接口
[S3-Ethernet0/0/1]port link-type trunk           #接口配置为trunk模式
[S3-Ethernet0/0/1]port trunk allow-pass vlan all    #承载所以vlan通信
[S3-Ethernet0/0/1]int e0/0/2            #进入接口
[S3-Ethernet0/0/2]port link-type trunk             #接口配置为trunk模式
[S3-Ethernet0/0/2]port trunk allow-pass vlan all          #承载所有vlan通信
[S3-Ethernet0/0/2]quit            #保存并退出
  1. 配置MSTP

S1

[S1]stp mode mstp            #开启生成树(将交换机配置成MSTP模式)
[S1]stp region-configuration      #进入到stp配置模式
[S1-mst-region]region-name HUAWEI    #配置stp域名
[S1-mst-region]revision-level 1           #配置stp版本为1
[S1-mst-region]instance 1 vlan 10      #将vlan 10添加到stp实例1中
[S1-mst-region]instance 2 vlan 20       #将vlan 20添加到stp实例2中
[S1-mst-region]active region-configuration      #激活生成树实例  (必须激活,否则无效)
[S1-mst-region]quit           #保存并退出
[S1]stp instance 1 root primary         #配置为实例1的根网桥
[S1]stp instance 2 root secondary           #配置为实例2的备份根网桥

S2

[S2]stp mode mstp               #开启生成树(将交换机配置成MSTP模式)
[S2]stp region-configuration         #进入到stp配置模式
[S2-mst-region]region-name HUAWEI      #配置stp域名
[S2-mst-region]revision-level 1            #配置stp版本为1
[S2-mst-region]instance 1 vlan 10         #将vlan 10添加到stp实例1中
[S2-mst-region]instance 2 vlan 20               #将vlan 20添加到stp实例2中
[S2-mst-region]active region-configuration    #激活生成树实例  (必须激活,否则无效)
[S2-mst-region]quit
[S2]stp instance 1 root secondary           #配置为实例1的备份根网桥
[S2]stp instance 2 root primary                   #配置为实例2的根网桥

S3

[S3]stp mode mstp                 #开启生成树(将交换机配置成MSTP模式)
[S3]stp region-configuration     #进入到stp配置模式
[S3-mst-region]region-name HUAWEI     #配置stp域名
[S3-mst-region]revision-level 1         #配置stp版本为1
[S3-mst-region]instance 1 vlan 10        #将vlan 10添加到stp实例1中
[S3-mst-region]instance 2 vlan 20          #将vlan 20添加到stp实例2中
[S3-mst-region]active region-configuration    #激活生成树实例  (必须激活,否则无效)
[S3-mst-region]quit
  1. 验证

验证中可以看出,instance 1中的Ethernet0/0/2和instance 2中的Ethernet0/0/1处于阻塞状态,同时,两个实例之间互相独立,彼此不受影响。

原文地址:https://blog.51cto.com/14156658/2428361

时间: 2024-08-03 12:54:38

华为交换机MSTP公有生成树协议的相关文章

三次交换机如何配置生成树协议----STP

实验 STP 实验目标在两台三次交换机上配置STP,设置switch1为vlan1的根网桥,switch2为vlan1的次根网桥,switch1为vlan2的次根网桥,switch2为vlan2的根网桥 实验环境 实验步骤: 一.将vlan1设置为根网桥 二.将switch2中的vlan1设置为次根 三.在switch1中创建vlan2,封装f0/5-7 四.在switch1上将vlan2设置为次根网桥 五.在switch2中创建vlan2,封装f0/5-7 六.在switch2中将vlan2设

华为交换机MSTP综合实验详解

在网络部分理论知识的学习过程中,MSTP(即多实例生成树)属于比较难掌握的知识点,本实验为大家介绍MSTP综合实验讲解,实验要求和拓扑如下. 实验要求:1.Client1属于vlan10,Client2属于vlan20,Server1属于vlan30:2.vlan10.vlan20.vlan30的网关在SW3上:3.实现Client1和Client2访问Server1时,流量负载均衡且路径最优. 实验拓扑如下图: 第一步:在SW1.SW2.SW3上面配置基本网络. SW1配置sysname SW

3950双层交换机生成树协议

3950双层交换机,A/B交换机分别开启生成树协议. spanning-tree 查看端口 show spanning-tree 两台交换机开启生成树协议之后广播风暴消失. 交换机A 1/1.1/2.1/24端口 交换机B 1/3.1/4.1/23端口 灯不再爆闪

交换机生成树协议和设置根交换机

一.产生环路交换机连接增强网络的健壮性,当一个线出问题的时候,另外一个线路就会顶上,但会产生环路.SwitchE发送广播消息给SwitchB时,SwitchB会把数据包发送给整个网络,也会发送给SwitchA,SwitchA收到广播消息时,又会发送给整个网络,所以就会产生环路 二.根交换机选择生成树协议,为了阻断网络中的广播,消除环路1.比较优先级(BID),值越小,就是根交换机2.优先级相同的时候比较MAC地址,MAC地址值最小就是根交换机 三.查看交换机端口(生成树协议)信息Switch#s

华为交换机之生成树协议(MSTP)配置详解

博文大纲: 一.什么是MSTP? 二.MSTP的基本原理是什么?1.MSTP的网络层次.2.MST域.3.MSTI.4.端口角色.5.MSTP的端口状态. 三.MSTP的保护功能.1.BPDU保护.2.根保护.3.环路保护.4.TC保护. 四.MSTP的配置过程. 一.什么是MSTP? MSTP是一个共有的生成树协议,在实际生产环境中得到广泛的应用.MSTP(Multiple Spanning tree Algorithm and protocol)是多生成树技术,允许在一个交换环境中运行多个生

Cisco PT模拟实验(5) 交换机的生成树协议配置

Cisco PT模拟实验(5) 交换机的生成树协议配置 实验目的: 理解生成树协议工作原理 掌握快速生成树协议RSTP的基本配置方法 实验背景:公司财务部和销售部的PC通过2台交换机实现通信,为提高网络可靠性,冗余链路是一个不错的思路,可防止因某条链路故障导致整个网络的中断,但冗余拓扑存在网络环路等一系列问题,为此需要在交换机上做适当配置. 技术原理: 生成树协议:监视二层交换式网络以找出所有可用的链路,并关闭冗余链路以确保不会出现环路. 首先利用生成树算法创建一个拓扑数据库,然后将网络的冗余备

HP ProCurve交换机与Cisco交换机生成树协议相关命令比较

相信使用HP Procurve系列交换机的朋友非常痛苦的一件事就是资料比较少,实施的案例也比较少. 这里比较了一下Cisco和HP交换机关于生成树协议(Spaninng Tree)的比较表格. 建议在边缘端口(只连接客户端电脑或非管理型交换机)上启用bpdu-protection.admin-edge-port.loop-protection这三个命令.通常由于客户端连接的设备不应该有支持生成树协议的交换机,所以对于一个稳定的网络,我们应该防止其它交换机连接到网络上来干扰已经稳定的生成树. 如果

交换机生成树协议配置

交换机生成树协议配置 一.实验目的 理解生成树STP及快速生成树RSTP的工作原理,掌握如何在交换机上配置快速生成树协议. 二.实验原理 各公司都在寻找1天24小时,1周7天都能正常运行的计算机网络.达到100%正常运行是几乎不可能的,但是99.999%(即5个9)的可靠性则是一些组织设定的目标.这意味着每30年才有1天的故障时间,平均4000天才有1小时的故障时间,平均每年只有5.25分钟的故障时间.达到99.999%的可靠性的目标需要极端可靠的网络.网络的可靠性来源于可靠的设备和可以容忍故障

交换机生成树协议

一.实验目的 理解生成树STP及快速生成树RSTP的工作原理,掌握如何在交换机上配置快速生成树协议. 二.实验原理 两台交换机以双链路互连可以提供链路的冗余备份功能,但带来了网络环路问题,此问题将导致网络中出现"广播风暴",影响交换机的正常工作.使用生成树协议可以避免环路的产生,同时提供链路的冗余备份功能. 生成树协议最主要的应用是为了避免局域网中的网络环回,解决成环以太网网络的"广播风暴"问题,从某种意义上说是一种网络保护技术,可以消除由于失误或者意外带来的循环连