目录
1. 技术背景
为了更好的保证rstp协议在网络不稳定的情况下,尽可能的保证流量的正常转发,在标准协议中新增了4种保护功能。
2. rstp的保护功能
保护机制 | 应用端口 | 作用 |
bpdu保护 | 边缘端口 | 边缘端口收到bpdu后,把边缘端口shutdown。 |
根保护 | 指定端口 | 一旦收到更优的bpdu,把端口进入discarding。 |
环路保护 | 根端口或 预备端口 | 如果根端口或预备端口长时间收不到来自上游设备的bpdu报文时,端口会进入discarding状态,角色切换为指定端口,不转发报文,从而不会在网络中形成环路。 |
tc保护 | 全局 | 在单位时间内,只处理指定次数的tc bpdu报文。 |
3. bpdu保护机制原理和配置命令
3.1 bpdu保护机制原理
3.2 bpdu保护机制配置命令
命令 | 说明 |
stp bpdu-protection | 开启交换设备边缘端口的bpdu保护功能 |
error-down auto-recovery cause bpdu-protection interval 30 | 配置错误关闭自动恢复时间,默认关闭 |
display error-down recovery | 验证错误关闭自动恢复 |
3.3 bpdu保护机制配置步骤
- 执行命令system-view,进入系统视图。
- 执行命令stp bpdu-protection,配置交换设备边缘端口的bpdu保护功能。
bpdu保护机制为什么是在系统模式下配置的?
如果交换机配置了边缘端口, 交换机系统能够自动检测到哪些端口是边缘端口。
缺省情况下,交换设备的bpdu保护功能处于禁用状态。
如果用户希望被error-down的边缘端口可自动恢复,可通过配置使能端口自动恢复功能,并设置延迟时间,即在系统视图下执行命令error-down auto-recovery cause bpdu-protection interval interval-value,使能端口自动恢复为up的功能,并设置端口自动恢复为up的延时时间。使被关闭的端口经过延时时间后能够自动恢复。配置时需要注意:
- 缺省情况下,未使能处于error-down状态的端口状态自动恢复为up的功能,所以没有缺省延迟时间值。当用户配置该命令时,必须指定恢复延迟时间。
- 取值越小表示端口的管理状态自动恢复为up的延迟时间越短,端口up/down状态震荡频率越高。
- 取值越大表示端口的管理状态自动恢复为up的延迟时间越长,端口流量中断时间越长。
- 自动恢复仅对配置error-down auto-recovery命令之后发生error-down的端口有效,对配置此命令之前已经error-down的端口不生效。
4. 根保护机制原理和配置命令
4.1 根保护机制原理
4.2 根保护机制配置命令
命令 | 说明 |
stp root-protection | 开启交换设备的root保护功能,只在指定端口上生效。 |
4.3 根保护机制配置步骤
- 执行命令system-view,进入系统视图。
- 执行命令interface interface-type interface-number,进入参与生成树协议计算的接口视图。
- 执行命令stp root-protection,配置交换设备的root保护功能。
缺省情况下,端口的root保护功能处于去使能状态。当端口的角色是指定端口时,配置的root保护功能才生效。配置了根保护的端口,不可以配置环路保护。
5. 环路保护机制原理和配置命令
5.1 环路保护机制原理
环路的产生
在运行rstp协议的网络中,根端口和其他阻塞端口状态是依靠不断接收来自上游交换设备的bpdu维持。当由于链路拥塞或者单向链路故障导致这些端口收不到来自上游交换设备的bpdu时,交换设备会重新选择根端口。原先的根端口会转变为指定端口,而原先的阻塞端口会迁移到转发状态,从而造成交换网络中可能产生环路。为了防止以上情况发生,可部署环路保护功能。
环路保护机制
在启动了环路保护功能后,如果根端口或alternate端口长时间收不到来自上游设备的bpdu报文时,则向网管发出通知信息(此时根端口会进入discarding状态,角色切换为指定端口),而alternate端口则会一直保持在阻塞状态(角色也会切换为指定端口),不转发报文,从而不会在网络中形成环路。直到链路不再拥塞或单向链路故障恢复,端口重新收到bpdu报文进行协商,并恢复到链路拥塞或者单向链路故障前的角色和状态。
配置了环路保护的端口,当接收不到上游设备发送的bpdu报文时,环路保护生效。如果该端口参与了stp计算,则不论其角色如何,该端口在所有实例都将处于discarding状态。
5.2 环路保护机制配置命令
命 令 | 说 明 |
stp loop-protection | 开启端口环路保护功能。 |
5.3 环路保护机制配置步骤
- 执行命令system-view,进入系统视图。
- 执行命令interface interface-type interface-number,进入参与生成树协议计算的接口视图。
- 执行命令stp loop-protection,配置交换设备根端口或alternate端口的环路保护功能。
缺省情况下,端口的环路保护功能处于关闭状态。
由于alternate端口是根端口的备份端口,如果交换设备上有alternate端口,需要在根端口和alternate端口上同时配置环路保护。
配置了根保护的端口,不可以配置环路保护。
6. tc保护机制原理和配置命令
6.1 tc保护机制原理
6.2 tc保护机制配置命令
命令 | 说明 |
stp tc-protection | 开启tc保护功能。 |
stp tc-protection interval 10 | 配置tc保护处理阈值所需的时间,默认为2。 |
stp tc-protection threshold 5 | 配置tc保护阀值,默认为1。 |
6.3 tc保护机制配置步骤
- 执行命令system-view,进入系统视图。
- 执行命令stp tc-protection threshold threshold,配置交换设备在收到tc类型bpdu报文后,单位时间内,处理tc类型bpdu报文并立即刷新转发表项的阈值。
单位时间通过执行命令stp tc-protection interval进行配置。
7. 基本配置示例
7.1 示例要求
开启交换设备边缘端口的bpdu保护功能
7.2 网络拓扑图
7.3 基本配置
<huawei>system-view -->进入系统视图界面
[huawei]sysname sw1 -->设置交换机名为sw1
[sw1]stp mode rstp -->设置stp模式为rstp
其他交换机和sw1交换机配置一样。
7.4 bpdu保护配置和验证
如上图所示,进行如下操作:①先不开启sw5交换机,②设置sw3交换机ethernet 0/0/3端口为边缘端口[sw3-ethernet0/0/3]stp edged-port enable ,③开启sw3交换机边缘端口bpdu保护功能[sw3]stp bpdu-protection ,④开启sw5交换机,⑥查看sw3交换机ethernet 0/0/3端口是否会down掉。
此边缘端口ethernet0/0/3启用bpdu保护将关闭,因为它收到bpdu数据包!
sw3交换机ethernet 0/0/3端口收到来自sw5交换机的bpdu后直接down掉,边缘端口ethernet0/0/3启用bpdu保护成功。
配置bpdu保护导致错误关闭自动恢复间隔30秒[sw3]error-down auto-recovery cause bpdu-protection interval 30 。
[sw3]display error-down recovery验证错误关闭自动恢复命令要在配置error-down auto-recovery cause bpdu-protection interval 30命令之后才能生效。
7.5 根保护配置和验证
如上图所示,进行如下操作:①sw1交换机为根交换机(优先级配置为4096[sw1]stp priority 4096),②不接入sw5交换机,③查看sw3交换机stp端口状态信息。
④接入sw5交换机后,查看根交换机是谁?
⑤sw5交换机优先级设置为0([sw5]stp priority 0),比现根交换机sw1优先级高,查看sw5抢占根交换机是否成功?
⑥在不连接sw5交换机的情况下,在sw3交换机ethernet 0/0/3端口上配置根保护([sw3-ethernet0/0/3]stp root-protection ),⑦连接sw5交换机,查看sw5能否抢占为根交换机?
在sw3交换机ethernet 0/0/3端口上配置根保护后,如果要在此端口下抢占根交换机,sw3交换机ethernet 0/0/3端口的stp端口状态就会迁移为discarding状态。
7.6 环路保护配置
在根端口上配置环路保护,当收不到上游设备的bpdu时,根端口(如此示例的sw4交换机ethernet 0/0/1端口)变为disdiscarding状态,预备端口(如此示例的sw4交换机ethernet 0/0/2端口)按照rstp规则会成为新的根端口,处于forwarding状态,这样不会导致根端口和预备端口都为forwarding状态而导致网络环路。
在预备端口上配置环路保护,当收不到上游设备的bpdu时,预备端口(如此示例的sw4交换机ethernet 0/0/2端口)处于disdiscarding状态,不会转变为新的根端口,根端口(如此示例的sw4交换机ethernet 0/0/1端口)按照rstp规则进行p/协商,这样不会导致根端口和预备端口都为forwarding状态而导致网络环路。
在根端口和预备端口都配置环路保护,当收不到上游设备的bpdu时,根端口(如此示例的sw4交换机ethernet 0/0/1端口)变为disdiscarding状态,预备端口(如此示例的sw4交换机ethernet 0/0/2端口)处于disdiscarding状态,不会转变为新的根端口,这样不会导致根端口和预备端口都为forwarding状态而导致网络环路。
7.7 tc保护配置
[sw1]stp tc-protection
[sw1]stp tc-protection threshold ?
integer<1-255> the threshold of tc-bpdu protection, default is 1---tc-bpdu保护的阈值,默认为1
发表评论