G8032技术白皮书资料.docx
《G8032技术白皮书资料.docx》由会员分享,可在线阅读,更多相关《G8032技术白皮书资料.docx(18页珍藏版)》请在冰豆网上搜索。
![G8032技术白皮书资料.docx](https://file1.bdocx.com/fileroot1/2022-11/22/735abc17-7072-4573-8951-63c12fa31f0f/735abc17-7072-4573-8951-63c12fa31f0f1.gif)
G8032技术白皮书资料
G.8032技术白皮书
G.8032技术白皮书1
1引言1
2G.8032概述1
2.1故障检测机制2
2.2保护倒换机制3
2.3相交环的保护倒换机制4
3典型组网案例6
3.1单环拓扑6
3.2相交环拓扑9
4参考文献15
1引言
以太网,因其简易性、经济性和对分组业务的良好支持而被誉为电信史上最为成功的数据传输交换技术,无论在传输容量还是市场规模上都以超摩尔法则的速率在发展。
随着以太网的发展,对以太网的业务保护与恢复能力的要求也越来越高。
以太环网协议的出现解决了传统数据网保护能力弱、故障恢复时间长等问题,理论上可以提供50ms的快速保护特性。
IETFRFC3619即EAPS采用Polling及故障通告机制检测以太网故障和相对简单灵活且易于实现的保护倒换协议,较好的满足了城域网语音与数据等业务的需求,早期被一些设备厂商在汇聚网络上商用,并在此基础上不断改进,后期各厂商又在此基础上衍生出多个私有的技术,如中兴ZESR、华为RRPP、烽火网络ESR等以太环网保护技术。
分析发现EAPS存在两个明显弱点:
故障通告丢失或因某种原因未能触发故障通告,依靠Polling机制检测发现故障时间较长,不能满足50ms保护倒换要求;若链路故障是单向的,Polling机制可能检测不到该故障并不触发保护倒换。
ITU-TG.8032定义了以太环网自动保护切换机制,克服了EAPS的上述弱点。
2G.8032概述
环网保护是要对一个以太网环网进行自动保护。
在正常状态下,要在环网内设置阻塞链路,以防止成环,当其他链路发生故障时,这段阻塞链路打开,流量倒换到环上的另一侧路径进行传输,实现倒换保护,在G.8032中,这段链路被称为环路保护链路(RPL,RingProtectionLink),连接RPL的一端负责控制其转发状态的节点被称为RPL拥有节点(RPLOwner),节点通过RAPS报文进行通信,传送RAPS报文的通道称为RAPSChannel,业务流量在TrafficChannel中传送,与RAPSchannel具有相同的转发状态。
G.8032能够对简单环路的进行保护的同时,同时通过子环模型实现多级环路的保护。
2.1故障检测机制
G.8032采用Y.1731或IEEE802.1ag中定义的连续性检测(CC)进行链路双向转发检测,能够定位故障点并检测故障是单向还是双向的,并且用于保护转换时,CC帧默认的传输周期是3.33ms(即每秒300帧的传输速率)。
如图1所示:
图1:
相邻节点发送CC进行故障检测
两个相邻节点间周期性的从物理端口发送连续性检测(CC)帧以检测故障,当一个节点在特定的时间内检测到CC帧丢失,即检测到了一个故障,如图2所示:
图2:
检测到CC丢失
图2中节点A、B不能收到对方发送的CC检测到各自端口a1、b2故障。
节点从检测到故障的端口发送RDI(RemoteDefectIndication)帧,如果是单向故障,链路下行的节点将检测到该RDI帧,如图3所示:
图3:
单方向链路故障检测
图3中节点B检测到来自A的CC丢失,检测到端口b2故障,通告RDI给A。
如果是节点出现故障,故障节点两边相邻的节点将在特定时间内检测到CC帧丢失,如图4所示:
图4:
节点故障
2.2保护倒换机制
在正常状态下,RPL链路两端端口(a2)、(f1)或仅RPLOwner一端端口(a2)处于阻塞状态防止环路产生;当检测到故障时,阻塞故障端口,开放RPL端口完成链路保护倒换。
如图5所示:
图5:
检测到故障阻塞故障端口并通告
节点B、C通过发送CC帧或RDI帧检测到故障时阻塞故障端口(b1)、(c2),并通告故障,发送一个短序列的帧RAPS(SF),收到RAPS(SF)帧的节点将开放处于阻塞状态的非故障端口、刷新FDB并转发,整个环工作在保护状态,如图6所示:
图6:
切换到保护状态
该机制有以下两个连续性的步骤:
◆阻塞检测到故障的端口
◆开放RPL端口
这意味着所提出的路径倒换机制保证了逻辑拓扑在路径倒换过程中始终是一棵树。
因此,该机制完成了无环路的路径倒换。
当故障链路恢复时,恢复链路两邻接节点仍然将端口阻塞,并发送RAPS(NR)消息通告故障恢复,收到RAPS(NR)的环节点转发,当RPLOwner收到RAPS(NR)后,启动WTR定时器,等待WTR超时后,阻塞RPL端口,同时发送RAPS(NR,RB),如图7所示:
图7:
RPLOwner节点阻塞RPL端口并通告
环中节点收到RAPS(NR,RB)消息后,刷新FDB,解除阻塞端口,RPL另一端非RPLOwner节点收到RAPS(NR,RB)消息后阻塞RPL端口刷新FDB,整个环重新恢复到工作状态,如图8所示:
图8:
环恢复到工作状态
2.3相交环的保护倒换机制
G.8032能够对单点相切的多环拓扑或通过一条共享的线路(SharedLink)互联的多环拓扑进行链路保护倒换。
单点相切的多环拓扑中每一个环的保护倒换遵从简单环的保护倒换机制,而通过一条共享的线路(SharedLink)互联的多环被划分为主环和子环,SharedLink属于主环而不属于子环,SharedLink的两端节点被称为互联节点,子环上互联节点之间的部分称为子环链路,子环通过互联节点在主环上的虚链路与子环链路构成一个闭合的环。
通过SharedLink互联的环路如图9所示:
图9:
多环网络
B、E之间的链路为SharedLink,节点B、E为互联节点,环Ring1为主环,包括链路A-B-E-F-A(图中红色虚线部分),环Ring2为子环,包括链路B-C-D-E(图中黑色虚线部分),主环Ring1的RPL链路为A-F,子环Ring2的RPL链路为C-D,子环Ring2在主环Ring1上的虚链路为一条冗余链路,Y.1731或IEEE802.1ag中定义的连续性检测(CC)能够检测冗余链路的联通性(如UPMEP),这样主环链路故障或子环链路故障时的保护倒换与简单环路的保护倒换机制就一致了。
当子环在主环上的虚链路故障时,按照简单环路的保护倒换机制完成保护倒换如图10所示:
图10:
虚链路故障通告
当虚链路状态恢复时,为防止形成超环,当互联节点B、E检测到虚链路恢复时阻塞端口(b1)、(c2),同时通告RAPS(NR),节点C作为RPLOwner启动WTR,如图11所示:
图11:
虚链路恢复时子环消息通告
这时由于B、E分别阻塞了(b1)、(c2),子环链路与主环失去了连通性,为防止这一情况的发生引入一种新的机制,当环节点收到RAPS(NR)或RAPS(SF)时,如果对端的MAC比自己大,就开放非故障阻塞端口。
按照新引入的机制,节点B、E收到RAPS(NR)后,比较远端MAC与自己MAC,由于节点E的MAC>节点B的MAC,这时节点B将开放端口(b1),如图12所示:
图12:
虚链路恢复时孤岛链路防止
当节点C上的WTR超时时,阻塞RPL端口(c1)并通告RAPS(NR,RB),按照简单环路恢复过程处理,如图13所示:
图13:
子环虚链路链路恢复
3典型组网案例
3.1单环拓扑
组网图
MAC:
S1:
00:
04:
67:
11:
11:
11
S2:
00:
04:
67:
22:
22:
22
S3:
00:
04:
67:
33:
33:
33
配置步骤
站点1的配置
配置filter规则
Fengine#config
Fengine(config)#filter-list1
Fengine(config-filter1)#filter1macanyanyeth-type0x8902
Fengine(config-filter1)#filter1actioncpu
配置Y.1731
Fengine#config
Fengine(config)#y1731
Fengine(config-y1731)#meg1iccmeg1umcmeg1level6vlan1
端口1/1的配置
Fengine#config
Fengine(config)#interfacegigaethernet1/1
Fengine(config-ge1/1)#joinvlan1-4094tagged
Fengine(config-ge1/1)#filter-listin1
Fengine(config-ge1/1)#y1731mep1/1directiondown
Fengine(config-ge1/1)#y1731mep1/1ccenable
Fengine(config-ge1/1)#y1731remote-mepid2mac00:
04:
67:
22:
22:
22mep1/1
Fengine(config-ge1/1)#quit
退出端口1/1的配置
端口1/2的配置
Fengine#config
Fengine(config)#interfacegigaethernet1/2
Fengine(config-ge1/2)#joinvlan1-4094tagged
Fengine(config-ge1/2)#filter-listin1
Fengine(config-ge1/2)#y1731mep1/6directiondown
Fengine(config-ge1/2)#y1731mep1/6ccenable
Fengine(config-ge1/2)#y1731remote-mepid5mac00:
04:
67:
33:
33:
33mep1/6
Fengine(config-ge1/2)#quit
退出端口1/2的配置
配置G.8032
Fengine(config)#g8032
Fengine(config-g8032)#g8032instance1rpl-owner-node
Fengine(config-g8032)#g8032instance1channel1
Fengine(config-g8032)#g8032instance1vlan2-4094
Fengine(config-g8032)#g8032instance1port1gigaethernet1/1
Fengine(config-g8032)#g8032instance1port2gigaethernet1/2
Fengine(config-g8032)#g8032instance1rplport1
站点2的配置
配置filter规则
Fengine#config
Fengine(config)#filter-list1
Fengine(config-filter1)#filter1macanyanyeth-type0x8902
Fengine(config-filter1)#filter1actioncpu
配置Y.1731
Fengine#config
Fengine(config)#y1731
Fengine(config-y1731)#meg1iccmeg1umcmeg1level6vlan1
端口1/1的配置
Fengine#config
Fengine(config)#interfacegigaethernet1/1
Fengine(config-ge1/1)#joinvlan1-4094tagged
Fengine(config-ge1/1)#filter-listin1
Fengine(config-ge1/1)#y1731mep1/2directiondown
Fengine(config-ge1/1)#y1731mep1/2ccenable
Fengine(config-ge1/1)#y1731remote-mepid1mac00:
04:
67:
11:
11:
11mep1/2
Fengine(config-ge1/1)#quit
退出端口1/1的配置
端口1/2的配置
Fengine#config
Fengine(config)#interfacegigaethernet1/2
Fengine(config-ge1/2)#joinvlan1-4094tagged
Fengine(config-ge1/2)#filter-listin1
Fengine(config-ge1/2)#y1731mep1/3directiondown
Fengine(config-ge1/2)#y1731mep1/3ccenable
Fengine(config-ge1/2)#y1731remote-mepid4mac00:
04:
67:
33:
33:
33mep1/3
Fengine(config-ge1/2)#quit
退出端口1/2的配置
配置G.8032
Fengine(config)g8032
Fengine(config-g8032)#g8032instance1channel1
Fengine(config-g8032)#g8032instance1vlan2-4094
Fengine(config-g8032)#g8032instance1port1gigaethernet1/1
Fengine(config-g8032)#g8032instance1port2gigaethernet1/2
站点3的配置
配置filter规则
Fengine#config
Fengine(config)#filter-list1
Fengine(config-filter1)#filter1macanyanyeth-type0x8902
Fengine(config-filter1)#filter1actioncpu
配置Y.1731
Fengine#config
Fengine(config)#y1731
Fengine(config-y1731)#meg1iccmeg1umcmeg1level6vlan1
端口1/1的配置
Fengine#config
Fengine(config)#interfacegigaethernet1/1
Fengine(config-ge1/1)#joinvlan1-4094tagged
Fengine(config-ge1/1)#filter-listin1
Fengine(config-ge1/1)#y1731mep1/4directiondown
Fengine(config-ge1/1)#y1731mep1/4ccenable
Fengine(config-ge1/1)#y1731remote-mepid3mac00:
04:
67:
22:
22:
22mep1/4
Fengine(config-ge1/1)#quit
退出端口1/1的配置
端口1/2的配置
Fengine#config
Fengine(config)#interfacegigaethernet1/2
Fengine(config-ge1/2)#joinvlan1-4094tagged
Fengine(config-ge1/2)#filter-listin1
Fengine(config-ge1/2)#y1731mep1/5directiondown
Fengine(config-ge1/2)#y1731mep1/5ccenable
Fengine(config-ge1/2)#y1731remote-mepid6mac00:
04:
67:
11:
11:
11mep1/5
Fengine(config-ge1/2)#quit
退出端口1/2的配置
配置G.8032
Fengine(config)g8032
Fengine(config-g8032)#g8032instance1channel1
Fengine(config-g8032)#g8032instance1vlan2-4094
Fengine(config-g8032)#g8032instance1port1gigaethernet1/1
Fengine(config-g8032)#g8032instance1port2gigaethernet1/2
3.2相交环拓扑
组网图
MAC:
S1:
00:
04:
67:
11:
11:
11
S2:
00:
04:
67:
22:
22:
22
S3:
00:
04:
67:
33:
33:
33
S4:
00:
04:
67:
44:
44:
44
配置步骤
站点1的配置
配置filter规则
Fengine#config
Fengine(config)#filter-list1
Fengine(config-filter1)#filter1macanyanyeth-type0x8902
Fengine(config-filter1)#filter1actioncpu
配置Y.1731
Fengine#config
Fengine(config)#y1731
Fengine(config-y1731)#meg1iccmeg1umcmeg1level6vlan1
Fengine(config-y1731)#meg2iccmeg2umcmeg2level6vlan2
Fengine(config-y1731)#meg3iccmeg3umcmeg3level6vlan3
端口1/1的配置
Fengine#config
Fengine(config)#interfacegigaethernet1/1
Fengine(config-ge1/1)#joinvlan1-4094tagged
Fengine(config-ge1/1)#filter-listin1
Fengine(config-ge1/1)#y1731mep1/1directiondown
Fengine(config-ge1/1)#y1731mep1/1ccenable
Fengine(config-ge1/1)#y1731remote-mepid2mac00:
04:
67:
22:
22:
22mep1/1
Fengine(config-ge1/1)#y1731mip3/1
Fengine(config-ge1/1)#quit
退出端口1/1的配置
端口1/2的配置
Fengine#config
Fengine(config)#interfacegigaethernet1/2
Fengine(config-ge1/2)#joinvlan1-4094tagged
Fengine(config-ge1/2)#filter-listin1
Fengine(config-ge1/2)#y1731mep1/6directiondown
Fengine(config-ge1/2)#y1731mep1/6ccenable
Fengine(config-ge1/2)#y1731remote-mepid5mac00:
04:
67:
33:
33:
33mep1/6
Fengine(config-ge1/2)#y1731mip3/2
Fengine(config-ge1/2)#quit
退出端口1/2的配置
端口1/3的配置
Fengine#config
Fengine(config)#interfacegigaethernet1/3
Fengine(config-ge1/3)#joinvlan1-4094tagged
Fengine(config-ge1/3)#filter-listin1
Fengine(config-ge1/3)#y1731mep2/6directiondown
Fengine(config-ge1/3)#y1731mep2/6ccenable
Fengine(config-ge1/3)#y1731remote-mepid5mac00:
04:
67:
44:
44:
44mep2/6
Fengine(config-ge1/3)#y1731mep3/1directionup
Fengine(config-ge1/3)#y1731mep3/1ccenable
Fengine(config-ge1/3)#y1731remote-mepid2mac00:
04:
67:
22:
22:
22mep3/1
Fengine(config-ge1/3)#quit
退出端口1/3的配置
配置G.8032
Fengine(config)#g8032
Fengine(config-g8032)#g8032instance1channel1
Fengine(config-g8032)#g8032instance1vlan2-4094
Fengine(config-g8032)#g8032instance1port1gigaethernet1/1
Fengine(config-g8032)#g8032instance1port2gigaethernet1/2
Fengine(config-g8032)#g8032instance2channel2
Fengine(config-g8032)#g8032instance1vlan1,3-4094
Fengine(config-g8032)#g8032instance2port1gigaethernet1/3
Fengine(config-g8032)#g8032instance2virtual-channel3
站点2的配置
配置filter规则
Fengine#config
Fengine(config)#filter-list1
Fengine(config-filter1)#filter1macanyanyeth-type0x8902
Fengine(config-filter1)#filter1actioncpu
配置Y.1731
Fengine#config
Fengine(config)#y1731
Fengine(config-y1731)#meg1iccmeg1umcmeg1level6vlan1
Fengine(config-y1731)#meg2iccmeg2umcmeg2le