WO2012003623A1 - Resource information processing method based on peer-to-peer network, peer-to-peer network and node - Google Patents
Resource information processing method based on peer-to-peer network, peer-to-peer network and node Download PDFInfo
- Publication number
- WO2012003623A1 WO2012003623A1 PCT/CN2010/074992 CN2010074992W WO2012003623A1 WO 2012003623 A1 WO2012003623 A1 WO 2012003623A1 CN 2010074992 W CN2010074992 W CN 2010074992W WO 2012003623 A1 WO2012003623 A1 WO 2012003623A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- domain
- identifier
- resource
- information
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
Definitions
- the present invention relates to a peer-to-peer network, and in particular, to a resource information processing method based on a peer-to-peer network, a peer-to-peer network, and a node.
- Peer to Peer (P2P) network as the overlay network of the existing Internet (Internet), shares computer resources and services through peer-to-peer exchange between systems to achieve distributed, reliable, scalable, and Robust web application model. It breaks the traditional client/server (C/S) model, and the status of each node in the network is equal. Each node acts as a server, serving other nodes, and also enjoying the services provided by other nodes.
- C/S client/server
- DHT Distributed Hash Table
- Overlay Network P2P networks
- the DHT network mainly uses distributed hash table technology to organize nodes in the network (that is, user hosts or servers that are added to the P2P network).
- DHT is a huge hash table that is maintained by a large number of nodes across a wide area.
- the hash table is divided into discontinuous blocks, each node is assigned to a hash block of its own and becomes the manager of this hash block.
- By encrypting the hash function an object's name or keyword is mapped to a 128-bit or 160-bit hash value.
- the DHT class structure can adapt to the dynamic join/exit of nodes, and has good scalability, robustness, uniformity of node ID assignment and self-organization ability.
- DHT can provide accurate discovery because the overlapping network uses a deterministic topology. As long as the destination node exists in the network, DHT can always find it, and the accuracy of the discovery is guaranteed.
- the most classic cases are Tapestry, Pastry, Chord and CAN.
- FIG. 1 shows the network topology of Chord.
- the Chord project was born at the Massachusetts Institute of Technology in the United States. Its goal is to provide a distributed resource discovery service suitable for P2P environments, which uses the DHT technology to make discovery fingers
- the object only needs to maintain a routing table of O(logN) length.
- 0 ( ) is a token indicating space complexity
- N is the total number of nodes in the network.
- the node assigns a unique node identifier (Node ID) in a certain way, the resource object generates a unique resource identifier (Object ID) through the hash operation, and the resource will be stored in the node ID equal to it.
- Node ID unique node identifier
- Object ID unique resource identifier
- Chord's main contribution is to propose a distributed lookup protocol that maps the specified key (Key) to the corresponding node (Node).
- the complexity of the route lookup of the typical DHT network mentioned above generally increases with the number of network nodes, generally O(log N), where N is the maximum number of nodes in the network.
- the routing complexity of this kind of DHT algorithm does not change with the maximum number of nodes in the network, and its corresponding routing complexity is a constant. , that is, the number of hops needed to find is a constant.
- Now some researchers of structured overlay networks propose structured overlay network protocols that can complete message routing within one or two hops, including Kelips algorithm and One-ho algorithm.
- This algorithm divides all nodes into k groups (the affinity group), and the nodes are mapped to the k integers from 0 to k-1 through the hash function. All files are also mapped to the k integers through the hash function.
- the inner node remains fully connected and is routed through a broadcast algorithm (Gossip).
- each node such as node 110 maintains three tables, an Affinity Group View, an Inter-Group Routing Table, and a Filetuples.
- Affinity Group View stores the routing information of all nodes in the same group of nodes. Each entry contains the ID of the node (the IP and port number of the node), the round-trip time (rtt) to the node, and Timing time (heartbeat count, used for routing table updates).
- Each entry contains a group number (0 to k-1), a sequence of nodes connecting the groups, and an rtt, heartbeat count to each of the nodes.
- Filetuples stores the file index of all file index information in this group.
- Each entry in the table contains the file name (filename), and the nodes that store the file indexes, that is, the master nodes of these files, and the nodes to these master nodes. Heartbeat count.
- the size of the node routing table is 0 (D.
- the nodes in the network are fully connected with each node in the group (that is, each node saves the routing information of all other nodes in the group), and keeps in contact with the partial node sequences of other groups.
- the resource can be realized through this route design.
- the complexity of the lookup is 0 (1), which is not related to the number of nodes in the network.
- the file to be searched is mapped out of the group number. If the group number is its own group, the node where the file is stored is directly found; if it is not its own group number, the file storage can be found by finding the node of the corresponding group by looking up the contacts table. Node. Therefore, it can be seen that the search hop count of this routing algorithm is 2, which is also 0 (1).
- the scalability, reliability, maintainability, and discovery algorithms of the current DHT network are very good, and are also commonly used in actual networks.
- the transmission mode may occupy the bandwidth of any one of the network nodes or the egress, and the exchange between each node is completely disordered.
- a Beijing user may exchange file fragments with users in Guangzhou, or exchange with a user who is far away in the United States.
- disorderly exchanges lead to unnecessary cross-regional or even cross-border traffic transmission, which consumes expensive domestic and international bandwidth resources, and this search also generates large routing hops and delays, which is costly.
- the Kelips algorithm in this paper only groups the network with a simple HASH algorithm. This also has the above problem of resource exchange disorder in the group. In addition, its routing maintenance overhead is very large, and Gossip is used in the route maintenance algorithm. Broadcast algorithm, this algorithm is relatively simple, but has a certain degree of blindness, so it will bring a lot of redundant messages, which greatly affects the performance of the system. Summary of the invention
- the technical problem to be solved by the present invention is to provide a resource information processing method based on a peer-to-peer network and a peer-to-peer network to improve system performance.
- the present invention provides a resource information processing method based on a peer-to-peer network, where a node of the peer-to-peer network has a domain identifier, and has the same domain identifier as the resource information saved by the node of the peer-to-peer network.
- the domain identifier is determined according to the geographical location information of the node or the resource information, and the different domain identifiers correspond to different geographical location ranges, and the method further includes:
- the node determines that the domain identifier of the resource information to be operated is different from the domain identifier of the node, the node forwards the operation request to the outbound domain node, otherwise the node performs intra-domain processing.
- the requesting party is an external service processing point, and the operation request sent by the external service processing point further carries the feature information of the resource information to be operated,
- the method further includes: first determining, according to the feature information of the resource information, a resource identifier of the resource information,
- the operation request forwarded by the node to the outbound domain node carries a global identifier consisting of the domain identifier and the resource identifier of the resource information.
- the method further includes: the outer domain node performing intra-domain processing according to the global identifier.
- the step of processing in the intra-domain includes: determining, by the node, the intra-domain node corresponding to the resource information according to the resource identifier of the resource information, the intra-domain routing table and the intra-domain resource information storage rule saved by the node, if the intra-domain node If the current node is the current node, the operation is performed according to the operation request; if the intra-domain node is another node in the domain, the operation request is forwarded to other nodes in the domain, and the forwarded operation request includes the global identifier of the resource information, and the intra-domain route
- the table includes routing information of other nodes in the domain that have a connection relationship with the node and a corresponding node identifier, and the node identifier is determined according to the feature information of the node.
- the feature information of the node refers to an IP address, a network card number, or a machine serial number of the node, where the node identifier is obtained by using a hash algorithm; and the location information of the resource information is the resource information provider or a corresponding resource.
- the present invention further provides a node of a peer-to-peer network, where the node of the peer-to-peer network has a domain identifier, and the domain identifier is determined according to the location information of the node, and different domain identifiers are different.
- a location range the node includes a receiving module, an identification determining module, a processing module, and a storage module connected to the processing module;
- the receiving module is configured to: receive an operation request of the requesting party, where the operation request includes location information of a resource message, a package, and a location;
- the identifier determining module is configured to: determine a domain identifier of the resource information according to the geographic location information in the operation request;
- the processing module is configured to: determine whether the domain identifier of the resource information to be operated is the same as the domain identifier of the node, and if not, forward the operation request to the outbound domain node, otherwise perform intra-domain processing.
- the storage module is configured to: save resource information, and the resource information saved by the node has the same domain identifier as the node.
- the operation request is sent by the external service processing point to the node, and the operation request further carries the feature information of the resource information to be operated.
- the identifier determining module is further configured to: determine, according to the feature information of the resource information, a resource identifier of the resource information,
- the processing module is configured to: the operation request forwarded by the outbound domain node carries a global identifier consisting of the domain identifier and the resource identifier of the resource information;
- the processing module is further configured to: receive an operation request sent by another node of the peer-to-peer network, and the operation request sent by the other node of the peer-to-peer network carries the global identifier of the resource information to be operated.
- the storage module is further configured to: store an intra-domain routing table, where the intra-domain routing table includes routing information of other nodes in the domain that have a connection relationship with the node, and a corresponding node identifier, where the node identifier is according to characteristics of the node Information determined;
- the processing module is configured to: perform intra-domain processing according to the following: to determine, according to the resource identifier of the resource information, the intra-domain routing table, and the intra-domain resource information storage rule, the intra-domain node corresponding to the resource information, if If the node is the current node, the operation is performed according to the operation request; if the node in the domain is another node in the domain, the operation request is forwarded to other nodes in the domain, and the operation request forwarded to other nodes in the domain includes the global identifier of the resource information. symbol.
- the feature information of the node refers to an IP address, a network card number, or a machine serial number of the node, where the node identifier is obtained by using a hash algorithm; and the geographical location information of the resource information is the resource identifier.
- the distributed hash table DHT algorithm is determined.
- the present invention further provides a node of another peer-to-peer network, where the node of the peer-to-peer network has a domain identifier, and the resource information saved by the node has the same domain identifier as the node, and the node
- the domain identifier is determined according to the location information of the node, and the different domain identifiers correspond to different geographical location ranges
- the resource information has a global identifier, including a domain identifier and a resource identifier, and the domain identifier is according to the resource identifier. Determining the geographical location information of the information, the resource identifier is determined according to the feature information of the resource information,
- the node is configured to: process the resource information according to a global identifier of the resource information.
- the feature information of the node refers to an IP address, a network card number, or a machine serial number of the node, where the node identifier is obtained by using a hash algorithm; and the location information of the resource information is the resource information provider or a corresponding resource.
- the geographical location information to which the resource information belongs; the characteristic information of the resource information refers to a resource name or content, and the resource identifier is obtained by using a hash algorithm.
- the present application also discloses a corresponding peer-to-peer network, including any of the above nodes.
- the resource information processing method and the peer-to-peer network of the present invention divide the peer-to-peer network into different domains according to the geographical location information, and the different domains correspond to different domain identifiers, and are determined by the geographical location information according to the resource information.
- the domain identifier saves the resource information on the node with the same domain identifier, which reduces the number of hops and delays required for resource information insertion or query operations, and reduces traffic transmission between different regions, thus effectively saving network bandwidth.
- Figure 1 shows the topology of Chord
- Figure 2 is a schematic diagram of a routing table stored in a node of the Kelips algorithm
- FIG. 3 is a schematic diagram of a resource information processing method based on a peer-to-peer network according to the present invention
- FIG. 4 is a schematic diagram of a node global identifier and a resource global identifier according to the present invention
- FIG. 5 is a schematic diagram of content to be stored in a network node according to the present invention
- FIG. 6 is a schematic diagram of a P2P network architecture based on an application example of the present invention.
- FIG. 7 is a schematic diagram of an application example 1 of the present invention for querying and querying user data of the domain;
- FIG. 8 is a schematic diagram of querying external domain user data according to an application example 2 of the present invention.
- FIG. 9 is a block diagram showing the structure of a node in a peer-to-peer network according to the present invention.
- the main idea of the resource information processing method based on the peer-to-peer network (hereinafter referred to as P2P network) and the peer-to-peer network is that the entire peer-to-peer network is divided into several domains according to geographical locations, and each domain has a corresponding domain identifier.
- the different domain identifiers correspond to different geographical location ranges; the resource information saved by the nodes in the domain has the same domain identifier as the node, and the domain identifier of the node is determined according to the geographical location information of the node, and different domain identifiers
- the resource information has a global identifier, including a domain identifier and a resource identifier, where the domain identifier is determined according to the geographical location information of the resource information, and the resource identifier is based on the feature information of the resource information. It is determined that the node performs corresponding processing on the resource information according to the global identifier of the resource information.
- the invention can reduce the number of route hops and delays required for node and resource information query, and reduce traffic transmission between different regions, thereby effectively saving network bandwidth.
- the entire P2P network is divided into several domains, and the domain division is performed according to the geographical location, and each domain has a unique domain identifier (referred to as a domain ID) corresponding thereto; the geographical location on which the geographical division is based
- the information may be the administrative area division of the node or the user, or the division of the operator area.
- the domain division and the number of domains in the entire P2P network can be determined according to actual conditions.
- the domain ID that is, the domain ID
- the domain ID can be generated according to different principles. Generally, it is a centralized unified static allocation, or it can be dynamically generated by the corresponding server (that is, the domain ID of the node is unchanged during its lifetime), but the domain ID is required to be global. Uniquely, the number of bits of the domain ID is globally uniform, but its length is variable according to the expected maximum domain size.
- the nodes in the peer-to-peer network determine the domain to which the node belongs according to its geographical location information.
- Each node has a global identifier, which is a unique identifier of the node in the entire network, including the domain identifier and the node identifier. All nodes in the domain have the same domain ID.
- the obtaining of the geographical location information of the node can be statically allocated or obtained by other means outside the P2P system, and the nodes with similar geographical proximity are guaranteed to belong to the same domain.
- the node identifier (referred to as the node ID) is obtained by hashing the feature information of the node.
- the feature information of the node refers to the unique information of the node, such as an IP address, a network card number, or a machine serial number.
- the selection of the hash algorithm may be Arbitrary;
- the global identifier of the node includes the domain identifier and the node identifier.
- the domain ID is prefixed and the node ID is generated by the suffix.
- the resource information processing method of the present invention based on the peer-to-peer network includes:
- Step 301 The node receives an operation request sent by an external service processing point, where the operation request includes geographical location information and feature information of the resource information to be operated.
- Step 302 The node determines the domain identifier of the resource information according to the geographical location information in the operation request, and determines the resource identifier of the resource information according to the feature information in the operation request; the domain identifier of the resource information (referred to as the domain ID) It is determined according to the geographical location information of the resource information and the domain identifier mapping relationship table; the geographical location information of the resource information is the geographical location information of the resource information provider or the corresponding resource itself; the geographical location information is obtained statically It is allocated or obtained by other means than the P2P system, and the resource information with similar geographical locations belongs to the same domain.
- the domain ID the domain identifier of the resource information
- the resource ID of the resource information is obtained by performing a hash algorithm on the feature information of the resource, and the feature information of the resource is information that can identify the resource, such as the specific content of the resource, the name of the user, the name of the user data, and the like, and the hash.
- the choice of algorithm can be arbitrary.
- the domain identifier and the resource identifier of the resource information constitute a global identifier of the resource information, as shown in FIG.
- Step 303 If the node determines that the domain identifier of the resource information to be operated is different from the domain identifier of the node, the node forwards the operation request to the outbound domain node, otherwise performs intra-domain processing.
- the operation request forwarded by the outbound domain node carries a global identifier consisting of the domain identifier and the resource identifier of the resource information.
- the intra-domain processing is performed as follows: the node determines, according to the resource identifier of the resource information, the intra-domain routing table and the intra-domain resource information storage rule, If the intra-domain node is the current node, the operation is performed according to the operation request; if the intra-domain node is another node in the domain, the operation request is forwarded to other nodes in the domain, including the global identifier of the resource information. .
- the nodes in the peer-to-peer network store the intra-domain routing table and the domain identifier mapping relationship table, the extra-domain routing table, and the resource information table.
- the node may further include other information, which may be determined according to requirements. The necessary information is listed.
- the intra-domain routing table embodies the routing relationship between the current node and the nodes in other domains.
- the intra-domain nodes are obtained according to a certain DHT algorithm. They can be constructed using Tapestry, Pastry, Chord or one-hop DHT. The DHT algorithm can be different;
- the extra-domain routing table includes all out-of-domain node information that has a connection relationship with the current node, such as the mapping between the global identifier of the out-of-domain node and the IP address of the node; the extra-domain routing table reflects the routing relationship between the current node and some nodes of other foreign domains, according to The out-of-domain routing table, the current node can contact the foreign domain.
- the intra-domain and out-of-domain routing tables of each node are dynamically updated, and intra-domain routing updates and out-of-domain routing updates are independent processes.
- the resource information table is the resource information saved by the node. If the node is the home subscriber server HSS, the resource information stored in the HSS is user subscription data, and the resource information table includes a mapping relationship between the resource global identifier and the resource content.
- the resource global identifier includes a domain identifier of the resource information and a resource identifier (referred to as a resource ID). For example, the domain ID is used as a prefix, and the resource ID is generated as a suffix, as shown in FIG. 4 .
- the node and resource information in the entire P2P network respectively have a unique node global identifier and a resource global identifier, wherein the node global identifier and the resource global identifier are of equal length (determined by the storage characteristics of the resources in the DHT).
- Node (or resource information) global identifier is used throughout the pair The node (or resource information) is uniquely identified within the network.
- the resource information is stored on a node according to a certain storage rule.
- the storage rule is determined according to a corresponding distributed hash table DHT algorithm in the domain, and the resource information is stored in a node whose global identifier is closest to the global identifier of the resource.
- the insertion or query of the resource information is also performed according to the DHT algorithm in the domain.
- the node determines the intra-domain node corresponding to the resource information according to the resource identifier of the resource information, the intra-domain routing table, and the intra-domain resource information storage rule.
- the feature information of the node refers to an IP address, a network card number, or a machine serial number of the node, where the node identifier is obtained by using a hash algorithm; and the location information of the resource information is the resource information provider or a corresponding resource.
- the network divides the entire network into several domains (here, four) according to the geographical area of the nodes.
- the figure indicates the DHT algorithm used in the domain, where the domain 1, 3 uses the Chord algorithm.
- Domains 2 and 4 use the One-hop DHT algorithm.
- For the domain without loss of generality, only the nodes in the domain 2 and the foreign domain nodes are listed in the figure, where each node of the domain 2 and the other 3 One node of the domain keeps in touch, and the nodes of other domains have the same connection with the foreign domain as in the case of domain 2.
- Both intra-domain and extra-domain routing connections are dynamically updated and can be adapted to changes in network conditions.
- a node refers specifically to a Home Subscriber Server (HSS). See Figure 6 and 7.
- HSS Home Subscriber Server
- the HSS is the primary user database that supports the IMS network entities used to process calls/sessions. It contains user profiles, performs user authentication and authorization, and provides information about the user's physical location.
- each HSS (hereinafter referred to as a node) stores user data of a part of the user, and the user data includes the address information of the proxy server (ie, SIP Proxy) that is registered by the user through the SIP protocol.
- SIP Proxy the address information of the proxy server
- the domain ID of the user data is determined according to the domain to which the user belongs, and the global identifier of the node where the user data is stored is closest to the global identifier of the resource of the user data, and it can be seen that this is satisfied.
- the node of the rule must be the node of the domain (that is, the domain ID must be the same), and This node is also unique.
- the user data is stored according to its resource global identifier in the local domain node with the global identifier equal to or similar to the domain identifier (ie, the domain ID in the node global identifier of the node and the domain ID in the resource global identifier of the user data) On the same), when there are more close nodes, the user data resources need to be saved by the transfer node, which is also the necessary process for the new node to join, which is also the process of routing maintenance of the specific DHT algorithm.
- nodes There are 8 nodes in the figure. These nodes are divided into two domains according to the geographical location.
- the nodes &, b, c, and d belong to domain A
- the domain ID of domain A is 001
- the nodes e, f, g, and h belong to domain B.
- the domain ID of domain B is Oi l (here is expressed in binary).
- Each node in the figure uses the One-hop DHT algorithm in the domain (that is, each node in the domain maintains a global routing table in the domain to maintain full connectivity with other nodes in the domain), and each node also contains an out-of-domain
- the routing table, the out-of-domain routing table contains routing information of some nodes of the outer domain. For example, the out-of-domain routing table of the node a only contains the routing information of the node h in the domain B.
- user X needs to establish a connection with user Y.
- User X sends a call request to his SIP Proxy 1.
- the call request contains the Uniform Resource Indicator (URI) of user Y.
- URI Uniform Resource Indicator
- SIP Proxy 1 You need to find the address of the SIP Proxy currently used by User Y by looking up the user data of User Y.
- the data query process can be divided into the following steps:
- Step 601 SIP Proxyl sends a data query request to the node a to which it is connected, requesting to query the user data of the user Y, and the request includes the URI information of the user Y, such as: Bob@beijing.cn
- Step 602 Node a according to the query request The URI information of the user Y calculates a resource global identifier of the user data of the user Y;
- This resource global identifier can be obtained by: Node a according to User Y's URI: Bob@beijing.cn, , by extracting the domain name part of this URI "beijing.cn", and looking up its own domain name ID mapping table
- the domain ID of this user is 001, and the user name "Bob" is hashed to obtain the resource ID of 010001010.
- the number of resource IDs is short, for convenience of explanation, the actual domain ID and resource ID.
- the number of digits can be as large as, for example, the resource ID is 128 bits, and the domain ID is 9. Bit, can be enough to ensure that the ID after HASH is not repeated), the domain ID and resource ID are combined to get the resource global identifier of this resource (here 001010001010);
- the node a Since the domain ID of the required user belongs to the domain but is not responsible for the node a, the node a queries its own intra-domain routing table, and obtains the corresponding node ID of the resource ID (010001011) closest to the requested user resource ID.
- the IP address of the node c and sends a data query request to the node c, the request contains a resource global identifier of the data to be searched;
- the resource information is stored on the node corresponding to the node ID closest to the resource ID, which is only a specific storage rule of the application instance. Of course, it can also be stored on the node corresponding to the node ID obtained by inverting its ID. This is determined by the DHT algorithm in the domain. The storage of resources and the search of resources are determined by the DHT algorithm.
- Step 603 The node c receives the query request, according to the resource global identifier included in the request, the resource is responsible for itself, and finds its own resource information table, and returns the user data of the user Y to the node a;
- Step 604 The node a sends the user data of the user Y to the SIP Proxy 1 , and the SIP Proxy 1 can establish a connection with the user Y by using the obtained address information of the SIP Proxy 2 of the user Y.
- the process of establishing the connection by using the SIP protocol does not belong to The scope of this patent, the specific process can refer to the SIP protocol related content, the figure simply gives the message schematic.
- the SIP proxy 1 needs to query the user data of the user Z to obtain the address information of the SIP proxy registered by the user Z, as shown in FIG.
- the data query steps are as follows:
- Step 701 SIP Proxyl sends a data query request to the node a to which it is connected, requesting to query the user data of the user Z, and the request includes the URI information of the user Z, such as: Alice@Shanghai.cn
- Step 702 Node a according to the request
- the URI information of the user Z obtains the resource global identifier of the requested data, and the resource global identifier is generated as above.
- the result obtained here is 0110101010, the domain ID in the resource global identifier is 011, and the user resource ID is 010100010.
- the node a queries its own extra-domain routing table, obtains the IP address of the node h with the domain ID 011, and sends a data query request to the node h, and the request includes the required The resource global identifier of the data to be queried
- Step 703 The node h receives the query request, knows that the required resource is located in the domain but is not responsible for itself, so it searches its own intra-domain routing table to obtain the node ID closest to the requested user resource ID (here) IP address of node g of 010100010), and send a data query request to node g
- Step 704 The node g receives the query request, and finds its own resource information table, and returns the user data of the user Z to the node h;
- Step 705 The node h sends the user data of the user Z to the node a;
- Step 706 Node a sends the user data of the user Z to the SIP Proxy 1 , and the SIP Proxy 1 can obtain the connection with the user Z after obtaining the required data.
- steps 704 and 705 can be simplified to step 704;
- Step 704' The node g receives the query request, and finds its own resource information table, and directly returns the user data of the user Z to the node a.
- each node 90 includes a receiving module 91, an identification determining module 92, a processing module 93, and a storage module connected to the processing module. 94, of which
- the receiving module 91 is configured to receive a resource information operation request sent by an external service processing point, where the operation request includes geographical location information and feature information of the resource information to be operated; the operation request is an insertion or query request.
- the identifier determining module 92 is configured to determine a domain identifier of the resource information according to the geographic location information in the operation request, and is further configured to determine a resource identifier of the resource information according to the feature information of the resource information;
- the processing module 93 is configured to determine a domain identifier of the resource information to be operated and the node If the domain identifiers are the same, if they are different, the outer domain node forwards the operation request, which carries the global identifier consisting of the domain identifier and the resource identifier of the resource information; otherwise, it is used for intra-domain processing.
- the processing module 93 is further configured to receive an operation request sent by another node of the peer-to-peer network, where the global identifier of the resource information to be operated is carried, where the intra-domain processing is performed according to the resource identifier in the global identifier of the resource information. .
- the processing module 93 performs intra-domain processing in this manner: determining, according to the resource identifier of the resource information, the intra-domain routing table, and the intra-domain resource information storage rule, the intra-domain node corresponding to the resource information, if the intra-domain node is current The node operates according to the operation request; if the intra-domain node is another node in the domain, the operation request is forwarded to other nodes in the domain, including the global identifier of the resource information.
- the intra-domain routing table is stored in the node, and includes routing information of other nodes in the domain that has a connection relationship with the node and a corresponding node identifier, where the node identifier is determined according to the feature information of the node.
- the storage module 94 is configured to save resource information, where the resource information saved by the node has the same domain identifier as the node, and is further configured to store an out-of-domain routing table and an intra-domain routing table, where the out-of-domain routing table includes the node
- the intra-domain routing table includes the routing information of the other nodes in the domain and the corresponding node identifier, and the node identifier is determined according to the feature information of the node;
- the feature information of the node refers to an IP address, a network card number, or a machine serial number of the node, where the node identifier is obtained by using a hash algorithm; and the location information of the resource information is the resource information provider or a corresponding resource.
- the above is only a special case of the HSS server as a node.
- the present invention does not limit the type of the node, and may be another server or a user's personal host.
- the present invention does not limit the type of resource information, and the related operations of other types of data are the same as the principle of this embodiment.
- the routing maintenance in the domain is performed by the DHT algorithm corresponding to the domain, and the DHT algorithm used in each domain may be different.
- the DHT algorithm used according to this domain is more
- the new intra-domain routing table update the extra-domain routing table by initiating a routing update request to the extra-domain node connected to the node, and copy the corresponding extra-domain routing table directly from other nodes in the domain when the extra-domain node is unreachable;
- the resource information storage rule updates the resource information table.
- the resource information storage in the present invention is completely in accordance with the DHT idea.
- the resource identifier or the resource index is stored in the corresponding node according to the global identifier of the resource, wherein the resource global identifier adds the domain ID of the resource, thereby Considering the regionality of resource information and reducing the blindness of resource information storage; the resource ID in the resource global identifier is obtained by the hash algorithm, which can ensure the randomness and certainty of resource storage, and also facilitate the positioning of resources. . ⁇ Using this storage method, each node only needs to store part of the resource information or its index information, which saves storage space and query time.
- Inserting and querying the global identifier of the resource information makes it easier and faster to locate the domain to which the resource information belongs, and then directly locates the domain where the resource is located for searching, which makes the search faster and reduces the need for resource insertion or query operations.
- the hop count is limited to the domain query as much as possible. Since the query delay in the domain is much smaller than the inter-domain query, the query delay can be reduced from the above two aspects, and the overall performance of the network is improved. At the same time, the resource search can reduce the number of queries between different regions and effectively save network bandwidth.
- the resource information processing method and the peer-to-peer network of the present invention divide the peer-to-peer network into different domains according to the geographical location information, and the different domains correspond to different domain identifiers, and the domain identifiers determined by the geographical location information of the resource information will be
- the resource information is saved on the node with the same domain identifier, thereby reducing the number of route hops and delays required for resource information insertion or query operations, and reducing traffic transmission between different regions, thereby effectively saving network bandwidth.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Provided is a resource information processing method based on a peer-to-peer (P2P) network. The method includes: a node of the P2P network has a domain identifier which is the same as that of the resource information saved by the node of the P2P network, wherein the domain identifier is determined according to the geographical location information of the node or resource information and the different domain identifiers correspond to different geographical location ranges. The method also includes: the node receives an operation request sent by the request side, wherein the operation request carries the geographical location information of the resource information to be operated; the node determines the domain identifier of the resource information according to the geographical location information in the operation request; if the node determines the domain identifier of the resource information to be operated is different from that of the node, it forwards the operation request to the node in the external domain, otherwise, it performs the intra-domain processing. The present invention also discloses a corresponding P2P network and node. The present invention can improve the system performance.
Description
基于对等网络的资源信息处理方法、 对等网络及节点 Resource information processing method based on peer-to-peer network, peer-to-peer network and node
技术领域 Technical field
本发明涉及对等网络,尤其涉及一种基于对等网络的资源信息处理方法、 对等网络及节点。 The present invention relates to a peer-to-peer network, and in particular, to a resource information processing method based on a peer-to-peer network, a peer-to-peer network, and a node.
背景技术 Background technique
对等 (Peer to Peer, P2P ) 网络作为现有互联网 (Internet ) 的叠加网络 ( Overlay Network ) , 通过系统之间的对等交换来共享计算机资源和服务, 以实现分布式、 可靠、 可扩展、 健壮的网络应用模式。 它打破了传统的客户 端 /服务器 (Client/Server, C/S)模式, 在网络中的每个结点的地位都是对等的。 每个结点既充当服务器, 为其他结点提供服务, 同时也享用其他结点提供的 服务。 Peer to Peer (P2P) network, as the overlay network of the existing Internet (Internet), shares computer resources and services through peer-to-peer exchange between systems to achieve distributed, reliable, scalable, and Robust web application model. It breaks the traditional client/server (C/S) model, and the status of each node in the network is equal. Each node acts as a server, serving other nodes, and also enjoying the services provided by other nodes.
随着互联网和宽带接入网的迅速发展, P2P技术得到了大量的应用和研 究, 特别是基于分布式哈希表(Distributed Hash Table, 简称 DHT )和叠加网 络( Overlay Network )的全分布式结构化 P2P网络(即 DHT网络)得到业界 的广泛重视。 With the rapid development of the Internet and broadband access networks, P2P technology has been widely applied and researched, especially the distributed architecture based on Distributed Hash Table (DHT) and Overlay Network. P2P networks (ie DHT networks) have received extensive attention in the industry.
DHT网络主要是釆用分布式散列表技术来组织网络中的节点(即加入到 P2P网络中的用户主机或服务器) 。 DHT是一个由广域范围大量节点共同维 护的巨大散列表。 散列表被分割成不连续的块, 每个节点被分配给一个属于 自己的散列块, 并成为这个散列块的管理者。 通过加密散列函数, 一个对象 的名字或关键词被映射为 128位或 160位的散列值。 DHT类结构能够自适应 节点的动态加入 /退出, 有着良好的可扩展性、 鲁棒性、 节点 ID分配的均匀 性和自组织能力。 由于重叠网络釆用了确定性拓朴结构, DHT可以提供精确 的发现。 只要目的节点存在于网络中 DHT总能发现它, 发现的准确性得到了 保证, 最经典的案例是 Tapestry, Pastry, Chord和 CAN。 The DHT network mainly uses distributed hash table technology to organize nodes in the network (that is, user hosts or servers that are added to the P2P network). DHT is a huge hash table that is maintained by a large number of nodes across a wide area. The hash table is divided into discontinuous blocks, each node is assigned to a hash block of its own and becomes the manager of this hash block. By encrypting the hash function, an object's name or keyword is mapped to a 128-bit or 160-bit hash value. The DHT class structure can adapt to the dynamic join/exit of nodes, and has good scalability, robustness, uniformity of node ID assignment and self-organization ability. DHT can provide accurate discovery because the overlapping network uses a deterministic topology. As long as the destination node exists in the network, DHT can always find it, and the accuracy of the discovery is guaranteed. The most classic cases are Tapestry, Pastry, Chord and CAN.
以下以 Chord为例说明典型的 DHT网络的实现方法, 图 1为 Chord的网 络拓朴示意图。 Chord项目诞生于美国的麻省理工学院。 它的目标是提供一 个适合于 P2P环境的分布式资源发现服务,它通过使用 DHT技术使得发现指
定对象只需要维护 O(logN)长度的路由表。 0 ( )是表示空间复杂度一个记号, N为网络中节点的总数。 在此网络中, 节点按照一定的方式分配一个唯一节 点标识符 (Node ID) , 资源对象通过散列运算产生一个唯一的资源标识符 (Object ID) ,且该资源将存储在节点 ID与之相等或者相近的节点上。需要查 找该资源时, 釆用同样的方法可定位到存储该资源的节点。 因此, Chord 的 主要贡献是提出了一个分布式查找协议, 该协议可将指定的关键字 (Key) 映 射到对应的节点 (Node) 。 上面提到的典型的 DHT 网络的路由查找的复杂度一般随网络节点数目 增多而增大, 一般为 O(log N), N为网络中最大节点数。 在 DHT网络中还有 一类基于常数路由复杂度的路由算法 0 ( 1 ) DHT, 这类 DHT算法的路由复 杂度是不随网络最大节点数的变化而变化的, 它对应的路由复杂度是一个常 数, 也就是查找需要的跳数是一个常数。 现在一些结构化叠加网的研究者提 出一些在一跳或两跳之内即可完成消息路由的结构化叠加网协议, 其中典型 有 Kelips算法、 One-ho 算法等。 The following uses Chord as an example to illustrate the implementation of a typical DHT network. Figure 1 shows the network topology of Chord. The Chord project was born at the Massachusetts Institute of Technology in the United States. Its goal is to provide a distributed resource discovery service suitable for P2P environments, which uses the DHT technology to make discovery fingers The object only needs to maintain a routing table of O(logN) length. 0 ( ) is a token indicating space complexity, and N is the total number of nodes in the network. In this network, the node assigns a unique node identifier (Node ID) in a certain way, the resource object generates a unique resource identifier (Object ID) through the hash operation, and the resource will be stored in the node ID equal to it. Or on a similar node. When you need to find the resource, you can use the same method to locate the node that stores the resource. Therefore, Chord's main contribution is to propose a distributed lookup protocol that maps the specified key (Key) to the corresponding node (Node). The complexity of the route lookup of the typical DHT network mentioned above generally increases with the number of network nodes, generally O(log N), where N is the maximum number of nodes in the network. There is also a class of routing algorithm based on constant routing complexity 0 ( 1 ) DHT in DHT network. The routing complexity of this kind of DHT algorithm does not change with the maximum number of nodes in the network, and its corresponding routing complexity is a constant. , that is, the number of hops needed to find is a constant. Now some researchers of structured overlay networks propose structured overlay network protocols that can complete message routing within one or two hops, including Kelips algorithm and One-ho algorithm.
以下简要介绍 Kelips算法。这种算法将所有节点分成 k组( affinity group ), 节点都通过哈希函数映射到 0到 k-1这 k个整数上, 所有的文件也通过哈希 函数映射到这 k个整数上,组内节点保持全连接,通过一种广播算法(Gossip ) 的方式进行路由更新。 The following is a brief introduction to the Kelips algorithm. This algorithm divides all nodes into k groups (the affinity group), and the nodes are mapped to the k integers from 0 to k-1 through the hash function. All files are also mapped to the k integers through the hash function. The inner node remains fully connected and is routed through a broadcast algorithm (Gossip).
参见图 2 ,每个节点,如节点 110 ,维护三张表,组内路由表( Affinity Group View ) 、 组间路由表 ( Contacts ) 、 文件索引表 ( Filetuples ) 。 Referring to Figure 2, each node, such as node 110, maintains three tables, an Affinity Group View, an Inter-Group Routing Table, and a Filetuples.
Affinity Group View存储的是节点同组内所有节点的路由信息,每一条目 包含节点的 ID (节点的 IP和端口号),到这个节点的消息往返时延( round-trip time, rtt ) , 和定时心兆时间 ( heartbeat count, 用于路由表的更新) 。 Affinity Group View stores the routing information of all nodes in the same group of nodes. Each entry contains the ID of the node (the IP and port number of the node), the round-trip time (rtt) to the node, and Timing time (heartbeat count, used for routing table updates).
Contacts存储的是节点到其他组的路由信息, 每一条目包含组号 (0 到 k-1 ) ,和连接这些组的节点序列, 以及分别到这些节点的 rtt、 heartbeat count。 Contacts stores routing information from nodes to other groups. Each entry contains a group number (0 to k-1), a sequence of nodes connecting the groups, and an rtt, heartbeat count to each of the nodes.
Filetuples存储的是所有文件索引信息在本组内的文件索引, 表内每一条 目包含文件名 (filename ) , 和存储这些文件索引的节点, 即这些文件的主节 点 , 还有节点到这些主节点的 heartbeat count。 Filetuples stores the file index of all file index information in this group. Each entry in the table contains the file name (filename), and the nodes that store the file indexes, that is, the master nodes of these files, and the nodes to these master nodes. Heartbeat count.
由上面三种表的结构可以得出节点路由表的大小为 0 ( D 。
网络中的节点与组内每个节点保持全连接 (即每个节点均保存组内其他 所有节点的路由信息) , 并与其他组的部分节点序列保持联系, 通过这种路 由设计方式可以实现资源查找的复杂度为 0(1), 即不与网络中节点的数目有 关。 先将要查找的文件映射出组号, 若组号是自己的组, 则直接找到文件存 储的节点; 若不是自己的组号, 则通过查找 contacts表, 找到对应组的节点, 就能找到文件存储的节点。 所以可以看出这种路由算法的查找跳数就是 2, 即也是 0 ( 1 ) 的。 From the structure of the above three tables, it can be concluded that the size of the node routing table is 0 (D. The nodes in the network are fully connected with each node in the group (that is, each node saves the routing information of all other nodes in the group), and keeps in contact with the partial node sequences of other groups. The resource can be realized through this route design. The complexity of the lookup is 0 (1), which is not related to the number of nodes in the network. First, the file to be searched is mapped out of the group number. If the group number is its own group, the node where the file is stored is directly found; if it is not its own group number, the file storage can be found by finding the node of the corresponding group by looking up the contacts table. Node. Therefore, it can be seen that the search hop count of this routing algorithm is 2, which is also 0 (1).
目前的 DHT网络的可扩展性、 可靠性、 可维护性、 发现算法的效率都很 好, 在实际网络中也普遍釆用。 但由于在一般 DHT网络中用户数据的存储、 查询、 传输都是随机进行的, 这种传输方式可能占据任意一个网络节点或者 出口的带宽, 每个节点之间的交换也是完全无序的。 一个北京的用户, 既可 能和广州的用户进行文件片段的交换,也可能和远在美国的某用户进行交换。 显然, 无序的交换导致了无谓的跨地区甚至是跨国的流量传输, 这耗费了宝 贵的国内和国际带宽资源, 同时这种查找也产生了较大的路由跳数和延时, 代价巨大。 另外文中的 Kelips算法仅仅是对网络进行简单的 HASH算法进行 分组, 这在组内同样存在上述的资源交换无序的问题, 另外它的路由维护开 销很大,且由于路由维护算法中釆用 Gossip的广播算法,这种算法相对简单, 但有一定的盲目性, 因此会带来大量的冗余消息, 很大程度上影响了系统的 性能。 发明内容 The scalability, reliability, maintainability, and discovery algorithms of the current DHT network are very good, and are also commonly used in actual networks. However, since the storage, query, and transmission of user data in a general DHT network are randomly performed, the transmission mode may occupy the bandwidth of any one of the network nodes or the egress, and the exchange between each node is completely disordered. A Beijing user may exchange file fragments with users in Guangzhou, or exchange with a user who is far away in the United States. Obviously, disorderly exchanges lead to unnecessary cross-regional or even cross-border traffic transmission, which consumes expensive domestic and international bandwidth resources, and this search also generates large routing hops and delays, which is costly. In addition, the Kelips algorithm in this paper only groups the network with a simple HASH algorithm. This also has the above problem of resource exchange disorder in the group. In addition, its routing maintenance overhead is very large, and Gossip is used in the route maintenance algorithm. Broadcast algorithm, this algorithm is relatively simple, but has a certain degree of blindness, so it will bring a lot of redundant messages, which greatly affects the performance of the system. Summary of the invention
本发明要解决的技术问题是提供一种基于对等网络的资源信息处理方法 及对等网络, 以提高系统性能。 The technical problem to be solved by the present invention is to provide a resource information processing method based on a peer-to-peer network and a peer-to-peer network to improve system performance.
为解决上述技术问题, 本发明提供一种基于对等网络的资源信息处理方 法, 所述对等网络的节点具有域标识, 且与所述对等网络的节点保存的资源 信息具有相同域标识, 所述域标识是根据节点或资源信息的地域位置信息确 定的, 且不同的域标识对应不同的地域位置范围, 该方法还包括: To solve the above technical problem, the present invention provides a resource information processing method based on a peer-to-peer network, where a node of the peer-to-peer network has a domain identifier, and has the same domain identifier as the resource information saved by the node of the peer-to-peer network. The domain identifier is determined according to the geographical location information of the node or the resource information, and the different domain identifiers correspond to different geographical location ranges, and the method further includes:
节点接收请求方发送的操作请求, 所述操作请求中携带要操作资源信息 的地域位置信息;
所述节点根据所述操作请求中的地域位置信息确定所述资源信息的域标 识; 以及 Receiving, by the node, an operation request sent by the requesting party, where the operation request carries the geographical location information of the resource information to be operated; Determining, by the node, the domain identifier of the resource information according to the geographical location information in the operation request;
所述节点若判定所述要操作的资源信息的域标识与所述节点的域标识不 同, 则向外域节点转发操作请求, 否则所述节点进行域内处理。 If the node determines that the domain identifier of the resource information to be operated is different from the domain identifier of the node, the node forwards the operation request to the outbound domain node, otherwise the node performs intra-domain processing.
所述请求方是外部业务处理点, 所述外部业务处理点发送的操作请求中 还携带要操作资源信息的特征信息, The requesting party is an external service processing point, and the operation request sent by the external service processing point further carries the feature information of the resource information to be operated,
所述进行域标识判定的步骤之前, 该方法还包括: 先根据所述资源信息 的特征信息确定所述资源信息的资源标识, Before the step of performing the domain identifier determination, the method further includes: first determining, according to the feature information of the resource information, a resource identifier of the resource information,
所述向外域节点转发操作请求的步骤中, 所述节点向外域节点转发的操 作请求中携带由资源信息的域标识和资源标识组成的全局标识符, In the step of forwarding the operation request to the outbound domain node, the operation request forwarded by the node to the outbound domain node carries a global identifier consisting of the domain identifier and the resource identifier of the resource information.
所述向外域节点转发操作请求的步骤之后, 该方法还包括: 所述外域节 点根据所述全局标识符进行域内处理。 After the step of forwarding the operation request to the outbound domain node, the method further includes: the outer domain node performing intra-domain processing according to the global identifier.
所述域内处理的步骤包括: 所述节点根据所述资源信息的资源标识、 所 述节点保存的域内路由表及域内资源信息存放规则确定所述资源信息对应的 域内节点的, 若所述域内节点是当前节点, 则根据操作请求进行操作; 若所 述域内节点是域内其他节点, 则向域内其他节点转发操作请求, 所转发的操 作请求中包括所述资源信息的全局标识符, 所述域内路由表包括与所述节点 存在连接关系的域内其他节点的路由信息及对应的节点标识, 所述节点标识 是根据所述节点的特征信息确定的。 The step of processing in the intra-domain includes: determining, by the node, the intra-domain node corresponding to the resource information according to the resource identifier of the resource information, the intra-domain routing table and the intra-domain resource information storage rule saved by the node, if the intra-domain node If the current node is the current node, the operation is performed according to the operation request; if the intra-domain node is another node in the domain, the operation request is forwarded to other nodes in the domain, and the forwarded operation request includes the global identifier of the resource information, and the intra-domain route The table includes routing information of other nodes in the domain that have a connection relationship with the node and a corresponding node identifier, and the node identifier is determined according to the feature information of the node.
所述节点的特征信息指所述节点的 IP地址、 网卡号或机器序号, 所述节 点标识是利用哈希算法得到的; 所述资源信息的地域位置信息是所述资源信 息提供者或对应资源本身所属的地域位置信息; 所述资源信息的特征信息指 资源名称或内容, 所述资源标识是利用哈希算法得到的; 所述域内资源存放 规则是由该域内釆用的分布式散列表 DHT算法确定的。 The feature information of the node refers to an IP address, a network card number, or a machine serial number of the node, where the node identifier is obtained by using a hash algorithm; and the location information of the resource information is the resource information provider or a corresponding resource. The geographic location information to which the resource information belongs; the characteristic information of the resource information refers to a resource name or content, and the resource identifier is obtained by using a hash algorithm; the intra-domain resource storage rule is a distributed hash table DHT used in the domain. Algorithm determined.
为解决上述技术问题, 本发明还提供一种对等网络的节点, 所述对等网 络的节点具有域标识, 所述域标识是根据节点地域位置信息确定的, 且不同 的域标识对应不同的地域位置范围, 所述节点包括依次连接的接收模块、 标 识确定模块、 处理模块, 以及与处理模块连接的存储模块; 其中,
所述接收模块设置为: 接收请求方的操作请求, 所述操作请求中包括要 操作资源信 ,包、的地域位置信息; In order to solve the above technical problem, the present invention further provides a node of a peer-to-peer network, where the node of the peer-to-peer network has a domain identifier, and the domain identifier is determined according to the location information of the node, and different domain identifiers are different. a location range, the node includes a receiving module, an identification determining module, a processing module, and a storage module connected to the processing module; The receiving module is configured to: receive an operation request of the requesting party, where the operation request includes location information of a resource message, a package, and a location;
所述标识确定模块设置为: 根据所述操作请求中的地域位置信息确定所 述资源信息的域标识; The identifier determining module is configured to: determine a domain identifier of the resource information according to the geographic location information in the operation request;
所述处理模块设置为: 判定所述要操作的资源信息的域标识与所述节点 的域标识是否相同, 若不同, 则向外域节点转发操作请求, 否则进行域内处 理。 The processing module is configured to: determine whether the domain identifier of the resource information to be operated is the same as the domain identifier of the node, and if not, forward the operation request to the outbound domain node, otherwise perform intra-domain processing.
所述存储模块设置为: 保存资源信息, 所述节点保存的资源信息具有与 所述节点相同的域标识。 The storage module is configured to: save resource information, and the resource information saved by the node has the same domain identifier as the node.
所述操作请求由外部业务处理点发送给所述节点, 所述操作请求中还携 带要操作资源信息的特征信息, The operation request is sent by the external service processing point to the node, and the operation request further carries the feature information of the resource information to be operated.
所述标识确定模块还设置为: 根据所述资源信息的特征信息确定所述资 源信息的资源标识, The identifier determining module is further configured to: determine, according to the feature information of the resource information, a resource identifier of the resource information,
所述处理模块是设置为: 向外域节点转发的操作请求中携带由所述资源 信息的域标识和资源标识组成的全局标识符; The processing module is configured to: the operation request forwarded by the outbound domain node carries a global identifier consisting of the domain identifier and the resource identifier of the resource information;
所述处理模块还设置为: 接收对等网络的其他节点发送的操作请求, 所 述对等网络的其他节点发送的操作请求中携带要操作资源信息的全局标识 付。 The processing module is further configured to: receive an operation request sent by another node of the peer-to-peer network, and the operation request sent by the other node of the peer-to-peer network carries the global identifier of the resource information to be operated.
所述存储模块还设置为: 存储域内路由表, 所述域内路由表包括与所述 节点存在连接关系的域内其他节点的路由信息及对应的节点标识, 所述节点 标识是根据所述节点的特征信息确定的; The storage module is further configured to: store an intra-domain routing table, where the intra-domain routing table includes routing information of other nodes in the domain that have a connection relationship with the node, and a corresponding node identifier, where the node identifier is according to characteristics of the node Information determined;
所述处理模块是设置为: 按如下方式进行域内处理: 根据所述资源信息 的资源标识、 所述域内路由表及域内资源信息存放规则确定所述资源信息对 应的域内节点的, 若所述域内节点是当前节点, 则根据操作请求进行操作; 若所述域内节点是域内其他节点, 则向域内其他节点转发操作请求, 所述向 域内其他节点转发的操作请求中包括所述资源信息的全局标识符。 The processing module is configured to: perform intra-domain processing according to the following: to determine, according to the resource identifier of the resource information, the intra-domain routing table, and the intra-domain resource information storage rule, the intra-domain node corresponding to the resource information, if If the node is the current node, the operation is performed according to the operation request; if the node in the domain is another node in the domain, the operation request is forwarded to other nodes in the domain, and the operation request forwarded to other nodes in the domain includes the global identifier of the resource information. symbol.
所述节点的特征信息指所述节点的 IP地址、 网卡号或机器序号, 所述节 点标识是利用哈希算法得到的; 所述资源信息的地域位置信息是所述资源信
息提供者或对应资源本身所属的地域位置信息; 所述资源信息的特征信息指 资源名称或内容, 所述资源标识是利用哈希算法得到的; 所述域内资源存放 规则是由该域内釆用的分布式散列表 DHT算法确定的。 The feature information of the node refers to an IP address, a network card number, or a machine serial number of the node, where the node identifier is obtained by using a hash algorithm; and the geographical location information of the resource information is the resource identifier. The location information of the resource provider or the corresponding resource itself; the feature information of the resource information refers to a resource name or content, and the resource identifier is obtained by using a hash algorithm; and the resource storage rule in the domain is used by the domain The distributed hash table DHT algorithm is determined.
为解决上述技术问题, 本发明还提供另一种对等网络的节点, 所述对等 网络的节点具有域标识, 所述节点保存的资源信息与所述节点具有相同的域 标识, 所述节点的域标识是根据所述节点地域位置信息确定的, 且不同的域 标识对应不同的地域位置范围, 所述资源信息具有全局标识符, 包括域标识 及资源标识, 所述域标识根据所述资源信息的地域位置信息确定, 所述资源 标识根据所述资源信息的特征信息确定, In order to solve the above technical problem, the present invention further provides a node of another peer-to-peer network, where the node of the peer-to-peer network has a domain identifier, and the resource information saved by the node has the same domain identifier as the node, and the node The domain identifier is determined according to the location information of the node, and the different domain identifiers correspond to different geographical location ranges, and the resource information has a global identifier, including a domain identifier and a resource identifier, and the domain identifier is according to the resource identifier. Determining the geographical location information of the information, the resource identifier is determined according to the feature information of the resource information,
所述节点设置为: 根据资源信息的全局标识符对所述资源信息进行相应 的处理。 The node is configured to: process the resource information according to a global identifier of the resource information.
所述节点的特征信息指所述节点的 IP地址、 网卡号或机器序号, 所述节 点标识是利用哈希算法得到的; 所述资源信息的地域位置信息是所述资源信 息提供者或对应资源本身所属的地域位置信息; 所述资源信息的特征信息指 资源名称或内容, 所述资源标识是利用哈希算法得到的。 The feature information of the node refers to an IP address, a network card number, or a machine serial number of the node, where the node identifier is obtained by using a hash algorithm; and the location information of the resource information is the resource information provider or a corresponding resource. The geographical location information to which the resource information belongs; the characteristic information of the resource information refers to a resource name or content, and the resource identifier is obtained by using a hash algorithm.
本申请还公开了相应的对等网络, 包括上述任一节点。 The present application also discloses a corresponding peer-to-peer network, including any of the above nodes.
相较于现有技术, 本发明资源信息处理方法及对等网络, 根据地域位置 信息将对等网络划分为不同的域, 不同域对应不同的域标识, 通过根据资源 信息的地域位置信息确定的域标识, 将资源信息保存在与其有相同域标识的 节点上, 从而减少资源信息插入或查询操作所需的路由跳数和时延, 并减少 不同地域间的流量传输, 有效的节省网络带宽。 附图概述 Compared with the prior art, the resource information processing method and the peer-to-peer network of the present invention divide the peer-to-peer network into different domains according to the geographical location information, and the different domains correspond to different domain identifiers, and are determined by the geographical location information according to the resource information. The domain identifier saves the resource information on the node with the same domain identifier, which reduces the number of hops and delays required for resource information insertion or query operations, and reduces traffic transmission between different regions, thus effectively saving network bandwidth. BRIEF abstract
图 1 为 Chord的拓朴结构; Figure 1 shows the topology of Chord;
图 2 为 Kelips算法的节点中存放路由表的示意图; Figure 2 is a schematic diagram of a routing table stored in a node of the Kelips algorithm;
图 3为本发明基于对等网络的资源信息处理方法的示意图; 3 is a schematic diagram of a resource information processing method based on a peer-to-peer network according to the present invention;
图 4为本发明节点全局标识符及资源全局标识符的示意图;
图 5为本发明网络节点中需存储的内容示意图; 4 is a schematic diagram of a node global identifier and a resource global identifier according to the present invention; FIG. 5 is a schematic diagram of content to be stored in a network node according to the present invention; FIG.
图 6为本发明应用实例所基于的 P2P网络架构示意图; 6 is a schematic diagram of a P2P network architecture based on an application example of the present invention;
图 7为本发明应用实例 1查询查询本域用户数据的示意图; FIG. 7 is a schematic diagram of an application example 1 of the present invention for querying and querying user data of the domain;
图 8为本发明应用实例 2查询外域用户数据的示意图; 8 is a schematic diagram of querying external domain user data according to an application example 2 of the present invention;
图 9为本发明对等网络中节点的模块结构示意图。 FIG. 9 is a block diagram showing the structure of a node in a peer-to-peer network according to the present invention.
本发明的较佳实施方式 Preferred embodiment of the invention
本发明基于对等网络(以下简称: P2P 网络) 的资源信息处理方法及对 等网络的主要思想是, 将整个对等网络根据地域位置划分为若干个域, 各个 域都有对应的域标识, 即不同的域标识对应不同的地域位置范围; 域内节点 保存的资源信息与所述节点具有相同的域标识, 所述节点的域标识是根据所 述节点地域位置信息确定的, 且不同的域标识对应不同的地域位置范围, 所 述资源信息具有全局标识符, 包括域标识及资源标识, 所述域标识根据所述 资源信息的地域位置信息确定, 所述资源标识根据所述资源信息的特征信息 确定,所述节点才艮据资源信息的全局标识符对所述资源信息进行相应的处理。 本发明可以减少节点和资源信息查询所需的路由跳数和时延, 并减少不同地 域间的流量传输, 有效的节省网络带宽。 The main idea of the resource information processing method based on the peer-to-peer network (hereinafter referred to as P2P network) and the peer-to-peer network is that the entire peer-to-peer network is divided into several domains according to geographical locations, and each domain has a corresponding domain identifier. That is, the different domain identifiers correspond to different geographical location ranges; the resource information saved by the nodes in the domain has the same domain identifier as the node, and the domain identifier of the node is determined according to the geographical location information of the node, and different domain identifiers Corresponding to different geographical location ranges, the resource information has a global identifier, including a domain identifier and a resource identifier, where the domain identifier is determined according to the geographical location information of the resource information, and the resource identifier is based on the feature information of the resource information. It is determined that the node performs corresponding processing on the resource information according to the global identifier of the resource information. The invention can reduce the number of route hops and delays required for node and resource information query, and reduce traffic transmission between different regions, thereby effectively saving network bandwidth.
具体地, 本发明中, 将整个 P2P网络划分为若干域, 域的划分按照地域 位置来进行, 对于每个域有唯一的域标识(简称域 ID )与之对应; 地域划分 所依据的地域位置信息可以是节点或用户所在的行政区域划分, 或运营商区 域划分等。 整个 P2P网络中的域划分以及域的数目可以根据实际情况来定。 Specifically, in the present invention, the entire P2P network is divided into several domains, and the domain division is performed according to the geographical location, and each domain has a unique domain identifier (referred to as a domain ID) corresponding thereto; the geographical location on which the geographical division is based The information may be the administrative area division of the node or the user, or the division of the operator area. The domain division and the number of domains in the entire P2P network can be determined according to actual conditions.
域标识即域 ID 的产生可以依据不同的原则, 一般为集中式统一静态分 配, 也可以由相应服务器分布式动态生成(即节点的域 ID在其生存时间内不 变) , 但要求域 ID全局唯一, 域 ID的取值位数全局统一, 但其长度根据预 期的最大域规模可变。 The domain ID, that is, the domain ID, can be generated according to different principles. Generally, it is a centralized unified static allocation, or it can be dynamically generated by the corresponding server (that is, the domain ID of the node is unchanged during its lifetime), but the domain ID is required to be global. Uniquely, the number of bits of the domain ID is globally uniform, but its length is variable according to the expected maximum domain size.
对等网络中的节点根据其地域位置信息确定其所属的域, 每个节点具有 全局标识符, 所述全局标识符是所述节点在全网内的唯一标识, 包括域标识 和节点标识, 同一域内的所有节点具有相同的域标识。
节点地理位置信息的获得可以静态分配或通过 P2P系统外的其他方式获 得, 保证地理相近的节点属于相同的域。 The nodes in the peer-to-peer network determine the domain to which the node belongs according to its geographical location information. Each node has a global identifier, which is a unique identifier of the node in the entire network, including the domain identifier and the node identifier. All nodes in the domain have the same domain ID. The obtaining of the geographical location information of the node can be statically allocated or obtained by other means outside the P2P system, and the nodes with similar geographical proximity are guaranteed to belong to the same domain.
节点标识(简称节点 ID )是通过对节点的特征信息进行哈希运算得到, 节点的特征信息指该节点的唯一性信息, 如 IP地址、 网卡号、 或机器序号, 哈希算法的选取可以是任意的; The node identifier (referred to as the node ID) is obtained by hashing the feature information of the node. The feature information of the node refers to the unique information of the node, such as an IP address, a network card number, or a machine serial number. The selection of the hash algorithm may be Arbitrary;
节点的全局标识符包括域标识及节点标识, 如以域 ID为前缀, 节点 ID 为后缀生成。 The global identifier of the node includes the domain identifier and the node identifier. For example, the domain ID is prefixed and the node ID is generated by the suffix.
如图 3所示,对于外部业务处理点的操作请求,本发明基于对等网络(以 下简称: P2P网络) 的资源信息处理方法包括: As shown in FIG. 3, for the operation request of the external service processing point, the resource information processing method of the present invention based on the peer-to-peer network (hereinafter referred to as P2P network) includes:
步骤 301 : 所述节点接收外部业务处理点发送的操作请求, 所述操作请 求中包括要操作资源信息的地域位置信息及特征信息; Step 301: The node receives an operation request sent by an external service processing point, where the operation request includes geographical location information and feature information of the resource information to be operated.
步骤 302: 所述节点根据所述操作请求中的地域位置信息确定所述资源 信息的域标识, 根据操作请求中的特征信息确定所述资源信息的资源标识; 资源信息的域标识(简称域 ID )是根据所述资源信息的地域位置信息及 域标识映射关系表确定的; 资源信息的地域位置信息是所述资源信息提供者 或对应资源本身所属的地域位置信息; 地理位置信息的获得是静态分配或通 过 P2P系统外的其他方式获得,保证地理位置相近的资源信息属于相同的域。 Step 302: The node determines the domain identifier of the resource information according to the geographical location information in the operation request, and determines the resource identifier of the resource information according to the feature information in the operation request; the domain identifier of the resource information (referred to as the domain ID) It is determined according to the geographical location information of the resource information and the domain identifier mapping relationship table; the geographical location information of the resource information is the geographical location information of the resource information provider or the corresponding resource itself; the geographical location information is obtained statically It is allocated or obtained by other means than the P2P system, and the resource information with similar geographical locations belongs to the same domain.
资源信息的资源 ID是通过对资源的特征信息进行哈希算法得到的,所说 资源的特征信息是能标识该资源的信息, 如资源的具体内容、 用户名、 用户 数据的名称等, 哈希算法的选取可以是任意的。 The resource ID of the resource information is obtained by performing a hash algorithm on the feature information of the resource, and the feature information of the resource is information that can identify the resource, such as the specific content of the resource, the name of the user, the name of the user data, and the like, and the hash. The choice of algorithm can be arbitrary.
所述资源信息的域标识及资源标识构成所述资源信息的全局标识符, 如 图 4所示。 The domain identifier and the resource identifier of the resource information constitute a global identifier of the resource information, as shown in FIG.
步骤 303: 所述节点若判定所述要操作的资源信息的域标识与所述节点 的域标识不同, 则向外域节点转发操作请求, 否则进行域内处理。 Step 303: If the node determines that the domain identifier of the resource information to be operated is different from the domain identifier of the node, the node forwards the operation request to the outbound domain node, otherwise performs intra-domain processing.
向外域节点转发的操作请求中携带由资源信息的域标识和资源标识组成 的全局标识符。 The operation request forwarded by the outbound domain node carries a global identifier consisting of the domain identifier and the resource identifier of the resource information.
所述域内处理是这样进行的: 所述节点根据所述资源信息的资源标识、 所述节点保存的域内路由表及域内资源信息存放规则确定所述资源信息对应
的域内节点的, 若所述域内节点是当前节点, 则根据操作请求进行操作; 若 所述域内节点是域内其他节点, 则向域内其他节点转发操作请求, 其中包括 所述资源信息的全局标识符。 The intra-domain processing is performed as follows: the node determines, according to the resource identifier of the resource information, the intra-domain routing table and the intra-domain resource information storage rule, If the intra-domain node is the current node, the operation is performed according to the operation request; if the intra-domain node is another node in the domain, the operation request is forwarded to other nodes in the domain, including the global identifier of the resource information. .
为了说明节点对操作请求的具体处理方法, 以下对节点保存的信息进行 说明: To illustrate how a node handles an operation request, the following information is stored on the node:
如图 5所述, 对等网络中的节点保存域内路由表和域标识映射关系表、 域外路由表和资源信息表, 当然节点中还可包含其他信息, 这可以根据需要 而定, 图中仅列出了必要信息。 As shown in FIG. 5, the nodes in the peer-to-peer network store the intra-domain routing table and the domain identifier mapping relationship table, the extra-domain routing table, and the resource information table. Of course, the node may further include other information, which may be determined according to requirements. The necessary information is listed.
域内路由表体现了当前节点与其他域内节点的路由关系, 由域内节点按 照一定的 DHT算法得到的,可以使用 Tapestry, Pastry、 Chord或单跳( one-hop ) DHT来构建, 各个域所使用的 DHT算法可以不一样; The intra-domain routing table embodies the routing relationship between the current node and the nodes in other domains. The intra-domain nodes are obtained according to a certain DHT algorithm. They can be constructed using Tapestry, Pastry, Chord or one-hop DHT. The DHT algorithm can be different;
这里所说的是每个域所釆用的 DHT算法,涉及到每个域内部路由表的生 成和维护等, 不涉及域间路由的维护等。 What is said here is the DHT algorithm used in each domain, which involves the generation and maintenance of the internal routing table in each domain, and does not involve the maintenance of inter-domain routes.
域外路由表包括所有与当前节点存在连接关系的域外节点信息, 如域外 节点的全局标识符与该节点 IP地址的映射关系; 域外路由表体现了当前节点 与其他外域的部分节点的路由关系, 根据该域外路由表, 当前节点可以和外 域取得联系。 每个节点的域内和域外路由表是动态更新的, 域内路由更新和域外的路 由更新是相互独立的过程。 The extra-domain routing table includes all out-of-domain node information that has a connection relationship with the current node, such as the mapping between the global identifier of the out-of-domain node and the IP address of the node; the extra-domain routing table reflects the routing relationship between the current node and some nodes of other foreign domains, according to The out-of-domain routing table, the current node can contact the foreign domain. The intra-domain and out-of-domain routing tables of each node are dynamically updated, and intra-domain routing updates and out-of-domain routing updates are independent processes.
资源信息表是该节点所保存的资源信息,如节点为归属用户服务器 HSS, 则保存在 HSS上的资源信息是用户签约数据等, 该资源信息表包括资源全局 标识符与资源内容的映射关系, 所述资源全局标识符包括所述资源信息的域 标识及资源标识(简称资源 ID ) , 如以域 ID为前缀, 资源 ID为后缀生成, 如图 4所示。 The resource information table is the resource information saved by the node. If the node is the home subscriber server HSS, the resource information stored in the HSS is user subscription data, and the resource information table includes a mapping relationship between the resource global identifier and the resource content. The resource global identifier includes a domain identifier of the resource information and a resource identifier (referred to as a resource ID). For example, the domain ID is used as a prefix, and the resource ID is generated as a suffix, as shown in FIG. 4 .
整个 P2P网络中的节点和资源信息都分别有唯一的节点全局标识符和资 源全局标识符, 其中节点全局标识符和资源全局标识符长度相等(由 DHT中 资源的存储特征所决定的) 。 节点 (或资源信息)全局标识符用于在整个对
等网络内唯一标识该节点 (或资源信息) 。 The node and resource information in the entire P2P network respectively have a unique node global identifier and a resource global identifier, wherein the node global identifier and the resource global identifier are of equal length (determined by the storage characteristics of the resources in the DHT). Node (or resource information) global identifier is used throughout the pair The node (or resource information) is uniquely identified within the network.
资源信息按照一定的存放规则存放在某个节点上, 该存放规则根据该域 内对应的分布式散列表 DHT算法确定,如资源信息存放在全局标识符与其资 源全局标识符最接近的节点上, 所述资源信息的插入或查询也是根据域内的 DHT算法进行的。 The resource information is stored on a node according to a certain storage rule. The storage rule is determined according to a corresponding distributed hash table DHT algorithm in the domain, and the resource information is stored in a node whose global identifier is closest to the global identifier of the resource. The insertion or query of the resource information is also performed according to the DHT algorithm in the domain.
所述节点是根据所述资源信息的资源标识、 域内路由表及域内资源信息 存放规则确定所述资源信息对应的域内节点的。 The node determines the intra-domain node corresponding to the resource information according to the resource identifier of the resource information, the intra-domain routing table, and the intra-domain resource information storage rule.
所述节点的特征信息指所述节点的 IP地址、 网卡号或机器序号, 所述节 点标识是利用哈希算法得到的; 所述资源信息的地域位置信息是所述资源信 息提供者或对应资源本身所属的地域位置信息; 所述资源信息的特征信息指 资源名称或内容, 所述资源标识是利用哈希算法得到的; 所述域内资源存放 规则是由该域内釆用的分布式散列表 DHT算法确定的。 The feature information of the node refers to an IP address, a network card number, or a machine serial number of the node, where the node identifier is obtained by using a hash algorithm; and the location information of the resource information is the resource information provider or a corresponding resource. The geographic location information to which the resource information belongs; the characteristic information of the resource information refers to a resource name or content, and the resource identifier is obtained by using a hash algorithm; the intra-domain resource storage rule is a distributed hash table DHT used in the domain. Algorithm determined.
下面结合具体应用实例对本发明作进一步的说明: The present invention is further described below in conjunction with specific application examples:
如图 6所示, 网络根据节点的地域不同, 把整个网络分为若干个域(此 处为 4个) , 图中指出了域内所使用的 DHT算法, 其中域 1、 3釆用 Chord 算法, 域 2、 4釆用 One-hop DHT算法, 对于域外, 不失一般性, 图中只列 出了域 2中的节点和外域节点的联系情况, 其中域 2的每个节点都和其他 3 个域的一个节点保持联系, 其他域的节点与外域的联系和域 2的情形相同。 图中域内和域外路由联系都是动态更新的, 可以适应网络情况的变化。 As shown in Figure 6, the network divides the entire network into several domains (here, four) according to the geographical area of the nodes. The figure indicates the DHT algorithm used in the domain, where the domain 1, 3 uses the Chord algorithm. Domains 2 and 4 use the One-hop DHT algorithm. For the domain, without loss of generality, only the nodes in the domain 2 and the foreign domain nodes are listed in the figure, where each node of the domain 2 and the other 3 One node of the domain keeps in touch, and the nodes of other domains have the same connection with the foreign domain as in the case of domain 2. Both intra-domain and extra-domain routing connections are dynamically updated and can be adapted to changes in network conditions.
本实例中节点特指归属用户服务器(Home Subscriber Server, HSS )。 参 见图 6、 7, 图中每个节点为一个 HSS, HSS为支持用于处理调用 /会话的 IMS 网络实体的主要用户数据库。 它包含用户配置文件, 执行用户的身份验证和 授权, 并可提供有关用户物理位置的信息。 在此实施例中, 每个 HSS (以下 简称节点) 中保存了部分用户的用户数据, 此用户数据中包含有此用户注册 的通过 SIP协议进行通话的代理服务器(即 SIP Proxy ) 的地址信息。 In this example, a node refers specifically to a Home Subscriber Server (HSS). See Figure 6 and 7. Each node in the figure is an HSS. The HSS is the primary user database that supports the IMS network entities used to process calls/sessions. It contains user profiles, performs user authentication and authorization, and provides information about the user's physical location. In this embodiment, each HSS (hereinafter referred to as a node) stores user data of a part of the user, and the user data includes the address information of the proxy server (ie, SIP Proxy) that is registered by the user through the SIP protocol.
该应用实例中, 用户数据的域 ID是根据其用户的所属域来确定的,用户 数据存放的节点的全局标识符是与该用户数据的资源全局标识符最接近的, 可以看出满足这一规则的节点必须是本域的节点(即域 ID必须相同), 而且
该节点也是唯一的。 In this application example, the domain ID of the user data is determined according to the domain to which the user belongs, and the global identifier of the node where the user data is stored is closest to the global identifier of the resource of the user data, and it can be seen that this is satisfied. The node of the rule must be the node of the domain (that is, the domain ID must be the same), and This node is also unique.
用户数据根据它的资源全局标识符保存在全局标识符与之相等或相近的 本域节点(即该节点所具有的节点全局标识符中的域 ID与此用户数据的资源 全局标识中的域 ID相同)上; 当有更接近的节点加入后, 用户数据资源需要 转节点保存, 这也是新节点加入中需要经过的必要的过程, 这也是具体 DHT 算法的路由维护的过程。 The user data is stored according to its resource global identifier in the local domain node with the global identifier equal to or similar to the domain identifier (ie, the domain ID in the node global identifier of the node and the domain ID in the resource global identifier of the user data) On the same), when there are more close nodes, the user data resources need to be saved by the transfer node, which is also the necessary process for the new node to join, which is also the process of routing maintenance of the specific DHT algorithm.
图中共有 8个节点, 这些节点按照地理位置分为两个域, 其中节点&、 b、 c、 d属于域 A, 域 A的域 ID为 001 , 节点 e、 f、 g、 h属于域 B, 域 B的域 ID为 Oi l (这里是 2进制表示的) 。 图中每个节点在域内釆用 One-hop DHT 算法 (即域内每个节点均保有一份域内的全局路由表, 从而和域内的其他节 点保持全连接) , 此外每个节点还包含一份域外路由表, 此域外路由表包含 外域的部分节点的路由信息, 例如节点 a的域外路由表中只包含域 B中的节 点 h的路由信息。 There are 8 nodes in the figure. These nodes are divided into two domains according to the geographical location. The nodes &, b, c, and d belong to domain A, the domain ID of domain A is 001, and the nodes e, f, g, and h belong to domain B. The domain ID of domain B is Oi l (here is expressed in binary). Each node in the figure uses the One-hop DHT algorithm in the domain (that is, each node in the domain maintains a global routing table in the domain to maintain full connectivity with other nodes in the domain), and each node also contains an out-of-domain The routing table, the out-of-domain routing table contains routing information of some nodes of the outer domain. For example, the out-of-domain routing table of the node a only contains the routing information of the node h in the domain B.
应用实例 1: 域内用户数据查询 Application example 1: User data query in the domain
图 7中用户 X需要和用户 Y建立连接, 用户 X向他的 SIP Proxy 1发送 呼叫请求, 呼叫请求中包含用户 Y 的统一资源标识符 ( Uniform Resource Indicator, URI ) , 为了完成该请求, SIP Proxy 1需要通过查找用户 Y的用户 数据来得到用户 Y当前所使用的 SIP Proxy的地址, 数据查询的过程可以分 为以下步骤: In Figure 7, user X needs to establish a connection with user Y. User X sends a call request to his SIP Proxy 1. The call request contains the Uniform Resource Indicator (URI) of user Y. In order to complete the request, SIP Proxy 1 You need to find the address of the SIP Proxy currently used by User Y by looking up the user data of User Y. The data query process can be divided into the following steps:
步骤 601 : SIP Proxyl向其所连接的节点 a发出数据查询请求, 请求查 询用户 Y的用户数据, 请求中包含用户 Y的 URI信息, 如: Bob@beijing.cn 步骤 602: 节点 a根据查询请求中用户 Y的 URI信息计算得到用户 Y的 用户数据的资源全局标识符; Step 601: SIP Proxyl sends a data query request to the node a to which it is connected, requesting to query the user data of the user Y, and the request includes the URI information of the user Y, such as: Bob@beijing.cn Step 602: Node a according to the query request The URI information of the user Y calculates a resource global identifier of the user data of the user Y;
此资源全局标识符可通过以下方式获得: 节点 a才艮据用户 Y的 URI: Bob@beijing.cn, , 通过提取此 URI的域名部分" beijing.cn", 并查找自己的域 名 ID映射表得到此用户的域 ID为 001 ,对用户名" Bob"进行哈希运算得到资 源 ID为 010001010, (该应用实例中, 资源 ID位数较短, 是为了说明方便, 实际中的域 ID和资源 ID的位数可以艮多, 如资源 ID为 128位, 域 ID为 9
位, 可以足够保证 HASH后的 ID不重复) , 域 ID和资源 ID合并得到此资 源的资源全局标识符(此处为 001010001010 ) ; This resource global identifier can be obtained by: Node a according to User Y's URI: Bob@beijing.cn, , by extracting the domain name part of this URI "beijing.cn", and looking up its own domain name ID mapping table The domain ID of this user is 001, and the user name "Bob" is hashed to obtain the resource ID of 010001010. (In this application example, the number of resource IDs is short, for convenience of explanation, the actual domain ID and resource ID. The number of digits can be as large as, for example, the resource ID is 128 bits, and the domain ID is 9. Bit, can be enough to ensure that the ID after HASH is not repeated), the domain ID and resource ID are combined to get the resource global identifier of this resource (here 001010001010);
由于需要的用户的域 ID属于本域但并不是由节点 a负责,节点 a查询自 己的域内路由表,得到和存放所求的用户资源 ID最接近的资源 ID(010001011) 的节点 ID的对应的节点 c的 IP地址, 并向节点 c发出数据查询请求, 此请 求中包含需查找数据的资源全局标识符; Since the domain ID of the required user belongs to the domain but is not responsible for the node a, the node a queries its own intra-domain routing table, and obtains the corresponding node ID of the resource ID (010001011) closest to the requested user resource ID. The IP address of the node c, and sends a data query request to the node c, the request contains a resource global identifier of the data to be searched;
将资源信息存放在与资源 ID最接近的节点 ID对应的节点上, 只是本应 用实例一种具体存放规则。 当然也可以存放在对其 ID取反所得的节点 ID对 应的节点上, 这是由域内的 DHT算法决定的, 资源的存放是和资源的查找都 是由 DHT算法决定的 The resource information is stored on the node corresponding to the node ID closest to the resource ID, which is only a specific storage rule of the application instance. Of course, it can also be stored on the node corresponding to the node ID obtained by inverting its ID. This is determined by the DHT algorithm in the domain. The storage of resources and the search of resources are determined by the DHT algorithm.
步骤 603: 节点 c收到查询请求,根据请求中包含的资源全局标识符得知 此资源是由自己负责的, 并查找自己的资源信息表, 并返回用户 Y的用户数 据给节点 a; Step 603: The node c receives the query request, according to the resource global identifier included in the request, the resource is responsible for itself, and finds its own resource information table, and returns the user data of the user Y to the node a;
步骤 604: 节点 a把用户 Y的用户数据发送给 SIP Proxy 1 , SIP Proxy 1 利用得到的用户 Y的 SIP Proxy 2的地址信息就可以和用户 Y建立连接了; 利用 SIP协议建立连接的过程不属于本专利范围, 具体过程可参看 SIP 协议相关内容, 图中只是简单给出了消息示意图。 Step 604: The node a sends the user data of the user Y to the SIP Proxy 1 , and the SIP Proxy 1 can establish a connection with the user Y by using the obtained address information of the SIP Proxy 2 of the user Y. The process of establishing the connection by using the SIP protocol does not belong to The scope of this patent, the specific process can refer to the SIP protocol related content, the figure simply gives the message schematic.
应用实例 2: 域外用户数据查询 Application Example 2: Out-of-domain user data query
下面介绍用户 X要和用户 Z建立连接的情形, 其中用户 Z位于域 B中, 同上 SIP Proxy 1需要通过查询用户 Z的用户数据得到用户 Z注册的 SIP Proxy 的地址信息, 如图 8所示, 数据查询步骤如下: The following describes the situation in which the user X is to establish a connection with the user Z. The user Z is located in the domain B. The SIP proxy 1 needs to query the user data of the user Z to obtain the address information of the SIP proxy registered by the user Z, as shown in FIG. The data query steps are as follows:
步骤 701 : SIP Proxyl向其所连接的节点 a发出数据查询请求, 请求查询 用户 Z的用户数据, 请求中包含用户 Z的 URI信息, 如: Alice@Shanghai.cn 步骤 702: 节点 a根据请求中的用户 Z的 URI信息得到所请求数据的资 源全局标识符, 资源全局标识符的产生方法同上, 在此处得到的结果为 011010100010,资源全局标识符中的域 ID为 011 ,用户资源 ID为 010100010, 由于需要的用户的域 ID不属于本域, 节点 a查询自己的域外路由表, 得到域 ID为 011的节点 h的 IP地址, 并向节点 h发出数据查询请求,请求中包含需
要查询的数据的资源全局标识符 Step 701: SIP Proxyl sends a data query request to the node a to which it is connected, requesting to query the user data of the user Z, and the request includes the URI information of the user Z, such as: Alice@Shanghai.cn Step 702: Node a according to the request The URI information of the user Z obtains the resource global identifier of the requested data, and the resource global identifier is generated as above. The result obtained here is 0110101010, the domain ID in the resource global identifier is 011, and the user resource ID is 010100010. Since the domain ID of the required user does not belong to the local domain, the node a queries its own extra-domain routing table, obtains the IP address of the node h with the domain ID 011, and sends a data query request to the node h, and the request includes the required The resource global identifier of the data to be queried
步骤 703: 节点 h收到查询请求, 得知所需资源位于本域但并不是由自 己负责, 于是它查找自己的域内路由表,得到和所求的用户资源 ID最接近的 节点 ID (此处为 010100010 )的节点 g的 IP地址, 并向节点 g发出数据查询 请求 Step 703: The node h receives the query request, knows that the required resource is located in the domain but is not responsible for itself, so it searches its own intra-domain routing table to obtain the node ID closest to the requested user resource ID (here) IP address of node g of 010100010), and send a data query request to node g
步骤 704: 节点 g收到查询请求, 并查找自己的资源信息表, 并返回用 户 Z的用户数据给节点 h; Step 704: The node g receives the query request, and finds its own resource information table, and returns the user data of the user Z to the node h;
步骤 705: 节点 h把用户 Z的用户数据发送给节点 a; Step 705: The node h sends the user data of the user Z to the node a;
步骤 706: 节点 a把用户 Z的用户数据发送给 SIP Proxy 1 , SIP Proxy 1 得到所需的数据后就可以和用户 Z建立连接了 Step 706: Node a sends the user data of the user Z to the SIP Proxy 1 , and the SIP Proxy 1 can obtain the connection with the user Z after obtaining the required data.
当查询请求中包含初始发出查询的节点 (此处为节点 a ) 的地址信息时, 步骤 704和 705可以进行简化为步骤 704,; When the query request contains the address information of the node (here, node a) that originally issued the query, steps 704 and 705 can be simplified to step 704;
步骤 704': 节点 g收到查询请求, 并查找自己的资源信息表, 直接返回 用户 Z的用户数据给节点 a。 Step 704': The node g receives the query request, and finds its own resource information table, and directly returns the user data of the user Z to the node a.
釆用本发明的上述方法, 可以把资源的查找和存储很好的限制在域内, 从而可以减少资源查找的跳数和时延, 减少无序交换及资源查找的随机性, 减少不必要的地域间查找和地域间数据传输, 从而有效节省了网络的带宽, 整体上提高了网络的性能。 釆用以上方法实现的对等网络, 包括若干个节点, 如图 9所示, 每个节 点 90包括依次连接的接收模块 91、 标识确定模块 92、 处理模块 93 , 以及与 处理模块连接的存储模块 94, 其中, By using the above method of the invention, the searching and storing of resources can be well restricted in the domain, thereby reducing the hop count and delay of resource searching, reducing the randomness of disordered switching and resource searching, and reducing unnecessary regions. Inter-discovery and inter-area data transmission, which effectively saves the bandwidth of the network and improves the performance of the network as a whole. The peer-to-peer network implemented by the above method includes a plurality of nodes. As shown in FIG. 9, each node 90 includes a receiving module 91, an identification determining module 92, a processing module 93, and a storage module connected to the processing module. 94, of which
所述接收模块 91 , 用于接收外部业务处理点发送的资源信息操作请求, 所述操作请求中包括要操作的资源信息的地域位置信息及特征信息; 所述操 作请求是插入或查询请求。 The receiving module 91 is configured to receive a resource information operation request sent by an external service processing point, where the operation request includes geographical location information and feature information of the resource information to be operated; the operation request is an insertion or query request.
所述标识确定模块 92, 用于根据所述操作请求中的地域位置信息确定所 述资源信息的域标识, 还用于根据所述资源信息的特征信息确定所述资源信 息的资源标识; The identifier determining module 92 is configured to determine a domain identifier of the resource information according to the geographic location information in the operation request, and is further configured to determine a resource identifier of the resource information according to the feature information of the resource information;
所述处理模块 93 , 用于判定所述要操作的资源信息的域标识与所述节点
的域标识是否相同, 若不同, 则向外域节点转发操作请求, 其中携带由所述 资源信息的域标识和资源标识组成的全局标识符; 否则用于进行域内处理。 The processing module 93 is configured to determine a domain identifier of the resource information to be operated and the node If the domain identifiers are the same, if they are different, the outer domain node forwards the operation request, which carries the global identifier consisting of the domain identifier and the resource identifier of the resource information; otherwise, it is used for intra-domain processing.
所述处理模块 93还用于接收对等网络其他节点发送的操作请求,其中携 带要操作资源信息的全局标识符, 所述域内处理是根据所述资源信息的全局 标识符中的资源标识进行的。 The processing module 93 is further configured to receive an operation request sent by another node of the peer-to-peer network, where the global identifier of the resource information to be operated is carried, where the intra-domain processing is performed according to the resource identifier in the global identifier of the resource information. .
所述处理模块 93 是这样进行域内处理的: 根据所述资源信息的资源标 识、 所述域内路由表及域内资源信息存放规则确定所述资源信息对应的域内 节点的, 若所述域内节点是当前节点, 则根据操作请求进行操作; 若所述域 内节点是域内其他节点, 则向域内其他节点转发操作请求, 其中包括所述资 源信息的全局标识符。 The processing module 93 performs intra-domain processing in this manner: determining, according to the resource identifier of the resource information, the intra-domain routing table, and the intra-domain resource information storage rule, the intra-domain node corresponding to the resource information, if the intra-domain node is current The node operates according to the operation request; if the intra-domain node is another node in the domain, the operation request is forwarded to other nodes in the domain, including the global identifier of the resource information.
所述域内路由表保存在所述节点, 包括与所述节点存在连接关系的域内 其他节点的路由信息及对应的节点标识 , 所述节点标识是根据所述节点的特 征信息确定的。 The intra-domain routing table is stored in the node, and includes routing information of other nodes in the domain that has a connection relationship with the node and a corresponding node identifier, where the node identifier is determined according to the feature information of the node.
所述存储模块 94, 用于保存资源信息, 所述节点保存的资源信息具有与 所述节点相同的域标识; 还用于存储域外路由表及域内路由表, 其中域外路 由表包括与所述节点存在连接关系的外域节点的路由信息及对应的节点标 识; 所述域内路由表包括域内其他节点的路由信息及对应的节点标识, 所述 节点标识是根据所述节点的特征信息确定的; The storage module 94 is configured to save resource information, where the resource information saved by the node has the same domain identifier as the node, and is further configured to store an out-of-domain routing table and an intra-domain routing table, where the out-of-domain routing table includes the node The routing information of the external domain node having the connection relationship and the corresponding node identifier; the intra-domain routing table includes the routing information of the other nodes in the domain and the corresponding node identifier, and the node identifier is determined according to the feature information of the node;
所述节点的特征信息指所述节点的 IP地址、 网卡号或机器序号, 所述节 点标识是利用哈希算法得到的; 所述资源信息的地域位置信息是所述资源信 息提供者或对应资源本身所属的地域位置信息; 所述资源信息的特征信息指 资源名称或内容, 所述资源标识是利用哈希算法得到的; 所述域内资源存放 规则是由该域内釆用的分布式散列表 DHT算法确定的。 The feature information of the node refers to an IP address, a network card number, or a machine serial number of the node, where the node identifier is obtained by using a hash algorithm; and the location information of the resource information is the resource information provider or a corresponding resource. The geographic location information to which the resource information belongs; the characteristic information of the resource information refers to a resource name or content, and the resource identifier is obtained by using a hash algorithm; the intra-domain resource storage rule is a distributed hash table DHT used in the domain. Algorithm determined.
以上由 HSS服务器作为节点只是一个特例, 本发明不对节点的类型进行 限制, 也可以是其他服务器, 也可以是用户个人主机。 本发明对资源信息的 种类也不进行限制, 其他类型数据的相关操作和此实施例原理相同。 The above is only a special case of the HSS server as a node. The present invention does not limit the type of the node, and may be another server or a user's personal host. The present invention does not limit the type of resource information, and the related operations of other types of data are the same as the principle of this embodiment.
域内的路由维护由该域对应的 DHT算法进行, 各个域所釆用 DHT算法 可以不同。 当域内或域外节点加入或退出时, 根据本域所釆用的 DHT算法更
新域内路由表; 通过向和该节点相连接的域外节点发起路由更新请求来更新 自己的域外路由表, 当该域外节点不可达时直接从本域其他节点复制相应的 域外路由表; 同时还需要资源信息存放规则更新资源信息表。 The routing maintenance in the domain is performed by the DHT algorithm corresponding to the domain, and the DHT algorithm used in each domain may be different. When a domain or an out-of-domain node joins or exits, the DHT algorithm used according to this domain is more The new intra-domain routing table; update the extra-domain routing table by initiating a routing update request to the extra-domain node connected to the node, and copy the corresponding extra-domain routing table directly from other nodes in the domain when the extra-domain node is unreachable; The resource information storage rule updates the resource information table.
本发明中资源信息存储是完全按照 DHT思想进行的 ,存储数据时按照资 源的全局标识符, 资源内容或资源索引存入相应的节点, 其中资源全局标识 符中的引入了资源的域 ID, 从而考虑了资源信息的地域性, 减少资源信息存 放的盲目性; 资源全局标识符中的资源 ID是通过哈希算法得到的, 这样可以 保证资源存储的随机性和确定性, 也方便对资源进行定位。 釆用这种存储方 式每个节点只需要存储一部分资源信息的内容或是其索引信息即可, 节省了 存储的空间和查询的时间。 The resource information storage in the present invention is completely in accordance with the DHT idea. When the data is stored, the resource identifier or the resource index is stored in the corresponding node according to the global identifier of the resource, wherein the resource global identifier adds the domain ID of the resource, thereby Considering the regionality of resource information and reducing the blindness of resource information storage; the resource ID in the resource global identifier is obtained by the hash algorithm, which can ensure the randomness and certainty of resource storage, and also facilitate the positioning of resources. .这种Using this storage method, each node only needs to store part of the resource information or its index information, which saves storage space and query time.
釆用资源信息的全局标识符进行插入和查询, 可以更加方便快速的定位 该资源信息所属域, 然后直接定位到资源所在域进行查找, 使查找更加快捷, 可以减少资源插入或查询操作所需的跳数, 把资源的查询尽量限制在域内, 由于域内查询时延相比域间查询要小许多, 故从上述两方面可以减少查询时 延, 提高网络的整体性能。 同时在进行资源查找时可以减少不同地域间的查 询数量, 有效节省网络带宽。 Inserting and querying the global identifier of the resource information makes it easier and faster to locate the domain to which the resource information belongs, and then directly locates the domain where the resource is located for searching, which makes the search faster and reduces the need for resource insertion or query operations. The hop count is limited to the domain query as much as possible. Since the query delay in the domain is much smaller than the inter-domain query, the query delay can be reduced from the above two aspects, and the overall performance of the network is improved. At the same time, the resource search can reduce the number of queries between different regions and effectively save network bandwidth.
工业实用性 本发明资源信息处理方法及对等网络, 根据地域位置信息将对等网络划 分为不同的域, 不同域对应不同的域标识, 通过根据资源信息的地域位置信 息确定的域标识, 将资源信息保存在与其有相同域标识的节点上, 从而减少 资源信息插入或查询操作所需的路由跳数和时延, 并减少不同地域间的流量 传输, 有效的节省网络带宽。
INDUSTRIAL APPLICABILITY The resource information processing method and the peer-to-peer network of the present invention divide the peer-to-peer network into different domains according to the geographical location information, and the different domains correspond to different domain identifiers, and the domain identifiers determined by the geographical location information of the resource information will be The resource information is saved on the node with the same domain identifier, thereby reducing the number of route hops and delays required for resource information insertion or query operations, and reducing traffic transmission between different regions, thereby effectively saving network bandwidth.
Claims
1、 一种基于对等网络的资源信息处理方法, 所述方法包括: 对等网络的 节点具有域标识,且与所述对等网络的节点保存的资源信息具有相同域标识, 所述域标识是根据节点或资源信息的地域位置信息确定的, 且不同的域标识 对应不同的地域位置范围, 该方法还包括: A resource information processing method based on a peer-to-peer network, the method comprising: a node of a peer-to-peer network having a domain identifier, and having the same domain identifier as the resource information held by the node of the peer-to-peer network, the domain identifier It is determined according to the geographical location information of the node or the resource information, and the different domain identifiers correspond to different geographical location ranges, and the method further includes:
节点接收请求方发送的操作请求, 所述操作请求中携带要操作资源信息 的地域位置信息; Receiving, by the node, an operation request sent by the requesting party, where the operation request carries geographical location information of the resource information to be operated;
所述节点根据所述操作请求中的地域位置信息确定所述资源信息的域标 识; 以及 Determining, by the node, a domain identifier of the resource information according to geographical location information in the operation request;
所述节点若判定所述要操作的资源信息的域标识与所述节点的域标识不 同, 则向外域节点转发操作请求, 否则所述节点进行域内处理。 If the node determines that the domain identifier of the resource information to be operated is different from the domain identifier of the node, the node forwards the operation request to the outbound domain node, otherwise the node performs intra-domain processing.
2、 如权利要求 1所述的方法, 其中, 所述请求方是外部业务处理点, 所 述外部业务处理点发送的操作请求中还携带要操作资源信息的特征信息, 所述进行域标识判定的步骤之前, 该方法还包括: 2. The method according to claim 1, wherein the requesting party is an external service processing point, and the operation request sent by the external service processing point further carries feature information of the resource information to be operated, and the domain identity determination is performed. Before the steps, the method further includes:
先根据所述资源信息的特征信息确定所述资源信息的资源标识; 所述向外域节点转发操作请求的步骤中, 所述节点向外域节点转发的操 作请求中携带由所述资源信息的域标识和资源标识组成的全局标识符, Determining, according to the feature information of the resource information, the resource identifier of the resource information; in the step of forwarding the operation request to the outbound domain node, the operation request forwarded by the node to the outbound domain node carries the domain identifier of the resource information And a global identifier consisting of resource identifiers,
所述向外域节点转发操作请求的步骤之后, 该方法还包括: 所述外域节 点根据所述全局标识符进行域内处理。 After the step of forwarding the operation request to the outbound domain node, the method further includes: the outer domain node performing intra-domain processing according to the global identifier.
3、 如权利要求 1或 2所述的方法, 其中, 所述域内处理的步骤包括: 所述节点根据所述资源信息的资源标识、 所述节点保存的域内路由表及 域内资源信息存放规则确定所述资源信息对应的域内节点, 以及 The method according to claim 1 or 2, wherein the step of processing in the intra-domain comprises: determining, by the node, a resource identifier of the resource information, an intra-domain routing table saved by the node, and an intra-domain resource information storage rule The intra-domain node corresponding to the resource information, and
若所述域内节点是当前节点, 则根据操作请求进行操作; If the node in the domain is the current node, the operation is performed according to the operation request;
若所述域内节点是域内其他节点, 则向域内其他节点转发操作请求, 所 转发的操作请求中包括所述资源信息的全局标识符, 所述域内路由表包括与 所述节点存在连接关系的域内其他节点的路由信息及对应的节点标识, 所述 节点标识是根据所述节点的特征信息确定的。 If the intra-domain node is another node in the domain, the operation request is forwarded to other nodes in the domain, and the forwarded operation request includes a global identifier of the resource information, where the intra-domain routing table includes a domain that has a connection relationship with the node. The routing information of the other node and the corresponding node identifier, and the node identifier is determined according to the feature information of the node.
4、 如权利要求 3所述的方法, 其中, 所述节点的特征信息指所述节点的 IP地址、 网卡号或机器序号, 所述节点标识是利用哈希算法得到的; 所述资 源信息的地域位置信息是所述资源信息提供者或对应资源本身所属的地域位 置信息; 所述资源信息的特征信息指资源名称或内容, 所述资源标识是利用 哈希算法得到的; 所述域内资源存放规则是由该域内釆用的分布式散列表4. The method according to claim 3, wherein the feature information of the node refers to an IP address, a network card number or a machine serial number of the node, and the node identifier is obtained by using a hash algorithm; The location information is the location information of the resource information provider or the corresponding resource itself; the feature information of the resource information refers to a resource name or content, and the resource identifier is obtained by using a hash algorithm; Rules are distributed hash tables used within the domain
( DHT )算法确定的。 (DHT) algorithm determined.
5、 一种对等网络的节点, 所述对等网络的节点具有域标识, 所述域标识 是根据节点地域位置信息确定的,且不同的域标识对应不同的地域位置范围, 所述节点包括依次连接的接收模块、 标识确定模块、 处理模块, 以及与处理 模块连接的存储模块; 其中, A node of a peer-to-peer network, the node of the peer-to-peer network having a domain identifier, the domain identifier is determined according to the location information of the node, and the different domain identifiers correspond to different geographical location ranges, and the node includes a receiving module, an identification determining module, a processing module, and a storage module connected to the processing module; wherein
所述接收模块设置为: 接收请求方的操作请求, 所述操作请求中包括要 操作资源信 ,包、的地域位置信息; The receiving module is configured to: receive an operation request of the requesting party, where the operation request includes location information of a resource letter, a package, and a location;
所述标识确定模块设置为: 根据所述操作请求中的地域位置信息确定所 述资源信息的域标识; The identifier determining module is configured to: determine a domain identifier of the resource information according to the geographic location information in the operation request;
所述处理模块设置为: 判定所述要操作的资源信息的域标识与所述节点 的域标识是否相同, 若不同, 则向外域节点转发操作请求, 否则进行域内处 理; The processing module is configured to: determine whether the domain identifier of the resource information to be operated is the same as the domain identifier of the node, and if not, forward the operation request to the outer domain node, otherwise perform intra-domain processing;
所述存储模块设置为: 保存资源信息, 所述节点保存的资源信息具有与 所述节点相同的域标识。 The storage module is configured to: save resource information, and the resource information saved by the node has the same domain identifier as the node.
6、 如权利要求 5所述的节点, 其中, 6. The node according to claim 5, wherein
所述操作请求由外部业务处理点发送给所述节点, 所述操作请求中还携 带要操作资源信息的特征信息, The operation request is sent by the external service processing point to the node, and the operation request further carries the feature information of the resource information to be operated.
所述标识确定模块还设置为: 根据所述资源信息的特征信息确定所述资 源信息的资源标识, The identifier determining module is further configured to: determine, according to the feature information of the resource information, a resource identifier of the resource information,
所述处理模块是设置为: 向外域节点转发的操作请求中携带由所述资源 信息的域标识和资源标识组成的全局标识符; The processing module is configured to: the operation request forwarded by the outbound domain node carries a global identifier consisting of the domain identifier and the resource identifier of the resource information;
所述处理模块还设置为: 接收对等网络的其他节点发送的操作请求, 所 述对等网络的其他节点发送的操作请求中携带要操作资源信息的全局标识 付。 The processing module is further configured to: receive an operation request sent by another node of the peer-to-peer network, and the operation request sent by another node of the peer-to-peer network carries the global identifier of the resource information to be operated Pay.
7、 如权利要求 5或 6所述的节点, 其中, 7. The node according to claim 5 or 6, wherein
所述存储模块还设置为: 存储域内路由表, 所述域内路由表包括与所述 节点存在连接关系的域内其他节点的路由信息及对应的节点标识, 所述节点 标识是根据所述节点的特征信息确定的; The storage module is further configured to: store an intra-domain routing table, where the intra-domain routing table includes routing information of other nodes in the domain that have a connection relationship with the node, and a corresponding node identifier, where the node identifier is according to characteristics of the node Information determined;
所述处理模块是设置为: 按如下方式进行域内处理: 根据所述资源信息 的资源标识、 所述域内路由表及域内资源信息存放规则确定所述资源信息对 应的域内节点的, 若所述域内节点是当前节点, 则根据操作请求进行操作; 若所述域内节点是域内其他节点, 则向域内其他节点转发操作请求, 所述向 域内其他节点转发的操作请求中包括所述资源信息的全局标识符。 The processing module is configured to: perform intra-domain processing according to the following: to determine, according to the resource identifier of the resource information, the intra-domain routing table, and the intra-domain resource information storage rule, the intra-domain node corresponding to the resource information, if If the node is the current node, the operation is performed according to the operation request; if the node in the domain is another node in the domain, the operation request is forwarded to other nodes in the domain, and the operation request forwarded to other nodes in the domain includes the global identifier of the resource information. symbol.
8、 如权利要求 7所述的节点, 其中, 所述节点的特征信息指所述节点的 IP地址、 网卡号或机器序号, 所述节点标识是利用哈希算法得到的; 所述资 源信息的地域位置信息是所述资源信息提供者或对应资源本身所属的地域位 置信息; 所述资源信息的特征信息指资源名称或内容, 所述资源标识是利用 哈希算法得到的; 所述域内资源存放规则是由该域内釆用的分布式散列表 DHT算法确定的。 The node according to claim 7, wherein the feature information of the node refers to an IP address, a network card number or a machine serial number of the node, and the node identifier is obtained by using a hash algorithm; The location information is the location information of the resource information provider or the corresponding resource itself; the feature information of the resource information refers to a resource name or content, and the resource identifier is obtained by using a hash algorithm; The rules are determined by the distributed hash table DHT algorithm used within the domain.
9、 一种对等网络的节点, 所述对等网络的节点具有域标识, 所述节点保 存的资源信息与所述节点具有相同的域标识, 所述节点的域标识是根据所述 节点地域位置信息确定的, 且不同的域标识对应不同的地域位置范围, 所述 资源信息具有全局标识符, 包括域标识及资源标识, 所述域标识根据所述资 源信息的地域位置信息确定, 所述资源标识根据所述资源信息的特征信息确 定, A node of a peer-to-peer network, the node of the peer-to-peer network having a domain identifier, the resource information saved by the node has the same domain identifier as the node, and the domain identifier of the node is based on the node region The location information is determined, and the different domain identifiers correspond to different geographical location ranges, and the resource information has a global identifier, including a domain identifier and a resource identifier, where the domain identifier is determined according to the geographical location information of the resource information, The resource identifier is determined according to the feature information of the resource information,
所述节点设置为: 根据资源信息的全局标识符对所述资源信息进行相应 的处理。 The node is configured to: process the resource information according to a global identifier of the resource information.
10、 如权利要求 9所述的节点, 其中, 所述节点的特征信息指所述节点 的 IP地址、 网卡号或机器序号, 所述节点标识是利用哈希算法得到的; 所述 资源信息的地域位置信息是所述资源信息提供者或对应资源本身所属的地域 位置信息; 所述资源信息的特征信息指资源名称或内容, 所述资源标识是利 用哈希算法得到的。 The node according to claim 9, wherein the feature information of the node refers to an IP address, a network card number or a machine serial number of the node, and the node identifier is obtained by using a hash algorithm; The location information is the location information of the resource information provider or the corresponding resource itself; the feature information of the resource information refers to the resource name or content, and the resource identifier is Obtained by the hash algorithm.
11、 一种对等网络, 其包括如权利要求 5-8中任一所述的节点。 11. A peer to peer network comprising a node as claimed in any of claims 5-8.
12、 一种对等网络, 其包括如权利要求 9-10中任一所述的节点。 12. A peer to peer network comprising a node as claimed in any of claims 9-10.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2010/074992 WO2012003623A1 (en) | 2010-07-05 | 2010-07-05 | Resource information processing method based on peer-to-peer network, peer-to-peer network and node |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2010/074992 WO2012003623A1 (en) | 2010-07-05 | 2010-07-05 | Resource information processing method based on peer-to-peer network, peer-to-peer network and node |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2012003623A1 true WO2012003623A1 (en) | 2012-01-12 |
Family
ID=45440752
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2010/074992 WO2012003623A1 (en) | 2010-07-05 | 2010-07-05 | Resource information processing method based on peer-to-peer network, peer-to-peer network and node |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2012003623A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10291696B2 (en) | 2014-04-28 | 2019-05-14 | Arizona Board Of Regents On Behalf Of Arizona State University | Peer-to-peer architecture for processing big data |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008066481A1 (en) * | 2006-11-27 | 2008-06-05 | Telefonaktiebolaget Lm Ericsson (Publ) | A method and system for providing arouting architecture for overlay networks |
CN101399743A (en) * | 2007-09-28 | 2009-04-01 | 华为技术有限公司 | Method and system for searching data in P2P network base on distributed Hash table |
CN101442557A (en) * | 2008-12-24 | 2009-05-27 | 北京邮电大学 | Method for sensing and optimizing region of peer-to-peer session initiation protocol network |
CN101860474A (en) * | 2009-04-08 | 2010-10-13 | 中兴通讯股份有限公司 | Peer-to-peer network and resource information processing method based on same |
-
2010
- 2010-07-05 WO PCT/CN2010/074992 patent/WO2012003623A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008066481A1 (en) * | 2006-11-27 | 2008-06-05 | Telefonaktiebolaget Lm Ericsson (Publ) | A method and system for providing arouting architecture for overlay networks |
CN101399743A (en) * | 2007-09-28 | 2009-04-01 | 华为技术有限公司 | Method and system for searching data in P2P network base on distributed Hash table |
CN101442557A (en) * | 2008-12-24 | 2009-05-27 | 北京邮电大学 | Method for sensing and optimizing region of peer-to-peer session initiation protocol network |
CN101860474A (en) * | 2009-04-08 | 2010-10-13 | 中兴通讯股份有限公司 | Peer-to-peer network and resource information processing method based on same |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10291696B2 (en) | 2014-04-28 | 2019-05-14 | Arizona Board Of Regents On Behalf Of Arizona State University | Peer-to-peer architecture for processing big data |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101860474B (en) | Peer-to-peer network and resource information processing method based on same | |
US8913525B2 (en) | Method of merging distributed hash table (DHT) rings in heterogeneous network domains | |
Liu et al. | A multi-level DHT routing framework with aggregation | |
EP2091272B1 (en) | Method and device for constructing a node identifier | |
US20080130516A1 (en) | P2p Overplay Network Construction Method and Apparatus | |
US20070233832A1 (en) | Method of distributed hash table node ID collision detection | |
KR20090034829A (en) | Inter-proximity communication within a rendezvous federation | |
KR20090034322A (en) | Inter-proximity communication within a rendezvous federation | |
US9686353B2 (en) | Method and node for locating objects in a peer-to-peer network | |
WO2013004134A1 (en) | A routing method, node and system for p2p network | |
Guo et al. | HDS: A fast hybrid data location service for hierarchical mobile edge computing | |
Jung et al. | IDNet: beyond all‐IP network | |
Maniymaran et al. | Build one, get one free: Leveraging the coexistence of multiple p2p overlay networks | |
WO2013075636A1 (en) | Distributed hash table intercommunication network system, inter-domain node and implementation method | |
Lu et al. | Virtual id routing: a scalable routing framework with support for mobility and routing efficiency | |
WO2012003623A1 (en) | Resource information processing method based on peer-to-peer network, peer-to-peer network and node | |
WO2011150741A1 (en) | Point to point (p2p) overlay network, data resources operation method and new node join method thereof | |
JP5287500B2 (en) | Node device and program for node device | |
Li et al. | Locality-aware peer-to-peer SIP | |
Spathis et al. | Leveraging replication in content-centric networks | |
John | Directory Assisted Routing of Content in Information-Centric Networks | |
Hwang et al. | Resource name-based routing in the network layer | |
Ktari et al. | Exploiting power-law node degree distribution in chord overlays | |
Cheng et al. | An improved lookup algorithm for chord | |
Chan et al. | Distributed hash tables: Design and applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 10854283 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 10854283 Country of ref document: EP Kind code of ref document: A1 |