ENUM/DNS的递归查询方法、装置及系统与流程

文档序号:11545808阅读:2972来源:国知局
ENUM/DNS的递归查询方法、装置及系统与流程
本发明涉及互联网(IP,InternetProtocol)多媒体子系统(IMS,IPMultimediaSubsystem)网络的电话号码映射工作组(ENUM,TelephoneNumberMappingGroup)/域名系统(DomainNameSystem)技术领域,具体地,涉及一种ENUM/DNS递归查询方法、装置及系统。

背景技术:
目前,在移动通信的IMS网络中,针对移动电话号码的ENUM进行域名查询时,通常有如下三种方法:第一种方法、地址查询(A查询):根据域名得到域名的IP地址,能够ENUM/DNS所在区域的IMS网元提供域名解析。例如客户端(例如服务-呼叫会话控制功能(S-CSCF,ServingCallSessionControlFunction)向ENUM/DNS服务器发起A查询,假设其输入为“icscf.ims.gd.chinamobile.com”,则DNS服务器需要返回该域名对应的IP地址,如“192.168.145.2”。第二种方法、SRV查询:根据应用协议和传输协议得到被叫方网络入口点的服务域名和端口。例如客户端(例如S-CSCF)向ENUM/DNS服务器发出SRV查询时,其输入为“_sip_udp_ims.gd.chinamobile.com”,此时DNS服务器需返回入口服务域名“icscf.ims.gd.chinamobile.com”和服务端口号5060。第三种方法、名称权威指针(NAPTR,NamingAuthorityPointer)查询:根据E.164号码得到对应的会话初始协议(SIP,SessionInitiationProtocol)的统一资源定位符(URL,UniformResourceIdentifier)记录,返回被查询用户对应的SIPURI。如客户端(例如S-CSCF)向ENUM/DNS服务器发送的查询请求E.164号码为“7.6.5.4.3.2.2.2.5.7.6.8.e164.arpa”时,ENUM服务器需要返回该用户对应的SIPURI,如“sip:+867522234567@ims.gd.chinamobile.com”。通常NAPTR包含两次查询,一次是带手机号码的NAPTR查询,接下来的一次是不带手机号码的NAPTR查询。第一次带手机号码的NAPTR查询的响应中记录的标志(flag)是u,表明接下来还是要进行NAPTR查询,第二次不带手机号码的NAPTR查询的响应中记录的flag是s,表明接下来要进行的是SRV类型的查询。中国移动通信企业标准中,《中国移动ENUM-DNS接口和设备规范》指出:以及ENUM/DNS服务器与二级ENUM/DNS服务器之间的查询方式有两种,包括必选的递归查询和可选的迭代查询。其中,如图1所示,递归查询的查询步骤如下:步骤11、主叫侧CSCF将被叫号码转化成E.164号码,向主叫所属的省二级ENUM服务器发送查询请求,要求进行ENUM递归查询,获取被叫归属地SIPURI。步骤12、主叫所属的省二级ENUM服务器接受ENUM查询,先查询本服务器,查询不到,则将查询请求转发给一级ENUM/DNS服务器。步骤13、一级ENUM/DNS服务器根据配置的自身的配置,查询确定被叫所属的ENUM/DNS服务器,将查询请求转发到被叫所属的ENUM/DNS服务器。步骤14、被叫所属的ENUM/DNS服务器根据E.164号码,获取查询请求中被叫号码归属的SIPURI和IP地址,将查询结果返回给一级ENUM。步骤15、一级ENUM将结果返回给主叫所属的省二级ENUM。步骤16、主叫所属的省二级ENUM将最终查询结果返回给主叫侧CSCF。但是,在实际应用的过程中,由于主叫侧的ENUM/DNS和被叫侧的二级ENUM/DNS服务器采用不同设备厂商的设备,不同设备厂商配置的数据不同、所设置ENUM/DNS查询的查询方式也不同,这样就会导致对应协议字段处理方式不同,从而存在造成解析失败的可能,而一旦解析不成功,将造成整个呼叫流程接续失败。如图2所示,主叫侧的二级ENUM/DNS和被叫侧的二级ENUM/DNS服务器的查询方式不一致导致查询失败的处理流程包括:步骤21、主叫侧CSCF向主叫所属的省二级ENUM服务器发送查询请求,要求进行ENUM递归查询,例如要求进行NAPTR查询,并且返回表达式SIPURI以及FLAG=U,表明接下来还是要进行NAPTR查询;步骤22、主叫侧的省二级ENUM/DNS服务器使用SIPURI以及FLAG=U的查询条件进行查询时,发现本地查询不到,则将查询请求转发给一级ENUM/DNS服务器;步骤23、一级ENUM/DNS服务器根据配置,查询确定被叫所属的省二级ENUM/DNS服务器,将查询请求转发到被叫所属的省二级ENUM/DNS服务器;步骤24、被叫所属的省二级ENUM/DNS配置的NAPTR查询条件是E164号码,对应主叫侧的省二级ENUM/DNS服务器发送来的SIPURI及FLAG=U的查询条件并不识别,造成查询失败,返回失败原因为“Nosuchname”;步骤25、一级ENUM/DNS服务器将查询失败的消息返回给主叫侧的省二级ENUM/DNS服务器;步骤26、主叫侧的省二级ENUM/DNS服务器将查询失败的消息返回给主叫侧CSCF。可见,在现有的ENUM/DNS的递归查询中,存在主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器所设置的查询方式不一致导致查询失败以及呼叫失败的问题。

技术实现要素:
本发明实施例提供一种ENUM/DNS的递归查询方法、装置及系统,以解决现有的ENUM/DNS的递归查询中所存在的主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器所设置的查询方式不一致导致查询失败以及呼叫失败的问题。本发明实施例技术方案如下:一种ENUM/DNS的递归查询方法,包括:被叫侧的二级ENUM/DNS服务器在接收到一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的查询消息后,判断该查询消息中以查询条件格式表达的查询内容与被叫侧的二级ENUM/DNS服务器自身配置的查询条件是否一致;在判断确定不一致的情况下,向一级ENUM/DNS服务器发送请求反馈以被叫侧的二级ENUM/DNS服务器配置的查询条件所表达的查询内容的查询条件匹配请求,该查询条件匹配请求将由一级ENUM/DNS服务器转发给主叫侧的二级ENUM/DNS服务器;被叫侧的二级ENUM/DNS服务器接收到一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的、针对查询条件匹配请求的回应消息后,以被叫侧的二级ENUM/DNS服务器配置的查询条件对该回应消息中的查询内容进行查询。一种ENUM/DNS的递归查询装置,包括:判断模块,用于在所述装置所属二级ENUM/DNS服务器接收到一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的查询消息后,判断该查询消息中以查询条件格式表达的查询内容与所述装置所属被叫侧的二级ENUM/DNS服务器自身配置的查询条件是否一致;请求模块,用于在判断模块判断结果为不一致的情况下,向一级ENUM/DNS服务器发送请求反馈以所述装置所属被叫侧的二级ENUM/DNS服务器配置的查询条件所表达的查询内容的查询条件匹配请求,该查询条件匹配请求将由一级ENUM/DNS服务器转发给主叫侧的二级ENUM/DNS服务器;接收模块,用于接收一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的、针对查询条件匹配请求的回应消息;查询模块,用于在接收模块接收到所述回应消息后,以所述装置所属二级ENUM/DNS服务器配置的查询条件对该回应消息中的查询内容进行查询。一种ENUM/DNS的递归查询方法,包括:主叫侧的二级ENUM/DNS服务器向一级ENUM/DNS服务器发送查询消息后,接收一级ENUM/DNS服务器转发的来自被叫侧的二级ENUM/DNS服务器的查询条件匹配请求,该查询条件匹配请求要求反馈以被叫侧的二级ENUM/DNS服务器配置的查询条件所表达的查询内容;主叫侧的二级ENUM/DNS服务器对查询消息所针对的号码按照查询条件匹配请求中所要求的查询条件进行解析得到解析结果;主叫侧的二级ENUM/DNS服务器将解析得到的解析结果携带在针对查询条件匹配请求的回应消息中发送给一级ENUM/DNS服务器,该回应消息将由一级ENUM/DNS服务器转发给被叫侧的二级ENUM/DNS,并由被叫侧的二级ENUM/DNS根据回应消息中的解析结果进行查询。一种ENUM/DNS的递归查询装置,包括:接收模块,用于在所述装置所属二级ENUM/DNS服务器向一级ENUM/DNS服务器发送查询消息后,接收一级ENUM/DNS服务器转发的来自被叫侧的二级ENUM/DNS服务器的查询条件匹配请求,该查询条件匹配请求要求反馈以被叫侧的二级ENUM/DNS服务器配置的查询条件所表达的查询内容;解析模块,用于对查询消息所针对的号码按照接收模块接收到的查询条件匹配请求中所要求的查询条件进行解析得到解析结果;发送模块,用于将解析模块解析得到的解析结果携带在针对查询条件匹配请求的回应消息中发送给一级ENUM/DNS服务器,该回应消息将由一级ENUM/DNS服务器转发给被叫侧的二级ENUM/DNS,并由被叫侧的二级ENUM/DNS根据回应消息中的解析结果进行查询。一种ENUM/DNS的递归查询系统,包括:主叫侧的二级ENUM/DNS服务器、一级ENUM/DNS服务器和被叫侧的二级ENUM/DNS服务器;其中,被叫侧的二级ENUM/DNS服务器,用于在接收到来自一级ENUM/DNS服务器的查询消息后,判断该查询消息中以查询条件格式表达的查询内容与被叫侧的二级ENUM/DNS服务器自身配置的查询条件是否一致;在判断确定不一致的情况下,向一级ENUM/DNS服务器发送请求反馈以被叫侧的二级ENUM/DNS服务器配置的查询条件所表达的查询内容的查询条件匹配请求;在接收到来自一级ENUM/DNS服务器的、针对查询条件匹配请求的回应消息后,以被叫侧的二级ENUM/DNS服务器配置的查询条件对该回应消息中的查询内容进行查询;一级ENUM/DNS服务器,用于向被叫侧的二级ENUM/DNS服务器转发来自主叫侧的二级ENUM/DNS服务器的查询消息;向主叫侧的二级ENUM/DNS服务器转发来自被叫侧的二级ENUM/DNS服务器的查询条件匹配请求;以及,向被叫侧的二级ENUM/DNS服务器转发来自主叫侧的二级ENUM/DNS服务器的针对查询条件匹配请求的回应消息;主叫侧的二级ENUM/DNS服务器,用于接收来自一级ENUM/DNS服务器的查询条件匹配请求;对查询消息所针对的号码按照查询条件匹配请求中所要求的查询条件进行解析得到解析结果;将解析得到的解析结果携带在针对查询条件匹配请求的回应消息中发送给一级ENUM/DNS服务器。根据本发明实施例的技术方案,被叫侧的二级ENUM/DNS服务器在接收到一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的查询消息后,判断该查询消息中以查询条件格式表达的查询内容与被叫侧的二级ENUM/DNS服务器自身配置的查询条件是否一致,在判断确定不一致的情况下,向一级ENUM/DNS服务器发送请求反馈以被叫侧的二级ENUM/DNS服务器配置的查询条件所表达的查询内容的查询条件匹配请求,该查询条件匹配请求将由一级ENUM/DNS服务器转发给主叫侧的二级ENUM/DNS服务器,被叫侧的二级ENUM/DNS服务器接收到一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的、针对查询条件匹配请求的回应消息后,以被叫侧的二级ENUM/DNS服务器配置的查询条件对该回应消息中的查询内容进行查询,能够有效地在主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器的所设置查询方式不一致的情况下,被叫侧的二级ENUM/DNS服务器通过协商获取主叫侧的二级ENUM/DNS服务器对号码按照被叫侧的查询条件进行解析的解析结果即查询内容,从而得到被叫侧的二级ENUM/DNS服务器能够识别的查询内容并进行查询,进而能够避免现有的ENUM/DNS的递归查询中所存在的主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器所设置的查询方式不一致导致查询失败以及呼叫失败的问题。本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。附图说明图1为现有技术中ENUM/DNS递归查询的处理过程流程图;图2为现有技术中ENUM/DNS递归查询的查询失败的处理流程图;图3为本发明实施例提供的ENUM/DNS的递归查询系统的结构框图;图4为本发明实施例提供的ENUM/DNS的递归查询方法的工作流程图;图5为本发明实施例提供的ENUM/DNS的递归查询装置的结构框图;图6为本发明实施例提供的ENUM/DNS的递归查询方法的另一工作流程图;图7为本发明实施例提供的ENUM/DNS的递归查询装置的另一结构框图;图8为本发明实施例提供的ENUM/DNS的递归查询方法具体应用的处理流程图。具体实施方式以下结合附图对本发明的实施例进行说明,应当理解,此处所描述的实施例仅用于说明和解释本发明,并不用于限定本发明。针对现有的ENUM/DNS的递归查询中所存在的主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器所设置的查询方式不一致导致查询失败以及呼叫失败的问题,本发明实施例提供了一种ENUM/DNS的递归查询方法、装置及系统,用以解决该问题。在本发明实施例提供的技术方案中,在主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器的所设置查询方式不一致的情况下,被叫侧的二级ENUM/DNS服务器通过协商获取主叫侧的二级ENUM/DNS服务器对号码按照被叫侧的查询条件进行解析的解析结果即查询内容,从而得到被叫侧的二级ENUM/DNS服务器能够识别的查询内容并进行查询。下面对本发明实施例的技术方案进行详细说明。图3示出了本发明实施例提供的ENUM/DNS的递归查询系统的结构,该系统包括:主叫侧的二级ENUM/DNS服务器31、一级ENUM/DNS服务器32和被叫侧的二级ENUM/DNS服务器33;其中,被叫侧的二级ENUM/DNS服务器33,用于在接收到来自一级ENUM/DNS服务器32的查询消息后,判断该查询消息中以查询条件格式表达的查询内容与被叫侧的二级ENUM/DNS服务器33自身配置的查询条件是否一致;在判断确定不一致的情况下,向一级ENUM/DNS服务器32发送请求反馈以被叫侧的二级ENUM/DNS服务器33配置的查询条件所表达的查询内容的查询条件匹配请求;在接收到来自一级ENUM/DNS服务器32的、针对查询条件匹配请求的回应消息后,以被叫侧的二级ENUM/DNS服务器33配置的查询条件对该回应消息中的查询内容进行查询;一级ENUM/DNS服务器32,用于向被叫侧的二级ENUM/DNS服务器33转发来自主叫侧的二级ENUM/DNS服务器31的查询消息;向主叫侧的二级ENUM/DNS服务器31转发来自被叫侧的二级ENUM/DNS服务器33的查询条件匹配请求;以及,向被叫侧的二级ENUM/DNS服务器33转发来自主叫侧的二级ENUM/DNS服务器31的针对查询条件匹配请求的回应消息;主叫侧的二级ENUM/DNS服务器31,用于接收来自一级ENUM/DNS服务器32的查询条件匹配请求;对查询消息所针对的号码按照查询条件匹配请求中所要求的查询条件进行解析得到解析结果;将解析得到的解析结果携带在针对查询条件匹配请求的回应消息中发送给一级ENUM/DNS服务器32。下面分别对被叫侧的二级ENUM/DNS服务器的工作原理33和主叫侧的二级ENUM/DNS服务器31的工作原理进行说明。图4示出了本发明实施例提供的ENUM/DNS的递归查询方法的工作流程,也即被叫侧的二级ENUM/DNS服务器33的工作原理,该方法包括:步骤401、被叫侧的二级ENUM/DNS服务器在接收到一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的查询消息后,判断该查询消息中以查询条件格式表达的查询内容与被叫侧的二级ENUM/DNS服务器自身配置的查询条件是否一致;其中,查询条件包括:与地址查询对应的查询条件、与SRV查询对应的查询条件或与名称权威指针查询对应的查询条件;步骤402、在判断确定不一致的情况下,向一级ENUM/DNS服务器发送请求反馈以被叫侧的二级ENUM/DNS服务器配置的查询条件所表达的查询内容的查询条件匹配请求,该查询条件匹配请求将由一级ENUM/DNS服务器转发给主叫侧的二级ENUM/DNS服务器;步骤403、被叫侧的二级ENUM/DNS服务器接收到一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的、针对查询条件匹配请求的回应消息后,以被叫侧的二级ENUM/DNS服务器配置的查询条件对该回应消息中的查询内容进行查询。更进一步地,被叫侧的二级ENUM/DNS服务器将对所述回应消息中的内容进行查询的结果发送给一级ENUM/DNS服务器,该查询结果将由一级ENUM/DNS服务器转发给主叫侧的二级ENUM/DNS服务器,并由主叫侧的二级ENUM/DNS服务器发送给请求ENUM/DNS查询的客户端。通过上述方法,在主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器的所设置查询方式不一致的情况下,被叫侧的二级ENUM/DNS服务器通过协商获取主叫侧的二级ENUM/DNS服务器对号码按照被叫侧的查询条件进行解析的解析结果即查询内容,从而得到被叫侧的二级ENUM/DNS服务器能够识别的查询内容并进行查询,进而能够解决现有的ENUM/DNS的递归查询中所存在的主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器所设置的查询方式不一致导致查询失败以及呼叫失败的问题。基于相同的发明构思,本发明实施例还提供了一种ENUM/DNS的递归查询装置,该装置位于被叫侧的二级ENUM/DNS服务器中。如图5所示,本发明实施例提供的ENUM/DNS的递归查询装置包括:判断模块51,用于在所述装置所属二级ENUM/DNS服务器接收到一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的查询消息后,判断该查询消息中以查询条件格式表达的查询内容与所述装置所属被叫侧的二级ENUM/DNS服务器自身配置的查询条件是否一致;请求模块52,连接至判断模块51,用于在判断模块51判断结果为不一致的情况下,向一级ENUM/DNS服务器发送请求反馈以所述装置所属被叫侧的二级ENUM/DNS服务器配置的查询条件所表达的查询内容的查询条件匹配请求,该查询条件匹配请求将由一级ENUM/DNS服务器转发给主叫侧的二级ENUM/DNS服务器;接收模块53,用于接收一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的、针对查询条件匹配请求的回应消息;查询模块54,连接至接收模块53,用于在接收模块53接收到所述回应消息后,以所述装置所属二级ENUM/DNS服务器配置的查询条件对该回应消息中的查询内容进行查询。更进一步地,查询模块54还将查询结果发送给一级ENUM/DNS服务器,该查询结果将由一级ENUM/DNS服务器转发给主叫侧的二级ENUM/DNS服务器,并由主叫侧的二级ENUM/DNS服务器发送给请求ENUM/DNS查询的客户端。通过上述装置,也能够在主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器的所设置查询方式不一致的情况下,所述装置通过协商获取主叫侧的二级ENUM/DNS服务器对号码按照被叫侧的查询条件进行解析的解析结果即查询内容,从而得到被叫侧的二级ENUM/DNS服务器能够识别的查询内容并进行查询,进而能够解决现有的ENUM/DNS的递归查询中所存在的主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器所设置的查询方式不一致导致查询失败以及呼叫失败的问题。图6示出了本发明实施例提供的ENUM/DNS的递归查询方法的工作流程,也即主叫侧的二级ENUM/DNS的工作原理,该方法包括:步骤601、主叫侧的二级ENUM/DNS服务器向一级ENUM/DNS服务器发送查询消息后,接收一级ENUM/DNS服务器转发的来自被叫侧的二级ENUM/DNS服务器的查询条件匹配请求,该查询条件匹配请求要求反馈以被叫侧的二级ENUM/DNS服务器配置的查询条件所表达的查询内容;其中,查询条件包括:与地址查询对应的查询条件、与SRV查询对应的查询条件或与名称权威指针查询对应的查询条件;步骤602、主叫侧的二级ENUM/DNS服务器对查询消息所针对的号码按照查询条件匹配请求中所要求的查询条件进行解析得到解析结果;步骤603、主叫侧的二级ENUM/DNS服务器将解析得到的解析结果携带在针对查询条件匹配请求的回应消息中发送给一级ENUM/DNS服务器,该回应消息将由一级ENUM/DNS服务器转发给被叫侧的二级ENUM/DNS,并由被叫侧的二级ENUM/DNS根据回应消息中的解析结果进行查询。更进一步地,主叫侧的二级ENUM/DNS服务器接收来自一级ENUM/DNS服务器返回的查询结果,该查询结果是被叫侧的二级ENUM/DNS根据回应消息中的解析结果进行查询得到,并由一级ENUM/DNS服务器转发的;主叫侧的二级ENUM/DNS服务器将接收到的查询结果发送给请求ENUM/DNS查询的客户端。通过上述处理过程,在主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器的所设置查询方式不一致的情况下,被叫侧的二级ENUM/DNS服务器通过协商获取主叫侧的二级ENUM/DNS服务器对号码按照被叫侧的查询条件进行解析的解析结果即查询内容,从而得到被叫侧的二级ENUM/DNS服务器能够识别的查询内容并进行查询,进而能够解决现有的ENUM/DNS的递归查询中所存在的主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器所设置的查询方式不一致导致查询失败以及呼叫失败的问题。基于相同的发明构思,本发明实施例还提供了一种ENUM/DNS的递归查询装置,该装置位于主叫侧的ENUM/DNS服务器中。如图7所示,本发明实施例提供的ENUM/DNS的递归查询装置包括:接收模块71,用于在所述装置所属二级ENUM/DNS服务器向一级ENUM/DNS服务器发送查询消息后,接收一级ENUM/DNS服务器转发的来自被叫侧的二级ENUM/DNS服务器的查询条件匹配请求,该查询条件匹配请求要求反馈以被叫侧的二级ENUM/DNS服务器配置的查询条件所表达的查询内容;解析模块72,连接至接收模块71,用于对查询消息所针对的号码按照接收模块接收到的查询条件匹配请求中所要求的查询条件进行解析得到解析结果;发送模块73,连接至解析模块72,用于将解析模块72解析得到的解析结果携带在针对查询条件匹配请求的回应消息中发送给一级ENUM/DNS服务器,该回应消息将由一级ENUM/DNS服务器转发给被叫侧的二级ENUM/DNS,并由被叫侧的二级ENUM/DNS根据回应消息中的解析结果进行查询。更进一步地,接收模块71,还用于:接收来自一级ENUM/DNS服务器返回的查询结果,该查询结果是被叫侧的二级ENUM/DNS根据回应消息中的解析结果进行查询得到,并由一级ENUM/DNS服务器转发的;发送模块73,还用于将接收模块71接收到的查询结果发送给请求ENUM/DNS查询的客户端。通过上述装置,也能够在主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器的所设置查询方式不一致的情况下,被叫侧的二级ENUM/DNS服务器通过协商获取主叫侧的二级ENUM/DNS服务器对号码按照被叫侧的查询条件进行解析的解析结果即查询内容,从而得到被叫侧的二级ENUM/DNS服务器能够识别的查询内容并进行查询,进而能够解决现有的ENUM/DNS的递归查询中所存在的主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器所设置的查询方式不一致导致查询失败以及呼叫失败的问题。下面对本发明实施例具体应用的情况进行说明。图8示出了本发明实施例提供的ENUM/DNS的递归查询方法具体应用的处理流程,该处理过程包括:步骤801、主叫侧的CSCF发起在主叫所属的省二级ENUM/DNS的查询,例如,主叫CSCF向主叫侧的CNUM/DNS服务器发送查询请求,例如NAPTR查询,并且得到主叫侧的二级ENUM/DNS服务器返回的表达式SIPURI以及FLAG=U,表明接下来还是要进行NAPTR查询;步骤802、主叫侧的二级ENUM/DNS服务器使用SIPURI以及FLAG=U的查询条件进行查询时,发现本地查询不到,则将查询消息转发给一级ENUM/DNS服务器;步骤803、一级ENUM/DNS服务器根据配置,查询确定被叫所属的省二级ENUM/DNS服务器,将查询消息转发到被叫所属的二级ENUM/DNS服务器;步骤804、被叫侧的二级ENUM/DNS服务器在接收到一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的查询消息后,判断该查询消息中以查询条件格式表达的查询内容与被叫侧的二级ENUM/DNS服务器自身配置的查询条件是否一致;在判断确定不一致的情况下,向一级ENUM/DNS服务器发送请求反馈以被叫侧的二级ENUM/DNS服务器配置的查询条件所表达的查询内容的查询条件匹配请求;步骤805、一级ENUM/DNS服务器将查询条件匹配请求转发给主叫侧的ENUM/DNS服务器;步骤806、主叫侧的二级ENUM/DNS服务器对查询消息所针对的号码按照查询条件匹配请求中所要求的查询条件进行解析得到解析结果,将解析得到的解析结果携带在针对查询条件匹配请求的回应消息中发送给一级ENUM/DNS服务器;步骤807、一级ENUM/DNS服务器将针对查询条件匹配请求的回应消息转发给被叫侧的二级ENUM/DNS服务器;步骤808、被叫侧的二级ENUM/DNS服务器根据回应消息中的查询内容进行查询得到查询结果,并将查询结果发送给一级ENUM/DNS服务器;步骤809、一级ENUM/DNS服务器将查询结果反馈给主叫侧的二级ENUM/DNS服务器;步骤810、主叫侧的二级ENUM/DNS服务器将查询结果反馈给主叫侧的CSCF。综上所述,根据本发明实施例的技术方案,被叫侧的二级ENUM/DNS服务器在接收到一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的查询消息后,判断该查询消息中以查询条件格式表达的查询内容与被叫侧的二级ENUM/DNS服务器自身配置的查询条件是否一致,在判断确定不一致的情况下,向一级ENUM/DNS服务器发送请求反馈以被叫侧的二级ENUM/DNS服务器配置的查询条件所表达的查询内容的查询条件匹配请求,该查询条件匹配请求将由一级ENUM/DNS服务器转发给主叫侧的二级ENUM/DNS服务器,被叫侧的二级ENUM/DNS服务器接收到一级ENUM/DNS服务器转发的来自主叫侧的二级ENUM/DNS服务器的、针对查询条件匹配请求的回应消息后,以被叫侧的二级ENUM/DNS服务器配置的查询条件对该回应消息中的查询内容进行查询,能够有效地在主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器的所设置查询方式不一致的情况下,被叫侧的二级ENUM/DNS服务器通过协商获取主叫侧的二级ENUM/DNS服务器对号码按照被叫侧的查询条件进行解析的解析结果即查询内容,从而得到被叫侧的二级ENUM/DNS服务器能够识别的查询内容并进行查询,进而能够避免现有的ENUM/DNS的递归查询中所存在的主叫侧ENUM/DNS和被叫侧的二级ENUM/DNS服务器所设置的查询方式不一致导致查询失败以及呼叫失败的问题。本领域普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。另外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1