专利名称:一种rtp资源控制分布式处理方法
技术领域:
本发明涉及一种RTP(Real-time Transport Protocol,实时传输协议)资源控制处理方法,特别是涉及一种应用于承载与控制相分离的通信网络中的RTP资源控制分布式处理方法。
背景技术:
下一代网络即NGN(Next Generation Network),是一种可以同时提供话音、数据、多媒体等多种业务的综合性的、全开放的网络体系,如WCDMA/CDMA2000/TD-SCDMA/SOFTSWITCH等。NGN通过采用分层的网络结构、标准的协议接口和基于统一协议的分组网络体系,不但实现了网络的融合,更重要的是实现了业务的融合。
H.248协议被3GPP/3GPP2等组织采用,作为NGN网络承载和控制分离的协议标准,主要用于MGC(Media Gateway Controller,媒体网关控制器)和MGW(Media Gateway,媒体网关)之间的网关控制以及承载建立控制,H.248向各种呼叫协议屏蔽对承载的具体操作,实现承载与控制的分离。分离的目标是使业务真正独立于网络,以灵活有效地实现业务的控制和提供。用户和运营商可以自行配置和定义自己的业务特征,不必关心承载业务的网络形式及终端类型。
IP承载控制协议(IP Bear Control Protocol,IPBCP)能够用于媒体流信源/信宿之间的媒体流特征、端口号和源IP地址的交换,以建立和修改IP承载。IPBCP之间的信息交互可以在呼叫建立期间,也可以在呼叫建立之后。IPBCP使用会话描述符协议对信息进行编码。
RTP资源是指本网关的媒体面IP地址,端口及其可支持的媒体格式。当一个IP连接由控制面建立了以后,媒体数据是由RTP和RTCP(Real-timeTransport Control Protocol,实时传输控制协议)来控制传输。
在具体的IP承载操作时,由网关上的H.248向IPBCP发送承载建立和承载释放命令,IPBCP协议通过呼叫控制提供的隧道与对端的IPBCP协议交互承载控制信息,IPBCP进行隧道消息头处理以及隧道消息的编解码处理。IPBCP所发送的隧道消息需要经过承载隧道控制(BCTP)协议来处理,隧道消息内的文本内容需要经过会话描述符(SDP)协议的处理。
然而,在NGN系统中,MGC处理能力有1000呼叫/秒以上的需求(比如3GPP的MSC-SERVER),简单的单板处理方式由于资源的限制,例如CPU的处理能力的局限,不能满足系统需求的增加,网关的处理能力和呼叫相关,呼叫的数量增加则意味着网关的处理负担也在增加,这就需要整个网关在设计时必须考虑进行多模块处理,RTP资源控制做为媒体网关上控制面的一个重要部分,也需要设计相应的RTP资源控制的分布式处理方法,因此,如何设计一种RTP资源控制处理方法,以便合理利用系统资源,处理平滑升级系统的要求,已经成为业内亟待解决的问题。
发明内容
本发明所要解决的技术问题是提供一种RTP资源控制分布式处理方法,可提供平滑扩充处理能力,以处理大容量网关的需要,解决NGN系统中网关负荷分担的问题。
为了实现上述目的,本发明提供一种RTP资源控制分布式处理方法,用于承载与控制相分离的通信网络中,包括H.248处理模块,IPBCP处理模块以及数据库处理模块,其特征在于所述数据库模块与IPBCP模块采用分布式的处理,一个分布式数据库模块为一个IPBCP处理模块服务,向上为H.248模块屏蔽资源多模块操作,包括如下步骤(1)H.248模块向IPBCP模块发起建链请求;(2)IPBCP模块收到该建链请求后向对应的数据库处理模块发起申请RTP资源的请求;(3)数据库处理模块根据该申请请求进行多模块资源查找;(4)由找到资源的数据库模块向其对应的IPBCP模块发送申请资源应答消息;(5)该IPBCP模块收到该数据库申请RTP资源应答消息后,如果申请资源成功,则为处理该连接而申请数据区;
(6)如果申请数据区成功,则主叫侧向对端IPBCP模块发送建链请求隧道消息,等待对端的隧道消息应答,被叫侧向RTP发送建链命令,等待RTP建立连接的操作应答。
所述步骤(1)中,如果H.248模块使用命令接口向IPBCP模块发起建立连接请求,则被认为是主动建链端;如果H.248模块使用隧道消息接口发起连接请求,则被认为是被动建链端。
所述步骤(2)中,IPBCP模块同时把需要保留的参数全部写入向数据库的请求消息中,在经过所述步骤(3)、步骤(4)后,将资源分配的应答连同该参数一同返回给IPBCP模块。
所述步骤(3)中,所述数据库模块是根据当前RTP资源的使用情况以及分配机制,进行多模块资源查找,当一个模块的资源不足时,向下一个模块申请资源,直到申请到资源。
所述步骤(5)中,收到应答消息后,向发起资源申请的IPBCP模块请求协议数据。
所述步骤(5)中,如果申请资源失败,向H.248模块报告失败消息,根据发起建立消息的类型,如果是主动侧,则向本端的H248模块报告建链失败消息,如果是被动侧,则通过H.248模块向远端的IPBCP报告失败的隧道消息。
所述步骤(6)中,如果申请数据区失败,则根据发起建立消息的类型,如果是主动侧,则向本端的H248模块报告建链失败消息,如果是被动侧,则向远端的IPBCP模块报告失败消息。
本发明依靠网关各处理模块的内部消息交互,来实现RTP资源控制的分布式处理,当一个模块的资源不足时,系统根据设计的资源分配准则向下一个模块申请资源,直到申请到资源,若所有模块都没有可以使用的资源,则向H.248报告申请资源失败,因此合理的利用了系统资源,满足了平滑升级系统的要求,具有处理大容量网关的能力,解决了NGN系统中网关负荷分担的问题,是解决NGN系统中大容量MGW的关键技术。
图1是本发明的网络环境示意图;
图2是RTP和其它协议实体的交互关系;图3是IP承载连接控制状态转换图;图4是本发明RTP资源控制分布式处理方法之原理图;图5是本发明RTP资源控制分布式处理方法之实施例流程图。
具体实施例方式
图1所示为本发明的网络环境示意图,在网关控制器与网关之间有Mc接口,网关中包括有多个H.248模块并对应多个RTP资源控制。
图2是RTP与其它协议实体的关系图。在RTP资源控制同时实现了承载控制隧传协议(BCTP),将IP连接协议划分成SDP编解码和IP承载连接管理两个部分,这种模块划分有利于RTP资源控制模块与H.248增加或者修改其中的命令接口。
大容量分布式网关的处理模块包括H.248处理模块、RTP资源控制模块、数据库模块,三个模块共同来完成网关上控制面上的协议功能。本发明中的RTP资源控制模块就是结合IPBCP协议来实现对数据库中RTP资源的管理功能,以建立或者删除对应的IP承载链路,实现承载控制的功能,这里的IP承载链路的操作是对一个虚链路的操作,对应于打开或者关闭一个IP端口。
在媒体网关之间的承载是IP承载时,H.248处理模块需要通过RTP资源控制模块对RTP资源进行操作,此时,RTP资源控制模块和数据库模块协同,向上为H.248屏蔽RTP资源多模块的操作。涉及到RTP资源控制模块与H.248的操作接口可能由命令接口发起,也可能由H.248透传的隧道信息来发起。
图3是IP承载连接控制状态转换图。根据实际控制RTP资源的需要,将IP承载连接从逻辑上划分成5个状态初始态,IP承载的初始状态;出建立状态,接受H.248建立IP连接请求的状态;入建立状态,接受对端隧道消息,请求建立IP连接状态;建立态,成功建立IP连接的状态;释放态,收到释放请求,等待RTP操作模块确认的状态。
图4是本发明RTP资源控制分布式处理方法之原理图。在图中为了表示方便,使用了IPBCP来表示RTP资源控制模块,DB对应一个数据库处理模块,H.248用来指示对应的H.248处理模块。在图中,一个虚框对应一个网关分布式处理单元,包含了H.248处理模块,IPBCP处理模块,分布式数据库处理模块,一个分布式数据库模块管理一部分资源,为一个IPBCP服务。当H.248向IPBCP发起建链请求时(步骤1),若H.248使用命令接口向IPBCP发起建立连接请求,则被认为是主动建链端;若H.248使用隧道消息接口,则被认为是被动建链端。此时IPBCP向对应的数据库处理模块发起申请RTP资源模块的请求(步骤2),并且把需要保留的参数全部写入向数据库的请求消息,此时IPBCP不建立数据区。数据库进行资源查找,最后把资源分配的应答连同IPBCP捎带的参数一同返回给IPBCP(步骤3,4),IPBCP此时建立数据区对数据库的应答进行处理(步骤5)。这一方法适合H.248发起建立连接的参数的种类和个数变化不是很大,若参数变化很大,也会导致IPBCP与数据库的接口变化也很大,影响系统稳定。此时做为本方法的扩充,则IPBCP在向数据库发起资源申请的请求时不向数据库捎带相关协议数据,这样就保留了数据库和IPBCP之间的接口统一,IPBCP在收到数据库的应答以后,向发起资源申请的模块请求协议数据(步骤6,7),在获得相应的协议数据以后,向H.248发送建立连接的应答。
图5是本发明RTP资源控制分布式处理方法之实施例流程图。在这个实施例流程中,采用了比较简单的流程方式,即没有向IPBCP发起模块请求任何协议数据,而是由数据库捎带完成。IPBCP收到H248的建立IP连接命令或者隧传建立IP连接命令后,向本模块数据库进程发送申请RTP资源请求消息。数据库系统根据当前RTP资源的使用情况以及分配机制,进行多模块资源查找,最终由找到资源的模块向其对应的IPBCP模块发送申请资源应答消息。IPBCP收到数据库申请RTP资源应答以后,首先判断是否申请成功,若申请失败,向H.248报告失败消息,根据发起建立消息的类型,向本端的H248包括建链失败消息,或者通过H.248向远端的IPBCP报告失败的隧道消息。若申请成功,则为处理该连接申请数据区,若申请数据区失败,则向本端的H248包括建链失败消息或者向远端的IPBCP报告失败消息。若申请数据区成功,则主叫侧,向对端IPBCP发送建链请求隧道消息,连接状态进入到出建立状态,等待对端的隧道消息应答;被叫侧,向RTP发送建链命令,等待RTP建立连接的操作应答。
权利要求
1.一种RTP资源控制分布式处理方法,用于承载与控制相分离的通信网络中,包括H.248处理模块,IPBCP处理模块以及数据库处理模块,其特征在于所述数据库模块与IPBCP模块采用分布式的处理,一个分布式数据库模块为一个IPBCP处理模块服务,向上为H.248模块屏蔽资源多模块操作,包括如下步骤(1)H.248模块向IPBCP模块发起建链请求;(2)IPBCP模块收到该建链请求后向对应的数据库处理模块发起申请RTP资源的请求;(3)数据库处理模块根据该申请请求进行多模块资源查找;(4)由找到资源的数据库模块向其对应的IPBCP模块发送申请资源应答消息;(5)该IPBCP模块收到该数据库申请RTP资源应答消息后,如果申请资源成功,则为处理该连接而申请数据区;(6)如果申请数据区成功,则主叫侧向对端IPBCP模块发送建链请求隧道消息,等待对端的隧道消息应答,被叫侧向RTP发送建链命令,等待RTP建立连接的操作应答。
2.如权利要求1所述的方法,其特征在于所述步骤(1),如果H.248模块使用命令接口向IPBCP模块发起建立连接请求,则被认为是主动建链端;如果H.248模块使用隧道消息接口发起连接请求,则被认为是被动建链端。
3.如权利要求1所述的方法,其特征在于所述步骤(2),IPBCP模块同时把需要保留的参数全部写入向数据库的请求消息中,在经过所述步骤(3)、步骤(4)后,将资源分配的应答连同该参数一同返回给IPBCP模块。
4.如权利要求1所述的方法,其特征在于所述步骤(3),所述数据库模块是根据当前RTP资源的使用情况以及分配机制,进行多模块资源查找,当一个模块的资源不足时,向下一个模块申请资源,直到申请到资源。
5.如权利要求1所述的方法,其特征在于所述步骤(5)中收到应答消息后,向发起资源申请的IPBCP模块请求协议数据。
6.如权利要求1所述的方法,其特征在于所述步骤(5)中,如果申请资源失败,向H.248模块报告失败消息,根据发起建立消息的类型,如果是主动侧,则向本端的H248模块报告建链失败消息,如果是被动侧,则通过H.248模块向远端的IPBCP报告失败的隧道消息。
7.如权利要求1所述的方法,其特征在于所述步骤(6)中,如果申请数据区失败,则根据发起建立消息的类型,如果是主动侧,则向本端的H248模块报告建链失败消息,如果是被动侧,则向远端的IPBCP模块报告失败消息。
8.如权利要求1所述的方法,其特征在于所述承载为IP承载,其连接从逻辑上划分为5个状态初始态,IP承载的初始状态;出连接状态,接受H.248建立IP连接请求的状态;入连接状态,接受对端隧道消息,请求建立IP连接状态;建立态,成功建立IP连接的状态;释放态,收到释放请求,等待RTP操作模块确认的状态。
全文摘要
本发明公开了一种承载与控制相分离的RTP资源控制分布式处理方法,首先由H.248向IPBCP发起建链请求,接着IPBCP收到该建链请求后向对应的数据库处理模块发起申请RTP资源的请求,数据库处理模块根据该申请请求进行多模块资源查找,由找到资源的数据库模块向其对应的IPBCP模块发送申请资源应答消息,IPBCP模块收到该数据库申请RTP资源应答消息后,如果申请资源成功,则为处理该连接而申请数据区,如果申请数据区成功,则主叫侧向对端IPBCP模块发送建链请求隧道消息,等待对端的隧道消息应答,被叫侧向RTP发送建链命令,等待RTP建立连接的操作应答,本发明合理的利用了系统资源,满足了平滑升级系统的要求,具有处理大容量网关的能力,解决了NGN系统中网关负荷分担的问题。
文档编号H04L12/66GK1545290SQ200310113480
公开日2004年11月10日 申请日期2003年11月12日 优先权日2003年11月12日
发明者周自春, 宁冬子, 秦长鹏, 李鹏 申请人:中兴通讯股份有限公司