CN101917493A - 一种服务器迭代查询方法及系统 - Google Patents
一种服务器迭代查询方法及系统 Download PDFInfo
- Publication number
- CN101917493A CN101917493A CN2010102627531A CN201010262753A CN101917493A CN 101917493 A CN101917493 A CN 101917493A CN 2010102627531 A CN2010102627531 A CN 2010102627531A CN 201010262753 A CN201010262753 A CN 201010262753A CN 101917493 A CN101917493 A CN 101917493A
- Authority
- CN
- China
- Prior art keywords
- address information
- dns server
- enum
- domain name
- query
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4557—Directories for hybrid networks, e.g. including telephone numbers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一种服务器迭代查询方法及系统,二级ENUM/DNS服务器收到客户端的迭代查询请求时,首先进行本地数据查询,本地数据查询失败后,则在本地缓存中查询目标二级ENUM/DNS服务器的地址信息,如果查询成功,则根据查询到的目标二级ENUM/DNS服务器的地址信息直接向目标二级ENUM/DNS服务器发起查询;否则,向一级ENUM/DNS服务器发起查询,并将一级ENUM/DNS服务器返回的相关域名称及地址信息缓存到本地。应用本发明技术方案,减少了ENUM/DNS服务器的负担,提高了系统的可靠性。
Description
技术领域
本发明涉及IMS(IP Multimedia Subsystem,IP多媒体子系统)网络的ENUM(Telephone Number Mapping working group,电话号码映射工作组)/DNS(Domain Name System,域名系统)服务器领域,更具体地,涉及一种服务器迭代查询方法及系统。
背景技术
中国移动通信企业标准中,《中国移动ENUM-DNS接口和设备规范》指出:一级ENUM/DNS服务器与二级ENUM/DNS服务器之间的查询方式有两种:递归查询(必选)和迭代方式(可选)。
ENUM/DNS服务器接收到一个迭代形式的查询后,需要给出最终的查询结果或者失败结果。《中国移动ENUM-DNS接口和设备规范》中提到,如果在本服务器查询不到,需要在应答中返回权威服务器的域名和IP地址。前ENUM/DNS服务器再向应答中返回的权威ENUM/DNS服务器查询,直到获取查询结果。
现有服务器的查询方式存在如下问题:在整个IMS系统中,一级ENUM/DNS服务器往往只有一套,从而很容易导致一级ENUM/DNS服务器的负荷过大。
发明内容
本发明解决的技术问题是提供一种服务器迭代查询方法及系统,有效减少一级ENUM/DNS服务器的负担,提高了查询的响应速度。
为解决上述技术问题,本发明提供了一种服务器迭代查询方法,所述方法包括:
二级电话号码映射工作组/域名系统(ENUM/DNS)服务器收到客户端的迭代查询请求时,首先进行本地数据查询,本地数据查询失败后,则在本地缓存中查询目标二级ENUM/DNS服务器的地址信息,如果查询成功,则根据查询到的目标二级ENUM/DNS服务器的地址信息直接向所述目标二级ENUM/DNS服务器发起查询;否则,向一级ENUM/DNS服务器发起查询,并将所述一级ENUM/DNS服务器返回的相关域名称及地址信息缓存到本地。
进一步地,所述二级ENUM/DNS服务器向所述一级ENUM/DNS服务器发起查询时,所述一级ENUM/DNS服务器首先向数据库发起域名服务器(NS)查询,收到NS查询结果后,将NS查询结果中的目标二级ENUM/DNS服务器名称(nameserver)及与客户端的查询名相关的名称(name)放入权威服务器域名信息(Authority)中,并用所述NS查询结果中的所述nameserver向数据库发起地址查询(A查询);收到A查询结果后,将A查询结果中的目标二级ENUM/DNS服务器的IP地址信息放入权威服务器地址信息(Additional)中,最后将所述Authority和Additional返回给所述二级ENUM/DNS服务器。
进一步地,所述二级ENUM/DNS服务器收到所述Authority和Additional后,将所述Authority中的name字段及Additional中的IP地址信息缓存到域名-地址信息映射表中,在收到迭代查询请求后,通过以下方式在本地缓存中查询目标二级ENUM/DNS服务器的地址信息:
根据所述域名-地址信息映射表中的name字段与所述迭代查询请求中的号码或域名进行匹配,如果匹配到,则匹配到的name字段所对应的IP地址信息即为所述目标二级ENUM/DNS服务器的地址信息,查询成功。
进一步地,所述二级ENUM/DNS服务器采用如下匹配方式对所述迭代查询请求中的号码进行匹配:
将所述号码中的号段逆序排列,转换为“类别(zone)+逆序号段”的形式后,通过左匹配的方式,根据所述域名-地址信息映射表中的name字段与所述转换后的形式进行匹配,并将匹配到的最长的记录作为匹配结果。
进一步地,所述二级ENUM/DNS服务器采用如下匹配方式对所述迭代查询请求中的域名进行匹配:
将所述迭代查询请求中的域名按照域名分为多层,根据所述域名-地址信息映射表中的name字段与所述分层后的多层域名进行匹配,并将匹配到的最长的记录作为匹配结果。
进一步地,所述一级ENUM/DNS服务器在向数据库发起NS查询时,采用如下匹配方式对NS查询请求中的号码或域名进行匹配:
将所述NS查询请求中的号码中的号段逆序排列,转换为“zone+逆序号段”的形式后,通过左匹配的方式,根据所述域名-地址信息映射表中的name字段与所述转换后的形式进行匹配,并将匹配到的最长的记录作为匹配结果;
将所述NS查询请求中的域名按照域名分为多层,根据所述域名-地址信息映射表中的name字段与所述分层后的多层域名进行匹配,并将匹配到的最长的记录作为匹配结果。
本发明还提供了一种服务器迭代查询系统,所述系统包括二级ENUM/DNS服务器,所述二级ENUM/DNS服务器进一步包括:地址信息缓存模块、地址信息查询模块,
所述地址信息查询模块用于,收到迭代查询请求时,首先进行本地数据查询,本地数据查询失败后,则在本地缓存中查询目标二级ENUM/DNS服务器的地址信息,如果查询成功,则根据查询到的目标二级ENUM/DNS服务器的地址信息直接向所述目标二级ENUM/DNS服务器发起查询;否则,向一级ENUM/DNS服务器发起查询;
所述地址信息缓存模块用于,对收到的所述一级ENUM/DNS服务器返回的相关域名称及地址信息进行缓存。
此外,所述系统还包括一级ENUM/DNS服务器中的查询处理模块,
所述查询处理模块用于,收到所述地址信息查询模块发起的查询时,首先向数据库发起NS查询,收到NS查询结果后,将NS查询结果中的nameserver及name放入Authority中,并用NS查询结果中的nameserver向数据库发起A查询;收到A查询结果后,将A查询结果中的目标二级ENUM/DNS服务器的IP地址信息放入Additional中,最后将所述Authority和Additional返回给所述地址信息查询模块;
所述地址信息缓存模块进一步用于,收到所述Authority和Additional后,将所述Authority中的name字段及Additional中的IP地址信息缓存到域名-地址信息映射表中。
此外,所述地址信息查询模块进一步用于,通过以下方式在本地缓存中查询目标二级ENUM/DNS服务器的地址信息:
根据所述域名-地址信息映射表中的name字段与所述迭代查询请求中的号码或域名进行匹配,如果匹配到,则匹配到的name字段所对应的IP地址信息即为所述目标二级ENUM/DNS服务器的地址信息,查询成功。
此外,所述地址信息查询模块进一步用于,采用如下匹配方式对所述迭代查询请求中的号码进行匹配:
将所述号码中的号段逆序排列,转换为“zone+逆序号段”的形式后,通过左匹配的方式,根据所述域名-地址信息映射表中的name字段与所述转换后的形式进行匹配,并将匹配到的最长的记录作为匹配结果。
此外,所述地址信息查询模块进一步用于,采用如下匹配方式对所述迭代查询请求中的域名进行匹配:
将所述迭代查询请求中的域名按照域名分为多层,根据所述域名-地址信息映射表中的name字段与所述分层后的多层域名进行匹配,并将匹配到的最长的记录作为匹配结果。
此外,所述查询处理模块进一步用于,在向数据库发起NS查询时,采用如下匹配方式对NS查询请求中的号码或域名进行匹配:
将所述NS查询请求中的号码中的号段逆序排列,转换为“zone+逆序号段”的形式后,通过左匹配的方式,根据所述域名-地址信息映射表中的name字段与所述转换后的形式进行匹配,并将匹配到的最长的记录作为匹配结果;
将所述NS查询请求中的域名按照域名分为多层,根据所述域名-地址信息映射表中的name字段与所述分层后的多层域名进行匹配,并将匹配到的最长的记录作为匹配结果。
与现有技术相比,本发明至少具有如下特点:
本发明在二级ENUM/DNS服务器采用缓存技术,二级ENUM/DNS服务器在收到迭代查询请求后,如果在缓存中查到目标二级ENUM/DNS服务器IP地址,则直接将查询请求转向目标二级ENUM/DNS服务器,不需要再去一级ENUM/DNS服务器查询,从而能够有效减少一级ENUM/DNS服务器的负担;
采用本发明方案的以及和二级ENUM/DNS服务器,分工明确,在发起查询的二级ENUM/DNS服务器上就可以了解整个查询的流程;
此外,一级ENUM/DNS服务器将NS(Name Server,域名服务器)查询结果中的与客户端的查询名相关的名称(name)放入权威服务器域名信息(Authority)字段中,然后用NS查询结果中的nameserver发起A(Address,地址)查询,最后将A查询的结果(nameserver对应的IP地址)放入权威服务器地址信息(Additional)字段中,返回给二级ENUM-DNS服务器。从而避免了二级ENUM-DNS服务器分别向一级ENUM-DNS服务器发起NS查询和A查询,从而简化了查询的流程,且有效地减少了一级ENUM/DNS服务器的负担,提高了系统的可靠性。
附图说明
图1为现有技术的迭代查询系统的总体架构图;
图2为本发明实施例的迭代查询的流程示意图;
图3为本发明实施例的一级ENUM/DNS服务器的迭代查询流程示意图;
图4为本发明实施例的服务器迭代查询系统的示意框图。
具体实施方式
为了解决现有查询方式存在的问题,本发明提供一种实现IMS网络中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服务器首先向数据库发起域名服务器(NS)查询,收到NS查询结果后,将NS查询结果中的目标二级ENUM/DNS服务器名称(nameserver)及与客户的查询名相关的名称(name)放入权威服务器域名信息(Authority)中,并用NS查询结果中的nameserver向数据库发起A查询;收到A查询结果后,将A查询结果中的目标二级ENUM/DNS服务器的IP地址信息放入权威服务器地址信息(Additional)中,最后将所述Authority和Additional返回给所述二级ENUM/DNS服务器。
进一步地,所述二级ENUM/DNS服务器将所述Authority中的name字段及Additional中的IP地址信息缓存到域名-地址信息映射表中;
所述二级ENUM/DNS服务器进行本地数据查询失败后,通过以下方式在本地缓存中查询目标二级ENUM/DNS服务器的地址信息:
根据所述域名-地址信息映射表中的name字段与所述迭代查询请求中的号码或域名进行匹配,如果匹配到,则匹配到的name字段所对应的IP地址信息即为所述目标二级ENUM/DNS服务器的地址信息,查询成功。
进一步地,所述二级ENUM/DNS服务器采用如下匹配方式对所述迭代查询请求中的号码进行匹配:
将所述号码中的号段逆序排列,转换为“类别(zone)+逆序号段”的形式后,通过左匹配的方式,根据所述域名-地址信息映射表中的name字段与所述转换后的形式进行匹配,并将匹配到的最长的记录作为匹配结果。
进一步地,所述二级ENUM/DNS服务器采用如下匹配方式对所述迭代查询请求中的域名进行匹配:
将所述迭代查询请求中的域名按照域名分为多层,根据所述域名-地址信息映射表中的name字段与所述分层后的多层域名进行匹配,并将匹配到的最长的记录作为匹配结果。
需要说明的是,本发明中的二级缓存功能,与通常意义的缓存具有实质性的区别。本发明中缓存方法是为适应ENUM/DNS系统中查询专门设计的。其具体设计方案如下:
二级ENUM/DNS系统的缓存采用domainname对目标二级ENUM/DNS服务器的IP地址列表;同时,优选地,本发明支持对目标二级ENUM/DNS服务器轮流选择的方案,从而实现二级ENUM/DNS服务器之间的负荷均衡。此外,若以NAPTR查询为例:一级ENUM/DNS配置的号段为1381381对应某个目标二级ENUM/DNS服务器,那么就要求该号段下的所有号码都应该对应到该目标二级ENUM/DNS服务器,因此缓存采用的domainname不是客户端发起查询请求中的domainname,而是一级查询返回结果中Authority的与客户端的查询名相关的名称(name)字段的内容,这样查询匹配的结果更精确。如果是带号码的NAPTR查询,该字段为号段形式;如果是DNS查询,该字段为查询请求中的domainname本身,或者是与其最接近的父域名。为此,本发明中结合eBase数据库技术,设计了实现号段的最精确匹配和域名查询分层的最精确匹配的ENUM/DNS中缓存的匹配方案。
(1)号段的最精确匹配
假设客户端发起查询的号码为2.2.2.2.1.8.3.1.8.3.1.6.8.mms.e164.cnct,那么,则在本服务器的ebase数据库中,如果在mms.e164.cnct该zone(类别)下面有86138和861381这两个号段,则它们在eBase数据库中的形式为:mms.e164.cnct.86138和mms.e164.cnct.861381。首先将客户端查询请求的号码的形式转换为“zone+逆序号段”的形式:mms.e164.cnct.8613813812222;然后在eBase数据库中通过左匹配的方式,可以保证我们最终得到的结果是缓存中所有数据中的最精确的记录,即,得到的结果是861381这个号段所对应的记录。
(2)域名查询分层的最精确匹配
假设客户端发起查询的domainname为:“_sip._udp.js.ctcims.cn”,那么,在ebase数据库中,如果存在domainname为:js.ctcims.cn和ctcims.cn这两条记录,则本发明首先将查询请求中的domainname按照域名分层的方法进行处理,例如,在本示例中将查询请求中的domainname按照域名分层(即以点分层)为:_sip._udp.js.ctcims.cn,_udp.js.ctcims.cn,js.ctcims.cn,ctcims.cn和cn,随后在我们的eBase数据库中用SQL(Structured QueryLanguage,结构化查询语言)中的“in”,同时辅助eBase数据库中的特定选择记录的功能(即可以选择最长的匹配记录),可以保证得到的结果是所有配置数据中的最精确的记录,即得到结果是js.ctcims.cn这个domainname所对应记录。
本发明提供的迭代查询方法的具体实现主要包括以下内容:
1.二级ENUM/DNS服务器系统的业务机运用了自研的内存数据库ebase技术,在每台业务机上装有一套ebase;二级ENUM/DNS服务器在收到客户端的迭代查询请求时,每台业务机会通过查询本机的ebase中的缓存表,根据查询的结果确定直接去另一个二级ENUM/DNS服务器查询,或者转向一级ENUM/DNS服务器查询。
2.一级ENUM/DNS服务器收到迭代查询请求后,首先进行NS查询,并将查询到的结果放入Authority中,然后用NS查询到的nameserver发起A查询,最后将A查询的结果放入Additional字段中,返回给二级ENUM-DNS服务器,结束一级ENUM-DNS服务器的迭代查询流程。
3.二级ENUM/DNS服务器得到从本地缓存中查询到的或者从一级ENUM/DNS服务器查询到的目标二级ENUM/DNS服务器的地址后,向该二级ENUM/DNS服务器转发请求,并将最终的查询结果发送给客户端。
下面结合附图和实例对IMS网络中ENUM-DNS服务器迭代方式查询的实现,技术领域应用方法进行说明。
图1是迭代查询的总体架构图,该图遵循《中国移动CM-IMSENUM-DNS设备规范》中对IMS网络中迭代查询的描述。需要说明的是,此处是以NAPTR查询为例进行说明,对于DNS查询该流程同样适用。
假设广东IMS用户拨打江苏IMS用户,则具体迭代查询的流程如下:
步骤1,广东省S-CSCF向广东省二级ENUM/DNS服务器发送NAPTR(Naming Authority Pointer,名称权威指针)查询请求;
步骤2,广东省二级ENUM/DNS服务器查询失败,根据本地存储的一级ENUM/DNS地址信息,向一级ENUM/DNS服务器发送NAPTR查询请求;
步骤3,一级ENUM/DNS服务器根据本地存储的NS记录,判断该号段用户对应归属省为江苏省,向广东省二级ENUM/DNS服务器返回江苏省二级ENUM/DNS服务器的地址信息;
步骤4,广东省二级ENUM/DNS向江苏省二级ENUM/DNS服务器发送NAPTR查询请求;
步骤5,江苏省二级ENUM/DNS服务器返回查询结果至广东省二级ENUM/DNS服务器;
步骤6,广东省二级ENUM/DNS服务器将查询结果返回给客户端,如ENUM/DNS的客户端之一S-CSCF(服务-呼叫会话控制功能)。
图2为本发明中迭代查询的整体流程图,仍然假设是广东的二级ENUM/DNS服务器发起迭代查询流程,江苏的为目标二级ENUM/DNS服务器,具体查询流程如下:
步骤201,广东二级ENUM/DNS服务器收到客户端的查询请求,首先进行本地数据查询,如果查询成功,将最终的查询结果返回给客户端,否则进入下一步;
步骤202,到eBase数据库查询缓存数据,如果查询命中,则直接去目标二级ENUM/DNS服务器继续查询,否则进入下一步;
步骤203,将该查询请求转向一级ENUM/DNS服务器,一级返回目标二级ENUM/DNS服务器的域名及IP地址等信息;
步骤204,广东二级ENUM/DNS服务器收到一级返回的Authority和Additional时,根据其中相应的Additional部分中的IP地址信息,将该迭代查询请求转向目标二级ENUM/DNS服务器继续查询;
同时,广东二级ENUM/DNS服务器还会处理一级ENUM/DNS服务器返回的Authority和Additional部分的信息,并在eBase中对Authority中的name字段及Additional中的IP地址信息进行缓存,例如,可以缓存到一张域名-地址信息映射表中,以便后续收到迭代查询请求时,根据该域名-地址信息映射表进行查询。
步骤205,目标二级ENUM/DNS服务器收到查询请求后,进行本地查询,并将查询的最终结果返回给广东二级ENUM/DNS服务器;
步骤206,广东二级ENUM/DNS服务器收到最终的查询结果后,将该最终的查询结果返回给客户端。
图3是本发明实施例的一级ENUM/DNS服务器系统的迭代查询流程图,如图3所示,该流程具体描述如下:
步骤301,一级ENUM/DNS服务器收到迭代查询请求后,先到eBase数据库进行NS查询;
步骤302,eBase数据库返回NS查询响应,NS查询响应中包含有name和nameserver等NS查询结果;
步骤303,一级ENUM/DNS服务器将NS查询响应中的name和nameserver放入Authority中,然后用该nameserver向eBase数据库发起A查询;
步骤304,eBase数据库返回A查询结果(目标二级ENUM/DNS服务器的IP地址),一级ENUM/DNS服务器将A查询的结果放入Additional中,最后将整个查询结果(Authority和Additional)返回给二级ENUM/DNS服务器。
此外,在本发明中,一级ENUM/DNS服务器进行NS查询时,与二级ENUM/DNS服务器查询缓存一样,也可以进行号段最精确匹配或者域名分层的最精确匹配,并可使用存储过程实现,其查询匹配过程与二级ENUM/DNS服务器查询缓存的匹配方式相同,在此不再赘述。
相应地,本发明实施例还提供了一种服务器迭代查询系统,如图4所示,该系统包括二级ENUM/DNS服务器,所述二级ENUM/DNS服务器进一步包括:地址信息缓存模块、地址信息查询模块,其中:
所述地址信息查询模块用于,收到迭代查询请求时,首先进行本地数据查询,本地数据查询失败后,则在本地缓存中查询目标二级ENUM/DNS服务器的地址信息,如果查询成功,则根据查询到的目标二级ENUM/DNS服务器的地址信息直接向所述目标二级ENUM/DNS服务器发起查询;否则,向一级ENUM/DNS服务器发起查询;
所述地址信息缓存模块用于,对收到的所述一级ENUM/DNS服务器返回的相关域名称及地址信息进行缓存。
此外,所述系统还包括一级ENUM/DNS服务器中的查询处理模块,
所述查询处理模块用于,收到所述地址信息查询模块发起的查询时,首先向数据库发起NS查询,收到NS查询结果后,将NS查询结果中的nameserver及name放入Authority中,并用NS查询结果中的nameserver向数据库发起A查询;收到A查询结果后,将A查询结果中的目标二级ENUM/DNS服务器的IP地址信息放入Additional中,最后将所述Authority和Additional返回给所述地址信息查询模块;
所述地址信息缓存模块进一步用于,收到所述Authority和Additional后,将所述Authority中的name字段及Additional中的IP地址信息缓存到域名-地址信息映射表中。
此外,所述地址信息查询模块进一步用于,收到迭代查询请求后,通过以下方式在本地缓存中查询目标二级ENUM/DNS服务器的地址信息:
根据所述域名-地址信息映射表中的name字段与所述迭代查询请求中的号码或域名进行匹配,如果匹配到,则匹配到的name字段所对应的IP地址信息即为所述目标二级ENUM/DNS服务器的地址信息,查询成功。
此外,所述地址信息查询模块进一步用于,采用如下匹配方式对所述迭代查询请求中的号码进行匹配:
将所述号码中的号段逆序排列,转换为“zone+逆序号段”的形式后,通过左匹配的方式,根据所述域名-地址信息映射表中的name字段与所述转换后的形式进行匹配,并将匹配到的最长的记录作为匹配结果。
此外,所述地址信息查询模块进一步用于,采用如下匹配方式对所述迭代查询请求中的域名进行匹配:
将所述迭代查询请求中的域名按照域名分为多层,根据所述域名-地址信息映射表中的name字段与所述分层后的多层域名进行匹配,并将匹配到的最长的记录作为匹配结果。
此外,所述查询处理模块进一步用于,在向数据库发起NS查询时,采用如下匹配方式对NS查询请求中的号码或域名进行匹配:
将所述NS查询请求中的号码中的号段逆序排列,转换为“zone+逆序号段”的形式后,通过左匹配的方式,根据所述域名-地址信息映射表中的name字段与所述转换后的形式进行匹配,并将匹配到的最长的记录作为匹配结果;
将所述NS查询请求中的域名按照域名分为多层,根据所述域名-地址信息映射表中的name字段与所述分层后的多层域名进行匹配,并将匹配到的最长的记录作为匹配结果。
本发明可以应用于IMS网络的ENUM-DNS服务器数据查询,应用本发明方法,同类非本地数据查询,在源二级ENUM/DNS服务器通过查询缓存信息就可以知道应该将该请求发往哪个目标二级ENUM/DNS服务器,而不用再向一级ENUM/DNS服务器查询,同时非本地数据的查询结果将不再需要从一级ENUM/DNS服务器中转,有效地减少了一级ENUM/DNS服务器的负担,从而有效提高了系统的可靠性。
以上仅为本发明的优选实施案例而已,并不用于限制本发明,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
Claims (12)
1.一种服务器迭代查询方法,其特征在于,所述方法包括:
二级电话号码映射工作组/域名系统(ENUM/DNS)服务器收到客户端的迭代查询请求时,首先进行本地数据查询,本地数据查询失败后,则在本地缓存中查询目标二级ENUM/DNS服务器的地址信息,如果查询成功,则根据查询到的目标二级ENUM/DNS服务器的地址信息直接向所述目标二级ENUM/DNS服务器发起查询;否则,向一级ENUM/DNS服务器发起查询,并将所述一级ENUM/DNS服务器返回的相关域名称及地址信息缓存到本地。
2.如权利要求1所述的方法,其特征在于,
所述二级ENUM/DNS服务器向所述一级ENUM/DNS服务器发起查询时,所述一级ENUM/DNS服务器首先向数据库发起域名服务器(NS)查询,收到NS查询结果后,将NS查询结果中的目标二级ENUM/DNS服务器名称(nameserver)及与客户端的查询名相关的名称(name)放入权威服务器域名信息(Authority)中,并用所述NS查询结果中的所述nameserver向数据库发起地址查询(A查询);收到A查询结果后,将A查询结果中的目标二级ENUM/DNS服务器的IP地址信息放入权威服务器地址信息(Additional)中,最后将所述Authority和Additional返回给所述二级ENUM/DNS服务器。
3.如权利要求2所述的方法,其特征在于,
所述二级ENUM/DNS服务器收到所述Authority和Additional后,将所述Authority中的name字段及Additional中的IP地址信息缓存到域名-地址信息映射表中,在收到迭代查询请求后,通过以下方式在本地缓存中查询目标二级ENUM/DNS服务器的地址信息:
根据所述域名-地址信息映射表中的name字段与所述迭代查询请求中的号码或域名进行匹配,如果匹配到,则匹配到的name字段所对应的IP地址信息即为所述目标二级ENUM/DNS服务器的地址信息,查询成功。
4.如权利要求3所述的方法,其特征在于,
所述二级ENUM/DNS服务器采用如下匹配方式对所述迭代查询请求中的号码进行匹配:
将所述号码中的号段逆序排列,转换为“类别(zone)+逆序号段”的形式后,通过左匹配的方式,根据所述域名-地址信息映射表中的name字段与所述转换后的形式进行匹配,并将匹配到的最长的记录作为匹配结果。
5.如权利要求3所述的方法,其特征在于,
所述二级ENUM/DNS服务器采用如下匹配方式对所述迭代查询请求中的域名进行匹配:
将所述迭代查询请求中的域名按照域名分为多层,根据所述域名-地址信息映射表中的name字段与所述分层后的多层域名进行匹配,并将匹配到的最长的记录作为匹配结果。
6.如权利要求2所述的方法,其特征在于,
所述一级ENUM/DNS服务器在向数据库发起NS查询时,采用如下匹配方式对NS查询请求中的号码或域名进行匹配:
将所述NS查询请求中的号码中的号段逆序排列,转换为“zone+逆序号段”的形式后,通过左匹配的方式,根据所述域名-地址信息映射表中的name字段与所述转换后的形式进行匹配,并将匹配到的最长的记录作为匹配结果;
将所述NS查询请求中的域名按照域名分为多层,根据所述域名-地址信息映射表中的name字段与所述分层后的多层域名进行匹配,并将匹配到的最长的记录作为匹配结果。
7.一种服务器迭代查询系统,其特征在于,所述系统包括二级ENUM/DNS服务器,所述二级ENUM/DNS服务器进一步包括:地址信息缓存模块、地址信息查询模块,其中:
所述地址信息查询模块用于,收到迭代查询请求时,首先进行本地数据查询,本地数据查询失败后,则在本地缓存中查询目标二级ENUM/DNS服务器的地址信息,如果查询成功,则根据查询到的目标二级ENUM/DNS服务器的地址信息直接向所述目标二级ENUM/DNS服务器发起查询;否则,向一级ENUM/DNS服务器发起查询;
所述地址信息缓存模块用于,对收到的所述一级ENUM/DNS服务器返回的相关域名称及地址信息进行缓存。
8.如权利要求7所述的系统,其特征在于,所述系统还包括一级ENUM/DNS服务器中的查询处理模块,
所述查询处理模块用于,收到所述地址信息查询模块发起的查询时,首先向数据库发起NS查询,收到NS查询结果后,将NS查询结果中的nameserver及name放入Authority中,并用NS查询结果中的nameserver向数据库发起A查询;收到A查询结果后,将A查询结果中的目标二级ENUM/DNS服务器的IP地址信息放入Additional中,最后将所述Authority和Additional返回给所述地址信息查询模块;
所述地址信息缓存模块进一步用于,收到所述Authority和Additional后,将所述Authority中的name字段及Additional中的IP地址信息缓存到域名-地址信息映射表中。
9.如权利要求8所述的系统,其特征在于,
所述地址信息查询模块进一步用于,通过以下方式在本地缓存中查询目标二级ENUM/DNS服务器的地址信息:
根据所述域名-地址信息映射表中的name字段与所述迭代查询请求中的号码或域名进行匹配,如果匹配到,则匹配到的name字段所对应的IP地址信息即为所述目标二级ENUM/DNS服务器的地址信息,查询成功。
10.如权利要求9所述的系统,其特征在于,
所述地址信息查询模块进一步用于,采用如下匹配方式对所述迭代查询请求中的号码进行匹配:
将所述号码中的号段逆序排列,转换为“zone+逆序号段”的形式后,通过左匹配的方式,根据所述域名-地址信息映射表中的name字段与所述转换后的形式进行匹配,并将匹配到的最长的记录作为匹配结果。
11.如权利要求9所述的系统,其特征在于,
所述地址信息查询模块进一步用于,采用如下匹配方式对所述迭代查询请求中的域名进行匹配:
将所述迭代查询请求中的域名按照域名分为多层,根据所述域名-地址信息映射表中的name字段与所述分层后的多层域名进行匹配,并将匹配到的最长的记录作为匹配结果。
12.如权利要求8所述的系统,其特征在于,
所述查询处理模块进一步用于,在向数据库发起NS查询时,采用如下匹配方式对NS查询请求中的号码或域名进行匹配:
将所述NS查询请求中的号码中的号段逆序排列,转换为“zone+逆序号段”的形式后,通过左匹配的方式,根据所述域名-地址信息映射表中的name字段与所述转换后的形式进行匹配,并将匹配到的最长的记录作为匹配结果;
将所述NS查询请求中的域名按照域名分为多层,根据所述域名-地址信息映射表中的name字段与所述分层后的多层域名进行匹配,并将匹配到的最长的记录作为匹配结果。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010262753.1A CN101917493B (zh) | 2010-08-18 | 2010-08-18 | 一种服务器迭代查询方法及系统 |
PCT/CN2011/071198 WO2012022142A1 (zh) | 2010-08-18 | 2011-02-23 | 一种服务器迭代查询方法、系统以及一种服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010262753.1A CN101917493B (zh) | 2010-08-18 | 2010-08-18 | 一种服务器迭代查询方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101917493A true CN101917493A (zh) | 2010-12-15 |
CN101917493B CN101917493B (zh) | 2015-12-16 |
Family
ID=43324875
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010262753.1A Expired - Fee Related CN101917493B (zh) | 2010-08-18 | 2010-08-18 | 一种服务器迭代查询方法及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101917493B (zh) |
WO (1) | WO2012022142A1 (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102355654A (zh) * | 2011-07-26 | 2012-02-15 | 中兴通讯股份有限公司 | 设备识别方法及装置 |
WO2012022142A1 (zh) * | 2010-08-18 | 2012-02-23 | 中兴通讯股份有限公司 | 一种服务器迭代查询方法、系统以及一种服务器 |
CN102404233A (zh) * | 2011-12-27 | 2012-04-04 | 中国电信股份有限公司 | 一种控制ims用户路由查询的方法以及ims网络 |
CN102904858A (zh) * | 2011-07-26 | 2013-01-30 | 中兴通讯股份有限公司 | 一种ims网络中的数据存储、查询方法 |
WO2015067206A1 (zh) * | 2013-11-08 | 2015-05-14 | 腾讯科技(深圳)有限公司 | 一种文件查找的方法及终端 |
CN105635342A (zh) * | 2016-01-26 | 2016-06-01 | 华为技术有限公司 | 建立连接的方法、域名服务器以及存储节点 |
CN106375492A (zh) * | 2016-08-31 | 2017-02-01 | 贵州白山云科技有限公司 | 一种cdn业务的处理方法、相关设备及通信系统 |
CN107193851A (zh) * | 2016-06-27 | 2017-09-22 | 北京新媒传信科技有限公司 | 数据查询方法及装置 |
CN108881515A (zh) * | 2018-07-09 | 2018-11-23 | 迈普通信技术股份有限公司 | 域名解析方法、装置及网络设备 |
CN109995885A (zh) * | 2017-12-30 | 2019-07-09 | 中国移动通信集团辽宁有限公司 | 域名空间结构呈现方法、装置、设备及介质 |
CN112217916A (zh) * | 2020-09-29 | 2021-01-12 | 南京优速网络科技有限公司 | 一种新型的工业互联网标识解析递归服务器的缓存方法和系统 |
CN116405927A (zh) * | 2023-05-30 | 2023-07-07 | 中国铁道科学研究院集团有限公司通信信号研究所 | 一种功能寻址分级处理和功能号快速维护的方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104348926B (zh) * | 2013-07-31 | 2017-10-17 | 中国移动通信集团吉林有限公司 | Enum/dns的递归查询方法、装置及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020178238A1 (en) * | 2001-05-23 | 2002-11-28 | Thomas Fletcher | Caching address information in a communications system |
CN101094129A (zh) * | 2006-06-20 | 2007-12-26 | 腾讯科技(深圳)有限公司 | 一种域名访问方法及客户端 |
CN101431539A (zh) * | 2008-12-11 | 2009-05-13 | 华为技术有限公司 | 一种域名解析方法、系统及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100536443C (zh) * | 2003-05-22 | 2009-09-02 | 华为技术有限公司 | 一种软交换设备路由查找方法 |
US8156243B2 (en) * | 2008-03-31 | 2012-04-10 | Amazon Technologies, Inc. | Request routing |
CN101917493B (zh) * | 2010-08-18 | 2015-12-16 | 中兴通讯股份有限公司 | 一种服务器迭代查询方法及系统 |
-
2010
- 2010-08-18 CN CN201010262753.1A patent/CN101917493B/zh not_active Expired - Fee Related
-
2011
- 2011-02-23 WO PCT/CN2011/071198 patent/WO2012022142A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020178238A1 (en) * | 2001-05-23 | 2002-11-28 | Thomas Fletcher | Caching address information in a communications system |
CN101094129A (zh) * | 2006-06-20 | 2007-12-26 | 腾讯科技(深圳)有限公司 | 一种域名访问方法及客户端 |
CN101431539A (zh) * | 2008-12-11 | 2009-05-13 | 华为技术有限公司 | 一种域名解析方法、系统及装置 |
Non-Patent Citations (2)
Title |
---|
P.MOCKAPETRIS: "《Domain Names-Implementation and Specification》", 《NETWORK WORKING GROUP REQUEST FOR COMMENTS》 * |
王胜明,等: "《域名系统的性能优化方案》", 《航空计算技术》 * |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012022142A1 (zh) * | 2010-08-18 | 2012-02-23 | 中兴通讯股份有限公司 | 一种服务器迭代查询方法、系统以及一种服务器 |
CN102355654B (zh) * | 2011-07-26 | 2017-11-14 | 中兴通讯股份有限公司 | 设备识别方法及装置 |
CN102904858A (zh) * | 2011-07-26 | 2013-01-30 | 中兴通讯股份有限公司 | 一种ims网络中的数据存储、查询方法 |
CN102355654A (zh) * | 2011-07-26 | 2012-02-15 | 中兴通讯股份有限公司 | 设备识别方法及装置 |
CN102904858B (zh) * | 2011-07-26 | 2017-04-19 | 中兴通讯股份有限公司 | 一种ims网络中的数据存储、查询方法 |
CN102404233A (zh) * | 2011-12-27 | 2012-04-04 | 中国电信股份有限公司 | 一种控制ims用户路由查询的方法以及ims网络 |
WO2015067206A1 (zh) * | 2013-11-08 | 2015-05-14 | 腾讯科技(深圳)有限公司 | 一种文件查找的方法及终端 |
CN105635342A (zh) * | 2016-01-26 | 2016-06-01 | 华为技术有限公司 | 建立连接的方法、域名服务器以及存储节点 |
CN105635342B (zh) * | 2016-01-26 | 2019-04-19 | 华为技术有限公司 | 建立连接的方法、域名服务器以及存储节点 |
CN107193851B (zh) * | 2016-06-27 | 2020-09-15 | 北京新媒传信科技有限公司 | 数据查询方法及装置 |
CN107193851A (zh) * | 2016-06-27 | 2017-09-22 | 北京新媒传信科技有限公司 | 数据查询方法及装置 |
CN106375492B (zh) * | 2016-08-31 | 2020-02-11 | 贵州白山云科技股份有限公司 | 一种cdn业务的处理方法、相关设备及通信系统 |
CN111245972A (zh) * | 2016-08-31 | 2020-06-05 | 贵州白山云科技股份有限公司 | 一种域名解析方法、装置、介质及设备 |
CN106375492A (zh) * | 2016-08-31 | 2017-02-01 | 贵州白山云科技有限公司 | 一种cdn业务的处理方法、相关设备及通信系统 |
CN111245972B (zh) * | 2016-08-31 | 2023-07-28 | 贵州白山云科技股份有限公司 | 一种域名解析方法、装置、介质及设备 |
CN109995885A (zh) * | 2017-12-30 | 2019-07-09 | 中国移动通信集团辽宁有限公司 | 域名空间结构呈现方法、装置、设备及介质 |
CN109995885B (zh) * | 2017-12-30 | 2022-06-03 | 中国移动通信集团辽宁有限公司 | 域名空间结构呈现方法、装置、设备及介质 |
CN108881515A (zh) * | 2018-07-09 | 2018-11-23 | 迈普通信技术股份有限公司 | 域名解析方法、装置及网络设备 |
CN112217916A (zh) * | 2020-09-29 | 2021-01-12 | 南京优速网络科技有限公司 | 一种新型的工业互联网标识解析递归服务器的缓存方法和系统 |
CN112217916B (zh) * | 2020-09-29 | 2024-02-27 | 南京优速网络科技有限公司 | 一种新型的工业互联网标识解析递归服务器的缓存方法和系统 |
CN116405927A (zh) * | 2023-05-30 | 2023-07-07 | 中国铁道科学研究院集团有限公司通信信号研究所 | 一种功能寻址分级处理和功能号快速维护的方法 |
CN116405927B (zh) * | 2023-05-30 | 2023-09-22 | 中国铁道科学研究院集团有限公司通信信号研究所 | 一种功能寻址分级处理和功能号快速维护的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101917493B (zh) | 2015-12-16 |
WO2012022142A1 (zh) | 2012-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101917493B (zh) | 一种服务器迭代查询方法及系统 | |
CN106506729B (zh) | 一种基于dns视图的dns策略解析方法及装置 | |
CN102469167B (zh) | 域名查询的实现方法和系统 | |
CN111245972B (zh) | 一种域名解析方法、装置、介质及设备 | |
US9636053B2 (en) | Method for distributing contact information between applications | |
US9264358B2 (en) | Alias resource record sets | |
US7573903B2 (en) | IPv6/IPv4 translator | |
CN107623751B (zh) | Dns网络系统、域名解析方法及系统 | |
CN108574742B (zh) | 域名信息收集方法及域名信息收集装置 | |
CN102340549B (zh) | 一种域名解析方法及装置 | |
CN104917851A (zh) | 信息处理方法及dns缓存服务器 | |
CN101431539A (zh) | 一种域名解析方法、系统及装置 | |
EP1482713A2 (en) | System and method for routing messages over disparate networks | |
CN104519146A (zh) | 基于用户位置进行域名解析服务的方法与系统 | |
CN101175097A (zh) | 用于针对ims服务的灵活的地址机制的解析的解决方案 | |
US20230128125A1 (en) | Systems and methods for processing requests for content of a content distribution network | |
EP2501097A1 (en) | Domain name processing method and domain name server | |
WO2007021223A1 (en) | Provision of public service identities | |
CN109639748A (zh) | Dns服务器的缓存更新方法、装置、系统及域名系统 | |
CA3048125A1 (en) | Methods, apparatuses, and computer programs for data processing, and hierarchical domain name system zone files | |
CN114205330A (zh) | 域名解析方法、域名解析装置、服务器以及存储介质 | |
CN101043526A (zh) | 在ims网络中处理消息的方法、装置及系统 | |
CN102307248A (zh) | 互联网检索方法及系统 | |
CN110677512B (zh) | 一种地址解析方法及装置 | |
WO2017124883A1 (zh) | 一种新型权威域名解析服务方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20151216 Termination date: 20170818 |
|
CF01 | Termination of patent right due to non-payment of annual fee |