首页> 中国专利> 一种用网络处理器实现分组控制功能的方法

一种用网络处理器实现分组控制功能的方法

摘要

本发明涉及一种用网络处理器实现分组控制功能的方法,其特征在于,利用网络处理器的并行处理能力,将协议报文、信令报文和数据报文进行分开处理,包括:通过网络处理器中的微引擎承担报文的接收和发送、协议报文和信令报文同数据报文的分离、数据报文的业务处理,以及将业务处理后的数据报文做缓存或转发处理;通过网络处理器中的核心部分或挂接在网络处理器上的子卡承担协议报文和信令报文的处理。本发明解决了现有技术性能低、组网难及产品的成本很高的问题。

著录项

  • 公开/公告号CN1558626A

    专利类型发明专利

  • 公开/公告日2004-12-29

    原文格式PDF

  • 申请/专利权人 中兴通讯股份有限公司;

    申请/专利号CN200410046464.2

  • 发明设计人 郭树波;张修勇;孙国乾;陈艳军;

    申请日2004-06-09

  • 分类号H04L12/56;H04J13/02;

  • 代理机构11006 北京律诚同业知识产权代理有限公司;

  • 代理人梁挥;徐金国

  • 地址 518057 广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦A座6层

  • 入库时间 2023-12-17 15:47:27

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-08-05

    未缴年费专利权终止 IPC(主分类):H04L12/56 授权公告日:20070725 终止日期:20140609 申请日:20040609

    专利权的终止

  • 2007-07-25

    授权

    授权

  • 2005-03-02

    实质审查的生效

    实质审查的生效

  • 2004-12-29

    公开

    公开

说明书

技术领域

本发明涉及无线移动通讯领域,适用码分多址(CDMA)蜂窝移动通讯系统中分组控制功能的实现方法,尤其是采用网络处理器实现分组控制功能的方法。

背景技术

分组控制功能(PCF)是CDMA2000蜂窝移动通讯系统中为支持用户分组数据业务增加的一个功能实体,其在CDMA2000系统中的位置如图1所示。PCF位于基站控制器(BSC)和分组数据服务节点(PDSN)之间,为二者之间的数据转发通道,本身并不处理用户业务,只是为了支持数据业务的Null(空)、Dormant(休眠)和Active(激活)状态转换和数据业务的切换。其中,A9为信令通道,通过A9信令来建立和释放A8连接,而A8为数据通道,PCF通过A8接口向BSC发送数据或者从BSC接收数据。A11为信令通道,通过A11建立和释放A10连接,A10为数据通道,PCF通过A10接口向PDSN发送数据或者从PDSN接收数据。

为了支持数据业务的状态切换,在数据业务状态为Dormant时,PCF需要缓存A10数据,直到业务状态为Active时转发数据或Null时丢弃数据。数据的缓存非常占用CPU资源,现有技术使用通用处理器,数据转发处理和信令处理都由一个CPU来完成,性能非常低,如果使用多个通用处理器负荷分担处理,将增加PCF的数量、组网难度及产品的成本。

发明内容

本发明所要解决的技术问题是克服现有技术性能低、组网难及产品的成本很高的问题,进而提供一种用网络处理器实现分组控制功能的方法。

为达到上述目的,本发明提供了一种用网络处理器实现分组控制功能的方法,其特点在于,利用网络处理器的并行处理能力,将协议报文、信令报文和数据报文进行分开处理,包括:

通过网络处理器中的微引擎承担报文的接收和发送、协议报文和信令报文同数据报文的分离、数据报文的业务处理,以及将业务处理后的数据报文做缓存或转发处理;

通过网络处理器中的核心部分或挂接在网络处理器上的子卡承担协议报文和信令报文的处理。

上述的方法,其特点在于,网络处理器中的微引擎将协议报文和信令报文发送给所述核心部分,所述核心部分承担协议报文和信令报文的处理、表同步、版本下载及微引擎启动。

上述的方法,其特点在于,所述子卡是通过在网络处理器的PCI总线上挂接一个通用处理器CPU来实现,由所述通用处理器CPU完成协议报文和信令报文的处理,由网络处理器的核心部分完成微引擎与核心部分、核心部分与通用处理器CPU之间的通信。

上述的方法,其特点在于,进一步包括如下步骤:

步骤一,微引擎接收并分析报文,分离出协议报文发送给核心部分处理并将异常报文丢弃;

步骤二,微引擎分离出信令报文发送给核心部分处理,并且微引擎对数据报文进行业务处理;

步骤三,微引擎发送数据报文。

上述的方法,其特点在于,所述步骤一进一步包括如下步骤:

步骤A,由核心部分启动微引擎;

步骤B,微引擎的接收模块从基站控制器BSC或分组数据服务节点PDSN接收报文;

步骤C,微引擎进行报文分析,对于异常的报文直接丢弃;

步骤D,判断报文是否为IP协议报文,是则执行步骤F,否则执行步骤E;

步骤E,将协议报文发送给所述核心部分来处理;

步骤F,进行IP头校验,如果IP头校验失败则丢弃该报文,返回步骤B;否则检查IP地址,如果IP地址是组播或广播地址,将该报文发送给核心部分处理,如果是单播地址则执行步骤G;

步骤G,检查IP头中分片标识字段,如果报文为IP分片报文,则对报文进行IP重组后执行步骤二,否则直接执行步骤二。

上述的方法,其特点在于,所述步骤二进一步包括如下步骤:

步骤a,根据报文的目的IP地址和IP头中的协议类型区分出A8数据报文、A9信令报文、A10数据报文和A11信令报文;

步骤b,微引擎对A8数据报文和A10数据报文进行业务处理,并将A9信令报文和A11信令报文发送给核心部分处理;

步骤c,将A8数据报文和A10数据报文发送给微引擎中的微引擎发送模块。

上述的方法,其特点在于,所述步骤b进一步包括判断A10数据报文是否需要缓存的步骤,是则将A10数据报文进行缓存,否则直接执行步骤c。

上述的方法,其特点在于,所述步骤三中进一步包括由所述微引擎发送模块检测是否有报文发送,如果有,则把报文发送给基站控制器BSC或分组数据服务节点PDSN,如果没有则继续检测。

本发明的技术效果在于:

本发明采用网络处理器实现CDMA2000系统中的分组控制功能,可以克服当前采用通用处理器实现PCF时,数据转发处理性能低的技术问题及大容量时要求PCF数量多、产品成本高的经济效益问题。本发明与现有的技术相比,由于IP分片重组由微引擎完成,在小容量时核心部分HOST的处理能力提高了10%左右,在大容量时由于可以在网络处理器的PCI总线上挂接子卡,HOST的处理能力将是采用通用CPU的2倍左右,而微引擎的数据处理转发能力是通用CPU的20倍左右。大容量时成本却比现在多个PCF低50-60%。这样采用本发明实现的PCF,不但数据处理能力提高,而且PCF处理模块单一,对提高CDMA网络整体性能、降低组网难度和成本都非常有益。

附图说明

图1是现有的CDMA2000系统架构示意图;

图2是本发明所用网络处理器的进程模块图;

图3是本发明方法的流程图;

图4本发明方法实施例的处理流程图。

具体实施方式

下面结合附图进一步详细说明本发明的具体实施例。

如图2所示,是本发明所用网络处理器的进程模块图,本发明是利用网络处理器的并行处理能力,将协议处理、信令处理过程和数据报文处理过程分离开来,分别交给网络处理器的两个不同部分:核心部分HOST和微引擎部分处理。其中网络处理器中的核心部分承担协议处理、信令处理、表同步,版本下载及微引擎启动,网络处理器中的微引擎部分承担报文的接收和发送、协议和信令报文同数据报文的分离,同时将协议和信令报文送给HOST中的进程处理,将数据报文做业务处理后做缓存或转发处理。

如果所选用网络处理器的HOST处理能力不高时,可以在网络处理器的PCI总线上挂接一个采用通用处理器实现的子卡,这样大部分协议处理和信令处理由子卡完成,而HOST只完成微引擎与HOST,HOST与通用CPU之间的通信。

如图3所示,是本发明方法的流程图。本发明方法包括:

步骤100,微引擎接收并分析报文,分离出协议报文发送给核心部分处理并将异常报文丢弃;

步骤110,微引擎分离出信令报文发送给核心部分处理,并且微引擎对数据报文进行业务处理;

步骤120,微引擎发送数据报文。

图4本发明方法实施例的处理流程图。本发明在网络处理器上的HOST运行各种进程及微引擎通信任务,完成协议处理、A9/A11信令处理及微引擎与HOST之间的通信。微引擎处理主要由微引擎接收模块,微引擎发送模块,业务处理模块组成,其中业务处理模块包括IP分片重组模块、A8/A10处理模块,缓存模块。微引擎接收模块从BSC/PDSN接收以太网报文,进行以太网头和IP头过滤,丢弃异常报文,对于IP分片报文由IP重组模块进行重组,对于协议报文送给HOST上的协议栈处理。对于其他报文根据虚IP地址区分报文来自BSC或PDSN,然后根据协议类型区分是A8/A10数据报文还是A9/A11信令报文,A8数据报文送A8处理模块处理后由微引擎发送模块转发给PDSN,A10数据报文送A10处理模块处理后根据A8链路状态决定送给缓存模块做缓存处理或由微引擎发送模块转发给BSC,信令报文送HOST上的信令进程处理。

本发明的具体实施流程如下:

开始:PCF系统启动,启动微引擎;

步骤301,微引擎接收模块从BSC或PDSN接收以太网帧;

步骤302,进行以太网帧头过滤,对于以太网帧头异常的报文直接丢弃,回到步骤301;否则在步骤304中检查以太网协议类型,如果以太网协议类型为ARP/RARP,则在步骤303中,通过微引擎通信模块送给HOST中的协议栈进程进行协议处理,然后回到步骤301,如果以太网协议类型为IP报文,则转到步骤305;

步骤305,进行IP头校验,如果IP头校验失败则丢弃该报文,回到步骤301,否则检查IP地址。步骤306中,如果IP地址是组播或广播地址,通过微引擎通信模块送给HOST中协议栈处理,如果是单播地址转到步骤308;

步骤308,检查IP头中分片标识字段,如果为IP分片报文,则送IP重组模块进行IP重组;

步骤309,如果是完整IP报文,根据目的IP地址区分出是A8/A9报文还是A10/A11报文;如果是A8/A9报文,转到步骤311,如果是A10/A11报文转到步骤312;

步骤311,根据IP头中协议类型区分是A8数据报文还是A9信令报文,如果是A8数据报文,送给A8处理模块;如果是A9信令报文,则步骤312通过微引擎通信模块送给HOST中的信令进程处理,然后转到步骤301;

步骤314,A8处理模块根据A8 GRE_KEY查用户连接表,用用户连接表中的A10 GRE_KEY替换A18 GRE_KEY值,同时用用户连接表中的PDSN的IP地址查路由表、ARP表,做IP封装和以太网封装后送给微引擎发送模块(在此过程中,如果查用户连接表,路由表失败则丢弃该报文,如果查ARP表失败则通知HOST中的协议栈进程);

步骤312,根据协议类型区分是A10数据报文还是A11信令报文,如果是A11信令报文,则通过微引擎通信模块送给HOST中的信令进程处理,然后转到步骤301;如果是A10数据报文,送A10处理模块处理;

步骤313中,A10处理模块根据A10 GRE_KEY查用户连接表,用查到的A8 GRE_KEY替换A10的GRE_KEY,同时从用户连接表中获得A8链路建立的标志,检查A8链路是否建立,。

步骤315,如果A8链路建立了,根据用户连接表表项下标索引缓存状态表,检查数据是否需要缓存。如果不需要缓存,取出用户连接表中BSC的IP地址查路由表、ARP表,做IP封装和以太网封装后送给微引擎发送模块;如果需要缓存,则缓存A10数据(在此过程中,如果查路由表失败则丢弃该报文,如果查ARP表失败则通知HOST中的协议栈进程);

步骤315,如果A8链路未建立,则在缓存状态表中标识一个缓存,缓存A10数据,同时通知HOST中信令进程建立A8链路。如果A8建立失败,则信令进程通知微引擎清空缓存的A10数据。

步骤317,缓存检测模块循环检测缓存状态表,检查是否有缓存的A10数据,如果有,则根据A10 GRE_KEY查用户连接表,获得A8建立的标志。

步骤317中,如果A8链路建立了,取出用户连接表中BSC的IP地址查路由表、ARP表,做IP封装和以太网封装后送给微引擎发送模块(在此过程中,如果查路由表失败则丢弃该报文,如果查ARP表失败则通知HOST中的协议栈进程);若A8链路未建立,继续检测。

步骤307中,IP重组模块检查是否有需要重组的报文,如果有,进行IP分片的重组,重组失败则丢弃IP分片报文,重组成功后再转到步骤309。

步骤316中,微引擎发送模块检测是否有报文发送,如果有,则把报文发送给BSC或PDSN,如果没有则继续检测。

以上所述仅为本发明的一个具体实施例,不能以此拘限本发明的实施范围,凡运用本发明说明书及图式内容所作的等效变化和修饰,均包含于本发明的范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号