基于网络处理器的以太网OAM设计

2010-05-11 07:29周三友赵增辉
无线电通信技术 2010年2期
关键词:发送给字段解码

周三友,赵增辉

(中国电子科技集团公司第五十四研究所,河北石家庄050081)

0 引言

以太网具有良好的经济性、易用性和互通性,因此得到了广泛的应用,不断地从局域网向城域网和广域网渗透和延伸。同时,以太网也在向传送网领域发展。ITU-T、IEEE和MEF都在制定相应的标准,使得以太网能够支持多种业务的承载,实现分组形式的传送网。

然而,随着以太网的不断发展,对其可靠性和可管理性的要求越来越高。传统的以太网主要在小范围的局域网环境使用,运行、管理和维护功能(OAM)较差,已经越来越不能满足这些新的应用的要求。为了实现电信级的、高可靠的以太网,必须对传统的以太网进行扩展,使其具有完善的OAM功能。

1 以太网OAM标准

对以太网的OAM功能进行定义的标准主要有2个,分别是IEEE在2007年通过的802.1ag连接故障管理(Connectivity Fault Management,CFM)标准和ITU-T在2008年通过的Y.1731基于以太网的网络的OAM功能和机制(OAM functions and mechanisms for Ethernet based networks)。其中IEEE 802.1ag主要规定了连接故障管理的内容,而ITU-T Y.1731在IEEE 802.1ag的基础上对故障管理功能进行了扩展,同时增加了性能管理方面的内容,相对较为复杂。主要依据IEEE 802.1ag进行连接故障管理方面的探讨。

一个端到端的以太网连接可能跨越多个管理区域,包括用户域、业务提供商域、运营商域等等。每个域都要具有自己的OAM功能。以太网OAM从高到低可划分为用户、业务提供商(SP)、运营商3大类管理域。高阶管理域的OAM包,低阶管理域节点不作处理,进行透传。同一管理域内部的OAM包将在管理域边界终结,不会扩展到其他管理域。IEEE 802.1ag通过不同的管理级别来划分不同的管理域,如图1所示。

IEEE 802.1ag定义了3大类OAM包,分别是:

①连续性检测消息(CCM):检测连接丢失或者不正确的网络连接,可以是单播或者组播;②环回消息:校验与一个特定管理组中的另一个管理点之间的连接,环回消息为单播;③链路踪迹消息:验证同一个管理组中远端管理点邻接关系。链路踪迹消息被定义为组播,链路踪迹响应被定义为单播。

图1 管理域的划分

OAM包被封装在标准的以太网帧中,通过一个特定的以太网类型来识别,最大消息长度为128字节。一个典型的OAM包格式如表1所示。

表1 OAM包格式

OAM包中各字段的含义如下:

①管理域级别。5~7:用户域,3~4:业务提供商域,0~2:运营商域;版本,目前为0;②操作码,指示OAM消息类型;标志,取值与特定的操作码有关;首TLV偏移,包含在OAM包中第1个TLV相对于本字段的偏移。该字段与消息类型有关,实际上间接的指出了消息的长度;③消息体,具体的消息内容;④结束TLV,一个类型为0、没有长度和值的TLV,表示一个空的TLV,也意味着整个包的结束。

2 网络处理器

网络处理器(NP)由于具有处理速度快、编程能力强的特点,在目前主要的电信设备制造商中得到了大量的应用。NP-X就是一款某公司生产的功能强大的网络处理器,它具有以下特点:

①单芯片线速全双工10G包处理;②嵌入式流量管理(TM);③单映像在线可编程。

NP-X的模块组成如图2所示,其内部可划分为解码、查找Ⅰ、分析、查找Ⅱ、修改5级流水线。每一级流水线都具有多个独立的微引擎,执行特定的包处理任务。解码级对包进行简单的分类,提取包中不同的字段组成查找键和消息发送给下一级。查找I级根据上一级发来的查找键进行查找,并将查找结果发送给下一级。分析级根据查找结果进行解析处理。如有必要,查找Ⅱ级还可以进行进一步的查找。修改级根据前几级的查找结果对包进行分析,并发送到相应的端口。

图2 NP-X的模块组成

特别是该网络处理器还具有嵌入的OAM模块,可以实现大量连接的CCM包的产生和监测功能。

3 基于网络处理器的以太网OAM设计

IEEE 802.1ag规定的3大类消息中,环回消息和链路踪迹消息一般在需要的时候由管理员发起,收发速率较低,可以由通用处理器处理。CCM消息需要周期性的产生,并且周期较短,可达到ms级。特别是在支持大量连接时,处理负担非常大,普通的处理器是无法完成这一任务的,必须采用网络处理器进行处理。CCM的处理主要包括以下3部分内容:

①CCM包产生:对每个连接定时产生CCM包;②接收CCM包处理:对从线路接口收到的CCM包进行处理;③CCM包监测:监测是否能够在规定的时间间隔内收到CCM包。

3.1 CCM包产生

CCM包的产生过程如图3所示。NP-X的OAM模块具有专用的定时器,定时产生CCM包。为了与从线路接口收到的CCM包相区别,称为保持包。保持包和定时器ID一起被发送给解码。

图3 CCM包的产生

解码的硬件解码器对包进行预处理,能够识别不同的包,并将识别结果存储在硬件寄存器0和硬件寄存器15中。硬件寄存器0的位7~5等于0表示收到的是OAM中断包,即内部产生的包(保持包是其中的一种)。硬件寄存器15的位28~26指示是那一种OAM中断包。定时器ID被存放在输出寄存器12中。解码微码程序提取定时器ID作为查找键值,发送给查找I。

查找I根据定时器ID进行查找,并将查找结果发送给分析。查找结果包括管理域级别、MEPID、MAID等CCM包需要的字段以及输出端口等必要的参数。

分析根据查表结果进行处理。如果查找成功,则通过查找II将查表结果传递给修改。如果查找失败,则可能是由于配置问题产生了错误的CCM包,该包被丢弃。

查找Ⅱ不做任何处理,直接将包传递给修改。

修改根据查表结果,分析保持包的相关内容,并发送到输出端口。

3.2 接收CCM包处理

接收CCM包的处理如图4所示。

图4 接收CCM包的处理

识别到接收包为CCM包后,解码对接收包中的管理域级别和配置的管理域级别进行比较,根据比较结果进行如下不同的处理。

①如果接收包中的管理域级别大于配置的管理域级别,则该包是上层管理域的CCM包,应该像普通的数据包一样进行转发;

②如果接收包中的管理域级别小于配置的管理域级别,则该包是下层管理域的CCM包,不应出现在本管理域中,该包被丢弃;

③如果接收包中的管理域级别等于配置的管理域级别,则提取接收包中的MEPID和MAID作为查找键发送给查找I。

查找I根据MEPID和MAID进行查找,将查找结果发送到下一级。

如果查找I查找成功,则查找结果中包含对应的看门狗定时器ID,分析将复位该定时器。无论查找成功还是失败,该包都会被丢弃。

3.3 CCM包监控

CCM包的监控相对简单。NP-X的OAM模块为每一个连接提供一个专用的OAM看门狗定时器。如果在规定时间内从线路接口收到了本连接的CCM包,则如0节所述,该定时器被复位。

如果在规定时间内没有收到CCM包,则产生一个看门狗定时器事件发送给解码,参数包含定时器ID。解码收到该事件后,向主处理器发送一条消息,由主处理器进行进一步的处理。可能的处理是连接故障告警,或者是进一步的进行保护倒换。

4 结束语

电信级以太网是近年来通信技术研究的热点,而OAM是电信级以太网研究的一个非常重要的方面。利用网络处理器对OAM中CCM消息的处理进行设计,克服了普通处理器处理速度慢、响应不及时的缺点,对电信级以太网的实现进行了积极的探索。

[1]IEEE 802.1ag.Virtual Bridged Local Area Networks-Amendment 5:Connectivity Fault Management[S].2007,12.

[2]ITU-T Y.1730 Requirements for OAM Functions in Ethernet BasedNetworks[S].2004,1.

[3]ITU-T Y.1731 OAM.Functions andMechanisms for Ethernet BasedNetworks[S].2008,1.

[4]李炳彰,黄进华.MPLS网络的OAM功能研究与实现[J].无线电工程,2002,36(3):3-6.

[5]何庭宗.分组传送网操作、管理和维护技术[J].中兴通信技术,2008,14(6):30-32.

猜你喜欢
发送给字段解码
图书馆中文图书编目外包数据质量控制分析
《解码万吨站》
解码eUCP2.0
【微信小课堂】:如何向好友发送语音
NAD C368解码/放大器一体机
Quad(国都)Vena解码/放大器一体机
你说我说大家说
公告
我的录梦机
CNMARC304字段和314字段责任附注方式解析