以太网交换机(SW系列、S系列)

SW系列交换机,采用全新的系统架构设计,端口丰富、性能强劲,适合于作为中小型企业网、中小型酒店、中小型分支门店等。
{{sendMatomoQuery("以太网交换机(SW系列、S系列)","04_MSTP命令")}}

04_MSTP命令

更新时间:2024-01-09

1.MSTP 命令

1.1 MSTP 配置命令介绍

1.1.1 abort

命令: abort

功能: 放弃本次对 MSTP 域的配置, 并且退出 MST 配置模式回到全局配置模式。 命令模式: MSTP 域配置模式。

使用指南: 当使用本命令退出 MST 配置模式时,本次对 MSTP 域做的配置不生效,生效的 仍然是前一次保留 MSTP 域配置。

举例: 退出 MST 配置模式,并且不保留本次配置。

Switch(Config-Mstp-Region)#abort

Switch(config)#

 

 

1.1.2 exit

命令:exit

功能: 保存本次对 MSTP 域的配置, 并且退出 MSTP 域配置模式回到全局配置模式。 命令模式: MSTP 域配置模式。

使用指南: 当使用本命令退出 MST 配置模式时, 本次对 MSTP 域做的配置即时生效。 举例: 退出 MST 配置模式,并且保留本次配置。

Switch(Config-Mstp-Region)#exit

Switch(config)#

 

 

1.1.3 instance vlan

命令:instance <instance-id> vlan <vlan-list>

no instance <instance-id> [vlan <vlan-list>]

功能: 在 MSTP 域配置模式下, 创建 Instance 及配置 VLAN 与 Instance 的映射关系或添加 VLAN 表项与指定 Instance 映射关系;本命令的 no 操作为删除指定的 Instance 或删除某些 VLAN 表项与指定 Instance 的映射关系。

参数: 对于非 no 命令,<instance-id>为 Instance 号,取值范围为 0~64;对于 no 命令, <instance-id>为 Instance 号,取值范围为 0~64 。<vlan-list>为连续的或不连续的 VLAN 号,支持表示连续的“-”符号和不连续的“;”符号。

命令模式:MSTP 域配置模式。

缺省情况: 在没有创建任何 Instance 时, 交换机只有 Instance 0,且 VLAN1~4094 均属于 Instance 0。

 

 

使用指南: 本命令用于设置 VLAN 与 Instance 的映射关系,只有所有的映射关系都相同且 其他 MSTP 域的参数也相同, 交换机才能认为彼此是在相同的 MSTP 域中。在没有配置任 何 Instance 时, 所有的 VLAN 都属于 Instance 0。MSTP 最多支持 64 个 MSTI(除了 CIST 之外)。 可以把 CIST 理解为 MSTI0,其余实例为 MSTI1~64。具体个数依照产品规格而 定, 64 只是最大的规格值。

举例: 配置 VLAN1-10;100-110 与 Instance 1 的映射关系。

Switch(config)#spanning-tree mst configuration

Switch(Config-Mstp-Region)#instance 1 vlan 1-10;100-110

 

1.1.4 name

命令:name <name>

no name

功能: 在 MSTP 域配置模式下, 配置 MSTP 域的名字;本命令的 no 操作为删除 MSTP 域 的名字。

参数: <name>为 MSTP 域名字,取值范围不超过 32 字节的字符串。

命令模式: MSTP 域配置模式。

缺省情况: 缺省 MSTP 域的名字为该交换机网桥 MAC。

使用指南: 本命令用于设置 MSTP 域的名字, 只有 MSTP 域的名字相同且其他 MSTP 域的 参数也相同,交换机才能认为彼此是在相同的 MSTP 域中。

举例: 配置 MSTP 域的名字为 mstp-test。

Switch(config)#spanning-tree mst configuration

Switch(Config-Mstp-Region)#name mstp-test

 

1.1.5 no

命令: no <instance-id> | <name> | <revision-level>

功能:  取消一条命令或设置为初始值。

参数:  <instance-id>  instance 号, <name>  mstp 域名, <revision-level>  用于计算 MST 配置标识的修正数值。

命令模式:  MSTP 域配置模式。

使用指南:  本命令可以删除指定的 instance,删除 MSTP 域的 name,恢复修正数值的缺省

值为 0。

举例:  删除 instance 1。

Switch(Config-Mstp_Region)#no instance 1

 

1.1.6 revision-level

命令:revision-level <level>

no revision-level

功能: 在 MST 配置模式下,配置用于计算 MST 配置标识的修正数值;本命令的 no 操作为 恢复修正数值的缺省值 0。

参数: <level>为修正数值,取值范围为 0~65535。

命令模式: MSTP 域配置模式。

缺省情况: 缺省修正数值为 0。

 

 

使用指南: 本命令用于设置计算 MST 配置标识时用到的修正数值,只有修正数值相同且其 他 MSTP 域的参数也相同,交换机才能认为彼此是在相同的 MSTP 域中。

举例: 配置修正数值为 2000。

Switch(config)#spanning-tree mst configuration

Switch(Config-Mstp-Region)# revision-level 2000

 

 

1.1.7 show

命令: show

功能:  显示当前运行系统的信息。

命令模式:  MSTP 域配置模式。

使用指南:  使用本命令,可以详细的查看当前系统的信息。

举例:  显示当前运行系统的信息。

Switch(Config-Mstp-Region)#show

 

1.1.8 spanning-tree

命令:spanning-tree

no spanning-tree

功能: 默认情况下, 为在交换机的全局配置模式和端口配置模式下分别启动 MSTP  协议的 命令;本命令的 no 操作为关闭 MSTP 协议。如果在开启 stp 全局使能之前,配置了 stp 工作 模式, 则使能此命令,为在交换机的全局配置模式和端口配置模式下分别启动配置的 stp 协 议;本命令的 no 操作为关闭对应的 stp 协议。

命令模式: 全局配置模式和端口配置模式。

缺省情况: 系统缺省不运行 MSTP 协议。

使用指南: 如果在全局配置模式下启动了 MSTP 协议, 除了在端口上打开与 MSTP 应用互 斥的端口外,所有的端口缺省都打开 MSTP 协议。

举例: 在全局模式打开 MSTP,并且在端口 1/0/2 模式上关闭 MSTP。

Switch(config)#spanning-tree

Switch(config)#interface ethernet 1/0/2

Switch(Config-If-Ethernet1/0/2)#no spanning-tree

 

1.1.9 spanning- tree cost

命令: spanning-tree cost <cost>

no spanning-tree cost

功能:  设置当前以太网端口的路径代价; 本命令的 no  操作为恢复缺省值。

参数:  <cost>  为路径代价值, 取值范围为 1~200,000,000。

命令模式:  端口配置模式。

缺省情况:  缺省情况下,端口的路径代价与端口的带宽相关。

 

端口类型

缺省路径开销

建议取值范围

10Mbps

2000000

2000000~20000000

100Mbps

200000

200000~2000000

1Gbps

20000

20000~200000

 

10Gbps

2000

2000~20000

对汇聚端口,端口缺省路径代价如下:

端口类型

汇聚端口个数(在允许汇聚的 个数范围内)

缺省路径开销

10Mbps

N

2000000/N

100Mbps

N

200000/N

1Gbps

N

20000/N

10Gbps

N

2000/N

使用指南:  通过配置端口路径代价可以控制端口到根网桥的根路径代价,从而控制该端口、 指定端口等的选举。

举例:  在端口 1/0/2 上设置端口路径代价为 3000000。

Switch(Config-If-Ethernet1/0/2)#spanning-tree cost 3000000

 

 

1.1.10 spanning-tree digest-snooping

命令:spanning-tree digest-snooping

no spanning-tree digest-snooping

功能: 配置端口使用对端的认证字, 本命令的 no 形式配置端口不使用对端认证字。 参数: 无。

命令模式: 端口配置模式。

缺省情况: 不使用对端认证字。

使用指南: MSTP 协议使用指定的密钥, 对 INSTANCE 和 VLAN 的对应关系使用 MD5 算 法生成区域的认证字,由于个别厂商没有遵守协议的要求使用指定的密钥,而使用了私有的 密钥, 导致其设备与其它厂商设备无法通过配置实现域内互通,通过该命令可以在指定的端 口上使用对方的认证字以实现与其的域间互通。注意:这种配置可能导致 INSTANCE  与 VLAN 对应关系不同的相邻设备认为对端是同一区域,因此使用该功能时要由管理员保证其 对应关系一致。并且要保证设备间所有的端口都进行该配置, 以避免不希望的后果。

举例: 配置端口使用对端的认证字。

Switch(config)#interface ethernet 1/0/2

Switch(Config-If-Ethernet1/0/2)#spanning-tree digest-snooping

Switch(Config-If-Ethernet1/0/2)#

 

 

1.1.11 spanning-tree format

命令:spanning-tree format {standard | privacy | auto}

no spanning-tree format

功能: 配置端口报文格式,以便于与其它厂商产品互通。本命令的 no 操作恢复格式为默认 的格式。

参数: standard:IEEE 规定的报文格式;

privacy:私有报文格式,与 CISCO 设备兼容的格式;

auto: 自动识别报文格式,即通过查看收到的报文的格式决定自己的报文格式。 命令模式: 端口配置模式。

 

 

缺省情况:  自动识别报文格式。

使用指南: 由于 CISCO  使用了与 IEEE  规定的报文格式不同的格式, 而很多厂家为了与 CISCO 兼容也采用了与 CISCO 相同的格式, 因此我们要同时支持这两种格式。其中标准 格式(standard)是完全按照 IEEE 规定的格式, 私有报文格式(privacy)是与 CISCO 兼 容的格式, 另外,如果我们不清楚对端是何种格式,可以配置为 AUTO,我们可以根据对方 发出的报文识别对方支持何种格式。为了与过往产品和主流厂家的更好的兼容,我们默认的 形式是自动识别报文,在配置为 AUTO 时,在收到对方发出的报文前也认为是私有报文格 式。

如果我们配置的格式不是 AUTO,而对端与我们规定的格式不匹配,我们在收到对端的报文 后,会设置收到报文的端口状态为 DISCARDING 以避免双方都认为自己是根而造成环路。 如果我们配置的格式是 AUTO,而端口外连接了互不兼容的超过 1 个设备(例如通过 HUB 或透传 BPDU 的设备连接了多个运行 MSTP 的设备),我们会统计一段时间内端口格式改 变的次数, 超过该次数(250 秒内改变 10 次)后,端口将被关闭, 只有管理员的干预才能 再把端口打开。

举例: 配置端口报文格式为 IEEE 规定的报文格式。

Switch(config)#interface ethernet 1/0/2

Switch(Config-If-Ethernet1/0/2)#spanning-tree format standard

Switch(Config-If-Ethernet1/0/2)#

 

 

1.1.12 spanning-tree forward-time

命令:spanning-tree forward-time <time>

no spanning-tree forward-time

功能: 设置交换机转发延时的时间值;本命令的 no 操作为恢复缺省值。

参数: <time>为转发延时的时间值, 单位为秒,取值范围为 4~30。

命令模式: 全局配置模式。

缺省情况: 转发延时缺省为 15 秒。

使用指南: 当网络拓扑发生变换时,端口状态从阻塞状态转变到监听状态的这段延时称为转 发延时。转发延时和 Hello 时间值、最大老化时间之间是有关联的,用户在配置 MSTP 时 间参数时必须满足如下条件,否则会影响 MSTP 的正确工作:

2×(Bridge_Forward_Delay - 1.0 seconds) >= Bridge_Max_Age

Bridge_Max_Age >= 2 ×(Bridge_Hello_Time + 1.0 seconds)

举例: 在全局模式配置 MSTP 转发延时时间为 20 秒。

Switch(config)#spanning-tree forward-time 20

 

1.1.13 spanning-tree hello-time

命令:spanning-tree hello-time <time>

no spanning-tree hello-time

功能: 设置交换机 Hello  时间值;本命令的 no 操作为恢复缺省值。

参数: <time>为 Hello time 的时间值,单位为秒, 取值范围为 1~10。

命令模式: 全局配置模式。

缺省情况: Hello 时间缺省为 2 秒。

使用指南: 交换机发送 BPDU 的时间间隔称为 Hello 时间。Hello 时间和转发延时、最大老

 

 

化时间之间是有关联的,用户在配置 MSTP  时间参数时必须满足如下条件,否则会影响 MSTP 的正确工作:

2×(Bridge_Forward_Delay - 1.0 seconds) >= Bridge_Max_Age

Bridge_Max_Age >= 2 ×(Bridge_Hello_Time + 1.0 seconds)

举例: 在全局模式配置 MSTP Hello 时间为 5 秒。

Switch(config)#spanning-tree hello-time 5

 

1.1.14 spanning-tree link-type p2p

命令:spanning-tree link-type p2p {auto | force-true | force-false}

no spanning-tree link-type

功能: 设置与当前端口相连的链路类型;本命令的 no 操作恢复当前端口的链路类型为自动 检测。

参数: auto 表示由系统自动检测链路类型,force-true 表示强制为点对点类型,force-false 表示强制为非点对点类型。

命令模式: 端口配置模式。

缺省情况: 缺省情况下为 auto,MSTP 协议会自动检测端口相连的链路类型。

使用指南: 当端口工作在全双工模式下,MSTP 协议会自动认为与该端口相连的链路类型为 点对点类型;当端口工作在半双工模式下,MSTP 协议会自动认为与该端口相连的链路类型 为共享型。

举例: 强制交换机的端口 1/0/7-8 为点到点连接。

Switch(config)#interface ethernet 1/0/7-8

Switch(Config-If-Port-Range)#spanning-tree link-type p2p force-true

 

 

1.1.15 spanning-tree maxage

命令:spanning-tree maxage <time>

no spanning-tree maxage

功能: 设置交换机 BPDU 信息的最大老化时间值; 本命令的 no 操作为恢复缺省值。 参数: <time>为最大老化时间值,单位为秒, 取值范围为 6~40。

命令模式: 全局配置模式。

缺省情况: 最大老化时间缺省为 20 秒。

使用指南: BPDU 的生命周期称为最大老化时间。最大老化时间和转发延时、Hello 时间之 间是有关联的,用户在配置 MSTP 时间参数时必须满足如下条件,否则会影响 MSTP 的正 确工作:

2×(Bridge_Forward_Delay - 1.0 seconds) >= Bridge_Max_Age

Bridge_Max_Age >= 2 ×(Bridge_Hello_Time + 1.0 seconds)

举例: 在全局模式配置 maxage 时间为 25 秒。

Switch(config)#spanning-tree maxage 25

 

1.1.16 spanning-tree max-hop

命令:spanning-tree max-hop <hop-count>

no spanning-tree max-hop

功能: 设置 BPDU 支持在 MSTP 域中传输的最大跳数;本命令的 no 操作为恢复缺省值。

参数: <hop-count>为最大跳数,取值范围为 1~40。

命令模式: 全局配置模式。

缺省情况:最大跳数缺省为 20。

使用指南: 在 MSTP 协议中不仅保留 Max-age 表示 BPDU 的生命周期,在 MSTP 域中还 增加了 Max-hop 表示 BPDU 的生命周期, Max-hop 在网络中的传输呈递减状态。从 MSTI 的根网桥发出时 Max-hop 为最大值, BPDU 每被接收一次,该 BPDU 的 Max-hop 值就减 少一跳,当交换机端口接收到 Max-hop 为 0 的 BPDU 时,该端口就会丢弃该 BPDU,并且 将本端口作为指定端口发送 BPDU。

举例: 设置最大跳数为 32。

Switch(config)#spanning-tree max-hop 32

 

1.1.17 spanning-tree mcheck

命令:spanning-tree mcheck

功能: 迫使交换机端口迁移到 MSTP 模式下运行。

命令模式: 端口配置模式。

缺省情况: 端口运行在 MSTP 模式下。

使用指南: 如果在与当前以太网端口相连的网段内存在运行 IEEE 802.1D STP 协议的网桥, 该端口会迁移到 STP 兼容模式下运行。在网络比较稳定的情况下, 虽然网段内运行 STP 协 议的网桥被拆离,但与之相连的运行 MSTP 协议的交换机的端口仍然会运行在 STP 兼容模 式下,此时可以通过该命令迫使其迁移到 MSTP 模式下运行。端口迁移到 MSTP 模式下运 行后, 如果再次收到新的 STP 报文, 端口又会回到 STP 兼容模式下。

该命令必须在交换机运行在 IEEE802.1s MSTP 模式下时进行配置,如果交换机的协议

运行模式被配置为 IEEE802.1D STP 模式, 则该命令无效。

举例: 强制端口 1/0/2 迁移到 MSTP 模式下运行。

Switch(Config-If-Ethernet1/0/2)#spanning-tree mcheck

 

 

1.1.18 spanning-tree mode

命令:spanning-tree mode {mstp | stp | rstp}

no spanning-tree mode

功能: 设置交换机运行 Spanning Tree 的模式;本命令的 no 操作为恢复交换机缺省的模式。 参数:mstp  为设置交换机运行 IEEE802.1s  的 MSTP  模式; stp  为设置交换机运行 IEEE802.1D STP 模式; rstp 为设置交换机运行 IEEE802.1w RSTP 模式。

命令模式: 全局配置模式。

缺省情况: 交换机缺省运行 MSTP 模式。

使用指南: 当交换机运行 IEEE802.1D  STP 模式时,只能发送标准的 802.1D  BPDU 帧和

TCN BPDU,对接收到的任何 MSTP BPDU 都将丢弃。

举例: 设置交换机运行 STP 模式。

Switch(config)#spanning-tree mode stp

 

1.1.19 spanning-tree mst configuration

命令:spanning-tree mst configuration

no spanning-tree mst configuration

功能:进入交换机的 MST 配置模式,在交换机的 MST 配置模式下,可配置交换机有关 MSTP

域的参数; 本命令的 no 操作为恢复交换机的 MSTP 域参数的缺省值。

命令模式: 全局配置模式。

缺省情况: 用户在没有进入 MST 配置模式之前, MSTP 域的参数缺省如下:

 

MSTP 域参数

参数缺省值

Instance

只有实例 0 存在, 且 VLAN1~4094 均映射在实例 0

Name

取本交换机网桥 MAC

Revision

0

使用指南: 无论交换机是否启动了 MSTP 协议, 都可以进入 MSTP 域配置模式, 并在配置 后保存当前配置。当交换机运行 MSTP 模式时,系统会根据配置的 MSTP 域参数计算出本 交换机的 MST 配置标识(MST Configuration Identifier),只有 MSTP 域配置标识相同的交 换机才会认为是在同一个 MSTP 域中,且能进行 MSTI 的计算。

举例: 进入交换机的 MST 配置模式。

Switch(config)#spanning-tree mst configuration

Switch(Config-Mstp-Region)#

 

1.1.20 spanning-tree mst cost

命令:spanning-tree mst <instance-id> cost <cost>

no spanning-tree mst <instance-id> cost

功能: 设置当前以太网端口在指定实例的端口路径代价; 本命令的 no 操作为恢复缺省值。 参数: <instance-id>为指定实例的实例 ID,取值范围为 0~64;<cost>为路径代价值, 对 于不同的 cost 格式,取值范围有所不同,对于默认 dot1t 模式,取值范围为 1~200,000,000, 对于 dot1d 模式,取值范围为 1-65535。

命令模式: 端口配置模式。

缺省情况: 缺省情况下,端口的路径代价与端口的带宽相关。

端口类型

缺省路径开销

建议取值范围

10Mbps

2000000

2000000~20000000

100Mbps

200000

200000~2000000

1Gbps

20000

20000~200000

10Gbps

2000

2000~20000

对汇聚端口,端口缺省路径代价如下:

端口类型

汇聚端口个数(在允许汇聚的 个数范围内)

缺省路径开销

10Mbps

N

2000000/N

100Mbps

N

200000/N

1Gbps

N

20000/N

10Gbps

N

2000/N

端口速率

端口类型

路径开销

802.1D-2008

802.1T

0

 

65535

200,000,000

 

10Mbps

半双工

全双工

2 个端口的汇聚链路 3 个端口的汇聚链路 4 个端口的汇聚链路

100

99

95

95

95

2,000,000

1,999,999

1,000,000

666,666

500,000

100Mbps

半双工

全双工

2 个端口的汇聚链路 3 个端口的汇聚链路 4 个端口的汇聚链路

19

18

15

15

15

200,000

199,999

100,000

66,666

50,000

1000Mbps

全双工

2 个端口的汇聚链路 3 个端口的汇聚链路 4 个端口的汇聚链路

4

3

3

3

20,000

10,000

6,666

5,000

10Gbps

全双工

2 个端口的汇聚链路 3 个端口的汇聚链路 4 个端口的汇聚链路

2

1

1

1

2,000

1,000

666

500

 

使用指南: 通过配置端口路径代价可以控制该实例端口到根网桥的根路径代价,从而控制该 实例根端口、指定端口等的选举。

举例: 在端口 1/0/2 上设置实例 2 对应的 MSTP 端口路径代价为 3000000。 Switch(Config-If-Ethernet1/0/2)#spanning-tree mst 2 cost 3000000

 

 

1.1.21 spanning-tree cost-format

命令:spanning-tree cost-format {dot1d | dot1t}

功能: 在交换机的全局配置模式下可修改路径开销值的表示方式, 有 dot1d 和 dot1t 格式可 选用, 默认使用 dot1t 格式。

命令模式: 全局配置模式。

缺省情况: 系统缺省使用 dot1t 格式计算路径开销值。

使用指南: cost 值的表示方法有两种,分别是 IEEE802.1d-2008 上标示的 dot1d 方式, 和 IEEE802.1t 上标示的 dot1t 方式。两种方法定义的路径开销值的取值范围不同,dot1d 的取 值范围是 1-65535 ,dot1t 的取值范围是 1-200000000。

若用户已使用 spanning-tree cost 命令手动配置过链路上的 cost 值, 则使用 cost-format 命 令修改 cost 表示方法的配置不能成功,除非用户将手动配置清除。

举例: 在全局模式修改 cost 格式

Switch(config)#spanning-tree cost-format dot1d

 

1.1.22 spanning-tree mst loopguard

命令: spanning-tree [mst <instance-id>] loopguard

no spanning-tree [mst <instance-id>] loopguard

功能: 配置 spanning-tree 的指定实例上启动 loopguard 功能,本命令的 no 操作恢复为不 在该实例下启动该功能。

参数: <instance-id>:MSTP 实例 ID。

缺省: 不启动 loopguard 功能。

命令模式: 端口模式

使用指南: 通过配置该命令, 可以避免单向链路失效导致 root 端口或 alternate  端口变成 designated 端口; 在端口收包定时器到时时将配置了 loopguard 的端口置为 Block 状态。

举例: 配置实例 0 的端口 1/0/2 为 loopguard 模式。

Switch(Config)#interface ethernet 1/0/2

Switch(Config-Ethernet-1/0/2)#spanning-tree mst 0 loopguard

Switch(Config-Ethernet-1/0/2)#

 

1.1.23 spanning-tree mst port-priority

命令:spanning-tree mst <instance-id> port-priority <port-priority>

no spanning-tree mst <instance-id> port-priority

功能: 设置当前端口在指定实例的优先级值;本命令的 no 操作为恢复缺省端口的优先级值。 参数: <instance-id>为指定实例的实例 ID,取值范围为 0~64;<port-priority>为端口优 先级值,取值范围为 0~240 之间的 16 倍数, 即取值范围为 0、16、32、48…240。

命令模式: 端口配置模式。

缺省情况: 端口缺省优先级值为 128。

使用指南: 通过配置端口优先级可以控制指定实例的端口 ID,进而影响该实例的根端口、 指定端口等选举。端口优先级值越小,优先级越高。

举例: 在端口 1/0/2 设置实例 1 的端口优先级为 32。

Switch(config)#interface ethernet 1/0/2

Switch(Config-If-Ethernet1/0/2)#spanning-tree mst 1 port-priority 32

 

1.1.24 spanning-tree mst priority

命令:spanning-tree mst <instance-id> priority <bridge-priority>

no spanning-tree mst <instance-id> priority

功能: 设置交换机在指定实例的网桥优先级; 本命令的 no 操作为恢复交换机在指定实例的 缺省优先级值。

参数: <instance-id>为指定实例的实例 ID,取值范围为 0~64;<bridge-priority>为交换 机的优先级,取值范围为 0~61440  之间的 4096  的倍数,即取值范围为 0 、4096 、 8192…61440。

命令模式: 全局配置模式。

缺省情况: 交换机缺省的优先级为 32768。

使用指南: 通过配置交换机网桥优先级可以改变指定实例的网桥 ID,进而用于该实例的根

网桥、指定端口等选举。交换机网桥优先级值越小,优先级越高。

举例: 配置交换机实例 2 的优先级为 4096。

Switch(config)#spanning-tree mst 2 priority 4096

 

1.1.25 spanning-tree mst rootguard

 

 

命令:  spanning-tree mst <instance-id> rootguard

no spanning-tree mst <instance-id> rootguard

功能: 配置 spanning-tree 的指定实例上启动 rootguard 功能,本命令的 no 操作恢复为不在 该实例下启动该功能。

参数: <instance-id>:MSTP 实例 ID。

命令模式: 端口模式。

缺省情况: 不启动 rootguard 功能。

使用指南: 根保护功能是基于端口配置的,不允许端口成为 mstp  的根端口,也就是说端口 要始终保持在指定端口状态。如果在配置了 root guard  的端口接收到了更优的 bpdu  报文, 根保护功能会把该端口设置为 root_inconsistent(blocked)状态,而不是根据该 bpdu 重新计 算,选择出一个新的根端口。当交换机不再接收更优的 bpdu 报文, 该端口就不会再阻塞, 根据生成树协议,端口状态从 discarding ,learning,最后转变到 forwarding 状态。恢复是 自动的,不需要人为干预。通过 root guard 功能, 能够很好的保护二层网络的拓扑结构, 不会因为其它设备的加入而改变根网桥,从而不会改变现有网络用户数据所走的链路。

举例: 配置 spanning-tree 的实例 0 启动 rootguard 功能。

Switch(config)#interface ethernet 1/0/2

Switch(Config-If-Ethernet1/0/2)#spanning-tree mst 0 rootguard

Switch(Config-If-Ethernet1/0/2)#

 

 

1.1.26 spanning-tree portfast

命令:spanning-tree portfast [bpdufilter | bpduguard] [recovery <30-3600>] no spanning-tree portfast

功能: 配置端口为边缘端口,并指定模式 BPDU filter、BPDU  guard 或缺省模式(协议规 定的模式, 即收到 BPDU 报文后转为非边缘端口)。本命令的 no 操作配置端口为非边缘端 口。

参数: bpdufilter:配置边缘端口模式为 BPDU filter

bpduguard:配置边缘端口模式为 BPDU guard

recovery:配置边缘端口执行bpduguard违背操作后可以自动恢复 <30-3600>:恢复时间,默认不进行恢复

命令模式: 端口模式。

缺省情况: 非边缘端口。

使用指南: 对于边缘端口可以在变为指定端口时直接进入转发态,而对于边缘端口可以有三 种模式,缺省模式下边缘端口收到 BPDU  后会转为非边缘端口。 BPDU  filter  模式下收到 BPDU 会丢弃该报文不处理, BPDU guard 模式下收到 BPDU 会丢弃报文并关闭端口。同 时只能有一种模式。 no 命令将端口恢复为非边缘端口。

举例: 配置边缘端口模式为 BPDU guard,恢复时间为 60s。

Switch(config)#interface ethernet 1/0/2

Switch(Config-If-Ethernet1/0/2)#spanning-tree portfast bpduguard recovery 60 Switch(Config-If-Ethernet1/0/2)#

 

1.1.27 spanning-tree port-priority

命令: spanning-tree port-priority <port-priority>

 

 

no spanning-tree port-priority

功能:  配置端口的优先级。本命令的 no 操作为恢复缺省端口的优先级值。

参数:  <port-priority>  为端口优先级值,取值范围为 0~240 之间的 16 倍数, 即取值范围 为 0、16、32、48…240。

命令模式:  端口模式。

缺省情况:  交换机缺省的优先级为 32768。

使用指南:  配置端口的优先级, 可以用于端口的选举。优先级值越小, 优先级越高。 举例:  配置端口 1 的优先级为 4096。

Switch(config-If-Ethernet1/0/1)#spanning-tree port-priority 4096

 

 

1.1.28 spanning-tree priority

命令:spanning-tree priority <bridge-priority>

no spanning-tree priority

功能: 设置交换机的网桥优先级;本命令的 no 操作为恢复交换机的缺省优先级值。

参数: <bridge-priority>为交换机的优先级, 取值范围为 0~61440 之间的 4096  的倍数, 即取值范围为 0、4096、8192…61440。

命令模式: 全局配置模式。

缺省情况: 交换机缺省的优先级为 32768。

使用指南: 通过配置交换机网桥优先级可以改变网桥 ID,进而用于根网桥、指定端口等选

举。交换机网桥优先级值越小, 优先级越高。

举例: 配置交换机的优先级为 4096。

Switch(config)#spanning-tree priority 4096

 

1.1.29 spanning-tree rootguard

命令: spanning-tree rootguard

no spanning-tree rootguard

功能:  设置端口为根端口。本命令的 no 操作为设置端口为非根端口。

参数:  无。

命令模式:  端口模式。

缺省情况:  端口为非根端口。

使用指南:  根保护功能是基于端口配置的,不允许端口成为 mstp  的根端口,也就是说端 口要始终保持在指定端口状态。如果在配置了 root guard  的端口接收到了更优的 bpdu  报 文, 根保护功能会把该端口设置为 root_inconsistent(blocked)状态, 而不是根据该 bpdu 重 新计算,选择出一个新的根端口。当交换机不再接收更优的 bpdu 报文, 该端口就不会再阻 塞,根据生成树协议,端口状态从 discarding ,learning,最后转变到 forwarding 状态。恢 复是自动的,不需要人为干预。通过 root guard 功能,能够很好的保护二层网络的拓扑结 构,不会因为其它设备的加入而改变根网桥, 从而不会改变现有网络用户数据所走的链路。 举例:  配置端口 1 为根端口。

Switch(config-If-Ethernet1/0/1)#spanning-tree rootguard

 

 

1.1.30 spanning-treetcflush (全局模式)

 

 

命令:spanning-treetcflush {enable | disable | protect}

no spanning-treetcflush

功能: 配置全局处理拓扑改变导致的 FLUSH 的方式, 其 no 形式恢复为默认的模式。 参数: enable:表示标准的每次 TC 都 FLUSH 的模式。

disable:表示对 TC 不做 FLUSH 处理。

protect:表示限制 TC 进行 FLUSH 的次数。

命令模式: 全局配置模式。

缺省情况: enable。

使用指南: 按协议要求,拓扑改变传播时,传播的端口应当清除 MAC/ARP 表(FLUSH), 但在实际环境中, 有时用户的网络比较单纯, 不需要也不希望每次拓扑改变都清除 MAC/ARP 表,同时要考虑可能有拓扑改变攻击的情况,因此,我们允许用户通过配置决定 拓扑改变传播时的行为。默认使用遵守协议的行为,可以配置为不 FLUSH 或每 10 秒最多 一次 FLUSH。注意: 如果网络环境比较复杂, 特别是用户可能从生成树的一个支路快速转 移到另一支路的情况, 不要使用 DISABLE 的方式。全局的配置对所有没有单独配置的端口 生效。

举例: 配置全局处理拓扑改变导致的 FLUSH 的方式为对 TC 不做 FLUSH 处理。 Switch(config)#spanning-tree tcflush disable

Switch(config)#

1.1.31 spanning-treetcflush (端口模式)

命令:spanning-treetcflush {enable | disable | protect}

no spanning-tree tcflush

功能: 配置端口处理拓扑改变导致的 FLUSH 的方式, 其 no 形式恢复为默认的模式。 参数: enable:表示标准的每次 TC 都 FLUSH 的模式。

disable:表示对 TC 不做 FLUSH 处理。

protect:表示限制 TC 进行 FLUSH 的次数。

命令模式: 端口配置模式。

缺省情况: 使用全局的模式。

使用指南: 按协议要求,拓扑改变传播时,传播的端口应当清除 MAC/ARP 表(FLUSH), 但在实际环境中, 有时用户的网络比较单纯, 不需要也不希望每次拓扑改变都清除 MAC/ARP 表,同时要考虑可能有拓扑改变攻击的情况,因此,我们允许用户通过配置决定 拓扑改变传播时的行为。默认使用遵守协议的行为,可以配置为不 FLUSH 或每 10 秒最多 一次 FLUSH。注意: 如果网络环境比较复杂, 特别是用户可能从生成树的一个支路快速转 移到另一支路的情况,不要使用 DISABLE 的方式。

举例: 配置端口处理拓扑改变导致的 FLUSH 的方式为对 TC 不做 FLUSH 处理。 Switch(config)#interface ethernet 1/0/2

Switch(Config-If-Ethernet1/0/2)#spanning-tree tcflush disable

Switch(Config-If-Ethernet1/0/2)#

 

1.1.32 spanning-tree transmit-hold-count

命令: spanning-tree transmit-hold-count <tx-hold-count-value>

no spanning-tree transmit-hold-count

功能: 设置端口的最大发送速率。

 

参数: tx-hold-count-value:取值范围是 1-20,默认值是 10。

命令模式: 全局配置模式。

缺省情况: 默认值是 10。

使用指南: 在每一个 Hello Time 时间间隔内可以发送的最大 BPDU 数,用于控制 BPDU 的 流量。该变量值应用于整个 MST 网桥。

举例: 设置最大发送速率为 20。

Switch(config)#spanning-tree transmit-hold-count 20

 

1.2 监测和调试命令

 

1.2.1 debug spanning-tree

命令:debug spanning-tree

no debug spanning-tree

功能: 打开 MSTP 的调试信息; 本命令的 no 操作为关闭 MSTP 调试信息。 命令模式: 特权模式。

使用指南: 该命令是 MSTP 庞大复杂 debug 功能的总开关,逐级打开需要 debug 的相应 信息开关后再打开此总开关就能够输出 debug 打印信息了。各级 debug 开关的功能包括: 查看 MSTP 协议运行中 bpdu 报文的发送接收、事件的处理、状态机、计时器等等。 一般情 况下, 这些调试信息是给技术人员调试使用, 用户不需要关注。

举例: 打开端口 1/0/1 接收 BPDU 报文的 debug 信息。

Switch#debug spanning-tree

Switch#debug spanning-tree bpdu rx interface e1/0/1

 

1.2.2 show mst-pending

命令:show mst-pending

功能: 在 MSTP 域配置模式下显示当前配置的 MSTP 域的参数配置情况。 命令模式: 特权和配置模式。

使用指南: 在 MSTP  域配置模式下,输入本命令可以查看 MSTP  域当前的配置参数,如 MSTP 域名字、修正数值、VLAN 和 Instance 的映射情况。

注意: 在退出 MSTP 域配置模式之前,该命令显示的参数配置情况可能尚未生效。 举例: 显示交换机的 MSTP 域当前的参数配置情况。

Switch(config)#spanning-tree mst configuration

Switch(Config-Mstp-Region)#show mst-pending

 

Switch(Config-Mstp-Region)#

 

 

1.2.3 show spanning-tree

命令:show spanning-tree [mst [<instance-id>]] [interface <interface-list>] [detail] 功能: 显示 MSTP 协议及各实例信息。

参数:  <interface-list> 为 端 口 列 表 ; <instance-id> 为 实 例 的 值 , 范 围 为 0-64 ; <interface-list>为端口列表; detail 为显示详细的 spanning-tree 信息。

命令模式: 特权和配置模式。

使用指南: 通过 show spanning-tree 命令可以查看该网桥及各实例的 MSTP 信息, 域配置 信息以及端口的 MSTP 信息等。

举例: 显示网桥 MSTP 信息,显示信息内容如下表所示。

########### Instance 0 ###########################

 

显示内容

解释

网桥信息

 

Standard

STP 版本

Bridge MAC

代表本网桥的 MAC

Bridge Times

本网桥 MaxAge,Hello Time 及 Forward Delay 的配置值

Force Version

当前运行 stp 协议的 Version 值

实例信息

 

Self Bridge Id

该实例对应的本网桥优先级及 MAC

Root Id

该实例对应的根网桥优先级及 MAC

Ext.RootPathCost

网桥到整个网络总根的路径代价

Int.RootPathCost

网桥到该实例域根的路径代价

Root Port ID

网桥上该实例的根端口

该实例上 MSTP 协议生 效的端口列表

 

PortName

端口名字

ID

端口优先级及端口 index 索引值

ExtRPC

端口到整个网络总根的路径代价

IntRPC

端口到该实例域根的路径代价

State

该实例对应的端口状态

Role

该实例对应的端口角色

DsgBridge

该实例端口对应的上游指定网桥

DsgPort

该实例端口对应的上游指定端口

 

 

 

1.2.4 show spanning-tree mst config

命令:show spanning-tree mst config

功能: 在特权模式下显示生效的 MSTP 域的参数配置情况。

命令模式: 特权和配置模式。

使用指南: 在特权配置模式下,输入本命令可以查看 MSTP 域生效的当前参数,如 MSTP  域 名、 修正数值、 VLAN 和 Instance 的映射情况。

举例: 显示交换机的 MSTP 域的配置情况。

 

 

 

1.3 MSTP 多线程配置命令介绍

 

1.3.1 spanning-tree process

命令: spanning-tree process <process-id>

no spanning-tree process <process-id>

功能: 创建新的 mstp 线程。

参数: process-id:取值范围是 1-31。

命令模式: 全局配置模式。

缺省情况: 无。

使用指南: 创建新的 mstp 线程,一台设备可配置多个 mstp 线程, 各线程相互独立, 互不 影响; 默认设备只存在线程 0。

举例: 创建 mstp 线程 1。

Switch(config)#spanning-tree process 1

 

1.3.2 spanning-tree tc-notify process0

命令: spanning-treetc-notify process0

no spanning-tree tc-notify process0

功能: 线程 N 将 tc 通告给 mstp 线程 0 中的实例。

参数: 无。

命令模式: mstp 线程配置模式。

缺省情况: 无。

使用指南: mstp 线程 N 中有拓扑变化时, 设备会收到 tc 报文, 同时, 在共享链路上,线程

 

 

N 需将 tc 通告给 mstp 线程 0 中的实例, 使得线程 0 也刷新相关表项, 以保证数据流量不中 断。

举例: 配置线程 1 的 TC 通告通知线程 0。

Switch(Config-Mstp-Process-1)#spanning-tree tc-notify process0

 

1.3.3 spanning-tree binding-process

命令: spanning-tree binding-process <process-id>

no spanning-tree binding-process <process-id>

功能: 把端口加入到线程 N。

参数: process-id:取值范围是 1-31。

命令模式: 端口配置模式。

缺省情况: 所有端口都属于线程 0。

使用指南: 配置端口加入指定 mstp 线程 N,此时端口从原来的线程 0 进入线程 N。本命令 与设置共享端口命令(link-share)互斥。

举例: 将端口 1/0/2 加入线程 1。

Switch(Config-If-Ethernet1/0/2)#spanning-tree binding-process 1

 

1.3.4 spanning-tree binding-process link-share

命令: spanning-tree binding-process < process-id > link-share

no spanning-tree binding-process < process-id > link-share

功能: 设置端口属于线程 N 的共享端口。

参数: process-id:取值范围是 1-31。

命令模式: 端口配置模式。

缺省情况: 端口只参与线程 0 的 mstp 计算。

使用指南: 设置端口属于线程 N 的共享端口。除线程 0 外, 配置端口还可以参与多个 mstp 线程的计算,但端口状态只由线程 0 设置。本命令可多次配置。

举例: 将端口 1/0/2 设置为线程 1 和 0 的共享端口。

Switch(Config-If-Ethernet1/0/2)#spanning-tree binding-process 1 link-share

 

 

2.ERPS 命令

 

2.1 ethernet tcn-propagation erps to {erps | stp}

 

命令: ethernet tcn-propagation erps to {erps | stp}

no ethernet tcn-propagation erps to

功能: 配置拓扑变化传播通知方式。目前支持 ERPS 环间的 R-APS event 通知,主要用于子 环拓扑变化后向交叉环发送 R-APS event 报文通知邻居环。默认拓扑变化只在本环内产生影 响,不传播到环以外范围,即不影响与之连接的邻居拓扑。本命令的 no 操作为删除拓扑变 化传播通知方式。

参数: erps:拓扑变化发送 R-APS event 报文通知本设备上的连接环; stp:拓扑变化发送 stp 报文通知本设备上连接的 stp 拓扑。

缺省状态: ERPS 环拓扑变化只在本环内产生影响, 不发送通知报文。

命令模式: 全局模式。

使用指南: 配置本设备支持的拓扑变化传播通知方式为指定方式; 本设备上 ERPS 环实例检 测到 ERPS 环拓扑变化, 根据配置发送通知报文: 如果配置了 erps 方式,则向本设备上的 其它 ERPS 环发送 R-APS event 报文;如果配置了 stp 方式, 则向外发送 stp 报文。

举例:

配置拓扑发生变化后向相交环发送 R-APS event 通知。

Switch(config)#ethernet tcn-propagation erps to erps

配置拓扑发生变化后向相交环发送 STP 通知。

Switch(config)#ethernet tcn-propagation erps to stp

删除拓扑变化传播通知方式。

Switch(config)#no ethernet tcn-propagation erps to

 

2.2 erps-ring <ring-name>

 

命令: erps-ring < ring-name >

no erps-ring < ring-name >

功能: 创建 ERPS 环,并进入 ERPS 环配置模式。如果该 ERPS 环已经存在,则进入 ERPS 环配置模式。本命令的 no 操作为删除 ERPS 环。

参数: <ring-name>:要创建的 ERPS 环名称,最大字符数为 64,  由字母、数字、下划线组 成,首尾字符不能为下划线。

命令模式: 全局配置模式。

缺省状态: 没有配置任何 ERPS 环。

使用指南: 如果输入 ring  name 字符串长度超过 64 字节, 提示错误“Valid  ERPS  ring  name should be no more than 64 bytes!”;如果输入 ring name 字符串格式不合法,提示错误“Invalid ERPS ring name!”;如果该设备配置 ERPS ring 总数已达到最多值, 提示错误“Support ERPS ring max number: 32!”;如果存在该 ERPS 环则进入 ERPS 环配置模式,否则创建并进入 ERPS 环配置模式。

举例:

 

 

创建 ERPS 环 ring1。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#

删除 EPRS 环 ring1。

Switch(config)#no erps-ring ring1

 

2.3 version {v1 | v2}

 

命令: version {v1 | v2}

no version

功能: 配置 ERPS 环的支持版本,本次实现为最新的 v2 版本,能与 v1 版本兼容, v1 版本 不支持 MS 、FS 等管理命令,不支持多实例, 并且只支持可逆倒换机制。如果 ERPS  环上 没有配置实例, 可以多次配置支持版本, 以最后一次配置为准。如果环上已配置 ERPS 环实 例,则不能修改支持版本。本命令的 no 操作为 ERPS 环恢复成缺省状态,默认支持 V2 版 本。

参数: {v1  |  v2}:参数选择, v1 表示支持 2008-06 发布的 v1 版本及修正案(2009-04)。v2 表示支持 2010-03 发布的 v2 版本及其修正案(2010-06)。

命令模式:ERPS 环配置模式。

缺省状态: 默认支持 v2 版本。

使用指南:

1.如果该 ERPS 环上已配置了 ERPS 环实例, 提示错误“Cann't  config  version  on  ERPS  ring whitch has ERPS instance, please delete ERPS instance firstly!”,否则进入下一步处理;

2.设置 ERPS 环支持指定的协议版本;

3.如果配置 ERPS 环支持 v1 版本,则该环不支持多实例, ERPS 环实例不支持 MS、FS 等管 理命令,并且不可逆配置无效, 强制只支持可逆切换机制。

4.如果配置 ERPS 环支持 v1 版本,则该环上实例处理 ERPS 报文按照 v1 格式要求, 即按照 v1 版本格式封装 R-APS 报文和解析处理各字段,v2 定义字段忽略不处理。

举例:

配置 ERPS 环 ring1 支持 v1 版本协议。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#version v1

配置 ERPS 环 ring1 支持 v2 版本协议。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#version v2

删除 ERPS 环 ring1 支持的 V1 版本协议

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#no version

 

2.4 open-ring

 

命令: open-ring

no open-ring

功能: 配置 ERPS 环为子环开放类型。如果环上已经配置 ERPS 环实例, 则不能修改 ERPS

 

 

环类型,必须先删除 ERPS 环实例。环中所有节点必须配置一致, 该类型 ERPS 可以与其它 ERPS 环相连接, 用于环交叉拓扑。本命令的 no 操作为删除 ERPS 环为子环开放类型,恢复 为默认的主环封闭类型。

参数: 无。

命令模式: ERPS 环配置模式。

缺省状态: 默认 ERPS 环为主环封闭类型。

使用指南: 如果环上已经配置 ERPS 环实例, 提示错误“Cann't config open-ring on ERPS ring whitch has ERPS instance, please delete ERPS instance firstly!”,否则进入下一步处理; 配置该 ERPS 环类型为子环类型。

举例:

配置 ERPS 环 ring1 为子环开放类型。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#open-ring

删除 ERPS 环 ring1 为子环开放类型。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#no open-ring

 

2.5 raps-virtual-channel {with | without}

 

命令: raps-virtual-channel {with | without}

功能:配置 ERPS 环是否存在 R-APS 虚通道。只在子环中所有节点上配置,配置必须一致。 参数: {with | without}:参数选择,若选择 with 表示该 ERPS 环存在 R-APS 虚通道, 若选择

without 表示该 ERPS 环不存在 R-APS 虚通道。

命令模式:ERPS 环配置模式。

缺省状态: ERPS 环不存在 R-APS 虚通道。

使用指南:

a)如果是主环,提示错误“Cann't config R-APS virtual channel on ERPS major ring!”; b)按照配置设置该 ERPS 环是否存在 R-APS 虚通道。

输出: 配置成功或提示错误。如果该 ERPS 环不存在 R-APS 虚通道,则该 ERPS 环上所有 实例的 R-APS 通道永远畅通,只 block 数据通道;否则 R-APS 通道和数据通道一同被 block。

举例:

配置 ERPS 子环 ring1 存在 R-APS 虚通道。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#raps-virtual-channel with

 

2.6 erps-ring <ring-name> port0 [port1-none]

 

命令: erps-ring <ring-name> port0 [port1-none]

no erps-ring <ring-name> port0

功能: 配置 ERPS 环节点的 port0。每个环节点只有一个 port0,如果 port0 已经存在,则不 会覆盖此前的配置, 只是提示错误。若配置了 port1-none 表示该环没有 port1,为交叉节点。 本命令的 no 操作为删除 ERPS 配置的 port0。

参数: <ring-name>  :ERPS 环名称, 最大字符数为 64,  由字母、数字、下划线组成,首尾

 

 

字符不能为下划线。

[port1-none]:表示该 ERPS 环节点只有 port0,没有 port1,为交叉节点。

命令模式:端口配置模式。

缺省状态: ERPS 环未配置 port0。

使用指南:

如果输入 ring name 字符串长度超过 64 字节, 提示错误“Valid ERPS ring name should be no more than 64 bytes!ℽ ;

如果输入 ring name 字符串格式不合法,提示错误“Invalid ERPS ring name!”;

如果该端口开启 stp 互斥功能,提示错误“Port %s has enable stp or other mutex module!” ,%s 为端口名;

如果该端口为汇聚口的成员端口,提示错误“Port %s is LAG member port!” ,%s 为端口名; 如果该 ERPS 环不存在, 提示错误“The ERPS ring doesn't exist!”;

如果该 ERPS 环已存在 port0,提示错误“Port0 exists on the ERPS ring already!”;

如果该端口已配置为该 ERPS 环的 port1,提示错误“Port %s is already configedasport1 on the ERPS ring!” ,%s 为端口名;

如果该 ERPS  环不是 open-ring  类型,则不能配置 port1-none,提示错误“Can  not  config port1-none on ERPS major ring!”;

配置该端口为指定 ERPS 环的 port0;

检查配置 ERPS 环配置是否完整,若完整则检查其上 ERPS 实例配置是否完整, 若完整则激 活实例为 active,运行协议。

举例:

配置 e 1/0/1 为 ERPS 环 ring1 的 port0。

Switch(config)#interface ethernet 1/0/1

Switch(config-if-ethernet1/0/1)#erps-ring ring1 port0

删除 e1/0/1 为 ERPS 环 ring1 的 port0。

Switch(config)#interface ethernet 1/0/1

Switch(config-if-ethernet1/0/1)#no erps-ring ring1 port0

 

2.7 erps-ring <ring-name> port1

 

命令: erps-ring <ring-name> port1

no erps-ring <ring-name> port1

功能: 配置 ERPS 环节点的 port1。每个环节点只有一个 port1,如果 port1 已经存在,则不 会覆盖此前的配置, 只是提示错误。若配置了 port1-none,则配置 port1 不成功。 本命令的 no 操作为删除 ERPS 环配置 port1。

参数: <ring-name>:ERPS  环名称, 最大字符数为 64,由字母、数字、下划线组成,首尾 字符不能为下划线。

命令模式: 端口配置模式。

缺省状态: ERPS 环未配置 port1。

使用指南:

如果输入 ring name 字符串长度超过 64 字节, 提示错误“Valid ERPS ring name should be no more than 64 bytes!ℽ ;

如果输入 ring name 字符串格式不合法,提示错误“Invalid ERPS ring name!”;

如果该端口开启 stp 互斥功能,提示错误“Port %s has enable stp or other mutex module!” ,%s

 

 

为端口名;

如果该端口为汇聚口的成员端口,提示错误“Port %s is LAG member port!” ,%s 为端口名; 如果该 ERPS 环不存在, 提示错误“The ERPS ring doesn't exist!”;

如果该 ERPS 环已存在 port1,提示错误“Port1 exists on the ERPS ring already!”;

如果该端口已配置为该 ERPS 环的 port0,提示错误“Port %s is already configedasport0 on the ERPS ring!” ,%s 为端口名;

如果该 ERPS 环配置了 port1-none,提示错误“Has  configed port1-none  on  the  ERPS  open ring!”;

配置该端口为指定 ERPS 环的 port1;

检查该 ERPS 环是否配置完整, 若完整则检查 ERPS 环上所有实例是否配置完整, 若完整则 激活 ERPS 实例为 active,运行协议。

举例:

配置 e1/0/1 为 ERPS 环 ring1 的 port1。

Switch(config)#interface ethernet 1/0/1

Switch(config-if-ethernet1/0/1)#erps-ring ring1 port1

删除 e1/0/1 为 ERPS 环 ring1 的 port1。

Switch(config)#interface ethernet 1/0/1

Switch(config-if-ethernet1/0/1)#no erps-ring ring1 port1

 

2.8 failure-detect {cc | physical-link-or-cc} domain <domain-name> service {< ma-name > | number <

ma-num > | pvlan < vlan-id >} mep <mep-id>

rmep<rmep-id>

 

命令: {port0 | port1} failure-detect {cc | physical-link-or-cc} domain <domain-name> service

{< ma-name > | number < ma-num > | pvlan < vlan-id >} mep <mep-id> rmep<rmep-id> no {port0 | port1} failure-detect

功能: 配置 ERPS 环端口的故障检测类型。如果检测的为 cc 类型, 则需要指明 cc 所属维护 域,所属维护集,以及监控的链路(由(mep-id ,rmep-id)确定)。配置故障检测类型前提 是已把相应环端口加入了 ERPS 环。 本命令的 no 操作为删除环端口故障检测类型。

参数: {port0  | port1}:参数选择,port0 表示要配置 port0 的故障检测类型。port1 表示要配 置 port1 的故障检测类型。

{cc  |  physical-link-or-cc}: 参数选择, cc  表示 ERPS  环端口检测的为 cc   上报故障。 physical-link-or-cc 表示 ERPS 环端口检测的为 cc 上报故障和物理链路故障。

<domain-name>:表示 ERPS 环端口检测的 cfm 所属域名字。

<ma-name>:ERPS 环端口检测的 cfm 所属 service 名字。

<mep-id>:ERPS 环端口检测的 cfm 监控的本地 mepid。

<rmep-id>:ERPS 环端口检测的 cfm 监控的远端 mepid。

命令模式: ERPS 环配置模式。

缺省状态: 默认 ERPS 环端口只检测物理链路故障。

使用指南: 如果输入 domain  name 字符串长度超过 43 字节,提示错误“Valid  domain  name

 

 

should be no more than 43 bytes!ℽ ;

如果输入 domain name 字符串格式错误, 提示错误“Invalid domain name!”;

如果输入 service name 字符串长度超过 45 字节, 提示错误“Valid  service name  should be no more than 45 bytes!ℽ ;

如果输入 service name 字符串格式错误, 提示错误“Invalid service name!”;

如果 local mep  和 remote mep 相同, 提示错误“The local mep cannot be the same as the remote mep!”,否则进入下一步处理;

配置该 ERPS 环端口的故障检测类型为指定类型,如果检测类型为 cc,保存配置的 md、ma、 mep 和 rmep 信息,用于接收到 cfm 故障通知后进行匹配。

举例:

配置 ERPS 环 ring1 的 port0 故障检测类型为 cc。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#port0 failure-defect cc domain domain1 service serivice1 mep 1 rmep 2 删除 ERPS 环 ring1 的 port0 故障检测类型为 cc。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#no port0 failure-defect

 

2.9 erps-instance <instance-id>

 

命令: erps-instance <instance-id>

no erps-instance <instance-id>

功能: 创建 ERPS 环上实例,并进入 ERPS 环实例配置模式。如果该 ERPS 环实例已经存在, 则进入 ERPS 实例配置模式。若 ERPS 环支持 v2 版本,则可配置多个 ERPS 环实例。本命 令的 no 操作为删除 ERPS 环实例。

参数: <instance-id>:ERPS 环实例 id,范围:1~48。

命令模式: ERPS 环配置模式。

缺省状态: 没有配置任何 ERPS 环实例。

使用指南:如果所在ERPS 环支持版本 1,当配置多于一个ERPS instance 时,提示错误“Doesn't support multiple ERPS instance capability on the ring running version 1!”;

如果该 ERPS 环上配置多于最大可支持的 ERPS instance 时,提示错误“Support ERPS instance max number: 32 per ERPS ring!”;

如果 ERPS 环上存在该 ERPS 环实例,则进入 ERPS 环实例配置模式;

否则创建相应 ERPS 环实例并进入 ERPS 实例配置模式;

举例:

在 ERPS 环 ring1 上配置 ERPS 环实例 1。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)#

删除 ERPS 环 ring1 上配置 ERPS 环实例 1。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#no erps-instance 1

Switch(config-erps-ring-inst- 1)#

 

 

2.10 description

 

命令: description <instance-name>

no description <instance-name>

功能: 配置 ERPS 实例的描述字符串。

参数: <instance-name>:ERPS 实例名称,最大字符数为 64,由字母、数字、下划线组成, 首尾字符不能为下划线。 本命令的 no 操作为删除 ERPS 环实例名称。

命令模式: ERPS 实例配置模式。

缺省状态: 默认没有配置 ERPS 实例名称。

使用指南: 判断字符串长度,如果超过 64,则提示错误“Valid ERPS instance name should be no more than 64 bytes!ℽ ;如果输入字符串格式非法, 提示错误“Invalid ERPS instance name!”; 否则设置 ERPS 实例名称为指定字符串。

举例:

配置 ERPS 环 ring1 上的实例 1 的名称为 instance1。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)# description instance1

删除 ERPS 环 ring1 上的实例 1 的名称为 instance1。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)# no description

 

2.11 ring-id <ring-id>

 

命令: ring-id <ring-id>

no ring-id <ring-id>

功能: 配置 ERPS 环节点发出的 R-APS 报文中目的 MAC 地址最后一个字节携带 ring-id,如 果 ERPS 环支持 v1 版本,ring-id 只能配置为 1 。本命令的 no 操作为配置 ERPS 环节点发出 的 R-APS 报文中目的 MAC 地址不携带 ring-id,即目的 MAC 为 01- 19-A7-00-00-01。

参数: <ring-id>:ERPS 环 id,范围: 1~64。

命令模式: ERPS 环实例配置模式。

缺省状态: 默认发出的 R-APS 报文中目的 MAC 地址为 01- 19-A7-00-00-01。

使用指南: 如果 ERPS 环支持 v1 版本,ring-id 只能配置为 1,因为 v1 版本只支持目的 MAC 地址‘01- 19-A7-00-00-01’,否则提示错误“Cann't config ringid other than  1 on the ERPS ring running version 1!”;

如果 ERPS 环支持 v2 版本,配置该 ERPS 环上实例发出的 R-APS 报文中目的 MAC 地址的 最后一个字节携带值为指定 ring-id。

举例:

配置 ERPS  环 ring1 上实例 2 发送的 R-APS 报文中目的 mac 最后一个字节为 ring-id 2。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 2

Switch(config-erps-ring-inst-2)#ring-id 2

配置 ERPS  环 ring1 上实例 2 发送的 R-APS 报文中目的 MAC 地址不携带 ring-id,即目的

 

 

MAC 为 01- 19-A7-00-00-01

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 2

Switch(config-erps-ring-inst-2)#no ring-id

 

2.12 rpl {port0 | port1} {owner | neighbour}

 

命令: rpl {port0 | port1} {owner | neighbour}

no rpl {port0 | port1}

功能: 配置 ERPS 环实例的成员端口为 RPL owner 或 RPL neighbour,同一ERPS 环上不同 实例的 RPL 节点角色不能配置在同一成员端口上。本命令的 no 操作为配置 ERPS 环实例的 成员端口为普通传输端口角色。

参数: {port0  |  port1}:参数选择,port0 表示要配置 port0 在 ERPS 环实例中的 RPL 角色, port1 表示要配置 port1 在 ERPS 环实例中的 RPL 角色。

{owner | neighbour }:参数选择,owner 表示配置指定成员端口为 rpl owner 角色; neighbour 表示配置指定成员端口为 rpl neighbour 角色。

命令模式: ERPS 环实例配置模式。

缺省状态: 无,即普通传输节点类型。

使用指南: 如果配置了 port1-none,则不能配置 port1 的节点角色,提示错误“Has  configed port1-none on the ERPS open ring!”;

如果该实例节点已经是 rpl owner 或 rpl neighbour,则不能再对任何成员端口执行该命令,提 示错误“Has configed port rpl role: %son the ERPS instance!” ,%s 为已配置的 rpl 角色;

如果该实例所在 ERPS 环上其它实例已设置了指定 rpl 角色,提示错误“Has configed port rpl role: %s in this or other ERPS instance on the ERPS ring!”;设置该实例所在 ERPS 环上的指定 成员端口为该实例上的指定节点角色。

举例:

配置 ERPS 环 ring1 上的实例 1 中 port0 为 RPL 拥有节点。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)# rpl port0 owner

配置 ERPS 环 ring1 实例 1 的端口 port0 为普通传输端口角色

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)# norpl port0

 

2.13 non-revertive

 

命令: non-revertive

no non-revertive

功能: 配置 ERPS 环实例为不可逆切换机制, 如果该 ERPS 环支持 v1 版本, 则该命令无效, 不能配置。本命令的 no 操作为配置 ERPS 环实例为可逆切换机制, 如果该 ERPS 环支持 v1  版本, 则该命令无效。该命令只在子环的 RPL 拥有节点上配置即可。

参数: 无。

 

 

命令模式: ERPS 环实例配置模式。

缺省状态: 默认 ERPS 环实例支持可逆切换机制。

使用指南: 如果 ERPS 环支持 v1 版本,提示错误“Cann't config non-revertive on the ERPS ring running version 1!”;

如果 ERPS 环支持 v2 版本,配置该 ERPS 环实例支持不可逆切换机制。

举例:

配置 ERPS 环 ring1 上的实例 1 支持不可逆切换机制。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)#non-revertive

删除 ERPS 环 ring1 上的实例 1 支持不可逆切换机制。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)#nonon-revertive

 

2.14 guard-timer <guard-times>

 

命令: guard-timer <guard-times>

no guard-timer

功能: 配置 Guard 定时器。Guard 定时器用于以太网环节点避免依据过时的 R-APS 报文作 出错误处理,避免形成封闭环路。在定时器开启时间内,接收到的任何 R-APS  报文 (Request/State=“1110”的 R-APS 报文除外)都被丢掉不处理。本命令 no 操作为配置 Guard 定时器为默认值。

参数: <guard-times>:时间间隔为 10ms,范围为 10ms~2s。

命令模式: ERPS 环实例配置模式。

缺省状态: 500ms。

使用指南: 如果定时器没开启, 则设置 ERPS 环实例的 Guard 定时器为指定时间;

如果定时器已开启, 则立即将 ERPS 环实例的 Guard 定时器设置为配置值, 定时器不清零, 仍按照最近最后一次配置时间运行, 本次配置下一次生效。

举例:

配置 ERPS 环 ring1 上实例 1 的 guard timer 为 1s。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)guard-timer 100

配置 ERPS 环 ring1 上实例 1 的 guard  定时器为默认值

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1) no guard-timer

 

2.15 holdoff-timer < holdoff-times>

 

命令: holdoff -timer <holdoff-times>

no holdoff -timer

功能: 配置 Holdoff 定时器。 Holdoff 定时器用于以太网环节点阻塞故障上报时间。当发生 一个新故障或更严重故障时,如果可用的 holdoff timer 不为 0,该故障并不立刻上报给保护 切换处理, 而是开启 holdoff timer。当定时器超时后,检查开启定时器的链路确认故障是否 仍存在,如果仍有故障存在, 则上报故障进行保护切换处理,该故障不一定是开启定时器的 故障。本命令 no 操作为配置 ERPS 环 Holdoff 定时器为默认值。

参数: <holdoff-times>:时间间隔为 1s,取值范围为 0~10s。

命令模式: ERPS 环实例配置模式。

缺省状态: 0s。

使用指南: 如果定时器没开启, 则设置 ERPS 环实例的 Holdoff 定时器为指定时间;

如果定时器已开启,则立即将 ERPS 环实例的 Holdoff 定时器设置为配置值,定时器不清零, 仍按照最近最后一次配置时间运行, 本次配置下一次生效。

举例:

配置 ERPS 环 ring1 上实例 1 的 Holdoff  定时器为 5s。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)#holdoff-timer 5

配置 ERPS 环 ring1 上实例 1 的 Holdoff  定时器为默认值。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)#no holdoff-timer

 

2.16 wtr-timer <wtr-times>

 

命令: wtr-timer <wtr-times>

nowtr-timer

功能: 配置 WTR 定时器。WTR 定时器用来避免 RPL 拥有节点由于周期性(间断性)故障 引起的频繁保护切换操作。当 RPL Owner 端口收到故障恢复报文后,等待一段时间,以检 查链路上其它节点是否仍然存在故障,防止立即阻塞 RPL Owner  端口而引起阻塞点震荡。

本命名 no 操作为配置 ERPS 环 WTR 定时器为默认值。

参数: <wtr-times>:间隔为 1min,范围为 1~12min。

命令模式: ERPS 环实例配置模式。

缺省状态: 5min。

使用指南: 如果定时器没开启, 则设置 ERPS 环实例的 WTR 定时器为指定时间;

如果定时器已开启, 则立即将 ERPS 环实例的 WTR 定时器设置为配置值,定时器不清零, 仍按照最近最后一次配置时间运行, 本次配置下一次生效。

举例:

配置 ERPS 环 ring1 上实例 1 的 WTR 定时器为 10min。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)#wtr-timer 10

配置 ERPS 环 ring1 上实例 1 的 WTR 定时器为默认值。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)#nowtr-timer

 

 

2.17 protected-instance

 

命令: protected-instance <instance-list>

no protected-instance <instance-list>

功能: 配置 ERPS 环实例的保护实例。ERPS 环实例可以保护所有的 MSTP 实例。同一个实 例不能被同一个拓扑下的多个 ERPS 环实例引用。在同一ERPS 环实例下多次执行该命令配 置保护实例,结果按多次执行命令的累加生效。本命令 no 操作删除 ERPS 环实例的保护实 例。

参数: <instance-list>:表示 ERPS 环实例保护的 MSTP 实例列表,形势如:i;j-k。列表中 实例的数量不限制。

命令模式: ERPS 环实例配置模式。

缺省状态: ERPS 环实例不保护任何 MSTP 实例。

使用指南: 如果输入实例已被其它 ERPS 实例保护,则提示错误“Instance: %d is protected by erps instance: %don ring: %s!”,第一个%d 为mstp instance id,第二个%d 为 erps instance id,%s 为 ERPS 环名;

配置 ERPS 环实例的保护实例为指定 MSTP 实例;

检查 ERPS 实例配置是否完整, 若完整则激活实例为 active,运行协议。

举例:

配置 ERPS 环 ring1 上实例 1 的保护实例为 instance 2。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)#protected-instance 2

删除 ERPS 环 ring1 上实例 1 的保护实例 instance 2。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)#no protected-instance 2

 

2.18 raps-mel <level-value>

 

命令: raps-mel <level-value>

no raps-mel

功能: 配置 R-APS channel 的 level。

参数: <level-value>:表示 APS 报文的 level 值, 范围为:0~7。

命令模式: ERPS 环实例配置模式。

缺省状态: level 为 7。

使用指南: 设置 ERPS 环实例的 R-APS channel 的 level 为指定级别。配置成功,则该 ERPS 环实例发出的R-APS 报文中mel 字段填充为指定级别,并只允许大于或等于该level 的R-APS 报文通过, 或提示配置错误。本命令 no 操作为配置 R-APS channel 的 level 为默认值 7。协 议报文中的 MEL 字段用于检测当前报文是否能通过。如果 ERPS  环中配置的 MEL 值比故 障检测协议中的 MEL 值小,则表明报文等级低而无法通过。实例上所有节点的 level 配置 必须一致。

举例:

配置 ERPS 环 ring1 上实例 1 的 R-APS channel 允许 level 为 5。

 

 

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)raps-mel 5

配置 ERPS 环 ring1 上实例 1 的 R-APS channel 允许 level 为 7。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)no raps-mel

 

2.19 control-vlan <vlan-id>

 

命令: control-vlan <vlan-id>

no control-vlan

功能: 配置 R-APS  channel 传输 R-APS 报文的控制 VLAN。在 ERPS  环实例中, 该 VLAN  只用来传递 ERPS 协议报文,不用来转发用户业务报文, 从而提高了 ERPS  协议的安全性。 由用户保证配置唯一性。该 VLAN 在发送 R-APS 报文时作为 vlan  tag。实例中所有节点的 保护 VLAN 配置必须一致。本命令 no 操作为删除 R-APS  channel 传输 RAPS 报文的控制 VLAN。

参数: <vlan-id>:表示 R-APS 报文的 vlanid,范围为: 2~4094。

命令模式: ERPS 环实例配置模式。

缺省状态: 未配置任何控制 VLAN。

使用指南: 由用户配置保证满足以下条件:实例中所有节点的保护 VLAN 配置必须一致; 控制 vlan 的唯一性; 如果实例所在环类型为主环类型, 则控制 vlan 和保护 vlan 在同一个实 例内; 如果实例所在环类型为子环开放类型(open-ring)且是无 R-APS 虚通道方式,则控 制 vlan 单独属于一个实例;成员端口属于控制 vlan 和保护 vlan。同时对于配置 control vlan 的处理如下:

a)如果输入 VLAN 不存在,提示错误“Error, VLAN %d does not exist!” ,%d 为输入值; b)  如果该 ERPS 环实例已配置控制 VLAN,提示错误“Control vlan has existed already!”; c)设置 ERPS 环实例的控制 VLAN 为指定 VLAN;

d)检查 ERPS 实例配置是否完整,若完整则激活实例为 active,运行协议。

注意: 普通数据 vlan、不同 erps instance 的 control vlan 均不能关联到同一个 MSTI. 举例:

配置 ERPS 环 ring1 上实例 1 的控制 vlan 为 vlan10。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)control-vlan 10

删除 ERPS 环 ring1 上实例 1 的控制 vlan。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)no control-vlan

 

2.20 forced-switch {port0 | port1}

命令: forced-switch {port0 | port1}

 

 

功能: 在 ERPS 环节点的端口上执行强制切换。一个 ERPS 环实例中允许同时存在两个或多 个强制切换,但一个环节点上只能存在一个强制切换命令。用户应避免在 ERPS 环实例内使 用多个强制切换引发 ERPS 环实例分裂。

参数: {port0 | port1}:参数选择,port0 表示强制切换操作要在环节点的 port0 上执行。port1 表示强制切换操作要在环节点的 port1 上执行。

命令模式: ERPS 环实例配置模式。

缺省状态: ERPS 环实例内无强制切换。

使用指南: 如果该环支持 version1,提示错误“Doesn't support the command on the ring running version 1!”,否则进入下一步处理;

如果该实例配置不完整,处于 unactive 状态,提示错误“The request is rejected because the ERP instance in unactive state!”,否则进入下一步处理;

如果该环实例的该节点已存在本地强制切换(同一时刻,port0 和 port1 只能有一个处于 local FS 状态),提示错误“The FS request is rejected because an local FS request is present!”,否则进 入下一步处理;

如果强制切换命令处于当前最高优先级,block 掉该 ERPS 环指定成员端口(port0 或 port1) 上的该 ERPS 环实例的数据通道和 R-APS 通道,并 unblock 该环节点的另一个成员端口;

在强制切换命令处于最高优先级命令期间,在两个环端口(port0 和 port1)上稳定持续发送 携带 FS 信息的 R-APS(FS)报文;

接收到 R-APS(FS)报文的环节点,如果本地没有更高优先级请求,应 unblock 所有的 blocked 环端口;

接收到 R-APS(FS)报文的环节点应按照相应的需求执行 flush FDB 操作。

举例:

在 ERPS 环 ring1 上的实例 1 的 port0 上进行强制切换操作

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)#force-switch port0

 

2.21 manual-switch {port0 | port1}

 

命令: manual-switch {port0 | port1}

功能: 在 ERPS 环节点的端口上执行手工切换。一个 ERPS 环实例中只允许同时存在一个手 工切换,并且前提是 ERPS 环实例内不存在 SF 故障或 FS 命令。

参数: {port0 | port1}:参数选择,port0 表示手工切换操作要在环节点的 port0 上执行。port1 表示手工切换操作要在环节点的 port1 上执行。

命令模式: ERPS 环实例配置模式。

缺省状态: ERPS 环实例内无手动切换。

使用指南: 如果该环支持 version1,提示错误“Doesn't support the command on the ring running version 1!”,否则进入下一步处理;

如果该实例配置不完整,处于 unactive 状态,提示错误“The request is rejected because the ERP instance in unactive state!”,否则进入下一步处理;

如果该 ERPS 环节点已存在 MS 状态,提示错误“The MS request is rejected because an existing MS request is present!”;

如果该 ERPS 环实例内已存在手工切换, 提示错误“The  MS  request  is  rejected  because  an existing FS request is present!”,否则进入下一步处理;

 

 

如果该 ERPS 环实例内已存在故障, 提示错误“The MS request is rejected because an existing SF is present!”,否则进入下一步处理;

如果手工切换命令处于当前最高优先级, block 掉 ERPS 环指定成员端口(port0 或 port1) 上该 ERPS 环实例的数据通道和 R-APS 通道, 并 unblock 该环节点的另一个成员端口;

在手工切换命令处于最高优先级命令期间,在两个环端口(port0 和 port1)上稳定持续发送 携带 MS 信息的 R-APS(MS)报文;

接收到 R-APS(MS)报文的环节点,如果本地没有更高优先级请求,应 unblock 所有的 blocked 环端口;

接收到 R-APS(MS)报文的环节点应按照相应的需求执行 flush FDB 操作。

举例:

在 ERPS 环 ring1 上的实例 1 的 port0 上进行手工切换操作

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)#manual-switch port0

 

2.22 clear command

 

命令: clear command

功能: 对 ERPS 环节点的成员端口执行清除命令,可以清除本地活动的管理命令:强制切换 命令和手工切换命令;也可用于可逆模式下在 WTR 或 WTB 超时之前触发链路切换; 还可 用于不可逆模式下故障恢复后触发链路从备用链路 RPL 切换回原有链路。后两种情况一般

在 rpl owner 节点上执行该命令。

参数: 无。

命令模式: ERPS 环实例配置模式。

缺省状态: ERPS 环实例内无清除命令。

使用指南: 如果该环支持 version1,提示错误“Doesn't support the command on the ring running version 1!”,否则进入下一步处理;

如果该实例配置不完整,处于 unactive 状态,提示错误“The request is rejected because the ERP instance in unactive state!”,否则进入下一步处理;

如果该 ERPS  环实例中存在本地强制切换命令或手工切换命令,则清除切换命令,保持 blocked 成员端口上数据通道和 R-APS 通道的阻塞状态, 并在两个成员端口上持续稳定发送 R-APS(NR)报文,直到接收到 R-APS(NR ,RB)报文获知 RPL 被 block,或环上发生更 高级别的请求(例如 SF);

如果该 ERPS 环实例中存在本地强制切换命令或手工切换命令,则清除命令后接收到比本地 节点 node ID 大的 R-APS(NR)报文, 则 unblock 所有无 SF 故障的环端口,停止在两个成 员端口上发送 R-APS(NR)报文;

如果 RPL 拥有节点所在 ERPS 环实例为可逆切换模式, 并且开启了 WTR 或 WTB 超时, 则 删除定时器,block 掉 RPL 端口,在两个环端口上发送 R-APS(NR,RB)报文,并执行 flush FDB 操作, 提前触发链路切换, 否则进入下一步处理;

如果 RPL 拥有节点所在 ERPS 环实例处于不可逆模式下, 则 block 掉 RPL 端口,在两个环 端口上发送 R-APS(NR,RB)报文, 并执行 flush FDB 操作, 触发链路从备用链路 RPL 切 换回原有链路。

举例:

在 ERPS 环 ring1 上的实例 1 上执行 clear 操作。

Switch(config)#erps-ring ring1

Switch(config-erps-ring)#erps-instance 1

Switch(config-erps-ring-inst- 1)#clear command

 

2.23 show erps ring {<ring-name> | brief}

 

命令: showerps ring {<ring-name> | brief}

功能: 读取 ERPS 环信息。

参数: <ring-name>  :ERPS 环名称,最大字符数为 64,  由字母、数字、下划线组成, 首尾 字符不能为下划线。若不指定, 则显示本设备上所有的 ERPS 环。

brief:显示 ERPS 环主要信息。

命令模式: 特权模式。

缺省情况: 无。

举例: 显示所有 ERPS 环的信息。

字段

描述

Ring-Name

ERPS环名字,最大字符数为64,  由字母、数字、下划 线组成,首尾字符不能为下划线。

Ring-topo

ERPS环拓扑模式:major-ring 、open-bring

Port0

ERPS环的port0信息

Port1

ERPS环的port1信息

Version

ERPS环支持的协议版本: V1、V2

Inst-Count

ERPS环上配置的实例总数,范围: 1~64

 

显示 ERPS 环 ring1 的信息

字段

描述

Instance ID

ERPS环实例的id号,范围为1~64

Contral Vlan

即R-APS通道vlan,封装入R-APS报文tag

Protected Instance

ERPS环实例保护的MSTP实例

WTR_Timer

Wait to Restore定时器,范围为1~12min

Guard_Timer

Guard定时器, 范围为10ms~2s

Holdoff_Timer

Holdoff定时器,范围为0~10s

Port0

ERPS环的port0信息

Port1

ERPS环的port1信息

R-APS ring topology

ERPS环拓扑模式:major-ring 、open-bring

R-APS Virtual-Channel

如果为ERPS子环,是否存在R-APS虚通道:with、 without

 

2.24 show erps instance [ring <ring-name> [instance

<instance-id>]]

 

命令: showerps instance [ring <ring-name> [instance <instance-id>]]

功能: 显示 ERPS 环实例信息。

参数: <ring-name>:ERPS  环名称,最大字符数为 64,   由字母、数字、下划线组成,首尾 字符不能为下划线。若不指定, 则显示本设备上所有的 ERPS 环中实例信息。

<instance-id>:ERPS 环实例 ID,范围 1~48。若不指定,则显示指定 ERPS 环上的所 有 ERPS 环实例的信息。

命令模式: 特权模式。

缺省情况: 无。

举例:

字段

描述

Description

ERPS环实例的名字

Protected Instance

ERPS环实例保护的MSTP实例

Revertive mode

ERPS环的链路模式: revertive 、non-revertive

R-APS MEL

R-APS通道的level,封装入R-APS报文

R-APS Virtual-Channel

如果实例所在ERPS环为子环类型,继承环的R-APS 虚通道情况:with 、without

Ring ID

ERPS环实例发送报文携带的ring-id号,范围为1~64

Contral Vlan

即R-APS通道vlan,封装入R-APS报文tag

WTR_Timer

Wait to Restore定时器,范围为1~12min

Guard_Timer

Guard定时器, 范围为10ms~2s

Holdoff_Timer

Holdoff定时器,范围为0~10s

Port

ERPS环的端口信息: port0、port1

Role

ERPS环节点角色:RPL  Owner 、RPL  neighbour、 Common

Port Status

blocked:端口处于block状态

forwarding:端口处于forwarding状态

 

2.25 show erps status [ring <ring-name> [instance

<instance-id>]]

 

命令: showerps status [ring <ring-name> [instance <instance-id>]]

功能: 显示 ERPS 环实例的状态信息。

参数: <ring-name>  :ERPS 环名称, 最大字符数为 64 ,由字母、数字、下划线组成, 首尾 字符不能为下划线。若不指定, 则显示本设备上所有的 ERPS 环。

<instance-id>:ERPS 环实例 ID,范围 1~48。若不指定, 则显示本设备上的 ERPS 环上所有 ERPS 环实例的状态信息。

命令模式: 特权模式。

缺省情况: 无。

举例:

显示所有 ERPS 环实例的状态信息。

Switch#show erps status

ERPS ring ring1 instance 1 status:

Active:1

Node State:Idle

Time last topology change : Jan 01 00:17:25 2012

Port        Interface      Port-Status          Signal-Status      R-RAPS-NodeId        BPR

Port0      1/0/1                blocked              Non-failed        00-00-00-00-00-00       0

Port1      1/0/2                forwarding        Non-failed             00-00-00-00-00-00      0

Active

ERPS环实例的当前所处活动状态:1、0

Node State

ERPS 环 实 例 的 当 前 状 态 : Idle 、 Protection 、 Forced-switch 、Manual-switch 、Pending

Port Status

blocked:端口处于block状态

forwarding:端口处于forwarding状态

 

Signal Status

ERPS环端口的故障状态:

Non-failed:无故障发生

Failed:发生故障

Remote R-APS NodeId

ERPS环端口保存的接收到最后一个R-APS中携带的 NodeId信息, 即mac信息

BPR

ERPS环端口保存的接收到最后一个R-APS中携带的 block链路信息, 即port0还是port1是blocked的

Time last topology change

表示环拓扑最后一次发生切换的时间

 

2.26 show erps statistics [ring <ring-name> [instance

<instance-id>]]

 

命令: showerps statistics [ring <ring-name> [instance <instance-id>]]

功能: 显示 ERPS 环实例的统计信息。

参数: <ring-name>  :ERPS 环名称, 最大字符数为 64 ,由字母、数字、下划线组成,首尾 字符不能为下划线。若不指定, 则显示本设备上所有的 ERPS 环的统计信息。

<instance-id>:ERPS 环实例 ID,范围 1~48。若不指定, 则显示本设备上的 ERPS 环 上所有 ERPS 环实例的统计信息。

命令模式: 特权模式。

缺省情况: 无。

举例:

显示 ERPS 环实例的统计信息。

Switch#show erps statistics ring 1 instance 1

Statistics for ERPS ring ring1 instance 1:

R-APS              Port0(Tx/Rx)                  Port1(Tx/Rx)

NR

3/0

3/0

NR,RB

0/0

0/0

SF

19129/0

19129/0

MS

0/0

0/0

FS

0/0

0/0

EVENT

0/0

0/0

 

TOTOL              19132/0                19132/0

 

 

2.27 clear erps statistics [ring <ring-name> [instance

<instance-id>]]

 

命令: clearerps statistics [ring <ring-name> [instance <instance-id>]]

功能: 清除 ERPS 的统计信息。

参数: <ring-name>  :ERPS 环名称, 最大字符数为 64 ,由字母、数字、下划线组成,首尾 字符不能为下划线。若不指定, 则清除本设备上所有的 ERPS 环的统计信息。

<instance-id>:ERPS 环实例 ID,范围 1~48。若不指定, 则清除本设备上的 ERPS 环上所有 ERPS 环实例的统计信息。

命令模式: 特权模式。

缺省情况: 无。

举例: 清除 ERPS 环 ring1 上实例 1 的的统计信息。

Switch#clear erps statistics ring 1 instance 1

 

2.28 debug erps

命令: debug erps packet [detail] {send | receive] {[ring <ring-name> [instance <instance-id>]] | [port]}

debug erps fsm [ring <ring-name> [instance <instance-id>]]

debug erps timer [ring <ring-name> [instance <instance-id>]]

no debug eprs

功能: 打开 ERPS 的调试信息, 本命令的 no 操作为关闭 erps 调试信息。

参数: packet:表示打开报文调试信息。

detail:打开报文具体调试信息。

send:打开发送报文调试信息。

received:打开接收报文调试信息。

fsm:表示打开状态机调试信息。

timer:表示打开定时器调试信息。

<ring-name>:ERPS  环名称,最大字符数为 64 ,由字母、数字、下划线组成,首尾 字符不能为下划线。

<instance-id>:配置的 ERPS 环实例 ID。范围 1~48。

命令模式: 特权用户模式。

缺省情况: 不显示。

 

2.29 debug erps error

 

命令: debug erps error

no debug erps error

功能: 显示 ERPS 的故障信息, 本命令 no 操作为关闭显示 erps 故障信息。 参数: 无。

命令模式: 特权用户模式。

 

 

缺省情况: 不显示。

 

2.30 debug erps event

 

命令: debug erps event

no debug erps event

功能: 显示 ERPS 的事件信息, 本命令的 no 操作为关闭显示 erps 事件信息。 参数: 无。

命令模式: 特权用户模式。

缺省情况: 不显示。

 

2.31 no debug all

 

命令: no debug all

功能: 关闭本模块的所有 debug 的信息

参数: 无。

命令模式: 特权模式。

缺省情况: 无。

使用指南: 当使用 no  debug  all 关闭交换机的所有 debug 信息时, 该命令对 ERPS 的 debug 信息同样有效, ERPS 的 debug 信息同样关闭。

 

2.32 show debugging

 

命令: show debugging

功能: 打开本模块的所有 debug 信息。

参数: 无。

命令模式: 特权模式。

缺省情况: 无。

使用指南: 当使用 show debugging erps 时候显示 debug 信息时本模块支持该命令。