专利名称:实时监听控制业务的实现方法
技术领域:
本发明涉及一种实时监听控制业务的实现方法,尤其是涉及一种通过电路域网关内部接续进行监听业务的实现方法。
背景技术:
在无线第三代通信网络(WCDMA,CDMA2000,TD-SCDMA)和下一代网络(NGN)的核心网电路域中,都采用了承载与控制分离的思想和组网方式。其主要网元为媒体网关(MGW)和网关控制器(MGC)。媒体网关提供媒体流的控制功能,主要为承载的建立与维护,接续控制,语音编码处理和转换等等。网关控制器提供呼叫控制和移动性管理等功能,主要包括呼叫控制流程、用户鉴权、计费等。实时监听业务是警察机关监控和侦察的重要手段,因此成为各国政府和电信运营商所要求的必须的通信网络功能。监听业务的主要目的就是建立被监听者到监听者的单向关系。监听者可以接收到被监听者的发送和/或接收媒体流。
在承载和控制分离的网络架构和H.248/Megaco协议的基础上实现监听业务,目前主要有两种思路一、网关外手段实现方式这种方式的主要思路是将监听者视为网关以外的实体,不作为呼叫中的一方。监听者不以终端的形式出现在监听对象所在的上下文中,游离于其外(如图1)。网关控制器通过包(Package)或者其他方式在被监听者的终端上设置属性,使得网关知道应该将此终端的相关媒体流复制发送到哪个监听者去。一般来说,这些属性主要包括监听者的IP地址和端口号、需要接收被监听者哪个方向的媒体流。
这种方式的主要缺陷是监听者实际上为一个独立的网元实体,需要网关和网关控制器以外的设备加以支持。这增加了网络的复杂度和成本。
不利于实现被监听者与监听者之间一对多的监听业务。因为这种方法在实现时需要对被监听者重复设置监听者属性。被监听者被多少个监听者监听,就需要在其上设置多少次属性,流程繁琐不易维护。
二、网关内部接续实现方式这种方式的主要思路是监听者与被监听者都以终端的形式出现在网关上。监听接续在网关内部实现。目前,此方式主要有两种实现方法2.1监听者与被监听者分处不同的上下文中。
这种方法是将监听者终端和被监听者终端放在同一个网关上,且专门为监听者设立一个上下文(如图2)。这个上下文中只含有监听者终端。此方法通过系统配置确定监听关系,将被监听者的输入流和/或输出流直接接到监听终端上,从而实现监听业务。
这种方法的主要缺陷是这种方法要求终端之间的流可以跨上下文。这实际上是要求建立不同上下文终端间的关系。这目前无法用协议标准的拓扑结构进行描述,而且也与H.248/Megaco协议的基本精神和流的含义相背离。如果实现这种方法,就需要进行特殊处理。这会破坏网关控制的一致性,也为系统稳定性带来潜在危害。
2.2监听者与被监听者处于相同的上下文中。
这种方法将监听者终端和被监听者终端放在同一个上下文中,通过某种手段描述监听者与被监听者之间的关系。描述关系的手段目前主要有两种。一种是通过标准的拓扑来指定,一种是通过在监听者终端上设置属性,直接指明其监听对象为哪个终端。这两种手段的主要缺点为通过拓扑来描述监听者与被监听者之间的关系,在上下文终端比较多的时候,会导致拓扑关系非常复杂,难于控制。
通过拓扑来描述监听者与被监听者之间的关系,在某些情况下实际上无法确定他们之间的关系。这使得一些操作(如放音)的监听接续控制无法进行。例如T1与T2进行双方通话,监听终端P对其中一方的接收和发送方向同时进行监听。但是无论P对哪一方实施这样的监听,使用拓扑来描述的结果都是一样的(如图3)。此时,对监听终端P来说,单从拓扑结构上无法判断自己的监听对象。
通过在监听者终端上设置直接指明监听对象的属性来描述监听关系,一个监听者的监听对象只能为一个终端。因此,目前已公布的此类型专利均无法实现一个监听者同时监听多个监听对象的业务。
通过在监听者终端上设置直接指明监听对象的属性来描述监听关系,要求监听者终端必须在其监听对象已存在于上下文中后才能进行设置,这在一定程度上限制了业务的灵活性。
发明内容
本发明要解决的技术问题是提供一种电路域网关上实时监听控制业务的实现方法,以解决现有技术中监听关系建立复杂,不能灵活设置的技术问题。
为解决上述技术问题,本发明提供的实时监听控制业务的实现方法包括以下步骤(a)设定上下文中终端的监听属性并通知网关,在监听属性中指定终端类型为监听终端、被监听终端或一般终端,并为被监听终端设置归属的监听组,为监听终端设置要监听的监听组和媒体流方向;(b)网关收到该通知后,根据所述监听属性对相应终端进行设置;(c)完成设置后,网关搜索该上下文中的所有监听终端和被监听终端,并根据各监听终端设置的媒体流方向复制归属于其要监听的监听组的被监听终端的媒体流到各监听终端,实现监听控制。
进一步地,为监听终端所设置的要监听的监听组可以含有一个、多个或没有被监听终端。
进一步地,一个被监听终端可以同时归属于多个不同的监听组,同一监听组中包含的所有被监听终端与监听此组的监听终端具有一致的监听关系,监听组的作用范围为上下文,每个监听组有一个唯一的标识,不同的上下文具有相同标识的监听组视为不同。
进一步地,步骤(b)中,若预设置一终端类型为监听终端,且经判断其原为监听终端,则停止基于原有监听关系的媒体流复制,然后将新的监听属性记录下来。
进一步地,步骤(b)中,若预设置一终端类型为监听终端,且经判断其原不是监听终端,则断开该终端上根据拓扑关系与其他终端进行的接续,对终端类型进行再判断,若该终端类型为一般终端,则记录终端的新监听属性;若该终端类型为被监听终端,则停止到监听它的监听终端上的媒体流复制后,再记录终端的新监听属性。
进一步地,步骤(b)中,若预设置一终端类型为被监听终端,且经判断该终端已经是被监听终端,则停止此终端到所有监听终端上的媒体流复制后,修改该终端的归属监听组。
进一步地,步骤(b)中,若预设置一终端类型为被监听终端,且经判断该终端不是被监听终端,对终端类型进行再判断,若该终端类型为一般类型,则记录该终端的监听属性;若该终端类型为监听终端,则停止所有到其上的媒体流复制,并根据拓扑关系与其他终端恢复接续,再记录该终端的监听属性。
进一步地,步骤(b)中,若预设置一终端类型为一般终端,且经判断该终端类型原为被监听终端,则停止其到监听终端的媒体流复制并设置终端类型为一般终端;若经判断该终端类型原为监听终端,则停止到其上的媒体流复制,然后根据拓扑结构恢复到其他终端的拓扑接续,最后,设置终端类型为一般终端。
进一步地,步骤(a)是通过网关控制器向网关下发指令完成的。
进一步地,步骤(a)中,网关控制器向网关下发的指令是增加、移动终端或修改终端监听属性的指令。
相对于现有技术,本发明通过网关内部接续实现监听业务,不需增加网元;通过定义终端类型、归属监听组、监听对象及监听者与被监听者之间的媒体流关系等属性,可支持监听者和被监听者之间一对一、一对多、多对一、多对多等的监听关系,允许监听者比被监听者早出现于上下文中,可支持一个终端在监听者、被监听者和一般终端之间进行角色切换,使监听业务的设置更加灵活。
图1为现有技术网关外手段实现监听方式的示意图。
图2为现有技术网关内接续实现监听方式的示意图,其中监听者与被监听者分处不同的上下文中。
图3为现有技术网关内接续实现监听方式的示意图,其中使用拓扑描述监听关系示例。
图4为本发明实施例设置终端为监听终端的处理流程示意图。
图5为本发明实施例设置终端为被监听终端的处理流程示意图。
图6为本发明实施例设置终端为一般终端的处理流程示意图。
图7为本发明监听业务建立示例一的过程示意图,其中被监听者先于监听者出现。
图8为本发明监听业务建立示例二的过程示意图,其中监听者先于被监听者出现。
图9为本发明监听业务变换示例一的过程示意图,其中一般终端变换为被监听者或监听者。
图10为本发明监听业务变换示例二的过程示意图,其中监听者监听属性变换。
注以上图1-图3以及图7-图10中,圆圈代表上下文中的终端,以T1、T2、T3和P进行标记。
具体实施例方式
本发明是一种电路域网关上实时监听业务控制的实现方法,其中监听者以终端的形式出现在网关上,监听终端与被监听终端放在同一上下文中,在给终端建立或修改时设置监听属性并进行监听组的划分,监听组同时作为监听者的监听对象,同一监听组中包含的所有被监听终端与监听此组的监听终端具有一致的监听关系。监听组的作用范围为上下文,每个监听组有一个唯一的标识,不同的上下文具有相同标识的监听组视为不同。
为实现本发明方法,需要在终端上动态地设置属性确定监听关系,并根据监听关系将被监听者相应的媒体流复制到监听终端上,从而实现监听业务。
本发明实施例以H.248/Megaco协议为基础实现监听业务,H.248/Megaco协议联系网关控制器和媒体网关,它通过定义终端(Termination)及其属性、上下文(Context)及其属性、上下文中终端的拓扑关系等描述呼叫,是目前主流的媒体网关控制协议。
本发明也可适用于MGCP协议。
在终端设置监听属性的方式有很多种,本发明实施例使用网关控制器下发指令的方式进行设置。还可通过使用网关的后台管理工具进行人工设置等其他手段来设置监听属性。当一个实际业务开始时,一般由网关控制器根据对各终端的静态配置来发包设置该上下文中各终端的属性,也可以由管理人员来实时设置。
网关控制器通过与网关的接口向网关下发H.248/Megaco指令对其进行控制。为通过这种手段向网关下发终端监听属性,需要定义一个包(包的概念和定义可参考H.248/Megaco协议)。这个包定义了一些终端的属性和过程。这些属性包括终端类型(role)包括监听终端(interceptor)、被监听终端(interceptee)及一般终端(common)。
归属监听组(iid)本属性只对被监听终端有效,其为一个监听组ID的集合,使用列表表示。一个被监听终端可以同时归属于多个不同的监听组。
监听对象(dest)本属性只对监听终端有效,其为一个监听组ID的集合,使用列表表示。监听对象中的监听组可以含有一个、多个或没有被监听终端。
媒体流方向(dir)本属性只对监听终端有效,用于定义应该将被监听终端的哪个方向的媒体流复制到本监听终端,方向可为发送(send),接收(receive)和混合(combine)。对一个监听终端,其监听对象中的所有监听组所包含的被监听终端都需要根据该监听终端的媒体流方向属性将响应的媒体流复制到这个监听终端上。
媒体流的复制只可以在同一上下文中进行,即媒体流的复制不可跨上下文进行。
这个包还定义了如何使用这个包设置终端的监听业务属性的过程以及其后续操作。
使用ITU-T H.248.1的规范格式定义此包如下Package NameLawful Interception Package(合法监听包)PackageIDLI(0x9001)Description本包定义了终端监听相关的属性,包括终端类型、归属监听组、监听对象、监听者与被监听者之间的媒体流关系,由此可确定监听终端与被监听终端之间的关系。
Version1ExtendsNone1.Properties1.1Property NamePropertyIDrole(0x0001)Description本属性定义了终端类型,包括监听终端(interceptor)、被监听终端(interceptee)及一般终端(common)。
TypeEnumerationPossible values″interceptor″(0x0001)″interceptee″(0x0002)″common″(0x0003)
Defined inLocal Control DescriptorCharacteristicsRead/Write1.2Property NamePropertyIDiid(0x0002)Description本属性定义了归属监听组属性,只对被监听终端有效,是一个监听组ID的集合,使用列表表示。
TypeSub-list of integerPossible valuesAny positive integersDefined inLocal Control DescriptorCharacteristicsRead/Write1.3Property NamePropertyIDdest(0x0003)Description本属性定义了监听对象属性,只对监听终端有效,是一个监听组ID的集合,使用列表表示,一个监听终端的监听对象中的监听组可以含有一个、多个或没有被监听终端。
TypeSub-list of integerPossible valuesAny positive integersDefined inLocal Control DescriptorCharacteristicsRead/Write1.4Property NamePropertyIDdir(0x0004)Description本属性定义了媒体流方向属性,用于定义应复制到本监听终端上的作为其监听对象监听组中的所有被监听终端的媒体流的方向,方向可为发送(send)、接收(receive)和混合(combine)。本属性只对监听终端有效。
TypeEnumerationPossible values″send″(0x0001)″receive″(0x0002)″combine″(0x0003)Defined inLocal Control DescriptorCharacteristicsRead/Write2.Events无3.Signals无4.Statistics无5.Procedures网关控制器可以在增加(Add)、移动(Move)或修改(Modify)命令中使用本包来设置终端的监听属性。网关控制器通过把一个终端的role属性置为interceptee来将其设置为被监听终端,同时应该在同一个local controldescriptor中设置其iid属性。网关控制器通过把一个终端的role属性置为interceptor来将其设置为监听终端,同时应该在同一个local control descriptor中设置其dir属性。其dest属性可以与以上二属性在同一个local controldescriptor中设置,也可以在后续需要时进行设置。dest属性中的监听组可以是一个空组,即当前上下文中没有任何一个被监听终端归属于此监听组。
应该将被监听终端的发送媒体流复制到监听自己的且dir属性为send的监听终端上。将被监听终端的接收媒体流复制到监听自己的且dir属性为receive的监听终端上。将被监听终端的发送媒体流和接收媒体流都复制到监听自己的且dir属性为combine的监听终端上。
一个终端被设置为监听终端后,则在接续时不考虑与其相关的所有拓扑,即关于它的拓扑将被视为无效,但是并不被删除,该终端将被视为一个孤立的终端。如果终端被置回被监听终端或者一般终端,则仍需按照这些拓扑进行接续。
请参考图4至图6,网关接收到网关控制器使用上述包的控制指令后,则根据指令所设定的终端类型和相应属性进行操作。
如图4所示,设置一个终端属性为监听终端并实现实时监听业务的方法包括以下步骤首先判断此终端的属性是否已经是监听终端(步骤401);如果此终端已为监听终端,则说明此次设置是更改这个监听终端的监听属性,即修改其监听对象和/或媒体流方向,此时应首先停止基于原有监听关系的媒体流复制(步骤403);然后将新的监听属性记录下来(步骤406);最后根据监听对象属性中的监听组ID搜索同一上下文中的所有归属该监听组,即需要被其监听的被监听终端,并根据媒体流方向属性复制被监听终端的媒体流到本监听终端(408);如果此终端原先不是监听终端,即为一般终端或者被监听终端。则首先断开此终端上根据拓扑关系与其他终端进行的接续(步骤402);然后判断此终端目前是否为被监听终端(步骤405);如果不是,即为一般终端,此时只要记录终端的新监听属性即可(步骤407),此终端即变为监听终端;如果此终端判断为原先是被监听终端,则先要停止到监听它的监听终端上的媒体流复制(步骤404);然后记录终端的新监听属性(步骤407);无论此终端原先是否为被监听终端,在记录了终端的新监听属性后,最后都要根据监听对象属性搜索同上下文中的所有需要被其监听的被监听终端,并根据媒体流方向属性复制被监听终端的媒体流到本监听终端(步骤408)。
如图5所示,设置一个终端属性为被监听终端并实现实时监听业务的方法包括以下步骤
首先判断此终端是否已经是被监听终端(步骤501);如果此终端已经是被监听终端,则说明此次操作是变更其归属监听组,首先应停止此终端到所有监听终端上的媒体流复制(步骤505);然后修改其监听属性,即修改其归属监听组(步骤506);最后,搜索同上下文中所有监听此终端的监听终端,并根据相应的媒体流方向复制此终端的媒体流到上述各监听终端上(步骤508);如果此终端不是被监听终端,则判断其是否为监听终端(步骤504);如果此终端不是监听终端,即为一般终端,此时只要记录终端的监听属性,将其置为被监听终端即可(步骤507);如果此终端原先为监听终端,则首先需要停止所有到其上的媒体流复制(步骤502);并根据拓扑关系与其他终端恢复接续(步骤503);然后记录终端的监听属性,将其置为被监听终端(步骤507);最后,无论此终端原先是何种终端,都要根据归属监听组ID搜索同一上下文中所有监听此监听组的监听终端,并根据相应的媒体流方向复制此终端的媒体流到上述各监听终端上(步骤508)。
如图6所示,设置一个终端属性为一般终端并实现实时监听业务的方法包括以下步骤首先判断此终端是否为一般终端(步骤601),如果是,则不需要任何操作;如果此终端不是一般终端,则根据其终端类型作不同的处理(602),如果此终端原先为被监听终端,则说明不需要再对其进行监听,只要停止其到监听终端的媒体流复制(步骤603)并设置终端类型为一般终端(步骤606)即可;如果此终端原先为监听终端,首先要停止到其上的媒体流复制(步骤604),然后还要根据拓扑结构恢复到其他终端的拓扑接续(步骤605),即恢复为一般终端的接续状况;最后,设置终端类型为一般终端(步骤606)。
以上仅为设置终端属性的一种方法,实际上还可以有很多种不同的方法。如管理人员可以通过网关的后台管理工具,直接对一个终端进行监听属性的设置。另一种方法是在网关数据库中对网关的对外连接进行监听属性的固定配置。如某条E1或者T1接入为专用的警用监听线路。则可配置这条线路上的每个时隙为固定的监听某一监听组的监听着。当这条电路上的时隙对应的终端被加入上下文时,网关可以先查询数据库,得到它的监听属性并加以设置。
图7至图10为在相同的上下文中,不同情况下监听业务建立或变换的过程示意图,图中实线为拓扑结构,虚线为终端间媒体流的流向。
图7为本发明监听业务建立示例一的过程示意图,其中被监听者先于监听者出现。
过程I两个一般终端T1与T2正在进行双方呼叫;过程II在T1上设置其终端类型为被监听终端,归属监听组为{1,2},即LI/role=interceptee,LI/iid={1,2};过程III增加T3终端,且设置其终端类型为监听终端,监听对象为{1,3},被复制到监听终端的媒体流方向为发送,即LI/role=interceptor,LI/dest={1,3},LI/dir=send。此时,T3根据协议创建了与T1和T2的缺省拓扑,但是并不按照其进行接续,而是根据监听属性的设置将包括终端T1在内的隶属于监听组1和3的所有被监听终端的发送媒体流复制到T3上。
图8为本发明监听业务建立示例二的过程示意图,其中监听者先于被监听者出现。
过程I增加T3终端,且设置其终端类型为监听终端,监听对象为{1,2},被复制到监听终端的媒体流方向为发送,其LI/role=interceptor,LI/dest={1,2},LI/dir=send;过程II增加T2终端,缺省为一般终端,由于T3为监听终端,因此不予接续;过程III增加T1终端,缺省为一般终端,由于T3为监听终端,因此只与T2进行接续;过程IV在T1上设置其终端类型为被监听终端,归属监听组为{1},即LI/role=interceptee,LI/iid={1};在T2上设置其终端类型为被监听终端,归属监听组为{2},即LI/role=interceptee,LI/iid={2}。此时分属于不同监听组的终端T1和终端T2的发送媒体流将复制到T3上。
图9为本发明监听业务变换示例一的过程示意图,其中一般终端变换为被监听者或监听者。
过程I三个一般终端T1、T2和T3正在进行三方呼叫;过程II在T1上设置其终端类型为被监听终端,归属监听组{1},即LI/role=interceptee,LI/iid={1},在T3上设置其终端类型为监听终端,监听对象为{1},被复制到监听终端的媒体流方向为发送,即LI/role=interceptor,LI/dest={1},LI/dir=send,此时断开T3与其他二终端根据拓扑的接续,并将T1的发送媒体流复制到T3上。
图10为本发明监听业务变换示例二的过程示意图,其中监听者监听属性变换。
过程IT3正在监听T1的发送媒体流,其中T1上LI/role=interceptee,LI/iid={1},T3上LI/role=interceptor,LI/dest={1},LI/dir=send;过程II重新设置T3属性为LI/dir=combine,此时同时复制T1的发送和接收(即T2的发送方向)媒体流到T3上。
本发明通过网关内部接续实现监听业务,不需增加网元;通过定义终端类型、归属监听组、监听对象及监听者与被监听者之间的媒体流关系等属性,可支持监听者和被监听者之间一对一、一对多、多对一、多对多的等监听关系。
本发明发放允许监听者比被监听者早出现于上下文中,可以预先设置空监听组到监听者的监听对象中,并设置好监听终端上的媒体流关系属性。一旦上下文中出现新的归属于这个监听组的被监听终端,即可立即实施媒体流的复制,实现监听业务。可支持一个终端在监听者、被监听者和一般终端之间进行角色切换,使监听业务的设置更加灵活。
监听者与被监听者以终端的形式出现在同一个上下文中,其间的监听关系亦不超出上下文。这符合H.248/Megaco协议中上下文概念的基本精神。
权利要求
1.一种实时监听控制业务的实现方法,其包括以下步骤(a)设定上下文中终端的监听属性并通知网关,在监听属性中指定终端类型为监听终端、被监听终端或一般终端,并为被监听终端设置归属的监听组,为监听终端设置要监听的监听组和媒体流方向;(b)网关收到该通知后,根据所述监听属性对相应终端进行设置;(c)完成设置后,网关搜索该上下文中的所有监听终端和被监听终端,并根据各监听终端设置的媒体流方向复制归属于其要监听的监听组的被监听终端的媒体流到各监听终端,实现监听控制。
2.如权利要求1所述的实现方法,其特征在于为监听终端所设置的要监听的监听组可以含有一个、多个或没有被监听终端。
3.如权利要求1或2所述的实现方法,其特征在于一个被监听终端可以同时归属于多个不同的监听组,同一监听组中包含的所有被监听终端与监听此组的监听终端具有一致的监听关系,监听组的作用范围为上下文,每个监听组有一个唯一的标识,不同的上下文具有相同标识的监听组视为不同。
4.如权利要求1所述的实现方法,其特征在于步骤(b)中,若预设置一终端类型为监听终端,且经判断其原为监听终端,则停止基于原有监听关系的媒体流复制,然后将新的监听属性记录下来。
5.如权利要求1所述的实现方法,其特征在于步骤(b)中,若预设置一终端类型为监听终端,且经判断其原不是监听终端,则断开该终端上根据拓扑关系与其他终端进行的接续,对终端类型进行再判断,若该终端类型为一般终端,则记录终端的新监听属性;若该终端类型为被监听终端,则停止到监听它的监听终端上的媒体流复制后,再记录终端的新监听属性。
6.如权利要求1所述的实现方法,其特征在于步骤(b)中,若预设置一终端类型为被监听终端,且经判断该终端已经是被监听终端,则停止此终端到所有监听终端上的媒体流复制后,修改该终端的归属监听组。
7.如权利要求1所述的实现方法,其特征在于步骤(b)中,若预设置一终端类型为被监听终端,且经判断该终端不是被监听终端,对终端类型进行再判断,若该终端类型为一般类型,则记录该终端的监听属性;若该终端类型为监听终端,则停止所有到其上的媒体流复制,并根据拓扑关系与其他终端恢复接续,再记录该终端的监听属性。
8.如权利要求1所述的实现方法,其特征在于步骤(b)中,若预设置一终端类型为一般终端,且经判断该终端类型原为被监听终端,则停止其到监听终端的媒体流复制并设置终端类型为一般终端;若经判断该终端类型原为监听终端,则停止到其上的媒体流复制,然后根据拓扑结构恢复到其他终端的拓扑接续,最后,设置终端类型为一般终端。
9.如权利要求1所述的实现方法,其特征在于步骤(a)是通过网关控制器向网关下发指令完成的。
10.如权利要求9所述的实现方法,其特征在于步骤(a)中,网关控制器向网关下发的指令是增加、移动终端或修改终端监听属性的指令。
全文摘要
本发明实时监听控制业务的实现方法包括以下步骤(a)设定上下文中终端的监听属性并通知网关,在监听属性中指定终端类型为监听终端、被监听终端或一般终端,并为被监听终端设置归属的监听组,为监听终端设置要监听的监听组和媒体流方向;(b)网关收到该通知后,根据所述监听属性对相应终端进行设置;(c)完成设置后,网关搜索该上下文中的所有监听终端和被监听终端,并根据各监听终端设置的媒体流方向复制归属于其要监听的监听组的被监听终端的媒体流到各监听终端,实现监听控制。本发明通过网关内部接续实现监听业务,不需增加网元,可支持一个终端在监听者、被监听者和一般终端之间进行角色切换,使监听业务的设置更加灵活。
文档编号H04L29/06GK101030893SQ20061005789
公开日2007年9月5日 申请日期2006年3月3日 优先权日2006年3月3日
发明者李响 申请人:中兴通讯股份有限公司