Upmep报文处理方法与系统的制作方法

文档序号:10572588阅读:322来源:国知局
Up mep报文处理方法与系统的制作方法
【专利摘要】本发明提供一种UP MEP报文处理方法与系统,在交换芯片中对OAM报文进行解析,获取必要的OAM信息,根据必要的OAM信息,识别OAM报文中的快速OAM报文,对快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址,并将快速OAM报文的目的端口地址修改为OAM引擎,根据UP MEP的地址,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。整个过程中,识别OAM报文中的快速OAM报文,对快速OAM报文进行查找表操作,将UP MEP的查找放在包交换的处理过程中,减轻OAM引擎的查找表负担,提高处理速度,实现UP MEP报文高效处理。
【专利说明】
UP MEP报文处理方法与系统
技术领域
[0001 ] 本发明涉及计算机通信技术领域,特别是涉及UP MEP(Maintenance associat1nEnd Point,维护端点)报文处理方法与系统。
【背景技术】
[0002]以太网技术以其良好的经济性、互通性以及易用性等优势得到了普遍应用。运营级以太网成为当前网络技术的重要研究领域,运营级以太网必须提供良好的业务管理、故障检测、性能监视等功能,而这一功能的核心为OAM(Operat1n Administrat1n andMaintenance,操作管理维护)。
[0003]近年来,随着MPLS(Multi_Protocol Label Switch,多协议标签交换)技术的发展成熟,并且广泛应用到传输网领域,PTN技术开始被越来越多的运营商所采用。IETF(Internet Engineering Task Force,互联网工程任务组)在T-MPLS的基础上扩展原有的MPLS技术成为当前的MPLS-TP标准协议族,OAM也成为了MPLS-TP的核心内容。目前比较流行的MPLS-TP OAM有两种:一种是基于ITU-Y1731、针对MPLS重新定义封装成为适应MPLS-TP网络的0ΑΜ,其对等端(peer)发送报文的速率与ITU-Y1731相同;另一种是基于BFD(Bidirect1nal Forwarding Detect 1n,双向转发检测)的扩展来支持业务管理、故障检测、性能监视等功能,其对等端的发送频率比较灵活,可配置为I毫秒为单位的任意值。
[0004]目前使用的交换芯片中,芯片将接收到的OAM报文直接交给OAM引擎进行处理,包括OAM报文解析、MEP查找。其中,OAM报文的解析在很大程度上与交换芯片的基本解析过程一致,因此,存在冗余的现象。另外,OAM引擎需要读写与MEP查找相关的表项,使得报文自身的处理时间比较长,在OAM报文突发流量的场景下需要缓存的报文比较多,需要额外的报文存储空间。

【发明内容】

[0005]基于此,有必要针对一般UP MEP报文处理方法处理效率较低,容易出现冗余的现象,提供一种高效的UP MEP处理接收方法与系统。
[0006]一种UP MEP报文处理方法,包括步骤:
[0007]在交换芯片中对OAM报文进行解析,获取必要的OAM信息;
[0008]根据必要的OAM信息,识别OAM报文中的快速OAM报文;
[0009]对快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址,并将快速OAM报文的目的端口地址修改为OAM引擎;
[0010]根据UPMEP的地址,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。
[0011]一种UP MEP报文处理系统,包括:
[0012]解析模块,用于在交换芯片中对OAM报文进行解析,获取必要的OAM信息;
[0013]识别模块,用于根据必要的OAM信息,识别OAM报文中的快速OAM报文;
[0014]查找表模块,用于对快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址,并将快速OAM报文的目的端口地址修改为OAM引擎;
[0015]操作模块,用于根据UPMEP的地址,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。
[0016]本发明UPMEP报文处理方法与系统,在交换芯片中对OAM报文进行解析,获取必要的OAM信息,根据必要的OAM信息,识别OAM报文中的快速OAM报文,对快速OAM报文进行UPMEP查找表操作,获取UP MEP的地址,并将快速OAM报文的目的端口地址修改为OAM引擎,根据UP MEP的地址,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。整个过程中,识别OAM报文中的快速OAM报文,对快速OAM报文进行查找表操作,将UP MEP的查找放在包交换的处理过程中,减轻OAM引擎的查找表负担,提高处理速度,实现UP MEP报文高效处理。
【附图说明】
[0017]图1为本发明UPMEP报文处理方法第一个实施例的流程示意图;
[0018]图2为本发明UPMEP报文处理方法第二个实施例的流程示意图;
[0019]图3为本发明UPMEP报文处理系统第一个实施例的结构示意图;
[0020]图4为本发明UPMEP报文处理系统第二个实施例的结构示意图。
【具体实施方式】
[0021]如图1所示,一种UP MEP报文处理方法,包括步骤:
[0022]S200:在交换芯片中对OAM报文进行解析,获取必要的OAM信息。
[0023]在交换芯片的Parser(解析)模块中,对OAM报文进行解析,并获取必要的OAM信息,将该信息传给IGP( Ingress Process,入口流程)、EGP(Egress Process,出口流程)模块。具体来说,OAM报文有多种类型,其主要可以包括BFD报文和CCM报文,不同类型的OAM报文其必要的OAM信息不相同。具体来说,当OAM报文为BFD报文时,获取yourDiscriminat1n信息,当OAM报文为CCM报文时,获取mel、megld以及mepld信息。
[0024]S400:根据必要的OAM信息,识别OAM报文中的快速OAM报文。
[0025]IGP模块增加OAM报文类型区分,根据报文类型区分出快速OAM报文和慢速OAM报文。慢速报文在后续处理中送协处理进行相应操作,快速报文增加UP MEP查找表操作。另外,IGP模块读取OAM报文中携带的报文入端口属性,获取是否配置MEP信息,如果配置,则按照S400方式进行处理,否则正常查表获取出端口信息。
[0026]S600:对快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址,并将快速OAM报文的目的端口地址修改为OAM引擎。
[0027]对于快速OAM报文,则使用快速OAM报文中的数据,在交换芯片的MEP配置中进行UPMEP查找表操作,获取到UP MEP的地址,并将快速OAM报文的目的端口地址修改为OAM引擎。另外,EGP模块读取快速OAM报文中携带的出端口属性,判断该端口是否配置MEP。如果配置,则按照S600方式,否则,按照普通报文编辑转发。
[0028]S800:根据UP MEP的地址,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。
[0029]在交换芯片进行处理的快速OAM报文,OAM引擎根据UPMEP的地址,读取相应数据库数据,结合MEP状态进行OAM操作。
[0030]本发明UP MEP报文处理方法,在交换芯片中对OAM报文进行解析,获取必要的OAM信息,根据必要的OAM信息,识别OAM报文中的快速OAM报文,对快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址,并将快速OAM报文的目的端口地址修改为OAM引擎,根据UP MEP的地址,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。整个过程中,识别OAM报文中的快速OAM报文,对快速OAM报文进行查找表操作,将UP MEP的查找放在包交换的处理过程中,减轻OAM引擎的查找表负担,提高处理速度,实现UP MEP报文高效处理。
[0031 ]如图2所示,在其中一个实施例中,步骤S800包括:
[0032]S820:根据UP MEP的地址,编辑快速OAM报文的报文OAM头。
[0033]EGP模块用IGP传递过来的OAM信息,为快速OAM报文编辑OAM报文头。具体来说,OAM报文头信息包括:mepldx与oamOffset等数据。
[0034]S840:根据编辑后的OAM报文头,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。
[0035]编辑后的OAM报文头携带有UPMEP的地址,将编辑后的OAM报文头发送至OAM引擎,OAM引擎根据编辑后的OAM报文头,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。
[0036]如图2所示,在其中一个实施例中,步骤S820之后还包括:
[0037]S832:将编辑后的OAM报文头加装至预设原始报文头,获得编辑后的预设原始报文。
[0038]EGP模块用IGP传递过来的OAM信息,为快速OAM报文编辑OAM头,并组装到预设原始报文头部如。
[0039]S834:将快速OAM报文和编辑后的预设原始报文放入不同队列,通过层次化调度后,分别送入至相应的处理模块或网口。
[0040]Scheduler (调度)模块将普通报文与快速OAM报文放入不同的队列,并通过层次化调度后,送入相应的处理模块或网口。
[0041]在其中一个实施例中,在交换芯片中对OAM报文进行解析,获取必要的OAM信息的步骤包括:
[0042]步骤一:在交换芯片中获取OAM报文,并识别OAM报文类型,OAM报文类型包括BH)报文和CCM报文。
[0043]步骤二:解析OAM报文,当OAM报文为BFD报文时,获取yourDiscriminat1n信息,当OAM报文为CCM报文时,获取mel、megld以及mepld信息。
[0044]步骤三:获取OAM偏移量。
[0045]具体来说,当OAM报文类型为BFD报文时,必要的OAM信息包括yourDiscriminat1n信息和OAM偏移量;当OAM报文类型为CCM报文时,必要的OAM信息包括mel信息、megld信息、mep I d信息以及OAM偏移量。
[0046]在其中一个实施例中,对快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址,并将快速OAM报文的目的端口地址修改为OAM引擎的步骤包括:
[0047]步骤一:识别快速OAM报文类型,快速OAM报文类型包括BH)报文和CCM报文。
[0048]步骤二:当快速OAM报文为BH)报文时,查找关键字mep Index。
[0049]步骤三:当快速OAM报文为CCM报文时,查找关键字destPortGroup与destVlanld。
[0050]步骤四:根据查找到的关键字对快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址。
[0051 ] 步骤五:将快速OAM报文的目的端口地址修改为OAM引擎。
[0052]针对不同类型的快速OAM报文查找不同关键字,并根据查找到的关键字进行UPMEP查找表操作,更符合实际UP MEP报文处理过程,另外还将快速OAM报文的目的端口地址修改为OAM引擎,这样UP MEP报文不再走回环路径,直接送入OAM引擎进行处理,使得UP MEP报文的处理效率大大提升。
[0053]本发明UPMEP报文处理具有以下优点:
[0054]1、EGP中识别判断UP MEP,并进行相应的表项查找,减轻OAM引擎的查表负担。
[0055]2,UP MEP报文不再走回环路径,直接送入OAM引擎进行处理,使得UP MEP报文的处理效率大大提升。
[0056]3、0AM引擎能够专注于OAM相关功能的实现,提高OAM报文的处理效率,并且降低了设计难度,减少内存使用。
[0057]如图3所示,一种UP MEP报文处理系统,包括:
[0058]解析模块200,用于在交换芯片中对OAM报文进行解析,获取必要的OAM信息。
[0059]识别模块400,用于根据必要的OAM信息,识别OAM报文中的快速OAM报文。
[0060]查找表模块600,用于对快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址,并将OAM报文的目的端口地址修改为OAM引擎。
[0061]操作模块800,用于根据UPMEP的地址,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。
[0062]本发明UPMEP报文处理系统,解析模块200在交换芯片中对OAM报文进行解析,获取必要的OAM信息,识别模块400根据必要的OAM信息,识别OAM报文中的快速OAM报文,查找表模块600对快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址,并将快速OAM报文的目的端口地址修改为OAM引擎,操作模块800根据UP MEP的地址,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。整个过程中,识别OAM报文中的快速OAM报文,对快速OAM报文进行查找表操作,将UP MEP的查找放在包交换的处理过程中,减轻OAM引擎的查找表负担,提高处理速度,实现UP MEP报文高效处理。
[0063]如图4所示,在其中一个实施例中,操作模块800包括:
[0064]报文头编辑单元820,用于根据UP MEP的地址,编辑快速OAM报文的OAM报文头。
[0065]操作单元840,用于根据编辑后的OAM报文头,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。
[0066]如图4所示,在其中一个实施例中,操作模块800还包括:
[0067]原始报文编辑单元832,用于将编辑后的OAM报文头加装至预设原始报文头,获得编辑后的预设原始报文。
[0068]层次化单元834,用于将快速OAM报文和编辑后的预设原始报文放入不同队列,通过层次化调度后,分别送入至相应的处理模块或网口。
[0069]在其中一个实施例中,解析模块200包括:
[0070]报文类型识别单元,用于在交换芯片中获取OAM报文,并识别OAM报文类型,OAM报文类型包括BFD报文和CCM报文。
[0071 ] 解析单元,用于解析OAM报文,当OAM报文为BFD报文时,获取yourDiscriminat1n信息,当OAM报文为CCM报文时,获取mel、megld以及m印Id信息。
[0072]OAM偏移量获取单元,用于获取OAM偏移量。
[0073]在其中一个实施例中,查找表模块600包括:
[0074]识别单元,用于识别快速OAM报文类型,快速OAM报文类型包括BH)报文和CCM报文。
[0075]第一关键字查找单元,用于当快速OAM报文为BH)报文时,查找关键字meplndex。
[0076]第二关键字查找单元,用于当快速OAM报文为CCM报文时,查找关键字destPortGroup与destVlanldο
[0077]查找表单元,用于根据查找到的关键字对快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址。
[0078]地址修改单元,用于将快速OAM报文的目的端口地址修改为OAM引擎。
[0079]为了更进一步详细解释本发明UPMEP报文处理方法与系统的技术方案与有益效果下面将采用具体实例进行解释说明。
[0080]当端口上收到OAM报文时,通过RxTdm送到交换芯片内部。在交换芯片的Parser模块中,根据OAM报文可能存在的封装格式,进行报文解析。通过对入端口属性的查询,确认该端口是否需要接收该OAM报文,如果不需要接收,则按照普通报文进行处理。对于入端口没有配置MEP的情况,收到的OAM报文在IGP会根据转发表查到出端口信息。然后,送报文到EGP模块进行相应的处理。在EGP模块增加的UP MEP查找模块,首先根据出端口属性信息,判断该出端口是否配置MEP,如果配置,则表明该MEP为UP MEP,需要进行UP MEP的查找。
[0081 ] UP MEP的查找过程如下:根据IGP中获取的出端口信息,读取出端口属性。查看报文是否是OAM报文,针对OAM报文,判断出端口是否配置了MEP,且报文信息是否符合UP MEP接受要求。如果是需要该出端口需要接收的UP MEP报文,用{destPortGroup,destVlanld}信息组成UP MEP查找关键字,查找UP MEP表项。判断查表返回的MEP索引是否有效,如果有效,修改报文的出端口信息,并将报文放入调度队列并等待调度器调度。
[0082]经过调度器调出的OAM报文会附加上OAM头部,其中包括mepIndex、oamType、oamOff set等信息。将OAM引擎收到的报文进行信息拆分,拆分为inf ο与packet两个部分,并解析出info中的mep Index、oamType、oamOff set等信息。如果报文是BFD,从packet的oamOff set字节开始,进行BFD报文的解析,使用meplndex字段读取相应的MEP表项,对表项的状态机进行更新。如果报文是CCM,从packet的oamOff set字节开始,进行CCM报文的解析,使用m印Index字段读取相应的MEP表项,对表项的状态机进行更新。
[0083]以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
【主权项】
1.一种UP MEP报文处理方法,其特征在于,包括步骤: 在交换芯片中对OAM报文进行解析,获取必要的OAM信息; 根据所述必要的OAM信息,识别所述OAM报文中的快速OAM报文; 对所述快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址,并将所述快速OAM报文的目的端口地址修改为OAM引擎; 根据所述UP MEP的地址,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。2.根据权利要求1所述的UPMEP报文处理方法,其特征在于,所述根据所述UP MEP的地址,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作的步骤包括: 根据所述UP MEP的地址,编辑所述快速OAM报文的OAM报文头; 根据编辑后的所述OAM报文头,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。3.根据权利要求2所述的UPMEP报文处理方法,其特征在于,所述根据所述UP MEP的地址,编辑所述快速OAM报文的OAM头的步骤之后还包括: 将编辑后的所述OAM报文头加装至预设原始报文头,获得编辑后的预设原始报文; 将所述快速OAM报文和所述编辑后的预设原始报文放入不同队列,通过层次化调度后,分别送入至相应的处理模块或网口。4.根据权利要求1所述的UPMEP报文处理方法,其特征在于,所述在交换芯片中对OAM报文进行解析,获取必要的OAM信息的步骤包括: 在交换芯片中获取所述OAM报文,并识别所述OAM报文类型,所述OAM报文类型包括BFD报文和CCM报文; 解析所述OAM报文,当所述OAM报文为BFD报文时,获取yourDiscriminat1n信息,当所述OAM报文为CCM报文时,获取mel、megld以及m印Id信息; 获取OAM偏移量。5.根据权利要求1所述的UPMEP报文处理方法,其特征在于,所述对所述快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址,并将所述快速OAM报文的目的端口地址修改为OAM引擎的步骤包括: 识别所述快速OAM报文类型,所述快速OAM报文类型包括BFD报文和CCM报文; 当所述快速OAM报文为BFD报文时,查找关键字meplndex ; 当所述快速OAM报文为CCM报文时,查找关键字destPortGroup与destVlanld; 根据查找到的关键字对所述快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址; 将所述快速OAM报文的目的端口地址修改为OAM引擎。6.—种UPMEP报文处理系统,其特征在于,包括: 解析模块,用于在交换芯片中对OAM报文进行解析,获取必要的OAM信息; 识别模块,用于根据所述必要的OAM信息,识别所述OAM报文中的快速OAM报文; 查找表模块,用于对所述快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址,并将所述OAM报文的目的端口地址修改为OAM引擎; 操作模块,用于根据所述UP MEP的地址,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。7.根据权利要求6所述的UPMEP报文处理系统,其特征在于,所述操作模块包括: 报文头编辑单元,用于根据所述UP MEP的地址,编辑所述快速OAM报文的OAM报文头; 操作单元,用于根据编辑后的所述OAM报文头,读取预设数据库中相应的数据,并结合MEP状态进行OAM操作。8.根据权利要求7所述的UPMEP报文处理系统,其特征在于,所述操作模块还包括: 原始报文编辑单元,用于将编辑后的所述OAM报文头加装至预设原始报文头,获得编辑后的预设原始报文; 层次化单元,用于将所述快速OAM报文和所述编辑后的预设原始报文放入不同队列,通过层次化调度后,分别送入至相应的处理模块或网口。9.根据权利要求6所述的UPMEP报文处理系统,其特征在于,所述解析模块包括: 报文类型识别单元,用于在交换芯片中获取所述OAM报文,并识别所述OAM报文类型,所述OAM报文类型包括BFD报文和CCM报文; 解析单元,用于解析所述OAM报文,当所述OAM报文为BFD报文时,获取yourDiscriminat1n信息,当所述OAM报文为CCM报文时,获取mel、megld以及mepld信息;OAM偏移量获取单元,用于获取OAM偏移量。10.根据权利要求6所述的UPMEP报文处理系统,其特征在于,所述查找表模块包括: 识别单元,用于识别所述快速OAM报文类型,所述快速OAM报文类型包括BFD报文和CCM报文; 第一关键字查找单元,用于当所述快速OAM报文为BFD报文时,查找关键字meplndex;第二关键字查找单元,用于当所述快速OAM报文为CCM报文时,查找关键字destPortGroup与destVlanld; 查找表单元,用于根据查找到的关键字对所述快速OAM报文进行UP MEP查找表操作,获取UP MEP的地址; 地址修改单元,用于将所述快速OAM报文的目的端口地址修改为OAM引擎。
【文档编号】H04L12/24GK105933231SQ201610470768
【公开日】2016年9月7日
【申请日】2016年6月24日
【发明人】郭敏, 谢海春, 蒋汉柏, 廖北平
【申请人】醴陵恒茂电子科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1