背景技术
目前,为了实现话音网络、数据网络和多媒体网络的统一,以便在一个统一的平台上为用户提供集成的语音、数据和多媒体业务,产生了下一代网络(NGN,Next Generation Network),也即下一代网络是为了提供统一的语音、数据以及多媒体业务。现有的NGN网络正处于商用的前期阶段,它一方面可实现“三网合一”、减少组建单独网络的投资,另一方面,可以利用NGN网络的强大带宽和分组传送的特点,提供丰富而廉价的通信业务,例如:廉价的IP话音、高速率的宽带接入以及丰富的多媒体业务等等。
在NGN网络中媒体网关是一种非常重要的设备。媒体网关将用户的各种物理的媒体流转换为分组的数据包,以便将它们接入到NGN网络中。也即,媒体网关汇聚和接入用户的各种话音流、数据流和多媒体流等,根据媒体网关控制器或软交换设备的指令,进行各种信令的交互。
对于NGN网络的话音业务,媒体网关将用户的话音转换为分组的话音压缩编码数据,然后打包成实时传送包(RTP,Real-time Transport Protocol)后由IP网络承载并传送到对端的媒体网关。在NGN网络中,话音业务的控制功能,即信令一般采用MGCP(Media Gateway Control Protocol,媒体网关控制协议),H.248/Megaco(Media Gateway Control,媒体网关控制)等协议和技术。
在目前采用MGCP或Megaco协议的NGN网络中,都是将媒体网关的物理端口与逻辑端口采用固定的一一对应关系来实现语音链路的建立。即:媒体网关采用端点(MGCP,对应Megaco中的物理终结点)来标记一个语音服务节点,物理上对应于一个Z接口(物理通道,Physical channel),一个端点拥有一个唯一的电话号码,媒体网关的话音物理通道和端点的数目相等且每个端点和物理通道之间存在确定的映射关系。这种映射关系在这个媒体网关注册上媒体网关控制器后不会发生变化。用这种方法可以提供基本的会话业务。
但如果要开展类似传统PSTN(公共交换电话网,Public SwitchingTelephony Network)中的PBX(专用分组交换机,Private Branch Exchange)提供的功能,例如来电转移、遇忙接转和内部呼叫等服务,就非常困难,因为这种业务都需要改变上述的端点和物理通道的对应关系。
发明内容
本发明的目的在于提供一种用于媒体网关的端口动态绑定模块及其动态绑定方法,从而在多端口媒体网关上直接提供来电转移、遇忙接转、内部呼叫等服务。
本发明所提供的一种用于媒体网关的端口动态绑定模块,该媒体网关的信令处理模块包含由媒体网关控制器根据用户需求来分配的若干端点,该媒体网关的语音处理模块包含根据媒体网关的物理规模拥有的若干语音物理通道,其特征在于:在所述的信令处理模块和语音处理模块之间连接一端口动态绑定模块,该端口动态绑定模块用来实现端点与语音物理通道的动态绑定交换;所述的端口动态绑定模块包括端口动态绑定管理器、端点信息库、物理通道信息库和当前拓扑信息库,又:所述的端口动态绑定管理器包括拓扑管理器和与该拓扑管理器分别相连的端点管理器、物理通道管理器;其中:端点管理器,用来管理和维护若干端点,并将维护信息存放于所述端点信息库内;物理通道管理器,用来管理、配置与维护若干物理通道,并将物理通道信息存放于所述物理通道信息库内;拓扑管理器,实现端点与物理通道之间的连接与交换,并将端点与物理通道之间动态绑定的拓扑结构存放于当前拓扑信息库内,该拓扑结构是由用户预先设定。
上述的端口动态绑定模块,其中:信令处理模块的端点的数目小于或等于所述语音处理模块的物理通道的数目。
本发明还提供的一种端口动态绑定模块在话音呼出过程中的动态绑定方法,包括下列步骤:1’)端点和物理通道初始化,即物理通道状态为挂机状态、端点状态为空闲状态、端口处于非绑定状态;2’)判断用户是否摘机:若否,则返回至步骤2’);若是,摘机消息通过物理通道被发送到物理通道管理器,物理通道管理器更新相应的物理通道信息,进入下一步骤3’);3’)物理通道等待用户拨号;4’)判断用户是否在规定的时间内完成拨号:若否,即用户久不拨号或拨号超时,则进入步骤41’); 41’)发出催挂音向用户告警;42’)进一步判断用户是否挂机:若否,继续发出催挂音向用户告警;若是,则恢复所述物理通道状态,返回至步骤2’);若是,即用户在规定的时间内完成拨号,进入步骤5’);5’)物理通道管理器接收并分析所拨号码;6’)进一步判断所拨号码是否为内部号码,即属于同一个媒体网关内的物理通道:若是,则进行内部呼叫的处理,即在内部通话的过程中,进行通话的两个通道的状态均为摘机状态,直到双方会话完毕挂机后状态恢复成挂机状态;若否,则进入下一步骤7’);7’)所述物理通道管理器向所述拓扑管理器发出空闲端点请求,拓扑管理器向端点管理器申请空闲端点;8’)默认绑定端点是否忙:若否,则选取与物理通道默认的关联端点,并下转至步骤11’);若是,则进入下一步骤9’);9’)进一步判断是否存在其它空闲端点:若否,则所有端点均被占用,返回至步骤41’);若是,则存在空闲端点,进入步骤10’);10’)选取一个空闲端点;11’)将该物理通道与选定的端点进行绑定,并分别对端点信息库和当前拓扑信息库进行更新;12’)发出完成绑定的消息,端点管理器向媒体网关的信令处理模块发出消息,进入正常的信令流程。
在上述话音呼出过程动态绑定方法中,步骤11’)中将所述物理通道与选定的端点进行绑定过程中,所选取端点的规则为:先从默认绑定端点的相邻端点开始依次选取,直到出现空闲的端点为止。
本发明还提供的一种端口动态绑定模块在话音呼入过程中的动态绑定方法,包括下列步骤:1”)端点和物理通道初始化,即物理通道状态为挂机状态、端点状态为空闲状态、端口处于非绑定状态:2”)判断是否有来自某个端点的外部呼叫请求:若否,则返回至步骤2”);若是,端点管理器发出物理通道的申请,进入步骤3”);3”)首先申请默认绑定的物理通道;4”)通道管理器判断默认绑定的物理通道是否处于挂机状态:若是,则进入步骤5”);若否,即该通道已经被占用了,进入步骤41”);41”)拓扑管理器判断是否需要进行呼叫等待:若是,则进入步骤411”);411”)拓扑管理器要求通道管理器发出一个消息,以便正在使用该物理通道的用户听到呼叫等待音以提醒该用户有新的电话在打进来,然后等待一固定的时间后再由该通道管理器判断所要的物理通道是否已经挂机,返回至步骤4”);若否,即拓扑管理器判断出不需要呼叫等待,而是遇忙接转,进入步骤412”):412”)拓扑管理器查询是否存在其它处于挂机状态的物理通道:若否,转至步骤41”);若否,则进入步骤413”);413”)判断目前的操作是否在规定的时间内:若否,即在规定的时间内没有获得物理通道,进入步骤4131”);4131”)向所述媒体网关的信令处理模块发出消息,并通知媒体网关控制器当前没有可用的物理通道,向发起本次呼叫的对端通知忙音;若是,则进入步骤4132”);4132”)选取一个处于挂机状态的物理通道,进入步骤5”);5”)通过拓扑管理器将端点和该物理通道绑定起来,在绑定的同时更新相应的绑定状态;6”)发出绑定完毕的消息通知信令模块,接着进入正常的呼叫流程。
在上述话音呼入过程动态绑定方法中,步骤4132”)中选取一个处于挂机状态的物理通道的规则为:先从默认绑定物理通道的相邻通道开始依次选取,直到出现空闲的物理通道为止。
利用本发明提供的端口动态绑定技术,物理通道与端点的对应关系不像已有技术是固定不变的,每个物理通道都有一个默认的端点与之绑定,当物理通道上有呼出请求时,优先采用该物理通道的默认绑定端点与媒体网关控制器(或软交换)进行信令的交互,即优先以默认绑定端点的身份呼出,同样,当某个端点上有呼入时,将优先把呼入接到该端点默认绑定的物理通道,其次也可以进行动态交换端点和物理通道之间的对应关系。通过这种方法,端点与物理通道可以建立临时的话音连接,实现双方的通话。根据呼入时刻物理通道的状态来动态绑定端点与物理通道的对应关系,实现了不同的会话连接,从而在多端口媒体网关上直接提供来电转移、遇忙接转、内部呼叫等服务。
具体实施方式
如图1所示,本发明用于媒体网关的端口动态绑定模块3连接在媒体网关的信令处理模1和语音处理模块2之间。该媒体网关的信令处理模块1包含由媒体网关控制器根据用户需求来分配的若干个用来分别标记各语音服务节点的端点11,该媒体网关的语音处理模块2包含根据其物理规模拥有的若干语音物理通道21,该端口动态绑定模块3是用来实现端点11与语音物理通道21的动态绑定交换。
端口动态绑定模块3包括端口动态绑定管理器31、端点信息库32、物理通道信息库33和当前拓扑信息库34,其中:该端口动态绑定管理器31包括端口管理器311、物理通道管理器312和拓扑管理器313。
与现有技术相比,本发明因在若干端点11与若干物理通道21之间插入了端口动态绑定模块3,从而实现了端点11和物理通道21之间的动态交换连接关系,以实现端口的动态绑定。
端点11被分配后由端点管理器311(Endpoint Manager)来管理和维护,维护信息则存放于端点信息库32中(Endpoint Information Database)。
根据媒体网关的物理规模可拥有一定数目的语音物理通道21(Physicalchannel)。一个语音物理通道21对应一个传统的电话机接口,与一部电话机相连。这些物理通道21由物理通道管理器312(Physical Channel Manager)来进行管理、配置与维护。物理通道信息存放于物理通道信息库33中。
拓扑管理器313(Topology Manager)用于实现端点11与物理通道21之间的连接与交换。端点11与物理通道21之间动态绑定的拓扑结构存放于当前拓扑信息库34中(Current Topology)。拓扑结构可以由用户预先设定,端点11的数目一般小于或等于物理通道21的数目。
每个物理通道21都有一个默认的端点11与之绑定。当物理通道.21上有呼出请求时,优先采用该物理通道21默认的绑定端点11与媒体网关控制器(或软交换)进行信令的交互,即优先以默认绑定端点11的身份呼出。同样,当某个端点11上有呼入时,将优先把呼入接到与该端点11默认绑定的物理通道21。
根据话音的呼出和呼入,整个动态端口的动态绑定可以分解为两个过程。下面分别予以描述。
一、呼出过程
如图2所示,在呼出过程中,物理通道和端点进行动态绑定的流程,包括下列步骤:
1’)将端点和物理通道初始化,即物理通道状态为挂机状态,端点状态为空闲状态,端口处于非绑定状态:
物理通道状态 channel state=on_hook
端点状态 endpoint state=free
绑定状态 binding state=false
2’)判断用户是否摘机:
若否,则返回至步骤2’);
若是,摘机消息通过物理通道被发送到物理通道管理器,物理通道管理器更新相应的物理通道信息,该通道状态channel state=off_hook,进入下一步骤3’)
3’)物理通道等待用户拨号;
4’)判断用户是否在规定的时间内完成拨号:
若否,即用户久不拨号或拨号超时(time_out),则进入步骤41’);
41’)发出催挂音(warning tone)向用户告警;
42’)进一步判断用户是否挂机:若否,继续发出催挂音向用户告警;若是,则恢复所述物理通道状态channel state=off_hook,,返回至步骤2’);
若是,即用户在规定的时间内完成拨号,进入步骤5’)
5’)物理通道管理器接收并分析所拨号码;
6’)进一步判断所拨号码是否为内部号码,即属于同一个媒体网关内的物理通道:
若是,则进行内部呼叫的处理(intemal call process),即在内部通话的过程中,进行通话的两个通道的状态均为摘机状态,直到双方会话完毕挂机后状态恢复成挂机状态;
若否,则进入下一步骤7’);
7’)所述物理通道管理器向所述拓扑管理器发出空闲端点请求,拓扑管理器向端点管理器申请空闲端点;
8’)默认绑定端点是否忙:
若否,则选取与物理通道默认的关联端点,并下转至步骤11’);
若是,则进入下一步骤9’);
9’)进一步判断是否存在其它空闲端点:
若否,则所有端点均被占用,返回至步骤41’);
若是,则存在空闲端点,进入步骤10’);
10’)选取一个空闲端点;
11’)将该物理通道与选定的端点进行绑定,并分别对端点信息库和当前拓扑信息库进行更新:绑定状态Binding state=true,绑定拓扑状态Bindingrelation=Z1 && selected Endpoint,其中:选取端点的规则为:先从默认绑定端点的相邻端点开始依次选取,直到出现空闲的端点为止。
12’)发出完成绑定的消息,端点管理器向媒体网关的信令处理模块发出消息,进入正常的信令流程。
二、呼入过程
如图3所示,在呼入过程中物理通道和端点进行动态绑定的流程,包括下列步骤:
1”)将物理通道和端点初始化,即物理通道状态为挂机状态、端点状态为空闲状态、端口处于非绑定状态:
物理通道状态 channel state=on_hook
端点状态 endpoint state=free
绑定状态 binding state=false
2”)判断是否有来自某个端点的外部呼叫请求:
若否,则返回至步骤2”);
若是,端点管理器发出物理通道的申请(Free channel request),进入步骤3”);
3”)首先申请默认绑定的物理通道;
4”)物理通道管理器(Physical channel manager)判断默认绑定的物理通道是否处于挂机状态:
若是,则进入步骤5”);
若否,即该通道已经被占用了,进入步骤41”);
41”)拓扑管理器判断是否需要进行呼叫等待:
若是,则进入步骤411’);
411”)拓扑管理器要求通道管理器发出一个消息,以便正在使用该物理通道的用户听到呼叫等待音以提醒该用户有新的电话在打进来,然后等待一固定的时间后再由该通道管理器判断所要的物理通道是否已经挂机,返回至步骤4”);
若否,即拓扑管理器判断出不需要呼叫等待,而是遇忙接转,进入步骤412”):
412”)拓扑管理器查询是否存在其它挂机状态的物理通道:若否,转至步骤41”);若否,则进入步骤413”);
413”)判断目前的操作是否在规定的时间内:
若否,即在规定的时间内没有获得物理通道,进入步骤4131”);
4131”)向所述媒体网关的信令处理模块发出消息,并通知媒体网关控制器当前物理通道不可用,向发起本次呼叫的对端通知忙音;
若是,则进入步骤4132”);
4132”)选取一个处于挂机状态的物理通道,选取的规则为:先从默认绑定物理通道的相邻通道开始依次选取,直到出现空闲的物理通道为止,进入步骤5”);
5”)通过拓扑管理器将端点和该物理通道绑定起来,在绑定的同时更新相应的绑定状态:绑定关系Binding Relation=Ingress endpoint && Zi;绑定状态(呼入端点)Binding state=True
6”)发出绑定完毕的消息通知信令模块,接着进入正常的呼叫流程(external call process)。
利用上面所述的方法,可以提供多种原来需要复杂信令或专用分组交换机PBX参与的业务,例如来电接转、遇忙转移、内部呼叫等等。