更新时间:2024-01-10
1 MEAPS介绍
1.1 MEAPS概述
以太网环路保护协议(EAPS)是一个专门应用于以太网环的链路层协议。在以太网环完整时应防止数据环路引起的广播风暴,而当以太网环上一条链路断开时,应迅速启用备份链路以恢复环网上各个节点之间的通信通路。交换机的角色由用户通过配置指定。
但EAPS只能支持单环网络架构,本标准MEAPS则在EAPS的基础上进行扩展,可以支持常用的单环或二级多环网络架构:中间是汇聚层,主要是汇聚设备之间通过以太环网来构建,实现快速切换;外侧是接入层,主要用于接入设备之间。不同级的环网主要采用相切或相交方式相连接,具体的拓扑结构如图1。
图1 MEAPS架构
环网保护协议和生成树协议都用于链路层拓扑控制。STP协议适用于各种复杂的网络,它使用逐跳的方法传播网络拓扑的变化。环网保护协议专用于环状的拓扑,并使用扩散法传播拓扑变化信息。因此,在环状网络中,环网保护协议的收敛性能优于STP协议。在网络状况良好的情况下,环网保护协议恢复网络通信的时间甚至可以少于50毫秒。
1.2 MEAPS基本概念
1.2.1 域(Domain)
域规定了以太网环路保护协议的保护范围,由整数表示的ID 来标识;一组支持相同保护数据VLAN,配置了相同的控制VLAN,并且相互连通的交换机群体构成一个域。一个域可以只包含一个环,也可以由彼此相交的多个环构成。如图2。
一个MEAPS域具有如下的组成要素:MEAPS环、控制VLAN、主节点、传输节点、边缘节点和辅助边缘节点。
图2 MEAPS简单模型
1.2.2 环(Ring)
一个环物理上对应一个环形连接的以太网拓扑,是一组相互连接成环的以太网交换机集合。一个MEAPS域中可以只有一个MEAPS环,也可以由彼此相接的多个MEAPS环组成。
1.2.3 主环(Major Ring)
当一个域包含多个环时,应选择其中一个环作为主环。主环上各节点的主、次端口需要同时加入主控制VLAN 和子控制VLAN 中。如图2。
1.2.4 子环(Sub Ring)
当一个域包含多个环时,除主环之外的其它环称为子环。子环上各节点的主、次端口只需要加入子控制VLAN 中。如图2。
1.2.5 控制VLAN(Control VLAN)
控制VLAN是相对于数据VLAN来说的,在MEAPS中,控制VLAN只用来传递MEAPS协议报文。每个MEAPS都有2个控制VLAN,主控制VLAN和子控制VLAN。
主环(或子环)配置时需要指定自己的主控制VLAN,配置时只需要指定主控制VLAN,而把比主控制VLAN的ID值大1的VLAN作为子控制VLAN,主环同时加入主控制VLAN和子控制VLAN,而子环只加入子控制VLAN中,如图2上每个端口旁边的数字3和4所示。
主环协议报文在主控制VLAN中传播,子环协议报文在子控制VLAN中传播。主环上的子控制VLAN对于主环来说相当于数据VLAN。每个交换机上接入以太网环的端口属于控制VLAN,而且也只有接入以太网环上的端口可以加入控制VLAN。
注释:
主环的MEAPS端口既要属于主控制VLAN,同时也要属于子控制VLAN;子环的MEAPS端口只属于子控制VLAN。主环被看作是子环的一个逻辑节点,子环的报文通过主环透传;主环的报文只在主环内部传播,不进入子环。
1.2.6 数据VLAN(Data VLAN)
与控制VLAN相对,数据VLAN是域中用来传输数据报文的VLAN,数据VLAN中可以包含MEAPS端口,也可以包含非MEAPS端口。每个域保护一个或多个数据VLAN。每个域内环路保护协议计算出的拓扑仅对该域的数据VLAN 有效。
数据VLAN的创建与否并不影响环网状态机的工作,其中MEAPS端口由MEAPS模块来控制,非MEAPS端口由STP模块来进行控制。
注释:
可以使用类似MSTP模块的处理方式,即,一个端口在缺省生成树实例中的状态总是由端口的Link状态决定,而无论端口的VLAN配置如何。
1.2.7 主节点(Master Node)
主节点是环上的主要决策和控制节点。每个环上必须有一个主节点,而且只能有一个。主节点主动了解环网拓扑是否完整,排除环路,并控制其它交换机更新拓扑信息。如图2,S3为子环的主节点,S4为主环的主节点。
1.2.8 传输节点(Transit Node)
以太环网上除主节点之外的所有交换机都可以称为传输节点。传输节点仅检测本地端口的状态,并在链路失效时通知主节点。如图2,S1、S2、S5、S6都是传输节点。
1.2.9 边缘节点(Edge Node)和辅助边缘节点(Assistant Node)
子环和主环相交会有2个交点,这2个交点处的交换机其中一个叫做边缘节点,另外一个叫做辅助边缘节点,它们都是子环节点。把哪台交换机配置成边缘节点或辅助边缘节点没有特殊要求,只要配置上能区分这2个节点就可以了,但是必须要将这2个节点设置为一个边缘节点和一个辅助边缘节点。边缘节点(辅助边缘节点)是交换机在子环上的角色,其在主环上的角色仍为传输节点或主节点。如图2,S2为辅助边缘节点,S5为边缘节点。
1.2.10 主端口(Primary Port) 和次端口(Secondary Port)
主节点接入以太网环的2个端口,一个为主端口,一个为次端口,端口的角色由用户的配置决定。
主端口在UP状态下只有转发状态(Forwarding),在主节点转发数据VLAN的报文,并从控制VLAN中接收和转发控制报文。主节点定时从主端口向控制VLAN发送环路探测报文。主端口链路从失效状态恢复之后,主节点需要立即向控制VLAN发送地址老化通知,并开始从主端口发送环路探测报文。
次端口在UP状态下有转发状态(Forwarding)和阻塞状态(Blocking)。主节点从次端口接收环网探测报文,判断环网拓扑是否完整。在拓扑完整的情况下,主节点在次端口阻塞数据报文,防止产生环路;在环网发生链路中断之后,主节点开放次端口对数据报文的转发。
注释:
每个端口只能配置一个节点的主端口或者次端口,不能重复配置。
1.2.11 传输端口(Transit Port)
传输节点接入以太网环的2个端口均是传输端口,端口的角色由用户进行配置决定。
传输端口在UP状态下有转发状态(Forwarding)和预转发状态(Preforwarding)。传输端口从控制VLAN接收控制报文,同时也将控制报文向控制VLAN内的其它端口转发。传输端口从失效状态恢复之后,首先进入预转发状态,仅接收并转发控制报文,阻塞数据VLAN。在传输节点收到老化地址表通知之后,传输端口才进入正常Forwarding状态。
注释:
每个端口只能配置一个节点的传输端口,不能重复配置。
1.2.12 公共端口(Common Port)和边缘端口(Edge Port)
边缘节点和辅助边缘节点作为子环和主环相交节点,接入以太网环的2个端口,一个作为子环和主环公共的端口是公共端口,一个只在子环内的是边缘端口,端口的角色由用户配置决定。
公共端口是承载在主环端口上的端口,其状态完全由主环端口的状态决定,其本身没有任何操作或通知,与公共端口相连的链路发生变化时,也只通知端口对应的主环节点,不会通知公共端口所在的子环节点,其存在是为保障环网的完整性。
边缘节点上的边缘端口,在UP状态下有转发状态(Forwarding)和预转发状态(Preforwarding),其基本特征和传输端口一致,只多了一项功能:在其UP状态下,同时其对应主环端口UP状态下,会从该主环端口发送Edge-hello报文,以探测主环的完整性。
辅助边缘节点上的边缘端口,在UP状态下有转发状态(Forwarding)、预转发状态(Preforwarding)和边缘预转发状态(EdgePreforwarding),其基本特征和传输端口一致,只多了一个状态——边缘预转发状态(EdgePreforwarding)。边缘端口在Forwarding状态下,其对应主环端口没有收到Edge-hello报文,则状态转换为边缘预转发状态(EdgePreforwarding),仅接收并转发控制报文,阻塞数据VLAN,直到对应主环端口再次收到Edge-hello报文为止。
边缘节点和辅助边缘节点的边缘端口,共同协调探测主环的完整性,具体内容会在后面的主环上子环协议报文通道状态检查机制中介绍。
注释:
每个端口只能配置一个节点的边缘端口,不能重复配置;公共端口只能承载在主环的端口上,不能配置在没有对应主环端口的端口上,可以重复配置。
1.2.13 MAC地址表老化(FLUSH MAC FDB)
快速环网保护协议通过控制交换机MAC地址表的老化来保证拓扑变化时数据报文可以被发送到正确的链路。一般情况下,MAC地址在地址表中的老化时间是300秒。环网保护协议可以控制交换机MAC地址表在极短的时间内老化。
1.2.14 环网完整状态标志(COMPLETE FLAG)
主节点和传输节点都通过一个状态标志“COMPLETE”显示当前的环网状态是否完整。在主节点,只有当前环网上所有链路正常,主端口处于转发态且次端口处于阻塞态时,“COMPLETE”标志才为真;在传输节点,只有当节点的两个传输端口都处于转发态时,标志才为真。
环网状态标志可以帮助用户判断当前网络的拓扑状态。
1.3 快速以太环网保护协议报文类型
环网保护协议使用的报文类型如表1.1所示。
表1.1 快速以太环网保护协议报文类型
报文类型
|
说明
|
环路探测
(HEALTH)
|
由主节点发送,探测环网拓扑是否完整。
|
链路中断
(LINK-DOWN)
|
由传输节点发送,指示环网中发生了链路中断。
|
环网中断老化地址表
(RING-DOWN-FLUSH-FDB)
|
主节点在检测到环网中断后发送,指示传输节点老化MAC地址表。
|
环网恢复老化地址表
(RING-UP-FLUSH-FDB)
|
主节点在检测到环网拓扑恢复后发送,指示传输节点老化MAC地址表。
|
主环完整性探测
(EDGE-HELLO)
|
根据边缘节点的边缘端口决定,由边缘节点对应的主环端口发送,探测主环是否完整
|
1.4 快速以太环网保护机制
1.4.1 轮询机制
主节点周期性(hello-time)通过主端口向控制VLAN发送探测报文(HEALTH),在正常情况下,探测报文途经环网所有其它的节点最后到达主节点的次端口。
次端口在初始情况下阻塞所有的数据VLAN,在持续收到探测报文的情况下,次端口保持对数据VLAN的阻塞而阻断环路。若次端口超过一定时限(fail-time)未收到主端口发送的探测报文,则认为环网失效,此时主节点放开次端口对数据VLAN的阻塞,老化本地MAC地址表,并发送控制报文(RING-DOWN-FLUSH-FDB)通知其它节点。
若主节点在已放开数据VLAN的次端口收到探测报文,则认为环网恢复,此时主节点立即在次端口阻塞数据VLAN,更新本地拓扑信息并通知其它节点老化地址表(RING-UP-FLUSH-FDB)。
如图3所示,主节点S4周期的发送HELLO报文,因为环路无故障,HELLO报文到达主节点的次端口,主节点阻塞了次端口的数据VLAN的数据转发功能,防止环路产生。
图3 轮询机制
注释:
可以通过hello-time和fail-time节点配置命令修改主端口发送探测报文的间隔和次端口等待探测报文的时限。
1.4.2 传输节点链路失效通知
链路状态变化通知机制提供了比轮询机制更快环网拓扑改变的处理机制:
传输节点的一个传输端口链路失效后,会立即通过另一个传输端口发送链路失效通知报文(LINK-DOWN)。正常情况下,该报文经过其它传输节点并最终到达主节点的一个端口。
主节点收到链路失效通知之后,认为环网失效,此时主节点放开次端口对数据VLAN的阻塞,老化本地MAC地址表,并发送控制报文(RING-DOWN-FLUSH-FDB)通知其它节点。如图4所示,节点S3和S6之间的链路发生故障,节点S3和S6检测到端口对应链路发生故障后,阻塞故障链路对应端口,分别从另一端口发送LINK-DOWN报文出去,主节点收到LINK-DOWN报文后,认为环路发生故障,而不必再等待完fail-time。
图4 链路状态变化通知机制
传输端口恢复之后,并不立即开始转发数据VLAN报文,而是进入“预转发(Pre-Forwarding)”状态。传输端口在预转发状态仅转发和接收控制VLAN的控制报文。
若环网中只有一个传输端口失效,该端口进入预转发状态之后主节点的次端口便可以重新收到主端口发出的探测报文,此时主节点重新在次端口阻塞数据VLAN,并向外发送老化地址表通知。包含预转发状态传输端口的节点在收到老化地址表通知之后,首先将预转发状态的端口设置为转发状态,然后老化本地MAC地址表。
若传输节点在一定时间(pre-forward-time)内未收到主节点的老化地址表通知,可以认为到达主节点的链路失效,传输节点自行将预转发状态的端口设置为转发态。
注释
可以通过pre-forward-time节点配置命令修改传输端口保持预转发状态的时间。
1.4.3 主环上子环协议报文通道状态检查机制
主环上的端口同时加入到主环控制VLAN和子环控制VLAN,因此,子环的协议报文需要通过主环提供的通道在边缘节点和辅助边缘节点的边缘端口之间传播,就好像整个主环是子环上的一个节点(相当于一个虚拟的传输节点),如图5。
图5 子环和主环相交
当主环链路出现故障,边缘节点与辅助边缘节点间子环协议报文的通道中断(主环中与子环的公共链路故障,并且连接边缘节点和辅助边缘节点的另一条主环链路也发生故障)时,子环主节点将收不到自己发出的HELLO报文,于是Fail Time定时器超时,子环主节点迁移到Failed状态,放开次端口(这里可以看成主环这个虚拟传输节点发生了内部故障)。
经过上述的处理,对于普通组网能进行很有效的保护,既保证了不会形成广播环路,又使备份链路发挥了应有的作用。但对于实际组网中常用的双归属组网,如图6所示,双归属的2个子环Sub Ring I和Sub Ring II通过边缘节点和辅助边缘节点相互连接,2个子环又就形成了一个大环,当主环Major Ring故障发生后,所有子环的主节点次端口放开,在2个子环组成的大环内形成广播环路(如箭头所示)。
图6 双归属组网引起广播风暴
为了解决双归属环问题,这里提出了主环上子环协议报文通道状态检测机制。这一机制监测的是边缘节点和辅助边缘节点之间的主环上通道链路状态,它需要边缘节点和辅助边缘节点配合完成,目的就是在子环主节点次端口放开之前,阻塞辅助边缘节点的边缘端口,从而避免子环间形成数据环路。边缘节点是机制的发起者;辅助边缘节点是机制的监听者和决策者,一旦发现收不到边缘节点发过来的通知信息,就立刻阻塞自己的边缘端口,直到再次收到边缘节点发过来的通知信息。主环故障后机制产生作用效果如图7所示。
图7 主环故障后机制产生作用效果
不过必须要注意的是,在子环主节点次端口超时放开之前,一定要先阻塞辅助边缘节点的边缘端口,否则先会产生广播风暴。
整个机制的过程描述如下:
1.检测边缘节点和辅助边缘节点之间的主环上通道链路状态
子环的边缘节点通过主环的2个端口周期性的向主环内发送EDGE-HELLO报文,依次经过环上各节点发往辅助边缘节点,如图8所示。如果辅助边缘节点在规定时间内能够收到EDGE-HELLO报文,表明报文通道正常,反之如果收不到,说明通道中断。EDGE-HELLO报文是子环的控制报文,但是由主环端口进行发送和接收,并再交由子环进行处理。
图8 检测边缘节点和辅助边缘节点之间的主环上通道链路状态
2.通道中断边缘节点阻塞边缘端口
辅助边缘节点在Edge Fail Time内无法收到EDGE-HELLO报文,认为子环协议报文通道中断,立即将其边缘端口状态变为Edge-Preforwarding状态,阻塞数据报文的发送,但仍旧能够接受并转发控制报文,并且立刻向主节点发送LINK-DOWN,使其放开次端口以保证环网上各节点通信不被中断,如图9所示。辅助边缘节点无法收到边缘节点发送的EDGE-HELLO报文,说明通道中断,因此辅助边缘节点将其边缘端口变为Edge-Preforwarding状态,并发送LINK-DOWN通知主节点。
注释:
为保证先使边缘端口变为Edge-Preforwarding状态,后放开主节点次端口,边缘节点发送EDGE-HELLO报文的周期Edge Hello Time要小于主节点发送HELLO报文的周期Hello Time;同样的,辅助边缘节点的Edge Fail Time也要小于Fail Time。同时,与Fail Time一般是Hello Time的3倍的处理方法相类似,Edge Fail Time一般也是Edge Hello Time的3倍。
图9 通道中断边缘节点阻塞边缘端口
3.子环协议报文通道恢复
主环链路恢复导致边缘节点和辅助边缘节点间通信恢复时,子环协议报文通道恢复正常,子环主节点重新重复端口收到自己发出的HELLO报文,从而切换到Complete状态,阻塞次端口,并向环网中发送RING-UP-FLUSH-FDB报文。同时,通道恢复后,辅助边缘节点的边缘端口,状态从Edge-Preforwarding状态恢复到Forwarding状态,以保证环网上各节点通信不被中断。如图10所示,通道恢复后,环网恢复通信。
注意:
在边缘节点打开被阻塞的边缘端口之前,要先阻塞子环上主节点的次端口,以防止产生广播风暴。
图10 子环协议报文通道恢复
2 快速以太环网保护配置
2.1 快速以太环网保护配置须知
在配置环网保护协议之前,请阅读以下注意事项:
• 阻止广播风暴是环网保护协议的一项重要功能,请确保在所有环网节点都配置完成的情况下再接通环网链路。比如,在配置完主节点和所有传输节点之后,再为主节点的次端口接通网线。在未配置完所有节点的情况下接通环网,将容易引起广播风暴。
• 配置环网保护协议实现与交换机的生成树协议兼容,允许用户配置“no spanning-tree”,SSTP、RSTP、PVST和MSTP生成树模式。
• 环网节点实例配置完成后,用户将不可以更改节点的基本信息,除非删除当前的环网节点重新配置;但可以更改时间参数等信息。
• 配置节点后,用show命令查看,若某节点state指示的是init,则该节点配置未完成,无法启动,需要更改或者补充基本信息以完成节点配置。
• 环网保护协议支持在一台交换机配置多个环网节点实例。
• 配置环网控制VLAN系统会自动创建相应的VLAN,用户不需要通过VLAN全局配置命令手动创建该VLAN。
• 只有每个环的环网端口才可以转发该环控制VLAN中的报文,其它端口,即使配置为Trunk模式,也无法在控制VLAN中转发。
• 缺省情况下,主节点的Fail-Time是Hello-Time的三倍,以避免因报文延时造成环网保护协议的震荡。修改Hello-Time之后,用户需要相应的对Fail-Time进行修改。
• 缺省情况下,传输节点的Pre-Forward-Time是主节点Hello-Time的三倍,以确保传输端口进入转发状态之前主节点可以检测到环网恢复。若主节点配置的Hello-Time大于传输节点的Pre-Forward-Time,则容易产生环路而引发广播风暴。
• Edge Hello Time和Edge Fail Time用户不能进行配置,其默认大小分别由Hello Time和Fail Time来决定,均分别为Hello Time和Fail Time的1/3。
• 物理端口,Interface FastEthernet,Interface GigaEthernet等以及聚合端口,均可配置为环网端口。若物理端口上已配置链路聚合、802.1X或端口安全,该端口不可配置为环网端口。
• 本协议与原始的EAPS功能上相似,但环网拓扑具有更多的扩展性和灵活性,因此,跟MEAPS能实现部分兼容,可以和原始的EAPS环网进行相切配置。并且,同一个物理端口不能同时配置MEAPS和原始的EAPS。
2.2 快速以太环网保护配置任务
• 配置主节点
• 配置传输节点
• 配置边缘节点和辅助边缘节点
• 配置环网端口
• 查看环网保护协议状态
2.3 快速以太环网保护配置
2.3.1 配置主节点
按照下面的步骤,将交换机配置为环网的主节点。
命令
|
目的
|
Switch#config
|
进入交换机配置模式。
|
Switch_config#mether-ring id1 domain id2
|
配置节点实例并进入节点配置模式。
id1:节点实例号;id2:域实例号(id2 = 0可以省略)。
|
Switch_config_ring1#master-node
|
必选。配置节点类型为主节点。
|
Switch_config_ring1#major-ring[sub-ring]
|
必选。配置节点等级为主环(子环)节点。
|
Switch_config_ring1#control-vlan vlan-id
|
必选。配置控制vlan,并创建vlan号为id和id+1的vlan。
vlan-id:控制vlan号
|
Switch_config_ring1#hello-time value
|
可选。配置主节点发送探测报文的周期。
value:时间值,1至10秒,缺省为3秒
|
Switch_config_ring1#fail-time value
|
可选。配置次端口等待探测报文的时限。
value:时间值,3至30秒,缺省为9秒
|
Switch_config_ring1#exit
|
保存当前配置并退出节点配置模式。
|
Switch_config#
|
|
注释:
使用no mether-ring id domain id2命令删除环网节点配置以及节点端口配置。
注释:
配置时,主环和子环都配置相同的控制vlan——主环控制vlan。配置成功后,主环上会同时创建主环控制vlan和子环控制vlan,子环上会创建子环控制vlan,禁止主环控制vlan。
2.3.2 配置传输节点
按照下面的步骤,将交换机配置为环网的传输节点。
命令
|
目的
|
Switch# config
|
进入交换机配置模式。
|
Switch_config#mether-ring id1 domain id2
|
配置节点实例并进入节点配置模式。
id1:节点实例号;id2:域实例号(id2 = 0可以省略)。
|
Switch_config_ring1# transit -node
|
必选。配置节点类型为传输节点。
|
Switch_config_ring1#major-ring[sub-ring]
|
必选。配置节点等级为主环(子环)节点。
|
Switch_config_ring1#control-vlan vlan-id
|
必选。配置控制vlan,并创建vlan号为id和id+1的vlan。
vlan-id:控制vlan号
|
Switch_config_ring1#pre-forward-time value
|
可选。配置传输端口保持预转发状态的时间。
value:时间值,3至30秒,缺省为9秒
|
Switch_config_ring#exit
|
保存当前配置并退出节点配置模式。
|
Switch_config#
|
|
2.3.3 配置边缘节点和辅助边缘节点
按照下面的步骤,将交换机配置为环网的主节点。
命令
|
目的
|
Switch# config
|
进入交换机配置模式。
|
Switch_config#mether-ring id1 domain id2
|
配置节点实例并进入节点配置模式。
id1:节点实例号;id2:域实例号(id2 = 0可以省略)。
|
Switch_config_ring1#edge-node[assistant-node]
|
必选。配置节点类型为边缘节点(辅助边缘节点)。
|
Switch_config_ring1#sub-ring
|
可省略。边缘节点(辅助边缘节点)一定是子环节点。
|
Switch_config_ring1#control-vlan vlan-id
|
必选。配置控制vlan,并创建vlan号为id和id+1的vlan。
vlan-id:控制vlan号
|
Switch_config_ring1#pre-forward-time value
|
可选。配置边缘端口保持预转发状态的时间。
value:时间值,3至30秒,缺省为9秒
|
Switch_config_ring1#exit
|
保存当前配置并退出节点配置模式。
|
Switch_config#
|
|
2.3.4 配置单子环组网模式
按照下面的步骤,将交换机配置为环网的主节点。
命令
|
目的
|
Switch# config
|
进入交换机配置模式。
|
Switch_config#mether-ring id1 domain id2
|
配置节点实例并进入节点配置模式。
id1:节点实例号;id2:域实例号(id2 = 0可以省略)。
|
Switch_config_ring1#edge-node[assistant-node]
|
必选。配置节点类型为边缘节点(辅助边缘节点)。
|
Switch_config_ring1#sub-ring
|
可省略。边缘节点(辅助边缘节点)一定是子环节点。
|
Switch_config_ring1#control-vlan vlan-id
|
必选。配置控制vlan,并创建vlan号为id和id+1的vlan。
vlan-id:控制vlan号
|
Switch _config_ring2#single-subring-mode
|
必选。此命令不配置,亦可完成环网配置,但无法进入单子环组网模式。单子环组网模式不进行主环上子环协议报文通道状态检查机制,必须保证环网中没有双归属组网的出现。并且此命令只针对边缘节点和辅助边缘节点有效。
|
Switch_config_ring1#pre-forward-time value
|
可选。配置边缘端口保持预转发状态的时间。
value:时间值,3至30秒,缺省为9秒
|
Switch_config_ring1#exit
|
保存当前配置并退出节点配置模式。
|
Switch_config#
|
|
2.3.5配置环网端口
按照下面的步骤,配置交换机的端口为环网端口。
命令
|
目的
|
Switch# config
|
进入交换机配置模式。
|
Switch_config#interface interface-type interface-number
|
进入端口配置模式。
|
Switch_config_intf#mether-ring id1 domain id2 primary-port [ secondary-port | transit-port | common-port | edge-port ]
|
配置环网端口类型。
id1:节点实例号;id2:域实例号(id2 = 0可以省略)。
|
Switch_config_intf#exit
|
退出端口配置模式。
|
注释:
通过no mether-ring id1 domain id2 primary-port [ secondary-port | transit-port | common-port | edge-port ] 端口配置命令,删除环网端口配置。
2.3.6 查看环网保护协议状态
使用下面的命令查看环网保护协议的状态。
命令
|
目的
|
show mether-ring
|
查看全部环网保护协议和环网端口的摘要信息。
|
show mether-ring id1 domain id2
|
查看指定环网保护协议和环网端口的摘要信息。
id1:节点实例号;id2:域实例号(id2 = 0可以省略)
|
show mether-ring id1 domain id2 detail
|
查看指定环网保护协议和环网端口的详细信息。
|
show mether-ring id1 domain id2 interface interface-type interface-number
|
查看指定环网端口或普通交换端口的状态信息。
|
3 附录
3.1 MEAPS协议的作用过程 示例
MEAPS采用3种保护机制,来支持单环或二级多环网络架构,下面将由环网健康状态到故障状态,再到恢复到健康状态的过程,来举例详细分析MEAPS的运行细节和拓扑变化过程。
3.1.1 环网健康状态(Complete State)
环网的健康状态主要由轮询机制来监控和维持,同时,环网的健康状态是相对于一个环网来说的。健康状态下,整个环网上所有链路都处于UP状态,而这一状态,又可以由主节点的状态来表现出来。为了防止产生广播风暴,主节点会阻塞其次端口。同时,主节点会周期性的从其主端口发送HELLO报文,依次经过各传输节点,最后从主节点次端口回到主节点。健康状态的环网如图11,主环和2个子环都处于健康状态,其中主环的HELLO报文只在主环里面进行传播,而子环的HELLO报文却能通过主环进行透传,再回到子环中,最后到达子环主节点的次端口。
图11 环网健康状态
3.1.2 环网故障状态(Link-Down)
环网的故障状态由轮询机制、链路状态变化通知机制、主环上子环协议报文通道状态检查机制共同完成,当然,环网的故障状态也是相对于一个环网来说的。当环网中有链路Link-Down时,该环网就由健康状态变化为故障状态。
对于某一条链路Link-Down后,由轮询机制辅助链路状态变化通知机制完成,发生Link-Down的传输节点从另一端Up的端口发送LINK-DOWN报文给主节点(具体处理过程见链路状态变化机制);同时,轮询机制也通过Fail Time来进行监控,及时改变环网状态。当子环协议通道发送故障时,由主环上子环协议报文通道状态检查机制来进行处理。如图12所示,主环上的链路故障和公共链路的故障通知报文只在主环上传播,并传给主节点;子环2上的链路故障通知给子环主节点,可以通过主环进行透传。
图12 环网发送故障并通知主节点
主节点收到LINK-DOWN报文后,将状态变换为Failed状态,并同时打开次端口,刷新FDB表,并从2个端口发送RING-DOWN-FLUSH-FDB报文,通知所有节点。如图13所示,主环上主节点通知主环上的传输节点刷新FDB;子环1发生报文通道故障,因此阻塞其辅助边缘节点的边缘端口;子环2的主节点通知子环上的传输刷新FDB,并从主环上进行透传。
图13 环网发送故障并刷新FDB
3.1.3 环网故障恢复(Recovery)
当传输节点上的端口恢复时,传输节点迁移到Preforwarding状态。传输节点端口恢复时的处理过程如图14所示,主环上的链路恢复,与之相连的传输节点变为Preforwarding状态,阻止数据报文通过,但能让控制报文HELLO报文通过;同理,子环2上的传输节点也变为Preforwarding状态;子环1上的HELLO报文到达边缘节点时,因为恢复的传输端口只允许主环的控制报文通过,而子环1的HELLO报文对于主环来说相当于数据报文,因此不转发该HELLO报文。
图14 环网链路恢复传输节点迁移到Preforwarding
传输端口在Preforwarding状态下能够传输控制报文,使得主节点的次端口能够收到主端口发送过来的HELLO报文,因此,主节点将状态迁移到Complete状态,阻塞次端口,并从主端口发送RING-UP-FLUSH-FDB报文。传输节点收到RING-UP-FLUSH-FDB报文后,迁移回Link-Up状态,放开临时阻塞的端口,并刷新FDB表。环网恢复的处理过程如图15所示,主环上主节点迁移到Complete状态,并阻塞次端口,并发送RING-UP-FLUSH-FDB报文给主环内的各个传输节点,使其迁移回Link-Up状态,放开临时阻塞的端口,并刷新FDB表;同理,子环2上的主节点和传输节点也做相应的改变;子环1因其子环协议报文通道恢复正常,所以主节点的次端口能够收到主端口发送过来的HELLO报文,主节点状态迁移回Complete状态,阻塞次端口,发送RING-UP-FLUSH-FDB报文,使辅助边缘节点打开边缘端口,子环1恢复到健康状态。
图15 环网恢复
当然,如果传输节点在Preforwarding状态下没有收到RING-UP-FLUSH-FDB报文,过了Fail Time后,传输节点也会打开阻塞的传输端口,以恢复数据通信。
3.2 快速以太环网保护配置示例
3.2.1 配置示例
图2.1 快速以太环网保护配置示例
如图2.1所示网络,配置如下:
配置交换机S1:
配置子环传输节点node 2:
Switch_config#mether-ring 2 domain 1
Switch_config_ring2#transit-node
Switch_config_ring2#sub-ring
Switch_config_ring2#control-vlan 2
配置时间参数:
Switch_config_ring2#pre-forward-time 12
退出节点配置模式:
Switch_config_ring2#quit
配置node 2的传输端口:
Switch_config#interface gigaEthernet 1/1
Switch_config_g1/1#mether-ring 2 domain 1 transit-port
Switch_config_g1/1#switchport mode trunk
Switch_config_g1/1#quit
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#mether-ring 2 domain 1 transit-port
Switch_config_g1/2#switchport mode trunk
Switch_config_g1/2#quit
配置交换机S2:
配置主环传输节点node 1:
Switch_config#mether-ring 1 domain 1
Switch_config_ring1#transit-node
Switch_config_ring1#major-ring
Switch_config_ring1#control-vlan 2
配置时间参数:
Switch_config_ring1#pre-forward-time 12
退出节点配置模式:
Switch_config_ring1#quit
配置node 1的传输端口:
Switch_config#interface gigaEthernet 1/1
Switch_config_g1/1#mether-ring 1 domain 1 transit-port
Switch_config_g1/1#switchport mode trunk
Switch_config_g1/1#quit
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#mether-ring 1 domain 1 transit-port
Switch_config_g1/2#switchport mode trunk
Switch_config_g1/2#quit
配置子环边缘节点node 2:
Switch_config#mether-ring 2 domain 1
Switch_config_ring2#edge-node
Switch_config_ring2#sub-ring (可省略)
Switch_config_ring2#control-vlan 2
配置时间参数:
Switch_config_ring2#pre-forward-time 12
退出节点配置模式:
Switch_config_ring2#quit
配置node 2的公共端口和边缘端口:
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#mether-ring 2 domain 1 common-port
Switch_config_g1/2#quit
Switch_config#interface gigaEthernet 1/3
Switch_config_g1/3#mether-ring 2 domain 1 edge-port
Switch_config_g1/3#switchport mode trunk
Switch_config_g1/3#quit
配置交换机S3:
配置主环传输节点node 1:
Switch_config#mether-ring 1 domain 1
Switch_config_ring1#transit-node
Switch_config_ring1#major-ring
Switch_config_ring1#control-vlan 2
配置时间参数:
Switch_config_ring1#pre-forward-time 12
退出节点配置模式:
Switch_config_ring1#quit
配置node 1的传输端口:
Switch_config#interface gigaEthernet 1/1
Switch_config_g1/1#mether-ring 1 domain 1 transit-port
Switch_config_g1/1#switchport mode trunk
Switch_config_g1/1#quit
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#mether-ring 1 domain 1 transit-port
Switch_config_g1/2#switchport mode trunk
Switch_config_g1/2#quit
配置子环辅助边缘节点node 4:
Switch_config#mether-ring 4 domain 1
Switch_config_ring4#assistant-node
Switch_config_ring4#sub-ring (可省略)
Switch_config_ring4#control-vlan 2
配置时间参数:
Switch_config_ring4#pre-forward-time 12
退出节点配置模式:
Switch_config_ring4#quit
配置node 2的公共端口和边缘端口:
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#mether-ring 4 domain 1 common-port
Switch_config_g1/2#quit
Switch_config#interface gigaEthernet 1/3
Switch_config_g1/3#mether-ring 4 domain 1 edge-port
Switch_config_g1/3#switchport mode trunk
Switch_config_g1/3#quit
配置交换机S4:
配置子环主节点node 4:
Switch_config#mether-ring 4 domain 1
Switch_config_ring4#master-node
Switch_config_ring4#sub-ring
Switch_config_ring4#control-vlan 2
配置时间参数:
Switch_config_ring4#hello-time 4
Switch_config_ring4#fail-time 12
退出节点配置模式:
Switch_config_ring4#quit
配置node 4的主端口和次端口:
Switch_config#interface gigaEthernet 1/1
Switch_config_g1/1#mether-ring 4 domain 1 primary-port
Switch_config_g1/1#switchport mode trunk
Switch_config_g1/1#quit
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#mether-ring 4 domain 1 secondary-port
Switch_config_g1/2#switchport mode trunk
Switch_config_g1/2#quit
配置交换机S5:
配置子环主节点node 2:
Switch_config#mether-ring 2 domain 1
Switch_config_ring2#master-node
Switch_config_ring2#sub-ring
Switch_config_ring2#control-vlan 2
配置时间参数:
Switch_config_ring2#hello-time 4
Switch_config_ring2#fail-time 12
退出节点配置模式:
Switch_config_ring2#quit
配置node 2的主端口和次端口:
Switch_config#interface gigaEthernet 1/1
Switch_config_g1/1#mether-ring 2 domain 1 primary-port
Switch_config_g1/1#switchport mode trunk
Switch_config_g1/1#quit
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#mether-ring 2 domain 1 secondary-port
Switch_config_g1/2#switchport mode trunk
Switch_config_g1/2#quit
配置交换机S6:
配置主环主节点node 1:
Switch_config#mether-ring 1 domain 1
Switch_config_ring1#master-node
Switch_config_ring1#major-ring
Switch_config_ring1#control-vlan 2
配置时间参数:
Switch_config_ring1#hello-time 4
Switch_config_ring1#fail-time 12
退出节点配置模式:
Switch_config_ring1#quit
配置node 1的传输端口:
Switch_config#interface gigaEthernet 1/1
Switch_config_g1/1#mether-ring 1 domain 1 primary-port
Switch_config_g1/1#switchport mode trunk
Switch_config_g1/1#quit
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#mether-ring 1 domain 1 secondary-port
Switch_config_g1/2#switchport mode trunk
Switch_config_g1/2#quit
配置子环辅助边缘节点node 2:
Switch_config#mether-ring 2 domain 1
Switch_config_ring2#assistant-node
Switch_config_ring2#sub-ring (可省略)
Switch_config_ring2#control-vlan 2
配置时间参数:
Switch_config_ring2#pre-forward-time 12
退出节点配置模式:
Switch_config_ring2#quit
配置node 2的公共端口和边缘端口:
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#mether-ring 2 domain 1 common-port
Switch_config_g1/2#quit
Switch_config#interface gigaEthernet 1/3
Switch_config_g1/3#mether-ring 2 domain 1 edge-port
Switch_config_g1/3#switchport mode trunk
Switch_config_g1/3#quit
配置交换机S7:
配置主环传输节点node 1:
Switch_config#mether-ring 1 domain 1
Switch_config_ring1#transit-node
Switch_config_ring1#major-ring
Switch_config_ring1#control-vlan 2
配置时间参数:
Switch_config_ring1#pre-forward-time 12
退出节点配置模式:
Switch_config_ring1#quit
配置node 1的传输端口:
Switch_config#interface gigaEthernet 1/1
Switch_config_g1/1#mether-ring 1 domain 1 transit-port
Switch_config_g1/1#switchport mode trunk
Switch_config_g1/1#quit
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#mether-ring 1 domain 1 transit-port
Switch_config_g1/2#switchport mode trunk
Switch_config_g1/2#quit
配置子环边缘节点node 4:
Switch_config#mether-ring 4 domain 1
Switch_config_ring4#edge-node
Switch_config_ring4#sub-ring (可省略)
Switch_config_ring4#control-vlan 2
配置时间参数:
Switch_config_ring4#pre-forward-time 12
退出节点配置模式:
Switch_config_ring4#quit
配置node 4的公共端口和边缘端口:
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#mether-ring 4 domain 1 common-port
Switch_config_g1/2#quit
Switch_config#interface gigaEthernet 1/3
Switch_config_g1/3#mether-ring 4 domain 1 edge-port
Switch_config_g1/3#switchport mode trunk
Switch_config_g1/3#quit
配置交换机S8:
配置子环传输节点node 4:
Switch_config#mether-ring 4 domain 1
Switch_config_ring4# transit -node
Switch_config_ring4#sub-ring
Switch_config_ring4#control-vlan 2
配置时间参数:
Switch_config_ring4#pre-forward-time 12
退出节点配置模式:
Switch_config_ring4#quit
配置node 4的传输端口:
Switch_config#interface gigaEthernet 1/1
Switch_config_g1/1#mether-ring 4 domain 1 transit -port
Switch_config_g1/1#switchport mode trunk
Switch_config_g1/1#quit
Switch_config#interface gigaEthernet 1/2
Switch_config_g1/2#mether-ring 4 domain 1 transit -port
Switch_config_g1/2#switchport mode trunk
Switch_config_g1/2#quit
3.3 配置未完成情况汇总
• 基本信息未配置:环网角色、环网等级、控制VLAN这3个基本信息有一个未配置。有一个例外,当节点已配置角色edge-node或assistant-node,则默认环网等级是sub-ring。
• 基本信息矛盾:节点角色为edge-node或assistant-node时,默认环网等级是sub-ring,当配置环网等级是major-ring时,会有提示信息。
• 子环缺少对应的主环节点:节点角色为edge-node或assistant-node时,其节点的存在是承载在主环节点上的,若在没有相应主环节点强制创建edge-node或assistant-node子环节点,则会有提示信息(此时用show命令查看MEAPS状态,发现基本信息是完整的,但state指示信息依旧是init,表明环网节点配置未完成)。
• 配置控制vlan冲突:节点配置的控制vlan与别的已经配置完成的节点冲突,会有提示信息(此时用show命令查看MEAPS状态,发现基本信息是完整的,但state指示信息依旧是init,表明环网节点配置未完成)。
• 根据某主环节点配置相应子环节点时,子环节点id要大于对应主环节点id,若小于,则创建亦不成立,会有提示信息。