# Patent

## Title
Method and device for establishing a route

## Abstract

The embodiment of the present invention provides a method for establishing a route, which includes searching a target node by a node from a first level node group according to first level route information, returning to query a result or data saved by the target node if the target node is found, otherwise executing the following step; searching a target node by the node from a higher level node group according to higher level route information, returning to query a result or the data saved by the target node if the target node is found, otherwise repeating the step. Through the hierarchical communication system, most of the flows of daily service operations in the communication network are limited within a small region, thereby preventing from excessively occupying the band width of a backbone network being originally not wide enough.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims priority to Chinese Patent Application No. 200810065363.8, filed Feb. 5, 2008, the contents of which are hereby incorporated by reference in its entirety.
FIELD OF TECHNOLOGY
The present invention relates to electronic communications in general to a method and device for establishing a route in particular.
BACKGROUND
Unlike the conventional client/server mode, a peer-to-peer (P2P) network does not have a central server node. Each node in the P2P network may serve as the server to provide services to other nodes, and may also enjoy the services provided by other node serving as the server. Therefore, in the P2P network, all nodes are equal in position, where each node is referred to as a peer.
The P2P network is a self-organized configuration network system. In the network, the behavior of joining the network or exiting the network performed by each peer is random. Similarly, in the network, for the communication between each two peers, after a relevant Key is found according to a logical distributed hash table (DHT), a lower layer physical link is randomly selected to perform the route connecting communication. Accordingly, when the number of peers or the communication throughput in the network gradually increases, the flows in the whole network become unorganized and out of order, and a great amount of data transmissions is performed through the whole network search or operation. Consequently, a backbone network with an insufficient bandwidth resource and an inter-domain link are seriously consumed, and network congestion is thereby generated.
SUMMARY
The embodiment of the present invention provides a method and device for establishing a route, a method and device for constructing a node ID, and a communication network, so as to alleviate the congestion of the backbone network.
One embodiment of the present invention provides a method for constructing a node ID. According to this embodiment, Geographical position information of the node is acquired. A hash space of the node ID is determined by adopting a strip division method according to the geographical position information of the node. One hash value is randomly selected from the hash space, and the node ID is constructed by combining the hash value with other attribute information of the node. The present invention further provides a device for constructing a node ID, which includes an acquiring unit, a determining unit, and a constructing unit. The acquiring unit is adapted to acquire geographical position information of a node. The determining unit is adapted to determine a hash space of the node ID by adopting a strip division method according to the geographical position information of the node. The constructing unit is adapted to randomly select one hash value from the hash space, and construct the node ID by combining the hash value with other attribute information of the node.
The present invention further provides a communication network. According to this embodiment, the communication network includes a first level node group and a second level node group. The first level node group includes a first node and a second node, and the second level node group includes a third node. The first node and the second node are the nodes with an ID of the same first geographical position information, and the third node includes an ID of second geographical position information. A regional scope displayed by the second geographical position information is larger than a regional scope displayed by the first geographical position information. Each node in the first level node group and the second level node group respectively maintains route information of each node group. The first node includes the route information of the first level node group and the second level node group, and the second node includes the route information of the first lever node group and the second level node group.
The present invention further provides a communication network. According to this embodiment, the communication network includes a first level node group and a second level node group. The first level node group includes a first node and a second node, and the second level node group includes a third node. Each node in the first level node group and the second level node group respectively maintains route information of each node group. A regional scope covered by the second level node group is larger than a regional scope covered by the first level node group. The second level node group includes the first level node group, the first node includes the route information of the first level node group and the second level node group, and the second node includes the route information of the first lever node group and the second level node group.
The present invention further provides a communication network. According to this embodiment, the communication network includes a first level node group and a second level node group. The first level node group includes a first node and a second node, and the second level node group includes a third node. Each node in the first level node group and the second level node group respectively maintains route information of each node group. The first node includes the route information of the first level node group and the second level node group, and the second node includes the route information of the first level node group and second level node group.
The present invention further provides a communication network. According to this embodiment, the communication network includes a first level home subscriber server (HSS) node group and a second level HSS node group. The first level HSS node group includes a first HSS node and a second HSS node, and the second level HSS node group includes a third HSS node. Each HSS node in the first level HSS node group and the second level HSS node group respectively maintains route information of each node group. The first HSS node includes the route information of the first level HSS node group and the second level HSS node group, and the second HSS node includes the route information of the first level HSS node group and the second level HSS node group.
The present invention further provides a communication network. According to this embodiment, the communication network includes a first level HSS node group and a second level HSS node group. The first level HSS node group includes a first HSS node and a second HSS node, and the second level HSS node group includes a third HSS node. Each HSS node in the first level HSS node group and the second level HSS node group respectively maintains route information of each node group. A regional scope covered by the second level HSS node group is larger than a regional scope covered by the first level HSS node group. The second level HSS node group includes the first level HSS node group, the first HSS node includes the route information of the first level HSS node group and the second level HSS node group, and the second HSS node includes the route information of the first level HSS node group and the second level HSS node group.
The present invention further provides a communication network. According to this embodiment, the communication network includes a first level HSS node group and a second level HSS node group. The first level HSS node group includes a first HSS node and a second HSS node, and the second level HSS node group includes a third HSS node. The first HSS node and the second HSS node are the nodes with IDs of first geographical position information, and the third HSS node includes an ID of second geographical position information. A regional scope displayed by the second geographical position information is larger than a regional scope displayed by the first geographical position information. Each HSS node in the first level HSS node group and the second level HSS node group respectively maintains route information of each node group. The first HSS node includes the route information of the first level HSS node group and the second level HSS node group, and the second HSS node includes the route information of the first level HSS node group and the second level HSS node group.
The present invention further provides a method for establishing a route. According to this embodiment, a node searches for a target node from a first level node group according to first level route information. If the target node is found, the node returns a search result or data saved by the target node. If the target node is not found, the node searches for the target node from a higher level node group according to higher level route information. If the target node is found, the node returns a search result or data saved by the target node. If the target node is not found, this process is repeated.
The present invention further provides a method for constructing a hierarchical DHT network. According to this embodiment, a node builds up a hierarchical DHT network based on a geographical position relation according to an ID of the node, and forms and maintains DHT route information of each layer. All nodes in the network register and join a highest level whole scale DHT network, and forms and maintains highest level whole DHT network route information.
The present invention further provides a communication apparatus. According to this embodiment, the communication apparatus includes a device for establishing a route, in which the device for establishing the route includes a receiving unit, a route searching unit, and a transmitting unit. The receiving unit is adapted to receive target node information required to be searched for. The route searching unit is adapted to search for route information of a target node in a sequence from lower level route information to higher level route information according to the target node information, until the route information of the target node is found. The transmitting unit is adapted to transmit information to the target node according to the found route information of the target node.
The present invention further provides a communication network system. According to this embodiment, the communication network system includes at least one node, in which the node includes a receiving unit, a route searching unit, and a transmitting unit. The receiving unit is adapted to receive target node information required to be searched for. The route searching unit is adapted to search for route information of a target node in a sequence from lower level route information to higher level route information according to the target node information, until the route information of the target node is found. The transmitting unit is adapted to transmit information to the target node according to the found route information of the target node.
In the hierarchical communication system, most of the flows of daily service operations in the communication network are limited within a small region. Consequently, the bandwidth of the backbone network is consumed more efficiently.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a schematic flow chart of a method for constructing a node ID according to an embodiment of the present invention;
FIG. 2 is a schematic view of region information divided by strips according to the embodiment of the present invention;
FIG. 3 is a schematic view of a device for constructing a node ID according to the embodiment of the present invention;
FIG. 4 is a schematic flow chart of a method for constructing a two-layer DHT network according to the embodiment of the present invention;
FIG. 5 is a schematic view of the two-layer DHT network according to the embodiment of the present invention;
FIG. 6 is a schematic flow chart of a method for establishing a route according to the embodiment of the present invention; and
FIG. 7 is a schematic view of a device for establishing a route according to the embodiment of the present invention.



DETAILED DESCRIPTION
The present invention is described herein in greater detail with the accompanying drawings.
Referring to FIG. 1, the embodiment of the present invention provides a method for constructing a node ID, which includes the following steps.
Step 101: Geographical position information of a node is acquired.
When joining a network, the node usually discloses its geographical position information, and the geographical position information of the node may be acquired by a collecting manner, or may be acquired by an actively acquiring manner.
Step 102: A hash space of the node ID is determined by adopting a strip division method according to the geographical position information of the node.
Step 103: One hash value is randomly selected from the hash space, and the node ID (for example, the Node ID) is constructed by combining the hash value with other attribute information of the node.
The hash value serves as a part of the node ID (for example, a prefix, a suffix or a certain key field).
The geographical position information is geographical region information, such as, Shenzhen city, Guangzhou city, Guangdong province of China, and so on.
Referring to FIG. 2, in Steps 102 and 103, particularly, a strip division method may be adopted for selecting the ID. Each region is respectively an article collection of one filling manner in the figure, the whole hash space may be divided into N strips, and each strip is divided into z articles, where z is the number of the regions. The node peer of each region randomly selects one hash value from the articles of the region thereof as the prefix or suffix or certain key field of its own ID, and constructs the node ID by combining the hash value with other attribute information of the node.
The other attribute information of the node may be a name of the node, an attribute of node IP, a latitude of the node or a longitude of the node.
The other attribute of the node may also be a combination of two of the name of the node, the attribute of the node IP, the latitude of the node and the longitude of the node.
The other attribute of the node may also be a combination of three of the name of the node, the attribute of the node IP, the latitude of the node and the longitude of the node.
It may be known from the above-mentioned that a node ID assignment mechanism, with which the hash space is averagely divided according to the geographical region position, is well achieved through the method, and the nodes in a large region are approximately averagely distributed into each article by the strips, and the larger the region is, the more scattered the distribution is.
For example, in an ID setting rule, Shenzhen city belongs to the region B, so that when one node located in Shenzhen city joins the network, the node randomly selects one strip from the hash space, then finds a hash value scope article belonging to the region B from the strip, randomly selects one hash value from the hash scope as the prefix (or suffix or certain key field) of the ID, and constructs the node ID by combining the hash value with other attribute information of the node.
It may be known that the detailed geographical position of the node may be deduced with the certain key field in one node ID and the strip division rule through such one strip division mechanism for selecting the ID so as to obtain subscriber position information from the node ID.
In the embodiment of the present invention, the process of constructing its own ID of the node may be finished by the node own, or may be uniformly finished by a central server, and then the node requests distribution of the central server.
The embodiment of the present invention further provides a device for constructing the node ID. Based on the realization of the above method, the device may realize the above-mentioned method for constructing the node ID. The device may be disposed on the node, and may also be disposed on the server or other telecommunication devices.
Referring to FIG. 3, a device for constructing the node ID, which is realized based on the above method, includes an acquiring unit, a determining unit and a constructing unit.
The acquiring unit is adapted to acquire geographical position information of the node.
The determining unit is adapted to determine a hash space of the node ID by adopting a strip division method according to the geographical position information of the node.
The constructing unit is adapted to randomly select one hash value from the hash space, and construct the node ID by combining the hash value with other attribute information of the node.
The embodiment of the present invention further provides a communication network, which is realized based on the above method, and includes a first level node group and a second level node group, in which the first level node group includes a first node and a second node, and the second level node group includes a third node.
The first node and the second node are the nodes with the ID of the same first geographical position information, which may be the prefix, the suffix or certain key field.
The third node includes an ID of second geographical position information, and a regional scope displayed by the second geographical position information is larger than a regional scope displayed by the first geographical position information.
The nodes in the first level node group and the nodes in the second level node group respectively maintain route information of each node group.
The first node and the second node include the route information of the first level node group and the second level node group.
The embodiment of the present invention further provides a communication network, which is realized based on the above method, and includes a first level node group and a second level node group. The first level node group includes a first node and a second node, and the second level node group includes a third node.
The nodes in the first level node group and the nodes in the second level node group respectively maintain route information of each node group. A regional scope covered by the second level node group is larger than a regional scope covered by the first level node group. The second level node group includes the first level node group, and the first node and the second node include the route information of the first level node group and the second level node group.
The embodiment of the present invention further provides a communication network, which is realized based on the above method, and includes a first level node group and a second level node group. The first level node group includes a first node and a second node, and the second level node group includes a third node. The nodes in the first level node group and the nodes in the second level node group respectively maintain route information of each node group, and the first node and the second node include the route information of the first level node group and the second level node group.
The embodiment of the present invention further provides a communication network, which is realized based on the above method, and includes a first level HSS node group and a second level HSS node group. The first level HSS node group includes a first HSS node and a second HSS node, and the second level HSS node group includes a third HSS node. The HSS nodes in the first level HSS node group and the HSS nodes in the second level HSS node group respectively maintain route information of each node group. The first HSS node and the second HSS node include the route information of the first level HSS node group and the second level HSS node group.
The embodiment of the present invention further provides a communication network, which is realized based on the above method, and includes a first level HSS node group and a second level HSS node group. The first level HSS node group includes a first HSS node and a second HSS node, and the second level HSS node group includes a third HSS node. The HSS nodes in the first level HSS node group and the HSS nodes in the second level HSS node group respectively maintain route information of each node group. A regional scope covered by the second level HSS node group is larger than a regional scope covered by the first level HSS node group. The second level HSS node group includes the first level HSS node group, and the first HSS node and the second HSS node include the route information of the first level HSS node group and the second level HSS node group.
The embodiment of the present invention further provides a communication network, which is realized based on the above method, and includes a first level HSS node group and a second level HSS node group. The first level HSS node group includes a first HSS node and a second HSS node, and the second level HSS node group includes a third HSS node. The first HSS node and the second HSS node are the nodes with an ID of the same first geographical position information, and the third HSS node includes an ID of second geographical position information. A regional scope displayed by the second geographical position information is larger than a regional scope displayed by the first geographical position information. The HSS nodes in the first level HSS node group and the HSS nodes in the second level HSS node group respectively maintain route information of each node group. The first HSS node and the second HSS node include the route information of the first level HSS node group and the second level HSS node group.
The embodiment of the present invention further provides a method for establishing a route, which may be finished by the node and includes the following steps.
Step 201: A node searches for a target node from a first level node group according to first level route information, and returns a search result or data saved by the target node if the target node is found. Step 202 is executed if the target node is not found.
Step 202: The node searches for the target node from a higher level node group according to higher level route information, and returns a search result or data saved by the target node if the target node is found. Step 202 is repeated if the target node is not found.
For example, in the telecommunication system, the first level node group forms the node ID with the geographical regional scope identity according to the geographical position information of the subscriber, for example, in a home subscriber server (HSS) of an mobile IP multimedia subsystem (IMS), the hash value of the domain name in an instant messaging private user identity (IMPI) is served as the key of the HSS node ID. Then, the node IDs are collected together so as to form the hierarchical HSS node group network, for example, a city level HSS network or a province level HSS network. Each joined node maintains the routing table information of the each layer network joined.
The second level node group registers all the subscribers in the whole network and makes the subscribers join the higher level node group network, for example, a country level HSS network. Each node maintains a whole network highest level routing table information, that is, the first level routing table information also includes the second level route information.
In the telecommunication network, most data access modes have a localization feature, for example, in a traffic model, a proportion of local calling is higher than a proportion of toll and roaming calling. By adopting the embodiment of the present invention, the local calling may be finished in Step 201, only the related data operations of the toll and roaming calling are executed in Step 202. In Step 201, only the local network resource is used, and in Step 202, the resource of the toll backbone network connected to the local network is used. Therefore, in the embodiment of the present invention, under this situation, the resource consumption of the backbone network is saved as compared with a common DHT.
The node may be the peer node, and the node group may be the DHT network. According to the particular network programming and the geographical position information, the node group may also be divided into three, four or more layers.
The flowing embodiment takes two-layer for example. Referring to FIG. 4, the method for constructing a two-layer DHT network of the embodiment of the present invention includes the following step.
Step 301: A node builds up the hierarchical DHT network based on a geographical position relation according to an ID of the node, forms and maintains each layer of DHT route information (may be the routing table).
According to a geographical information prefix (or the suffix or certain key field) of the node ID, the nodes with the same geographical key field are registered and collected together so as to finally form the hierarchical DHT network based on the geographical position relation, and each node respectively maintains the node routing table information of each layer of the DHT network.
The peer nodes of each layer of the DHT network are the nodes with the ID having the same geographic scope, for example, the nodes in the Shenzhen level DHT network have the ID including the key filed of Shenzhen. In the embodiment of the present invention, the scale of the each layer of the DHT network may be different, and the particular scale may be set according to the network programming demand. For example, according to the city level scale, the peer nodes belonging to the same city are collected together to one layer of the DHT network, for example, the nodes with the ID having the key field of Shenzhen are collected together so as to form one layer of the DHT network of the Shenzhen region, and the nodes in the layer of the DHT network maintain one DHT routing table of the layer of the network node. According to the province level scale, the peer nodes of the same province are collected to one layer of the DHT network, for example, the nodes with the ID having the key field of Guangdong are collected together, so as to form one layer of the DHT network of the Guangdong region, and a corresponding province level DHT routing table is constructed.
Referring to FIG. 5, the nodes in each region A, B, C and D form DHT region rings, i.e., one layer of the DHT network, according to the geographical information prefix (may also be the suffix or certain key field) in its own ID.
Similarly, the multi-layer DHT network is constructed based on the geographical position relation according to the geographical position information of the node. For example, a site level DHT network is formed first according to a site/rack relation, then a city level scale DHT network is formed according to a city level relation, and finally a province level scale DHT network is formed on the city level DHT network according to a province level relation. The more layers of the DHT network are divided, the better the balancing and localizing effect of the network flow is. However, the more layers may also result in more routing table information required to be maintained by each peer node, and thus more cost is required. The particular number of the layers of the DHT may be determined according to the system flow project demand and the cost loading index.
Referring to FIG. 4, the method for constructing the two-layer DHT network of the embodiment of the present invention further includes the following step.
Step 302: All the nodes in the network are registered and joined in the highest level whole DHT network. The route information of the highest level whole DHT network such as the routing table is formed and maintained.
The highest level DHT network, i.e., the whole DHT network, makes the peer nodes register the whole scope and join the higher level DHT network, so that the whole network node route may be realized.
Referring to FIG. 6, the embodiment of the present invention further provides a method for establishing the route, which includes the following steps.
Step 201: A node (for example, the peer node) searches for a target node from a first level node group according to first level route information, and returns a search result or data saved by the target node if the target node is found, and Step 202 is executed if the target node is not found.
Step 202: The node searches for the target node from a higher level node group according to higher level route information, and returns a search result or the data saved by the target node if the target node is found, and Step 202 is repeated if the target node is not found.
Each peer node maintains N level route information, in which N is a particular number of the node groups (for example, the constructed DHT network). The N level route information (for example, the routing table) includes the route information of the N node groups which the node belongs to. When executing a daily service operation, firstly the node searches for the target node from the route information of its own level; when the information of the target node is not in the route information of its own level, the node searches for the target node from the higher level route information, until finally finds the target node from the highest whole network route information.
In Steps 201 and 202, by grouping the nodes, the hierarchical DHT network is formed, and a hierarchical index route searching mechanism is realized. For example, referring to FIG. 1, when a certain node S in a region DHT A requires to search for a certain node D in the network, firstly, the node S searches for the node in the routing table of the region DHT A; if the target node is in the region, the node S quickly finds the target node. If the node S finds that the node is not in the routing table of the region, the node S immediately forwards the searching request command to a big ring whole DHT network. At this time, on receiving the searching request, a node D in a region DHT B responds to the request information, and finally finishes the searching operation.
Through such one hierarchical DHT system, the number of the peers in the P2P network is quite large. When an interaction among the peers is quite violent, most flows of the daily service operations in the P2P network is limited within the local DHT, thereby preventing from excessive occupation of the bandwidth of the backbone network which is originally not wide enough. In addition, in the system of the embodiment of the present invention, each DHT peer has multi-roles, and it is determined whether to search in the whole level DHT network or in each region level DHT network during the first query, thereby achieving the purpose of searching for only once for the target node.
Corresponding to the method for establishing the route of the embodiment of the present invention, the embodiment of the present invention further provides a communication apparatus, which includes a device for establishing the route and is realized based on the above method. Referring to FIG. 7, it is a schematic structural view of the device. The device may be disposed on the node (for example, the peer node), the server, or other communication apparatus. The device includes a receiving unit, a route searching unit and a transmitting unit. The receiving unit is adapted to receive target node information required to be searched, for example, an index value.
The route searching unit is adapted to search for route information of a target node in a sequence from lower level route information to higher level route information according to the target node information until the route information of the target node is found.
The transmitting unit is adapted to transmit information to the target node according to the found route information of the target node.
The lower level route information is the routing table information maintained by the nodes in the first level node group in the hierarchical network.
The higher level route information is the routing table information maintained by the nodes in the second level node group or the node group above the second level node group in the hierarchical network.
When executing the service operation, the node searches for a target index from the lower level routing table. When the index data is not in its own lower level DHT, the node searches for the target index in the higher level routing table until searching in the highest level DHT routing table.
The embodiment of the present invention provides a communication network system, which is realized based on the above method, and includes at least one node, in which the node includes a receiving unit, a route searching unit and a transmitting unit.
The receiving unit is adapted to receive target node information required to be searched.
The route searching unit is adapted to search for route information of a target node in a sequence from lower level route information to higher level route information according to the target node information, until route information of the target node is found.
The transmitting unit is adapted to transmit the information to the target node according to the found route information of the target node.
Finally, it should be understood that the above embodiments are only used to explain, but not to limit the technical solution of the present invention. In despite of the detailed description of the present invention with referring to above preferred embodiments, it should be understood that various modifications, changes or equivalent replacements can be made by those skilled in the art without departing from the spirit and scope of the present invention and covered in the claims of the present invention.

## Claims

1. A method for constructing a node ID by a device, comprising:
acquiring geographical position information of a node;
determining a hash space of the node ID by dividing the whole hash space into N strips, and dividing each strip into z articles, wherein each article corresponds to one of z geographical positions; and
randomly selecting one hash value from the hash space and constructing the node ID by combining the hash value with at least one of a name of the node, an IP attribute of the node, a latitude of the node, and a longitude of the node.

2. The method according to claim 1, wherein the hash value serves as a prefix, a suffix or a key field of the node ID.

3. The method according to claim 1, wherein the geographical position information includes geographical region information.

4. A device, including a CPU, for constructing a node ID, the device further comprising:
an acquiring unit adapted to acquire geographical position information of a node;
a determining unit adapted to determine a hash space of the node ID by dividing the whole hash space into N strips, and dividing each strip into z articles, wherein each article corresponds to one of z geographical positions; and
a constructing unit adapted to randomly select one hash value from the hash space, and construct the node ID by combining the hash value with at least one of a name of the node, an IP attribute of the node, a latitude of the node, and a longitude of the node.

5. The device according to claim 4, wherein the hash value serves as one of a prefix, a suffix, and a key field of the node ID.