数图号码匹配的方法

文档序号:6420371阅读:285来源:国知局
专利名称:数图号码匹配的方法
技术领域
本发明涉及通信领域,具体地说,涉及NGN系统中MGW上H.248协议数图(Digitmap)号码快速分析匹配的处理方法。
背景技术
随着移动通讯系统在经济和社会生活等各个领域日益广泛的应用,移动通讯系统技术本身也在快速发展之中,从目前正在广泛使用的第二代移动通讯系统,到正在成熟完善的第三代移动通讯系统,技术上的发展正在日益满足用户对于通讯系统的需求。国际标准化组织3GPP和3GPP2分别负责第三代移动通讯系统国际标准WCDMA标准和CDMA2000标准的制定和修改。在两种类型的标准中,H.248协议被3GPP/3GPP2等组织广泛采用,作为NGN(下一代网络,Next Generation Networking,如WCDMA/CDMA2000/TD-SCDMA/SOFTSWITCH)网络承载和控制分离的协议标准,H.248协议主要用于MGC(媒体网关控制器,Media Gateway Controler)和MGW(媒体网关,Media Gateway)之间的网关控制以及承载建立控制。
在移动通信系统中,MGC与MGW之间通过H.248协议进行通信,H.248协议使用数图作为终端的收号规则。一般由MGC根据业务指定生成对每个终端需要的号码匹配规则,由MGW提供对该终端的号码匹配规则的存储以及具体的号码分析。MGC和MGW实现交互信息的基本单位是命令,命令中包括各种描述符,数图在数图描述符中进行定义,并由数图的名称标识,一个终端可以定义很多数图规则,但是各个数图之间不可以重名。同时,数图可以被任何标准的终端操作命令所使用,可以在网关上预装载,也可以动态定义,并通过数图的名称被引用,或者直接在描述符中指定数图规则,即无名数图。
通过数图收号一般涉及到三个定时器,一个是启动定时器T,设置从摘机到收到第一位号码的时间限定(不在号码分析的分析范围内)。另一个是短定时器S,收到的号码已经满足数图中的某项规则时,MGW并不立即报告匹配,而还需要继续收号判断是否还会匹配其他规则项,此时需要设置的与下一个将收到的号码之间时长。还有一个长定时器L,已收到的号码未满足数图中任何项规则时,需要设置的与下一个将收到的号码之间时长。上述短定时器S和长定时器L的设置约定也可以在数图中通过S、L标志动态设置。目前协议规定的数图中的包含的符号如下1)数字’0’-’9’;2)特殊字符’*’、’#’以及范围表示符’[’、’]’、’-’、’^’等;3)通配符’x’、’.’;4)时长标识S、L,另外还有Z标志,用于描述强制等待的收号时长;5)分界符子规则项分割符‘|’,规则体边界符‘(’,‘)’。当定时器超时、或者号码完全匹配某个规则项并且不满足部分匹配其他任何规则项、或者号码与任何规则项都不匹配时,结束数图规则的匹配,不再继续收号。
由于号码匹配的处理流程与号码匹配的规则存储方法有密切的关系,因此规则需要保存在数据库或者类似内存结构中。目前最普遍的方法是终端的简单存储每个存储规则设置为一条独立的记录,在实际的号码分析过程中是对于收到的每个号码序列按照规则中字符的顺序依次比较匹配。这种方法在规则存储上是最简单的,但是很明显同时对规则和号码进行分析,在一个终端的规则比较复杂,规则条数比较大的情况下,每次收号序列都需要对于复合、嵌套、重复等规则重新分析,势必会导致号码匹配的效率将会极大降低,影响整个系统的运行效率。

发明内容
本发明所要解决的技术问题是提供一种数图号码匹配的方法,以解决NGN系统中终端多规则情况下的号码分析效率低下,严重影响系统工作效率的问题。
为实现上述目的,本发明提出了一种数图号码匹配的方法,其特征在于,包括以下步骤第一步生成号码分析树,进行规则存储;(1)对含有运算符(如取反^)的规则进行展开预处理;(2)对复合嵌套规则进行拆分预处理;(3)对各规则符号解析处理;(4)对各规则符号和解析后的属性进行存储处理,生成号码分析树;第二步依据指定的digitmap,对输入号码进行分析;(1)根据digitmap定位号码分析树;(2)依次选择一个号码分析器对输入号码进行分析;(3)分析结果处理,如果还需要继续分析重复步骤(2);(4)最终分析结果处理。
本发明所述数图号码匹配的方法,通过规则分析和号码匹配分离的思想,很大程度提高对数图号码分析的整体效率,从根本上原有方法的局限性,使得号码分析过程具有更好的扩充性和对大规则量的适应性,克服了现有技术的分析过程重复、结构不清晰,易出错,导致效率降低的缺点。


图1是号码分析树示意图。
图2是本发明所述方法流程图。
图3是本发明所述方法中生成号码分析树过程流程图。
图4是本发明所述方法中号码分析流程图。
具体实施例方式
下面结合附图,对本发明的具体实施作进一步的详细描述。
在协议的处理过程中,是先有规则后进行号码分析,一个规则通常服务于多个号码序列,因此规则分析的效率在号码分析的整体操作中就显得至关重要。本发明所述的处理方法,就是充分的加强了对规则预处理的这个公共的环节,通过对数图规则项的展开拆分或合并等预处理,减少了实际号码分析时的工作量;同时本方法提出了将数图的号码规则按照树型结构存储的思想,提供了一个清晰完备的存储结构,一方面规范了号码分析的过程,使得分析的逻辑清晰,防止了分析过程中的可能的疏漏,另一方面提高严谨性,通过树形结构本身优势进一步地合并了重复的规则分支。
本发明采用规则处理和号码分析相分离的思想,利用号码分析树这个逻辑结构来存储规则。号码分析树的物理存储可以采用内存数据库二维表的方式,便于重用已有的数据库操作方法,当然也可以采用其他内存数据结构。规则处理就是对规则进行预处理,并将处理后的所有规则子项生成号码分析树的各个分支(即号码分析器),各个规则子项所包含的规则符号作为各分支上的节点,由此可见依据规则进行号码匹配的过程也就是遍历号码分析树的过程(参见图1)。如图所示每个号码分析器分析的结果或者是不需要再继续分析直接输出结果,或者是需要使用下一个号码分析器继续分析。
后续描述都以如下规则为典型例(注|作为规则项的分割符)(0|00|[^3469]xxx|051[1-347-9]xxxxxxx|Fxxxxxxx|Exx|9011x.)规则处理的第一个工作就是预处理,主要包括两个方面(参见图2)首先是针对含有取反运算符的规则子项进行展开,如例中的第三个规则项,展开后的结果就是‘
xxx’。其次就是对复合规则项进行拆分,即将复合的区间值分离,如例中的第四个规则项,拆分结果为下面三个规则项‘051[1-3]xxxxxxx’、‘0514xxxxxxx’、‘051[7-9]xxxxxxx’。如果一个规则项中存在多个上述需要拆分的区间情况,还需要继续分。上述预处理的目的就是为后面的为后续的分析树生成提供统一的入口。
在实际的运作过程中业务每收到一个或者一组号码后需要进行号码分析,根据分析的结果决定是否再进行收号(包括收下一个号码的时间间隔)或者停止收号进行放音以及其他业务操作。业务调用本方法进行号码分析需要传递终端标识、数图名和被分析的号码序列,然后本方法流程根据终端标识、数图名定位到已经生成的号码分析树。具体的规则分析和号码匹配的过程下面将详细描述。
(一)规则分析规则分析过程如图3所示,具体功能如下1、从规则中分离各规则项。分离的依据是‘|’字符,它是规则项的分割符。
2、对每个规则项中符号进行分析,分析的结果作为该符号的属性。属性包括三个方面①号码值对于明确号码就是值本身;对于区间、单号码通配符x用相同的特殊值,表明具体值需要察看后面的号码值映射属性;对于多号码通配符‘.’用另一特殊符号标明。
②号码值映射如前所述,针对x通配符和区间‘[]’,按位表示数值的取值范围,从低位到高位代表0-9十个数字,该位值为0表示不包含,1表示包含。如[1-3]就用二进制的‘00001110’表示,‘x’用‘1111111111’表示。将通配符和区间用这种单个值表示便于号码分析时依次匹配的顺序一致。
③定时器标签,针对‘S’、‘L’,只记录,在号码分析过程中作为附加输出结果返回给业务,用于进一步的收号定时处理;3、生成号码分析树。即将号码分析的序列按照树节点的方式组织。这个过程同时也对可以合并的规则项进行合并,生成到通一个分析器上。如例中的第一个和第二个规则项,第二个0作为第一个0的子节点。在生成树的过程中需要依次扫描各字符,记录下其前驱(Prev)、后续节点(Next)、以及号码分析结束标记(End)。End标记主要用于描述本分析器的分析结果,用于下一步号码分析的时候的判断。具体包括①分析未结束、②分析结束不再继续分析、③分析结束需要继续分析。如前例中的第一个规则项的‘0’就是第三种,因为它和下面的‘00’规则进行了合并;另外还有‘.’通配符表示后续可以是多个任意字符,所以例中最后一个规则项的最后一个字符的End标记也符合第三种情况,其他几个规则项的中间的字符的End标记都是第一种情况,最后一个字符的End标记是第二种情况。
在分析树上如此详细记录每个规则符号的属性,目的是为了更简化后续的号码分析过程,提高分析的效率。
(二)号码匹配号码匹配过程就是根据数图已经生成的号码分析树,分析收到号码是否符合匹配要求。分析的结果主要有如下几种1)完全匹配但需要继续分析,即适合上述End标记是分析结束需要继续分析的情况;2)完全匹配,即完全匹配某个规则项,但无1)情况。
3)部分匹配需要继续分析,即无1)和2)情况,但部分匹配了某个规则项;4)不匹配,即不符合任何规则项;号码匹配的过程简单的讲就是对号码分析树的遍历过程(参见图4)。从一个号码分析器开始,除非中途可以输出结果,否则将一直遍历完号码分析树的所有分析器分支。单个分析器分析流程是对于号码序列中的每个号码依次和号码分析器上的节点匹配,即第一个号码和第一个节点比较,以此类推。对于区间和x通配符可以通过移位方式比较,其他明确号码直接比较即可。对于节点的End标记是分析结束需要继续分析的情况,可以直接返回分析结果,不需要再遍历其他分析器,除此以外不论是匹配还是不匹配都需要记录下单个分析器的分析结果,以便遍历完所有分析器后综合考虑最后的输出结果。
由此可见,在充分的规则分析的基础上,实际号码匹配的过程已经比较简单明了,很大程度提高了整体业务处理效率。
权利要求
1.一种数图号码匹配的方法,其特征在于,包括以下步骤第一步生成号码分析树,进行规则存储;第二步依据指定的digitmap,对输入号码进行分析。
2.根据权利要求1所述的数图号码匹配的方法,其特征在于,所述第一步包括以下步骤(1)对含有运算符的规则进行展开预处理;(2)对复合嵌套规则进行拆分预处理;(3)对各规则符号解析处理;(4)对各规则符号和解析后的属性进行存储处理,生成号码分析树。
3.根据权利要求2所述的数图号码匹配的方法,其特征在于,所述步骤(1)和步骤(2)中的预处理包括以下步骤(a)针对含有取反运算符的规则子项进行展开;(b)对复合规则项进行拆分,即将复合的区间值分离。
4.根据权利要求1所述的数图号码匹配的方法,其特征在于,所述步骤(3)包括以下步骤(a)从规则中分离各规则项;(b)对每个规则项中符号进行分析,分析的结果作为该符号的属性。
5.根据权利要求4所述的数图号码匹配的方法,其特征在于,所述步骤(a)中分离的依据是规则项的分割符‘|’字符。
6.根据权利要求4所述的数图号码匹配的方法,其特征在于,所述步骤(b)中的属性属性包括号码值、号码值映射和定时器标签。
7.根据权利要求1所述的数图号码匹配的方法,其特征在于,所述第二步中进一步包括以下步骤(1)根据digitmap定位号码分析树;(2)依次选择一个号码分析器对输入号码进行分析;(3)分析结果处理,如果还需要继续分析重复步骤(2);(4)最终分析结果处理。
8.根据权利要求7所述的数图号码匹配的方法,其特征在于,所述步骤(2)的分析结构包括1)完全匹配但需要继续分析,即适合上述End标记是分析结束需要继续分析的情况;2)完全匹配,即完全匹配某个规则项,但无1)情况;3)部分匹配需要继续分析,即无1)和2)情况,但部分匹配了某个规则项;4)不匹配,即不符合任何规则项。
全文摘要
本发明公开了一种通讯领域中的数图号码匹配的方法,包括第一步生成号码分析树,进行规则存储;第二步依据指定的digitmap,对输入号码进行分析。本发明通过规则分析和号码匹配分离的思想,很大程度提高对数图号码分析的整体效率,从根本上原有方法的局限性,使得号码分析过程具有更好的扩充性和对大规则量的适应性,克服了现有技术的分析过程重复、结构不清晰,易出错,导致效率降低的缺点。
文档编号G06F17/30GK1545344SQ20031011211
公开日2004年11月10日 申请日期2003年11月14日 优先权日2003年11月14日
发明者梁璐, 王娜, 蔡辉, 璐 梁 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1