WO2006131045A1 - Procédé de stockage et de recherche de nom de domaine de numéros e.164 - Google Patents

Procédé de stockage et de recherche de nom de domaine de numéros e.164 Download PDF

Info

Publication number
WO2006131045A1
WO2006131045A1 PCT/CN2006/000862 CN2006000862W WO2006131045A1 WO 2006131045 A1 WO2006131045 A1 WO 2006131045A1 CN 2006000862 W CN2006000862 W CN 2006000862W WO 2006131045 A1 WO2006131045 A1 WO 2006131045A1
Authority
WO
WIPO (PCT)
Prior art keywords
domain name
search tree
search
node
public domain
Prior art date
Application number
PCT/CN2006/000862
Other languages
English (en)
French (fr)
Inventor
Lei Shi
Yuanwen Wang
Zhijian Luo
Sujuan Yang
Original Assignee
Huawei Technologies Co., Ltd.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Priority to CNA2006800120952A priority Critical patent/CN101160930A/zh
Publication of WO2006131045A1 publication Critical patent/WO2006131045A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4552Lookup mechanisms between a plurality of directories; Synchronisation of directories, e.g. metadirectories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/604Address structures or formats

Definitions

  • the present invention relates to the field of communication and information technology, and in particular to a method for storing and querying E.164 numbers after conversion to corresponding domain names. Background technique
  • ENUM Electronic Numbers to URI Mapping, is a protocol defined by the IETF's Phone Number Mapping Working Group - RFC2916, RFC2916 titled “E. 16 Number and Domain Name System (E. 164 Number and DNS ) " 0 " defines the method of converting the E.164 number into the domain name form in the database of the DNS server. Each domain name converted from the E.164 number can correspond to the Uniform Resource Ident if ier. ), so that the internationally unified E.164 telephone number becomes a network address resource that can be used in the Internet.
  • ENUM DNS can use phone numbers to find a variety of information such as Regi s trant email, IP phone number, Unified Messaging, IP fax or personal web page. E.
  • ENUM combines the two to benefit the development of traditional telecommunication services in the direction of IP-based packet exchange. ENUM is the ultimate in promoting the two networks. Convergence is of great significance.
  • ENUM defines the following process, mapping phone numbers to records in the DNS system:
  • An E.164 number consists of the following parts, which can be connected by "-", ".” or spaces:
  • the first step is to process a phone number into a standard E.164 number format, such as: +86-10-62618501;
  • Such a phone number becomes the domain name form in DNS.
  • the Internet's DNS system implements the conversion of domain names to IP addresses, such as converting the domain name www.dongfang.com to 192. 172. 250. 27.
  • the domain name resolution system in the prior art stores the domain name information, it is separated by ".” as a separator, and is divided into a plurality of nodes and stored according to the rule of the search binary tree, for example: www.dongfang.com and Www. 163. com is stored as shown in Figure 1.
  • For parallel nodes such as “dongfang” and "163”, use “dongfang” and "163" as input strings, generate HASH values according to the rules set by the system, and store the position information of the nodes corresponding to HASH values in the system.
  • the query is used for the node corresponding to the domain name.
  • the ENUM DNS system follows the same storage and query method of the DNS system in the Internet, for example: the telephone number is 8613512511125, and the corresponding domain name is: 5. 2. 1. 1. 1. 5. 2. 1 5. 3. 1. 6. 8. el64. gprs , its storage method is shown in Figure 2. It is also separated by ".,, as a separator, divided into multiple nodes for storage. As can be seen from the figure, Storage mode, the height of the search tree is very high (each phone number corresponds to a level one parallel node, the longer the phone number, the higher the height of the search tree.) When the system queries the E. 164 number domain name, it needs to query multiple parallel nodes.
  • the query time is longer; and the length of each node is 1, only the number 0-9, so that only 10 kinds of hash (HASH) values can be generated.
  • HASH hash
  • the invention provides a method for storing and inquiring the E.164 number domain name, which is used to solve the problem of low efficiency of querying the E.164 number domain name in the prior art.
  • a method for storing and inquiring an E.164 number domain name comprising: dividing an E.164 number domain name into a public domain name portion and a digital domain name portion; and separating public domain name information separated by a separator in the public domain name portion and each of the digital domain name portions
  • the data arranged in the order of the settings is stored in the search tree in the order of the search rules of the search tree;
  • the method also includes:
  • the system uses the set hash algorithm to separately calculate the hash value of the public domain name information and data, and stores the hash value and the location information of the corresponding node;
  • the hash value of the public domain information or data to be queried is calculated by using a hash algorithm set by the system, and the hash value is determined according to the calculated hash value.
  • the corresponding node of the search tree is calculated by using a hash algorithm set by the system, and the hash value is determined according to the calculated hash value.
  • the hash value and the location information of the corresponding node are stored in a hash table; the data determines the corresponding node of the search tree according to the calculated hash value.
  • the method further includes: searching the hash table with the calculated hash value as an index, and acquiring corresponding node location information.
  • the numbers in the digital domain name portion are arranged in a set order, and include: arranging numbers separated by delimiters in the domain name into data from left to right or from right to left.
  • the public domain name information separated by delimiters in the public domain name portion is stored in the set order in the root node and the next level child node of the search tree.
  • the public domain name information separated by the delimiter in the public domain name part is merged in the set order and stored in the root node of the search tree.
  • the public domain information separated by delimiters in the public domain name section is merged in order from left to right or right to left.
  • said search tree is a binary search tree.
  • the method of the invention can reduce the number of nodes when the domain name is stored, and reduce the height of the search tree for storing the domain name, thereby improving the efficiency of domain name query;
  • the method of the invention improves the hash degree of the HASH value generated by the parallel node, and effectively reduces the possibility of collision when the system stores a large amount of data, so that the change of the buffer data amount has little influence on the system query efficiency.
  • FIG. 1 is a schematic diagram of a node for storing a domain name in a binary search tree in an Internet DNS system
  • 2 is a schematic diagram of a node for storing an E.164 number domain name by using a search tree in the prior art
  • FIG. 3 is a schematic diagram of a node for storing an E.164 number domain name by using a search tree according to the present invention
  • FIG. 4 is a diagram for storing an E.164 number in a search tree according to the present invention
  • FIG. 5 is a schematic diagram of a node for storing an E.164 number domain name by using a search tree according to the present invention
  • FIG. 6 is a schematic diagram of a node for storing an E.164 number domain name by using a search tree according to the present invention
  • E. 16 Schematic diagram of a node of a number domain name
  • FIG. 8 is a schematic diagram of a node for storing an E.164 number domain name by using a search tree according to the present invention.
  • the present invention provides a method for storing and querying an E.164 number domain name, including:
  • the E.164 number domain name is divided into a public domain name part and a digital domain name part; public domain name information and a digital domain name part separated by a delimiter in the public domain name part are The data in which the numbers are arranged in the set order is stored in the search tree node in the order of the search rules of the search tree;
  • the EN DNS system After receiving the E.164 number domain name query, the EN DNS system obtains the public domain name information in the domain name, and searches for the corresponding node of the search tree according to the search rule of the search tree; acquires the numbers separated by the delimiter in the domain name. And sorting the data into the order of the system to find the next level node of the search tree.
  • the method of the present invention further calculates a hash value of the public domain name information and data by using a set hash algorithm, and stores location information of the node corresponding to the hash value;
  • the hash value of the public domain information or data to be queried is calculated by using a hash algorithm set by the system, and the hash value is determined according to the calculated hash value.
  • the corresponding node of the search tree is calculated by using a hash algorithm set by the system, and the hash value is determined according to the calculated hash value.
  • the location information of the node corresponding to the hash value is stored in a hash table; the specific method for determining the corresponding node of the search tree according to the calculated hash value is: using the calculated hash value as an index, searching and storing Hash table, get the corresponding node location information.
  • Embodiment 1 The methods of the present invention are separately described below by exemplifying two specific embodiments.
  • Embodiment 1
  • the public domain name information separated by delimiters in the public domain name portion is stored in the right and left sub-nodes of the search tree in order from right to left.
  • the domain name converted according to the E.164 number domain name conversion rule is: 5. 2. 1. 1. 1. 5. 2. 1. 5. 3. 1. 6. 8. el64 Gprs ; base in el64. gprs is the public domain name added by the system (the public domain name can be set by the user in the system, the system will automatically add the public domain name part in the domain name converted by the phone number according to the set public domain name) .
  • the domain name converted by the E.164 number is stored in the search tree storage rule, but the storage information corresponding to each node in the search tree is not in the prior art with "., as a separator, Each number is stored in one node, but the converted domain name is divided into two parts: the public domain part and the digital domain part are stored separately.
  • the public domain name information is stored as ".," as a separator in the root node of the search tree and in the child node according to the storage rule of the search tree, as shown in Figure 3 and Figure 4.
  • the search tree here can use the binary. Search for a tree or another search tree.
  • the system calculates the hash value corresponding to each domain name information (el64 and gprs) with the ".” as the delimiter in the public domain name information according to a preset hash algorithm, and stores the location information of the corresponding node in a hash table.
  • the system arranges the remaining numbers separated by the separator ".” into the order according to the set order, and stores them in the corresponding sub-nodes of the search tree according to the storage rule of the search tree, as shown in FIG. 3 and FIG. How to arrange each number specifically can be set by the system. For the sake of simplicity, you can choose to sort from left to right, or from right to left. In the above example, arrange from left to right.
  • the resulting data is: 5211152153168 (see Figure 3); the data arranged in order from right to left is 8613512511125 (see Figure 4);
  • the system After obtaining the arranged data, the system calculates the hash value of the data according to a preset hash algorithm, and stores the location information of the corresponding node in the hash table.
  • the ENUM DNS system After the ENUM DNS system receives the E.164 number domain name query, for example, the user enters 5. 2. 1. 1. 1. 5. 2. 1. 5. 3. 1. 6. 8. el64. gprs domain name, system Obtain the public domain name information in the domain name el64. gprs, the partial domain name separated by the delimiter in the public domain name information (el64 And gprs) according to the search tree search rules to find the root node gprs and child nodes el64 of the search tree; then obtain the numbers separated by delimiters in the domain name, and arrange them into data 5151152153168 or 8613512511125 according to the system setting order, find out Search for the next level of the tree.
  • the system calculates the hash value of the data 5211152153168 according to the set hash algorithm, and uses the calculated hash value as an index to search.
  • the stored hash table obtains the corresponding node location information.
  • Embodiment 2 is a diagrammatic representation of Embodiment 1:
  • the public domain information separated by delimiters in the public domain name portion is merged together in a set order and stored in the root node of the search tree.
  • gprs domain name when stored in the search tree, merge the public domain name el64. gprs, store Go to the root node of the search tree; for example, merge them into el64 g prs in order from left to right (see Figure 5 and Figure 6), or merge them into gprs el64 in right-to-left order (see figure) 7 and FIG. 8)
  • the 0 data portion is stored in the same manner as the above method 1, that is, it can be arranged in order from left to right as 5151152153168, or arranged in order from right to left as 8613512511125.
  • Combined storage method 1 Public domain names are merged in order from left to right, and the numbers are arranged in order from left to right, as shown in Figure 5;
  • Combined storage method 2 Public domain names are merged in order from left to right, and the numbers are arranged in order from right to left, as shown in Fig. 6;
  • Combined storage method 3 Public domain names are merged in order from right to left, and the numbers are arranged in order from left to right, as shown in Figure 7;
  • Combined storage method four Public domain names are merged in order from right to left, and the numbers are arranged in order from right to left, as shown in Figure 8.
  • the ENUM DNS system After the ENUM DNS system receives the E.164 number domain name query, for example, the user enters 5. 2. 1. 1. 1. 5. 2. 1. 5. 3. 1. 6. 8. el64. gprs domain name, system Obtain the public domain name information el64. gprs in the domain name, and merge the partial domain names (el64 and gprs) separated by delimiters in the public domain name information according to the merge mode set by the system, for example, merge from left to right. For el64gprs, or merge to gprsel 64 in right-to-left order, find the root node of the search tree according to the search rule of the search tree; then obtain the numbers separated by delimiters in the domain name, and arrange them in the order of system setting.
  • the system calculates the hash value of the data 5211152153168 according to the set hash algorithm, and uses the calculated hash value as an index to search.
  • the stored hash table obtains the corresponding node location information.
  • the height of the search tree is greatly reduced, the number of node matching in the domain name query can be significantly reduced, and the query efficiency is improved; in addition, the multi-bit data in the node is related to the phone number, thus, different phone numbers Will form different data, so that the possibility of generating the same hash value from the data is greatly reduced, that is, the hash degree of the generated hash value is improved, even when the system cache has a large amount of data, when the node is queried The probability of conflict is small, which solves the problem that the efficiency of system query in the prior art decreases rapidly with the increase of the amount of cached data.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

一种 E.164号码域名存储和查询方法
技术领域
本发明涉及通信与信息技术领域, 具体地说, 涉及 E. 164号码转换成 对应域名后的存储和查询方法。 背景技术
电话号码到统一资源标识映射 ENUM ( Electronic Numbers to URI Mapping , )是 IETF 的电话号码映射工作組定义的一个协议 - RFC2916 , RFC2916 的题目为 "E. 16 号码和域名系统 ( E. 164 Number and DNS )"0 它定义了将 E. 164 号码转换为域名形式放在 DNS服务器的数据库中的方 法, 每个由 E. 164 号码转化而成的域名可以对应于统一资源标识 URI ( Uniform Resource Ident if ier ), 从而使国际统一的 E. 164电话号码成 为可以在互联网中使用的网络地址资源。 ENUM DNS可以利用电话号码来查 找注册人(Regi s trant ) 电子邮件、 IP 电话号码、 统一消息、 IP传真或 个人网页等多种信息。 E. 164号码是传统电信网络中使用的重要资源, DNS 系统是互联网的重要基 , ENUM将两者结合起来,有益于传统电信服务向 基于 IP包交换的方向发展, ENUM是对促进两网最终融合具有重要意义。
ENUM定义了如下过程, 将电话号码映射为 DNS系统中的记录: 一个 E. 164号码由以下几个部分組成,不同部分之间可以用 " -"、 ". " 或空格等连接:
+国家码( 1-3位数字)-地区码(n位数字) -电话号码( 15- n位数字)。 例如:北京的一个电话号码写成标准的 E. 164格式应是: +86-10-62618501。 将电话号码转换成 S系统中的域名步骤为:
第一步, 将一个电话号码处理成一个标准的 E. 164号码的格式, 如: +86-10-62618501 ;
第二步, 去掉除了最左端的 " + " 外的所有连接符, 变成:
+861062618501 ;
笫三步, 去掉 "+,, 号, 并将号码翻转: 变成 105816260168;
笫四步, 在每个数字之间加上域名分割符 " . ,,, 变成: 1. 0. 8. 1. 6. 2. 6. 0. 1. 6. 8;
第五步, 在上面的数字串末尾加上公共域名 ". el 64. t ld" , 变成: 1. 0. 5. 8. 1. 6. 2. 6. 0. 1. 6. 8. el 64. t ld。
这样一个电话号码变成了 DNS中的域名形式。
目前互联网的 DNS 系统实现了域名向 IP 地址的转换, 如将域名 www. dongfang. com转换为 192. 172. 250. 27。 现有技术中的域名解析系统 存放域名信息时, 是以 ". " 作为分隔符, 拆分成多个节点按搜索二叉树 的规贝 'J进行存放的, 例^口: www. dongfang. com和 www. 163. com的存放方 式如图 1所示。对于 "dongfang"和 "163"这样的平行节点,以 "dongfang" 和 "163" 作为输入字符串, 按系统设定的规则生成 HASH值, 对 HASH值 对应节点的位置信息存储在系统中的一个哈希表中, 用于域名对应节点的 查询。
现有技术中, ENUM DNS系统沿用了互联网中 DNS系统相同的存储和查 询方法, 例如: 电话号码为 8613512511125, 其对应的域名形式为: 5. 2. 1. 1. 1. 5. 2. 1. 5. 3. 1. 6. 8. el64. gprs , 其存放方式如图 2所示, 也是 以 ".,, 作为分隔符, 拆分成多个节点进行存放。 由图可见, 采用这种存 放方式, 搜索树的高度很高 (每一位电话号码对应一级平行节点, 电话号 码越长, 搜索树的高度越高)。 当系统查询 E. 164号码域名时, 需要查询 多级平行节点, 查询时间较长; 且各节点的长度为 1 , 只可能是数字 0-9 , 这样最多只能生成 10种哈希( HASH )值, 在系统存储数据量大的情况下, 冲突非常严重, 查询效率极低。 发明内容
本发明提供 E. 164号码域名的存储和查询方法, 用以解决现有技术中 查询 E. 164号码域名效率低的问题。
一种 E. 164号码域名的存储和查询方法, 包括: 将 E. 164号码域名分 成公共域名部分和数字域名部分; 将公共域名部分中用分隔符隔开的公共 域名信息以及数字域名部分中各数字依设定顺序排列后的数据按搜索树 的存放规则顺序存放到搜索树的节点中;
根据查询请求, 获取域名中的公共域名信息, 并按照所述搜索树的查 找规则查找出搜索树的相应节点; 获取域名中用分隔符隔开的各数字, 并 按系统设定顺序排列成数据后查找出所述搜索树的下一级节点。
该方法还包括:
系统采用设定的哈希算法分别计算出所述公共域名信息和数据的哈 希值, 存储哈希值及其对应节点的位置信息;
在域名查询过程中, 若按照搜索树的查找规则对应节点查找失败, 则 采用系统设定的哈希算法计算出被查询的公共域名信息或数据的哈希值, 根据计算出的哈希值确定出搜索树的对应节点。
更适宜地, 所述哈希值及其对应节点的位置信息存储在一个哈希表 中; 所述才艮据计算出的哈希值确定出搜索树的对应节点。
该方法还包括: 用计算出的哈希值作为索引, 查找所述哈希表, 获取 对应节点位置信息。
所述数字域名部分中各数字依设定顺序排列, 包括: 将域名中用分隔 符隔开的数字按从左到右或从右到左的顺序排列成数据。
其中公共域名部分中用分隔符隔开的公共域名信息按设定顺序分别 存储到所述搜索树的根节点和下一级子节点中。
其中在所述 E. 164号码域名的存储过程中,公共域名部分中用分隔符 隔开的公共域名信息按设定顺序合并在一起,存放到所述搜索树的根节点 中。
将公共域名部分中用分隔符隔开的公共域名信息按从左到右或从右 到左的顺序合并在一起。
作为优选, 所述搜索树为二叉搜索树。
采用本发明方法能減少域名存放时的节点数, 降低存储域名的搜索树 的高度, 从而提高域名查询效率;
采用本发明方法提高了平行节点生成 HASH值的散列度, 在系统存储 数据量大的情况下, 有效降低了冲突的可能性, 使得緩存数据量的变化对 系统查询效率的影响非常小。 附图说明
图 1为互联网 DNS系统中用二叉搜索树存放域名的节点示意图; 图 2为现有技术用搜索树存放 E. 164号码域名的节点示意图; 图 3为本发明用搜索树存放 E. 164号码域名的节点示意图; 图 4为本发明用搜索树存放 E. 164号码域名的节点示意图; 图 5为本发明用搜索树存放 E. 164号码域名的节点示意图; 图 6为本发明用搜索树存放 E. 164号码域名的节点示意图; 图 7为本发明用搜索树存放 E. 16 号码域名的节点示意图; 图 8为本发明用搜索树存放 E. 164号码域名的节点示意图。 具体实施方式
为使本发明的原理、 特性和优点更加清楚, 下面对本发明的具体实现 予以详细描述。
本发明提供 E. 164号码域名的存储和查询方法, 包括:
在电话号码到统一资源标识映射的域名系统( ENUM DNS )中,将 E. 164 号码域名分成公共域名部分和数字域名部分; 将公共域名部分中用分隔符 隔开的公共域名信息以及数字域名部分中各数字依设定顺序排列后的数 据按搜索树的存放规则顺序存放到搜索树的节点中;
EN丽 DNS系统接收到 E. 164号码域名查询后, 获取域名中的公共域名 信息, 并按照所述搜索树的查找规则查找出搜索树的相应节点; 获取域名 中用分隔符隔开的各数字, 并按系统设定顺序排列成数据后查找出所述搜 索树的下一级节点。
为了进一步提高系统查询效率, 本发明方法还采用设定的哈希算法分 别计算出所述公共域名信息和数据的哈希值, 存储哈希值对应节点的位置 信息;
在域名查询过程中, 若按照搜索树的查找规则对应节点查找失败, 则 采用系统设定的哈希算法计算出被查询的公共域名信息或数据的哈希值, 根据计算出的哈希值确定出搜索树的对应节点。
所述哈希值对应节点的位置信息存储在一个哈希表中; 所述根据计算 出的哈希值确定出搜索树的对应节点具体方法为: 用计算出的哈希值作为 索引, 查找存储的哈希表, 获取对应节点位置信息。
下面例举两种具体实施方式对本发明方法分别加以描述。 实施方式一:
公共域名部分中用分隔符隔开的公共域名信息按从右到左的顺序分 别存储到所述搜索树的根节点和下一级子节点中。
以电话号码为 8613512511125为例,根据 E. 164号码域名转换规则转 换成的域名形式为: 5. 2. 1. 1. 1. 5. 2. 1. 5. 3. 1. 6. 8. el64. gprs ; 基中 el64. gprs为系统添加的公共域名 (公共域名可以在系统中由用户设定, 系统会根据设定好的公共域名在电话号码转换后的域名中自动加上公共 域名部分)。 在 ENUM DNS系统中, 将 E. 164号码转换后的域名采用搜索树 的存放规则进行存放, 但搜索树中各节点对应的存放信息不是采用现有技 术中以 ".,, 作为分隔符, 将每一个数字存入一个节点中, 而是将转换后 的域名分为两大部分: 即公共域名部分和数字域名部分分别加以存放。 具 体为:
将公共域名信息以 ".,, 作为分隔符, 依照搜索树的存放规则存放到 搜索树的根节点中和子节点中, 如图 3、 图 4所示。 此处的搜索树可以釆 用二叉搜索树或别的搜索树。
系统按照预先设定的哈希算法计算出公共域名信息中以 ". " 作为分 隔符的各域名信息 (el64和 gprs )对应的哈希值, 并将对应节点的位置 信息存储到一个哈希表中;
系统将其余用分隔符 ". " 隔开的各个数字, 接照设定的顺序排列成 数据后按照搜索树的存放规则存放到上述搜索树的相应子节点中,如图 3、 图 4所示; 具体如何排列各个数字, 是可以通过系统进行设定的, 为简单 方便, 可以选择从左到右按序排列, 或从右到左按序排列; 如上例, 按照 从左到右的顺序排列成的数据为: 5211152153168 (参见图 3 ); 按照从右 到左的顺序排列成的数据为 8613512511125 (参见图 4 );
获得排列好的数据后, 系统按照预先设定的哈希算法计算出该数据的 哈希值, 并将对应节点的位置信息存储到上述哈希表中。
ENUM DNS 系统接收到 E. 164 号码域名查询后, 例如, 用户输入 5. 2. 1. 1. 1. 5. 2. 1. 5. 3. 1. 6. 8. el64. gprs的域名, 系统获取域名中的公共 域名信息 el64. gprs,将公共域名信息中用分隔符隔开的各部分域名(el64 和 gprs )按照搜索树的查找规则分別查找出搜索树的根节点 gprs和子节 点 el64; 再获取域名中用分隔符隔开的各数字, 并按系统设定顺序排列成 数据 5211152153168或 8613512511125, 查找出搜索树的下一级节点。 若 按照搜索树的查找规则对应节点查找失败,例如,查找数据 5211152153168 对应节点失败, 则系统依照设定的哈希算法计算出数据 5211152153168的 哈希值, 以计算出的哈希值作为索引, 查找存储的哈希表, 得到对应的节 点位置信息。
实施方式二:
将公共域名部分中用分隔符隔开的公共域名信息按设定顺序合并在 一起, 存放到所述搜索树的根节点中。
以 5. 2. 1. 1. 1. 5. 2. 1. 5. 3. 1. 6. 8. el64. gprs域名为例,存储到搜索树 时, 将公共域名 el64. gprs进行合并, 存储到搜索树的根节点中; 例如, 按从左到右的顺序合并为 el64gprs进行存储(参见图 5和图 6 ), 或按从 右到左的顺序合并为 gprs el64进行存储(参见图 7和图 8 )0 数据部分的 存储方式与上述方法一相同, 即可以按照从左到右的顺序排列为 5211152153168 , 或按从右到左的顺序排列为 8613512511125。 这样, 根据 公共域名的合并和数字的排列顺序可以有如下四种组合存储方式:
组合存储方式一: 公共域名按从左到右的顺序合并, 各数字按从左到 右的顺序排列, 如图 5所示;
组合存储方式二: 公共域名按从左到右的顺序合并, 各数字按从右到 左的顺序排列, 如图 6所示;
组合存储方式三: 公共域名按从右到左的顺序合并, 各数字按从左到 右的顺序排列, 如图 7所示;
组合存储方式四: 公共域名按从右到左的顺序合并, 各数字按从右到 左的顺序排列, 如图 8所示。
ENUM DNS 系统接收到 E. 164 号码域名查询后, 例如, 用户输入 5. 2. 1. 1. 1. 5. 2. 1. 5. 3. 1. 6. 8. el64. gprs的域名, 系统获取域名中的公共 域名信息 el64. gprs ,将公共域名信息中用分隔符隔开的各部分域名(el64 和 gprs )按照系统设定的合并方式进行合并, 例如按从左到右的顺序合并 为 el64gprs, 或按从右到左的顺序合并为 gprsel 64 , 按搜索树的查找规 则查找出搜索树的根节点; 再获取域名中用分隔符隔开的各数字, 并按系 统设定顺序排列成数据 5211152153168或 8613512511125 , 查找出搜索树 的下一级节点。 若按照搜索树的查找规则对应节点查找失败, 例如, 查找 数据 5211152153168对应节点失败, 则系统依照设定的哈希算法计算出数 据 5211152153168的哈希值, 以计算出的哈希值作为索引, 查找存储的哈 希表, 得到对应的节点位置信息。
釆用本发明的上述方法, 大大降低了搜索树的高度, 能明显减少域名 查询时节点匹配的次数, 提高查询效率; 另外, 节点中的多位数据与电话 号码有关, 这样, 不同的电话号码会组成不同的数据, 使得由该数据生成 相同哈希值的可能性大大降低, 即提高了生成的哈希值的散列度, 即使在 系统緩存有大数据量的情况下, 查询节点时的冲突几率小, 解决了现有技 术中系统查询效率随着緩存数据量的增加迅速下降的问题。
显然, 本领域的技术人员可以对本发明进行各种改动和变型而不脱离 本发明的精神和范围。 这样, 倘若本发明的这些修改和变型属于本发明权 利要求及其等同技术的范围之内, 则本发明涵盖这些改动和变型。

Claims

权 利 要 求
1、 一种 E. 164 号码域名的存储和查询方法, 其特征在于, 包括: 将 E. 164号码域名分成公共域名部分和数字域名部分; 将公共域名部分中用 分隔符隔开的公共域名信息以及数字域名部分中各数字依设定顺序排列 后的数据按搜索树的存放规则顺序存放到搜索树的节点中;
根据查询请求, 获取域名中的公共域名信息, 并按照所述搜索树的查 找规则查找出搜索树的相应节点; 获取域名中用分隔符隔开的各数字, 并 按系统设定顺序排列成数据后查找出所述搜索树的下一级节点。
2、 如权利要求 1 所述的方法, 其特征在于, 还包括: 系统采用设定 的哈希算法分别计算出所述公共域名信息和数据的哈希值,存储哈希值及 其对应节点的位置信息;
在域名查询过程中, 若按照搜索树的查找规则对应节点查找失败, 则 采用系统设定的哈希算法计算出被查询的公共域名信息或数据的哈希值, 根据计算出的哈希值硝定出搜索树的对应节点。
3、 如权利要求 2所述的方法, 其特征在于, 所述哈希值及其对应节 点的位置信息存储在一个哈希表中; 所述根据计算出的哈希值确定出搜索 树的对应节点。
4、 如权利要求 3所述的方法, 其特征在于, 包括: 用计算出的哈希 值作为索引, 查找所述哈希表, 获取对应节点位置信息。
5、 如权利要求 1 所述的方法, 其特征在于, 所述数字域名部分中各 数字依设定顺序排列, 包括: 将域名中用分隔符隔开的数字按从左到右或 从右到左的顺序排列成数据。
6、 如权利要求 1 所述的方法, 其特征在于, 公共域名部分中用分隔 符隔开的公共域名信息按设定顺序分别存储到所述搜索树的根节点和下 一级子节点中。
7、 如权利要求 1所述的方法, 其特征在于, 在所述 E. 164号码域名 的存储过程中,公共域名部分中用分隔符隔开的公共域名信息按设定顺序 合并在一起, 存放到所述搜索树的根节点中。
8、 如权利要求 7所述的方法, 其特征在于, 将公共域名部分中用分 隔符隔开的公共域名信息按从左到右或从右到左的顺序合并在一起。
9、 如权利要求 1、 2、 6或 7所述的方法, 其特征在于, 所述搜索树 为二叉搜索树。
PCT/CN2006/000862 2005-06-08 2006-04-29 Procédé de stockage et de recherche de nom de domaine de numéros e.164 WO2006131045A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2006800120952A CN101160930A (zh) 2005-06-08 2006-04-29 一种e.164号码域名存储和查询方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200510075078.0 2005-06-08
CNA2005100750780A CN1878164A (zh) 2005-06-08 2005-06-08 E.164号码域名存储和查询方法

Publications (1)

Publication Number Publication Date
WO2006131045A1 true WO2006131045A1 (fr) 2006-12-14

Family

ID=37498113

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2006/000862 WO2006131045A1 (fr) 2005-06-08 2006-04-29 Procédé de stockage et de recherche de nom de domaine de numéros e.164

Country Status (3)

Country Link
US (1) US20070002778A1 (zh)
CN (2) CN1878164A (zh)
WO (1) WO2006131045A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8638780B1 (en) * 2007-03-21 2014-01-28 Nextel Communications Inc. System and method for obtaining an internet address associated with a telephone number
US9131016B2 (en) * 2007-09-11 2015-09-08 Alan Jay Glueckman Method and apparatus for virtual auditorium usable for a conference call or remote live presentation with audience response thereto
CN101958937B (zh) * 2009-07-17 2013-07-17 中国移动通信集团公司 一种解析系统查询方法、号码域名系统服务器及系统
CN102193942B (zh) * 2010-03-12 2013-07-10 成都市华为赛门铁克科技有限公司 数据块的查找方法和装置
WO2013010585A1 (en) * 2011-07-20 2013-01-24 Nokia Siemens Networks Oy Logical rules based domain name server setup
CN102546105A (zh) * 2011-12-28 2012-07-04 深圳市新为软件有限公司 一种网络资源传输的方法和装置
CN102831158B (zh) * 2012-07-05 2015-12-09 国电南瑞科技股份有限公司 一种适应于安全稳定控制装置的策略表搜索方法
CN103077208B (zh) * 2012-12-28 2016-01-27 华为技术有限公司 统一资源定位符匹配处理方法及装置
CN103365695B (zh) * 2013-07-31 2017-04-26 广州市动景计算机科技有限公司 加快子资源加载速度的方法和装置
WO2017106779A1 (en) * 2015-12-18 2017-06-22 F5 Networks, Inc. Methods of collaborative hardware and software dns acceleration and ddos protection

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1209249A (zh) * 1996-02-20 1999-02-24 惠普公司 访问通信网络上的目标实体的方法
US20040243596A1 (en) * 2003-05-27 2004-12-02 Roy Lillqvist Enhancement of database performance in a Domain Name System

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6131095A (en) * 1996-12-11 2000-10-10 Hewlett-Packard Company Method of accessing a target entity over a communications network
US6675163B1 (en) * 2000-04-06 2004-01-06 International Business Machines Corporation Full match (FM) search algorithm implementation for a network processor
US7089240B2 (en) * 2000-04-06 2006-08-08 International Business Machines Corporation Longest prefix match lookup using hash function
US7054855B2 (en) * 2001-07-03 2006-05-30 International Business Machines Corporation Method and system for performing a pattern match search for text strings
US7027582B2 (en) * 2001-07-06 2006-04-11 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for resolving an entity identifier into an internet address using a domain name system (DNS) server and an entity identifier portability database
ES2183728B1 (es) * 2001-07-16 2004-06-16 Airtel Movil, S.A. Sistema de nombramientos de dominios (dns) para acceso a bases de datos.
KR100409177B1 (ko) * 2001-08-23 2003-12-18 한국전자통신연구원 인터넷 망에서의 전화번호 도메인 이름 시스템 및 그동작방법
KR100970122B1 (ko) * 2001-11-01 2010-07-13 베리사인 인코포레이티드 고속 논-콘커런시 제어된 데이터베이스
FR2841072A1 (fr) * 2002-06-14 2003-12-19 France Telecom Systeme de consultation et/ou mise a jour de serveurs dns et/ou d'annuaires ldap
JP2005294993A (ja) * 2004-03-31 2005-10-20 Matsushita Electric Ind Co Ltd Ip電話機及びipアダプタ
US8254278B2 (en) * 2005-05-23 2012-08-28 Xconnect Global Networks Ltd Efficient address caching for packet telephony services

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1209249A (zh) * 1996-02-20 1999-02-24 惠普公司 访问通信网络上的目标实体的方法
US20040243596A1 (en) * 2003-05-27 2004-12-02 Roy Lillqvist Enhancement of database performance in a Domain Name System

Also Published As

Publication number Publication date
CN101160930A (zh) 2008-04-09
US20070002778A1 (en) 2007-01-04
CN1878164A (zh) 2006-12-13

Similar Documents

Publication Publication Date Title
WO2006131045A1 (fr) Procédé de stockage et de recherche de nom de domaine de numéros e.164
WO2021218068A1 (zh) 基于icn的工业互联网标识解析系统及数据访问方法
Quan et al. TB2F: Tree-bitmap and bloom-filter for a scalable and efficient name lookup in content-centric networking
EP2214356B1 (en) System for forwarding a packet with a hierarchically structured variable-length identifier
JP5525272B2 (ja) 完全合致探索エンジンを使用して階層的に構造化された可変長識別子を有するパケットを転送するためのシステム
US8972453B2 (en) Method and system for longest prefix matching of variable-sized hierarchical names by treelets
TWI287723B (en) Method and data structure for a low memory overhead database
TW468116B (en) High speed Internet protocol address lookups method for saving memory
US8073972B2 (en) System and method for location discovery based on DNS
US20060173831A1 (en) Longest prefix match lookup using hash function
CN1282332C (zh) 一种快速数据包过滤方法
US20040243719A1 (en) System and method for routing messages over disparate networks
US8874708B2 (en) Location discovery based on DNS
WO2010054525A1 (zh) 一种关键词及其资源记录的转换存储方法和系统
CN101369267B (zh) 一种基于内存库的模糊查询方法
CN107613039B (zh) Ip地址归属地查询方法、装置、系统及存储介质
WO2004107207A1 (en) Enhancement of database performance in a domain name system
WO2010127619A1 (zh) 层次化路由架构的映射方法及系统和域名服务器
KR100452944B1 (ko) Enum 서비스 시스템 및 이의 운용방법
RU2005120234A (ru) Система и способ для разрешения имен
WO2010127536A1 (zh) 网络处理器使用的建表和查表方法
CN112839113A (zh) 域名存储与解析方法、装置、电子设备及存储介质
CN101110871A (zh) 一种e.164域名的解析方法以及域名服务器
CN102378407A (zh) 一种物联网中的对象名字解析系统及其解析方法
Hsieh et al. A classified multisuffix trie for IP lookup and update

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 200680012095.2

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06741768

Country of ref document: EP

Kind code of ref document: A1