网络建设与运维_交换机3

快速生成树协议 RSTP

RSTP在STP的基础上,增加了两种端口角色:替代(Alternate)端口和备份(Backup)端口。因此,在RSTP中共有4种端口角色:根端口、指定端口、替代端口、备份端口。

如果设备的根端口发生故障,那么替代端口可以成为新的根端口,这加快了网络的收敛过程。

案例背景与要求

在交换机SW1、SW2、SW3、SW4上部署RSTP。要求完成配置后交换机SW4的GE0/0/20端口被阻塞,配置完成后在交换机SW4上查看STP端口状态和GE0/0/20的端口详细信息进行验证。

案例配置过程

配置交换机SW1

<Huawei>system-view

[Huawei]sysname SW1

[SW1]stp mode rstp

[SW1]stp root primary

配置交换机SW2

<Huawei>system-view

[Huawei]sysname SW2

[SW2]stp mode rstp

[SW2]stp root secondary

配置交换机SW3

<Huawei>system-view

[Huawei]sysname SW3

[SW3]stp mode rstp

配置交换机SW4

<Huawei>system-view

[Huawei]sysname SW4

[SW4]stp mode rstp

[SW4]interface GigabitEthernet 0/0/20

[SW4-GigabitEthernet0/0/20]stp cost 100000

案例验证

查看交换机SW4的STP端口状态。

[SW4]display stp brief

MSTID     Port                             Role          STP State    Protection

 0     GigabitEthernet0/0/20  ALTE          DISCARDING            NONE

 0   GigabitEthernet0/0/24 ROOT             FORWARDING          NONE

查看交换机SW4的GE0/0/20的端口详细信息。

[SW4]display stp interface GigabitEthernet 0/0/20

-------[CIST Global Info][Mode RSTP]-------

CIST Bridge         :32768.4c1f-cc3e-291d

---省略部分显示内容---

CIST RootPortId     :128.24

BPDU-Protection     :Disabled

TC or TCN received  :33

TC count per hello  :0

STP Converge Mode   :Normal

Time since last TC  :0 days 0h:0m:42s

Number of TC        :12

Last TC occurred    :GigabitEthernet0/0/24

----[Port20(GigabitEthernet0/0/20)][DISCARDING]----

---省略部分显示内容---

 

RSTP的端口角色

替代端口

可以简单地理解为根端口的备份,它是非根交换机收到了其他设备发送的BPDU从而被阻塞的端口

查看替代端口

    <SW3>display stp brief

    MSTID         Port                        Role STP State     Protection

    0                GigabitEthernet0/0/22        ROOT     FORWARDING        NONE

    0               GigabitEthernet0/0/23     ALTE       DISCARDING         NONE

备份端口:

是指交换机由于收到了自己所发送的BPDU从而被阻塞的端口。

查看备份端口

<SW2>display stp brief

MSTID                  Port                  Role                 STP State Protection

 0              GigabitEthernet0/0/24    ROOT            FORWARDING        NONE

 0             GigabitEthernet0/0/20  DESI     FORWARDING        NONE

 0              GigabitEthernet0/0/22    BACK            DISCARDING          NONE

如果一台交换机拥有多个端口接入同一个网段,并且在这些端口中有一个被选举为该网段的指定端口,那么这些端口中的其他端口将被选举为备份端口,备份端口将作为该网段到达根桥的冗余端口。通常情况下,备份端口处于丢弃状态。

交换机SW1是网络中的根桥,对于交换机SW2而言,GE0/0/20及GE0/0/21端口形成了环路,RSTP能够检测到这个环路,并且在两个端口中选择一个进行阻塞。默认时,由于GE0/0/20端口的端口ID更小,因此该端口成为指定端口,而GE0/0/21端口则成为备份端口,备份端口将被阻塞。

RSTP的端口状态

丢弃(Discarding

学习(Learning

转发(Forwarding

RSTP 的BPDU报文

报文格式

在RSTP中则简化了端口状态,将STP的禁用、阻塞以及侦听状态简化为丢弃(Discarding),学习(Learning)和转发(Forwarding)状态则保留了下来。

如果端口不转发用户流量也不学习MAC地址,那么端口状态就是Discarding状态。如果端口不转发用户流量但是学习MAC地址,那么端口状态就是Learning状态。如果端口既转发用户流量又学习MAC地址,那么端口状态就是Forwarding状态。

格式与STP的配置BPDU大体相同,只是其中个别字段做了修改,以便适应新的工作机制和特性。对于RST BPDU来说,“协议版本ID”字段的值为0x02,“BPDU类型”字段的值也为0x02。最重要的变化体现在“标志”字段中,该字段一共8bit,STP只使用了其中的最低比特位和最高比特位,而RSTP在STP的基础上,使用了剩余的6bit,并且分别对这些比特位进行了定义

边缘端口

作用:为了节省端口从初始启动到转发状态的时间间隔。

特点:

默认不参与生成树计算,不用经历转发延迟;

边缘端口的关闭或激活并不会触发RSTP拓扑变更。

配置边缘端口

[SW2]interface GigabitEthernet 0/0/1

[SW2-GigabitEthernet 0/0/1]stp edged-port enable

[SW2]interface GigabitEthernet 0/0/2

[SW2-GigabitEthernet 0/0/2]stp edged-port enable

[SW2]interface GigabitEthernet 0/0/3

[SW2-GigabitEthernet 0/0/3]stp edged-port enable

运行了STP的交换机,其端口在初始启动之后,首先会进入阻塞状态,如果该端口被选举为根端口或指定端口,那么它还需经历侦听及学习状态,最终才能进入转发状态,也就是说,一个端口从初始启动之后到进入转发状态至少需要耗费约30秒的时间。对于交换机上连接到交换网络的端口而言,经历上述过程是必要的,毕竟该端口存在产生环路的风险,然而有些端口引发环路的风险是非常低的,例如交换机连接终端设备(PC或服务器等)的端口,这些端口如果启动之后依然要经历上述过程那就太低效了,而且用户希望PC接入交换机后能立即连接到网络,而不是还需要等待一段时间。

P/A 机制

定义:全称为Proposal/Agreement(提议/同意)机制,它是交换机之间的一种握手机制;

功能:保证一个指定端口能够从丢弃状态快速进入转发状态,从而加快生成树的收敛。

快速收敛过程:

网络中运行的是RSTP,当交换机SW1与SW2之间新增了一条链路后,生成树收敛过程包括6步。

  •  交换机SW1及SW2立即在各自的端口上发送BPDU,初始时双方都认为自己是根桥。
  • 经过BPDU交互后,交换机SW2将认为交换机SW1才是当前的根桥,此时交换机SW1的GE0/0/1端口是指定端口,而交换机SW2的GE0/0/2端口则成为根端口,该端口将立即停止发送BPDU。这两个端口当前都处于丢弃状态。
  • P/A过程将在交换机SW1与SW2之间发生。由于交换机SW1的GE0/0/1端口为指定端口且处于丢弃状态,因此交换机SW1从GE0/0/1端口发送Proposal置位的BPDU 。

  •  交换机SW2收到Proposal置位的BPDU后,立即启动一个同步过程。
  • 交换机SW2的所有端口均已完成了同步,交换机SW2清楚地知道本地的端口不存在环路,它立即将根端口GE0/0/2切换到转发状态,并从该端口向交换机SW1发送Agreement置位的BPDU。

⑥ 交换机SW1在GE0/0/1端口上收到Agreement置位的BPDU后,立即将该端口切换到转发状态,此时PC2与PC1便可以实现通信了。

RSTP的保护功能

1.BPDU保护:避免网络中的RSTP重计算,防止二层环路和BPDU攻击。

在交换机上配置BPDU保护

1实验拓扑如右图

2配置BPDU保护

[SW2]interfacce GigabitEthernet 0/0/1

[SW2-GigabitEthernet 0/0/1]stp edged-port enable

[SW2]interfacce GigabitEthernet 0/0/2

[SW2-GigabitEthernet 0/0/2]stp edged-port enable

[SW2]interface GigabitEthernet 0/0/3

[SW2-GigabitEthernet 0/0/3]stp edged-port enable

[SW2]stp bpdu-protection

3查看BPDU保护

<SW2>display stp brief

MSTID         Port                             Role        STP State   Protection

 0         GigabitEthernet0/0/1               DESI                 FORWARDING        BPDU

 0       GigabitEthernet0/0/2              DESI               FORWARDING        BPDU

 0         GigabitEthernet0/0/3               DESI                 DISCARDING          BPDU

 0       GigabitEthernet0/0/24           ROOT              DISCARDING          NONE

4验证BPDU保护功能

Jan  4 2020 18:33:00-08:00 SW2 %%01MSTP/4/BPDU_PROTECTION(l)[60]:This edged-port

 GigabitEthernet0/0/1 that enabled BPDU-Protection will be shutdown, because it received BPDU packet!

从上面可以看出由于GE0/0/1、GE0/0/2及GE0/0/3都被配置为边缘端口,因此这些端口都将激活BPDU保护功能(Protection列显示为BPDU),而GE0/0/24并非边缘端口,因此不会激活BPDU保护功能。

当交换机SW2的GE0/0/1端口收到了BPDU,交换机将立即产生如下告警信息,并将GE0/0/1端口关闭。

由于人为疏忽,边缘端口也可能会被误接交换设备,一旦交换设备连接到边缘端口,那么便引入了环路隐患。因此如果边缘端口连接了交换设备并且收到了BPDU,则该端口立即变成一个普通的生成树端口,在这个过程中可能引发网络中的RSTP重计算,从而对网络造成影响。这种疏忽同时也引入了二层环路的隐患。另外,如果攻击者连接到了边缘端口,并针对该端口发起BPDU攻击,也将对网络造成极大影响。在华为交换机上,可以通过在交换机上激活BPDU保护(BPDU Protection)功能解决上述问题。当交换机激活该功能后,如果边缘端口收到BPDU,则交换机会立即把端口关闭(置为Error-Down),同时触发告警。在交换机的系统视图下执行【stp bpdu protection】命令,可以在所有边缘端口上激活BPDU保护功能。

2.根保护:

避免RSTP重新计算,防止根桥被抢占,保护根桥。

配置过程

1拓扑结构

2端口上配置根保护

[SW1]interface GigabitEthernet 0/0/20

[SW1-GigabitEthernet0/0/20]stp root-protection

3查看端口RSTP的状态

<SW1>display stp brief

MSTID               Port                             Role        STP State        Protection

  1.         GigabitEthermet/0/20         DESI       FORWARDING        ROOT

对于一个部署了RSTP的交换网络来说,根桥的地位是至关重要的,毕竟RSTP所计算出的无环拓扑与根桥是息息相关的。在一个RSTP已经完成收敛的网络中,如果根桥发生变化,那么势必导致RSTP重新计算,此时该网络所承载的业务流量必将受到影响。

值得注意的是,根保护功能只有在指定端口上激活才会有效。当激活了根保护功能的指定端口收到更优的BPDU时,它将忽略这些BPDU,并立即将端口切换到丢弃状态。如果端口不再收到更优的BPDU,则一段时间后(通常为两倍的转发延迟时间),它将会自动恢复到转发状态。

3.环路保护

在根端口上激活环路保护功能。

在SW3的GE0/0/22端口上激活环路保护功能。

[SW3]interface GigabitEthernet 0/0/22

[SW3-GigabitEthernet0/0/22]stp loop-protection

查看STP端口状态

<SW3>display stp brief

MSTID            Port                                Role          STP State Protection

 0              GigabitEthernet0/0/22       ROOT              FORWARDING             LOOP 

 0             GigabitEthernet0/0/23     ALTE                  DISCARDING              NONE

在网络正常时,这些端口将持续收到BPDU,而当网络中出现链路单向故障或者网络拥塞等问题时,这些端口将无法正常地接收BPDU,这便会导致交换机进行RSTP重计算,此时端口的角色及状态便会发生改变,这就有可能在网络中引入环路。

当网络完成收敛后,交换机SW3的GE0/0/22端口将成为根端口并处于转发状态,而GE0/0/23端口则被选举为替代端口并处于丢弃状态。此时可以使用如下命令在交换机SW3的GE0/0/22端口上激活环路保护功能。

在替代端口上激活了环路保护功能。

在SW3的GE0/0/23端口上激活环路保护功能。

[SW3]interface GigabitEthernet 0/0/23

[SW3-GigabitEthernet0/0/23]stp loop-protection

查看STP端口状态

<SW3>display stp brief

MSTID     Port                         Role          STP State  Protection

 0     GigabitEthernet0/0/22           ROOT            FORWARDING       LOOP

 0   GigabitEthernet0/0/23       ALTE                 DISCARDING        LOOP

在替代端口上激活了环路保护功能后,如果该端口长时间没有收到BPDU,那么交换机会将该端口的角色调整为指定端口,但是将其状态保持在丢弃状态,从而避免环路的出现。

如果交换机SW3的GE0/0/23端口长时间没有收到BPDU,交换机会将该端口调整为指定端口,但是不会将其切换到转发状态,而是保持在丢弃状态,从而避免环路的出现。

4.拓扑变更保护

激活拓扑变更保护功能。

[SW]stp tc-protection

改拓扑变更保护功能默认单位时间。

[SW]stp tc-protection interval interval-value

改拓扑变更保护的默认单位时间内处理TC BPDU次数。

[SW]stp tc-protection threshold value

一个稳定的交换网络是不会频繁地出现拓扑变更的,一旦网络拓扑出现变更,TC BPDU(此处指的是TC比特置位的BPDU)将会被泛洪到全网,而这些TC BPDU将会触发网络中的交换机执行MAC地址表删除操作。设想一下,如果网络环境极端不稳定导致TC BPDU频繁地泛洪,又或者网络中存在攻击者发送大量的TC BPDU对网络进行攻击,那么交换机的性能将受到极大损耗。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值