一种快速检测链路连通性的方法及系统的制作方法

文档序号:7929522阅读:491来源:国知局
专利名称:一种快速检测链路连通性的方法及系统的制作方法
技术领域
本发明涉及网络通信领域,尤其涉及一种快速检测链路连通 性的方法及系统。
背景技术
承载网向全IP化发展的趋势要求IP网络必须解决可靠性问 题,但是在传统IP网络中,故障的4全测和保护响应都是秒级的,无法满足电信级以太网50ms保护倒换的基本要求。切换的前提是能够快速检测到故障,目前 提出的进行直连链路故障检测的协议报文有IETF提出的BFD,基于 IEEE802.3ah的eth-oam等。Eth-oam协议交互过程比较复杂,需要CPU参与, 检测时间在秒级,无法满足50ms切换要求。BFD协议主要用于IP路由保护, 其状态机制也是通过三次握手方式实现的,需要CPU参与,且BFD报文是UDP 报文,需要对端IP地址,在有些情况下是无法提供的。在以太网通信技术领域,可以通过应用服务层链路检测的CFM协议来进行 直链链路连通性快速检测的方法和系统。
发明内容
为了解决上述问题,本发明提出一种快速检测链路连通性的 方法及系统,应用服务层链路检测的CFM协议的CCM报文来进行快速检测直 链链路连通性。本发明公开的一种快速检测链路连通性的系统,包括相互交换CCM报文的 本端系统和对端系统,本端系统进一步包括带存储器的网络处理器和本端CPU, 网络处理器接收来自本端CPU的参数配置,并向本端CPU发送告警信息,包括在所述本端系统和对端系统分别配置link CFM保护,并设置CCM报文的 发送和检测周期;所述本端系统和对端系统在每一个所述发送周期分别定时发送携带自身MAId和Mepld的CCM报文,并同时检测对端发送过来的CCM报文;所述本端系统或者对端系统对所述CCM报文与本地配置的远端MEP属性相比较,属性一致则对端CCM报文计数加1,否则错误报文计数加l;在每一个所述;f企测周期;险查是否有对端CCM报文计数,所述对端CCM报文计数为0说明链路联通断,大于0说明链路联通。本发明公开的一种快速检测链路连通性的系统,还包括如下从属技术特征所述错误报文计数标识对端的CFM配置是否正确。所述远端MEP属性通过CCM报文中的特定字段来识别。所述远端MEP属性包括MD LEVEL, MAID, MEPID,发送周期和RDI位。所述CCM报文中的特定字段是Portld+smac。本发明还公开了 一种快速检测链路连通性的方法,应用服务层链路检测的 CFM协议的CCM报文来进行第一步,在所述本端系统和对端系统分别配置link CFM保护,并i殳置CCM 报文的发送和检测周期;第二步,所述本端系统和对端系统在每一个所述发送周期分别定时发送携 带自身MAId和Mepld的CCM报文,并同时检测对端发送过来的CCM报文;第三步,所述本端系统或者对端系统对所述CCM报文与本地配置的远端 MEP属性相比较,属性一致则对端CCM报文计数力。1,否则错误才艮文计数加1;第四步,在每一个所述检测周期检查是否有对端CCM报文计数,所述对端 CCM报文计数为0说明链路断,大于0说明链路是连通的。本发明公开的这种快速检测链路连通性的方法,还包括如下从属技术特征
所述第三步中的所述错误报文计数标识对端的CFM配置是否正确。所述第三步中所述远端MEP属性通过CCM报文中的特定字段来识别。.所述第三步中的所述远端MEP属性包括MD LEVEL, MAID, MEPID,发送周期和RDI位。
所述CCM报文中的特定字段是Portld+smac。
本发明提出的一种快速检测链路连通性的方法及系统,应用服务层链路检测的CFM协议的CCM报文来进行直链链路连通性快速检测,进行2条直连链路连通性检测,在配置完成后无需CPU参与,由硬件定时纟企测链路状况,通过设置最低的发送周期,在10ms内即可4企测到链路异常情况,为50ms快速切换打下坚实的基础。


图l是本发明的系统构成图。
图2是本发明中的本地mep表示意图。
图3是本发明的检测信息表与远端mep状态表示意图。
图4是本发明的link CCM定时发送流程图。
图5是本发明的link CCM报文接收处理流程图。
图6是本发明的链路状态定时检测流程图。
图7是CCM报文格式。
具体实施方式
下面结合附图和具体实施方式
对本发明做进一步详细说明。
如图1所示是本发明的系统构成框图,本发明的系统包括相互交换CCM报文的本端系统和对端系统,本端系统进一步包括带存储器的网络处理器和本端
6CPU,网络处理器接收来自本端CPU的参数配置,并向本端CPU发送告警信息。如图2所示是本发明中的本地MEP表示意图,本地MEP表包含n个表项,每个表项中的信息如下
1 ) Maid为CFM标准规定,在CCM报文中携带的用于标识MA的字段,该字段在一个md域内唯一。
2 ) Mepid为CFM标准规定,在CCM报文中携带的用于标识MEP的字段,该字段在一个MA内唯一。
3 )Period为CFM标准规定,在CCM报文中携带的用于标识MEP发送CCM报文的周期
4 ) sMAC:本设备/端口的MAC地址
5 ) Portid:标识一个特定端口 。 CCM才艮文发送时从这个端口发送出去。
6 ) Send—enable :发送使能位。
图3是本发明的检测信息表与远端mep状态表示意图,检测信息表中含有n个表项,每个表项中含有Porld、 SMAC、 Check—enable等信息,根据Portid ,Smac hash得到位于对应的远端Mep状态表中的远端mep状态信息,状态表包含下面信息内容。Check—enable是指示是否要进行远端mep的检测,也就是是否需要hash查找。图中
1 )CCM—count表示在检测周期内收到了多少个对端发送过来的CCM报文。2) maid—error:表示在检测周期内收到的CCM报文携带的maid与本地配置的maid不匹配统计。
3 ) mepid—error:表示在检测周期内收到的CCM报文携带的mepid与本地配置的远端mepdi不匹配统计。
4 ) period—error:表示在检测周期内收到的CCM报文携带的period与本地配置的periodi不匹配统计.
5) Rdi—counter:表示在检测周期内收到的CCM报文携带的Rdi字段次数统计。
6 ) check—enable :检测使能位。
图4是本发明的link CCM定时发送流程图,图中
步骤IOI,定时发送周期到,Addr=0。
步骤102,以Addr为键值查找本地mep表,查到且发送使能,则根据本地mep表的信息构造CCM才艮文并发送出去。
步骤103,判断Addr是否为本地mep表最后一个表项,是则结束发送流程,等待下一次定时周期到,否则Addr++,转到步骤102。
图5是本发明的link CCM报文接收处理流程图,进一步的描述如下
步骤201,收到CCM报文,判断是否是link CCM报文(mehO,报文源MAC地址为本地配置的远端mep MAC地址),不是则转到普通的CCM报文处理流程(为了文字简洁,这里不对普通的CCM报文处理流程作具体说明)。是link CCM报文则转到步骤202。
步骤202,以入端口信息Portld和l艮文中的源MAC地址sMAC hash查找远端mep表,查找不到转到步骤205,查到转到步骤203。
步骤203,将报文中的maid, mepld,周期period与远端mep表中保存的配置值进行比较,都一致转到步骤204,不一致则远端mep表中的对应的错误计数Maid—error,MepId—error,Period—error力口 1。若报文中的RDI标志为1,则将Rdi—counter计数加1,转到步骤204。
步骤204, 远端mep表中的CCM报文计数CCM—counter加1 ,转到步骤205。
步骤205,丢弃收到的CCM报文。
图6是本发明的链路状态定时检测流程图,进一步的描述步骤301,定时发送周期到,Addr=0。
步骤302,以Add为键值查找检测信息表,根据检测信息表中的PortID和sMAC查找远端mep状态表,没查到转到步骤303,查到且检测使能,则根据远端mep表的计数信息决定是否需要告警CCM—counter=0则向CPU发送链路down告警信息,Maid—error或Mepid—error或Period—error不为0则向CPU发送
配置错误告警信息。所有计数器清O。
步骤303,如果Add为远端mep表最后一个表项,则结束检测流程,等待下一次定时周期到,否则八(1(^++,转到步骤302。
为了便于理解,图7给出了一种CCM报文的格式。
本发明所采用的技术方案CFM保护对象是通过Md—level, MAId , Mepid三级来进行区分的。对于本专利需要保护的直连链路,设定md level =0, MAId为任意符合标准的名字,但附加保护链路属性(以下称做linkCFM)。其它配置与普通CFM配置一致。
在需要检测的链路两端分别配置link CFM保护,根据需要设置CCM报文的发送和检测周期发送周期和检测周期可以灵活设置,协议规定检测周期为发送周期的3倍。两端分别定时发送携带自身MAId和Mepid的CCM才艮文,同时根据检测周期定时检测对端发送过来的CCM报文。当链路所在端口接收到CCM报文时,与本地配置的远端MEP属性相比较,属性一致则说明收到的报文为所配置的远端MEP发送的CCM报文并计数,否则进行错误报文计数。需要比较
9的属性包括MD LEVEL, MAID, MEPID,发送周期,RDI位。定时才全测时间到时,通过检查是否有对端CCM报文计数来判断链路是否完好,CCM收包计数为0说明链路down,大于0说明链路是up的。同时可以通过错误报文的计数来标识对端的CFM配置是否正确。(步骤302中提到的Maid—error或Mepid—error或Period—error不为0,则向CPU发送配置错误告警信息,Maid—error>0说明收到的CCM报文中至少有一个ccm,报文的MAID字段与本地配置的MAID不一致,也就是说对端设备上配置的MAID与本地设备配置的Maid不一致。MEPID和perioc也类似。)远端Mep的识别通过Portld + MAC来hash查找识别的(Portld为链if各所在的端口号,MAC为CCM才艮文中的源MAC )。
具体实施包括以下几个方面
1. link CFM配置在链路所连接的两个端口上配置link CFM,其中md—level=0。每个端口上分别配置本地mepid和远端mepid,端口 MAC地址,并指定对端端口的MAC地址。两个端口上link CFM的Maid配成同样的值。配置CCM报文发送周期和检测周期。CFM协议标准规定的"R文发送周期可以是3.3ms,10ms, lOOrns, ls, 10s, lmin, 10min,当然也可以自己设定周期。4企测周期一般是发送周期的3倍。
2. CPU将配置属性写入网络处理器中
1 )根据配置建立远端mep状态表,索引键值为Portld+MAC。该表是一个hash表,MAC地址为对端的端口 MAC地址。表的结果包含各种类型的计数值。
2)建立本地mep信息表,该表是一个直接表,表条目数根据本设备最大支持的可保护链路数而定。每个表项中存有完整的需要发送的CCM报文信息,包含配置的md-level,maid,mepid, Vlanid,对端MAC地址,发送周期period等信3)建立检测信息表,该表是一个直接表。每个表项中存有用于索引远端
MEP信息的键值(Portld, MAC)。
3. 网络处理器根据配置的发送周期,周期性发送CCM报文发送周期到,网络处理器遍历本地mep索引表,将存储在表中的CCM报文发送出去。
4. 端口上接收到一个CCM报文时,首先分离出是否是linkCFM报文。方法是察看报文中sMAC字段是否与本设备中配置的远端mep的MAC地址相同以及md一level是否为0。如果两者都符合则是link CFM。再根据净艮文中的入端口号和sMAC来索引本地配置的远端mep状态表。查找不到远端mep就直接将收到的CCM报文丟弃。查找到就比较报文字段与远端mep信息表中存储的属性是否一致,属性字段都一致将CCM报文计数值CCM一count加1,不一致将对应的错误字段计数器加1,如MAID不一致则将Maid—error力口 1。处理完以上信息后将报文丢弃掉。
5. 检测周期到,网络处理器遍历远端mep索引表,并根据索引表中存储的结果查找远端mep信息表,判断远端mep信息表的CCM报文统计值和错误CCM报文值。CCM报文统计值为O则认为链路down,向CPU告警;大于O说明链路是正常的。如果错误的CCM报文统计大于0则可以向CPU告警提示两端配置情况不一致。之后将表中的各种统计值全部清O。
1 ) 《连路层CFM的md level只能配置为0,防止md level交叉情况的
2) 收到链路层CFM报文,如果查找不到对应的配置,将CFM"^艮文出现。直接丟弃,不再转发。
报文字段中的vlan属性不再作为定位某个远端mep的参数,以屏蔽端口的vlan属性变更导致的检测失效,因为检测的链路状况,如链路上承载的具体vlanld已经无关了。
权利要求
1. 一种快速检测链路连通性的系统,包括相互交换CCM报文的本端系统和对端系统,本端系统进一步包括带存储器的网络处理器和本端CPU,网络处理器接收来自本端CPU的参数配置,并向本端CPU发送告警信息,其特征在于在所述本端系统和对端系统分别配置link CFM保护,并设置CCM报文的发送和检测周期;所述本端系统和对端系统在每一个所述发送周期分别定时发送携带自身MAId和MepId的CCM报文,并同时检测对端发送过来的CCM报文;所述本端系统或者对端系统对所述CCM报文与本地配置的远端MEP属性相比较,属性一致则对端CCM报文计数加1,否则错误报文计数加1;在每一个所述检测周期检查是否有对端CCM报文计数,所述对端CCM报文计数为0说明链路联通断,大于0说明链路联通。
2. 根据权利要求1所述的快速检测链路连通性的系统,其特征在于,所述 错误报文计数标识对端的CFM配置是否正确。
3. 根据权利要求2所述的快速检测链路连通性的系统,其特征在于,所述 远端MEP属性通过CCM l艮文中的特定字段来识别。
4. 根据权利要求3所述的快速检测链路联通性的系统,其特征在于,所述 远端MEP属性包括MD LEVEL, MAID, MEPID,发送周期和RDI位。
5. 根据权利要求3所述的快速检测链路联通性的系统,其特征在于,所述 CCM报文中的特定字段是Portld+smac。
6. —种快速检测链路连通性的方法,其特征在于,应用服务层链路检测的 CFM协议的CCM冲艮文来进行第 一步,在所述本端系统和对端系统分别配置link CFM保护,并设置CCM报文的发送和检测周期;第二步,所述本端系统和对端系统在每一个所述发送周期分别定时发送携带自身MAId和Mepld的CCM报文,并同时检测对端发送过来的CCM报文; 第三步,所述本端系统或者对端系统对所述CCM报文与本地配置的远端MEP属性相比较,属性一致则对端CCM报文计数加1,否则错误报文计数加1; 第四步,在每一个所述检测周期检查是否有对端CCM报文计数,所述对端CCM报文计数为0说明链路断,大于0说明链路是连通的。
7. 根据权利要求6所迷的快速检测链路连通性的方法,其特征在于,所述 第三步中的所述错误报文计数标识对端的CFM配置是否正确。
8. 根据权利要求7所述的快速检测链路连通性的系统,其特征在于,所述 第三步中所述远端MEP属性通过CCM报文中的特定字段来识别。
9. 根据权利要求8所述的快速检测链路连通性的系统,其特征在于,所述 第三步中的所述远端MEP属性包括MD LEVEL, MAID, MEPID,发送周期和 RDI位。
10. 根据权利要求8所述的快速检测链路连通性的系统,其特征在于,所 述CCM报文中的特定字段是Portld+smac。
全文摘要
本发明公开一种快速检测链路连通性的方法及系统,包括带存储器的网络处理器和本端CPU,在所述本端系统和对端系统分别配置link CFM保护,并设置CCM报文的发送和检测周期;所述本端系统和对端系统在每一个所述发送周期分别定时发送携带自身MAId和MepId的CCM报文,并同时检测对端发送过来的CCM报文;所述本端系统或者对端系统对所述CCM报文与本地配置的远端MEP属性相比较,属性一致则对端CCM报文计数加1,否则错误报文计数加1;在每一个所述检测周期检查是否有对端CCM报文计数,所述对端CCM报文计数为0说明链路联通断,大于0说明链路联通。本发明无需CPU参与,由硬件定时检测链路状况。
文档编号H04L12/26GK101521603SQ20081024167
公开日2009年9月2日 申请日期2008年12月26日 优先权日2008年12月26日
发明者张胜友 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1