WO2012092899A2 - Transfer method and system for peer-to-peer overlay network - Google Patents

Transfer method and system for peer-to-peer overlay network Download PDF

Info

Publication number
WO2012092899A2
WO2012092899A2 PCT/CN2012/071027 CN2012071027W WO2012092899A2 WO 2012092899 A2 WO2012092899 A2 WO 2012092899A2 CN 2012071027 W CN2012071027 W CN 2012071027W WO 2012092899 A2 WO2012092899 A2 WO 2012092899A2
Authority
WO
WIPO (PCT)
Prior art keywords
node
clustering
proxy
relay
nodes
Prior art date
Application number
PCT/CN2012/071027
Other languages
French (fr)
Chinese (zh)
Other versions
WO2012092899A3 (en
Inventor
范燕平
祝宁
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to PCT/CN2012/071027 priority Critical patent/WO2012092899A2/en
Priority to CN2012800001963A priority patent/CN102714632A/en
Publication of WO2012092899A2 publication Critical patent/WO2012092899A2/en
Publication of WO2012092899A3 publication Critical patent/WO2012092899A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • H04B7/26Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile
    • H04B7/2603Arrangements for wireless physical layer control
    • H04B7/2606Arrangements for base station coverage control, e.g. by using relays in tunnels

Definitions

  • Embodiments of the present invention relate to network access techniques, and in particular to end-to-end overlay network relay methods and systems. Background technique
  • the current Internet network layer has poor overall routing efficiency due to factors such as routing protocols and network architectures.
  • the default route selected by the IP (internet protocol: Internet Protocol) layer for best delivery principles has been difficult to meet many real-time requirements.
  • High performance requirements for application layer services The main reasons include the following:
  • Border gateway protocol In IP layer routing, when a packet is sent across different domains, the border gateway protocol (BGP: border gateway protocol) only guarantees connectivity, and it does not provide the shortest path. In this case, the transmission delay in the case of two direct connections is often too long to meet the requirements of the service application.
  • the queuing mechanism of routers forwarding packets in the Internet often causes congestion when the load is large.
  • the network jitter caused by such congestion causes delays and frequent packet loss, which leads to performance degradation of the better quality links.
  • NAT network address translation
  • firewall settings it also creates obstacles for network applications while protecting the network. This makes it impossible to directly connect a large number of destination nodes, NAT or Users behind the firewall are completely unable to enjoy application layer services such as Internet telephony.
  • Fig. 1 is a schematic diagram showing a TIV phenomenon in an Internet network.
  • the P2P overlay network transit technology is to find a suitable relay node in the P2P overlay network, and the media is forwarded through the relay node, thereby establishing a shorter delay, higher efficiency, and more stability between the two points of the application layer than the default IP route. Strong alternative routing for end-to-end high performance communication.
  • the P2P overlay network here refers to an application layer node (such as a skype soft terminal) self-organizing into a network according to the P2P mode, which is a logical virtual topology network.
  • Relay node is a special Capable application layer node, which not only provides application services for local users, but also acts as a bridge node between two other application layer nodes to complete media forwarding.
  • the core problem of P2P overlay network transit technology is the discovery algorithm of the relay node, that is, how to find available effective relay nodes with acceptable overhead in a short time. Summary of the invention
  • the present invention has been made in view of the above objects, and an object of the present invention is to provide an end-to-end overlay network relay method and system for efficiently discovering a relay node.
  • an end-to-end overlay network relay method is provided, where the end-to-end overlay network includes multiple host nodes and a boot server, and the method is used to find a relay node from a source host node to a destination host node.
  • the method includes: the host node communicating with a boot server to obtain coordinate information, wherein the coordinate information is used to calculate a delay between two host nodes based on a distance prediction mechanism; performing clustering of the host node to a part of the host node acts as a clustering proxy node, and other host nodes act as host nodes belonging to the clustering proxy node; and selects a relay from the source host node to the destination host node from the clustering proxy node based on the distance prediction mechanism node.
  • an end-to-end overlay network transit system includes a plurality of host nodes and a boot server, and the system is configured to search for a relay node from a source host node to a destination host node.
  • the end-to-end overlay network transit system includes: a communication unit, configured to enable the host node to communicate with a boot server to obtain coordinate information, where the coordinate information is used to calculate a time between two host nodes based on a distance prediction mechanism a clustering unit, configured to perform clustering of the host node to use a part of host nodes as clustering proxy nodes, and other host nodes as host nodes belonging to the clustering proxy node; and selecting units, The relay node from the source host node to the destination host node is selected from the clustering proxy nodes based on the distance prediction mechanism.
  • an effective relay node can be quickly found in the end-to-end overlay network, thereby establishing a shorter delay, higher efficiency, and more stable replacement. Routing, enabling end-to-end high-performance communication.
  • FIG. 1 is a schematic diagram showing the TIV phenomenon in an Internet network
  • FIG. 2 is a schematic flow chart showing a method of relaying an end-to-end overlay network according to a first embodiment of the present invention
  • FIG. 3 is a flow chart showing a specific example of a node adding process in the end-to-end overlay network relay method according to the first embodiment of the present invention
  • FIG. 4 is a flow chart showing a specific example of an information update process between a host node and a clustering proxy node in the end-to-end overlay network relay method according to the first embodiment of the present invention
  • FIG. 5 is a flowchart showing a specific example of an information update process between a cluster agent node and a BS server in the end-to-end overlay network relay method according to the first embodiment of the present invention
  • FIG. 6 is a flowchart showing a specific example of a Meridian ring construction process in the end-to-end overlay network relay method according to the first embodiment of the present invention
  • FIG. 7 is a flow chart showing a specific example of a Meridian ring maintenance update process in the end-to-end overlay network relay method according to the first embodiment of the present invention
  • FIG. 8 is a flowchart showing a specific example of a relay node selection process in the end-to-end overlay network relay method according to the first embodiment of the present invention
  • FIG. 9 is a schematic flow chart showing a method of relaying an end-to-end overlay network according to a second embodiment of the present invention.
  • FIG. 10 is a schematic flow chart showing a method for relaying an end-to-end overlay network according to a third embodiment of the present invention.
  • FIG. 11 is a schematic flow chart showing a method for relaying an end-to-end overlay network according to a fourth embodiment of the present invention.
  • FIG. 12 is a schematic flow chart showing a method for relaying an end-to-end overlay network according to a fifth embodiment of the present invention.
  • Figure 13 is a schematic block diagram showing an end-to-end overlay network relay system according to a first embodiment of the present invention
  • Figure 14 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a second embodiment of the present invention.
  • Figure 17 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a first embodiment of the present invention. detailed description
  • a fixed one or more BS (bootrap server) servers are specifically deployed, which guides network node registration, and the auxiliary host node finds a home clustering proxy node, and manages the storage system. All clustering agent node information, and guiding the new joining clustering node to initially construct their own ring structure.
  • the clustering proxy node is upgraded by an ordinary client terminal that has the public network IP, strong CPU processing capability, large bandwidth, and long online time.
  • the clustering agent node manages the host node information attributed to itself, and maintains the ring structure constructed by other neighboring clustering agent nodes.
  • the clustering proxy node selects and provides a suitable relay node list from its own ring structure.
  • the clustering proxy node needs to act as a relay node, responsible for NAT traversal of the user plane and media relay.
  • the host node refers to a common client terminal, which is attached to a clustering proxy node after joining the network, and relies on the clustering proxy node to complete the searching of the relay node.
  • the ASAP (AS-aware peer-relay protocol) algorithm is an example of the P2P overlay network transit technology. It needs to deploy a boot server, which is responsible for collecting the distribution of the access network AS (Autonomous System). Map, AS and IP prefix mapping tables. User nodes are clustered based on IP prefix information, and each cluster selects a node with stronger capabilities as a clustering proxy node.
  • the boot server needs to store maintenance clustering and clustering proxy node information.
  • Each clustering proxy node obtains the neighboring AS information through the breadth-first search based on the AS topology map, and then constructs the neighboring cluster set by actual sounding. In the actual relay node selection process, the algorithm selects a suitable relay node based on the intersection of the primary and the called neighboring cluster sets.
  • the AS inter-domain relationship needs to be inferred by acquiring a BGP broadcast message.
  • the content of BGP broadcasts is limited and difficult to obtain.
  • the algorithm is based on the detection side of the AS topology map. The method is too large and the actual cost is relatively high.
  • the Meridian loop algorithm is another example of the P2P overlay network relay technology.
  • the Meridian algorithm when each node joins the network, it first obtains some of the existing network node information through the boot server or the existing node. Then, the actual detection of these nodes is performed, and a circular topology structure is constructed based on the obtained RTT (round-trip time) information, and the nodes are placed at different distances from the inside and the outside by themselves. Delay on the ring. In addition, it periodically maintains and updates this ring structure based on the gossip protocol. When the actual relay node is selected, the initiator selects a node from its own ring structure for broadcasting according to the set threshold, and finds a suitable relay node by hop-by-hop iteration.
  • the discovery of the relay node by the gradual approaching multi-hop method makes the setting of the approach parameters difficult, and the multi-hop mode is likely to cause media delay and packet loss, and multiple forwarding nodes cause downlink bandwidth consumption on the access side.
  • node clustering is not mentioned in the meridian algorithm to reduce network overhead and improve hit rate.
  • the present invention proposes a novel and improved end-to-end overlay network relay method and system.
  • the basic idea of the embodiment of the present invention is an end-to-end overlay network relay method and system using one or more technologies of node clustering, meridian ring and GNP (Global Network Positioning).
  • nodes in the network system may perform clustering based on delay and partial network topology information (e.g., IP address or ASN (Autonomous System Number)).
  • a node with strong capabilities is selected to act as a clustering proxy node to manage other nodes within the cluster.
  • the meridian ring can be constructed only by the clustering agent node, thereby ensuring the geographical dispersion of the nodes on the meridian ring by node clustering.
  • the clustering proxy nodes in the network system can more understand and carry the node information of the entire network topology on the basis of storing a limited number of nodes.
  • the distance prediction mechanism such as the GNP distance prediction mechanism is used to filter and obtain the one-hop candidate relay node from the meridian ring structure of the clustering proxy node to which the source and destination nodes belong, which can greatly Reduce unnecessary detection overhead and improve prediction accuracy.
  • 2 is a schematic flow chart showing a method for relaying an end-to-end overlay network according to a first embodiment of the present invention.
  • an end-to-end overlay network relay method according to a first embodiment of the present invention is applied to an end-to-end overlay network including a plurality of host nodes and a boot server for searching from a source host node to a destination host.
  • the method includes: S1000, the host node communicates with a boot server to obtain coordinate information, where the coordinate information is used to calculate a delay between two host nodes based on a distance prediction mechanism; S1001, execute Clustering of the host node to use a part of the host node as a clustering proxy node, and other host nodes as host nodes belonging to the clustering proxy node; S1002, based on a distance prediction mechanism from the clustering proxy node Select the relay node from the source host node to the destination host node.
  • the node joining step may include registration, GNP coordinate calculation, and node clustering.
  • BS server address information is stored on each node, and when the node joins the network, the node to be joined first initiates a registration request to the BS server. Then, the node to be joined obtains the landmark information after the BS server successfully completes the authentication, and then calculates its own GNP coordinates through the GNP algorithm. After the GNP coordinate calculation is completed, the node performs a clustering operation and initiates a home clustering proxy node information request to the BS server. The BS server assists the newly joined nodes to complete clustering based on topology information such as delay and IP address.
  • 3 is a flow chart showing a specific example of a node joining process in the end-to-end overlay network relay method according to the first embodiment of the present invention.
  • the host node to join the network initiates a registration request message to the BS server, for example, the message may carry the user name and password of the user;
  • the BS server authenticates the host node to join the network, For example, authentication is performed by identifying the validity of the user's username and password. If the authentication succeeds, the BS server returns a success response message to the host node to join the network, and carries a plurality of landmark node information, where the landmark node information may include the IP address and GNP coordinates of the landmark node. Etc.
  • the landmark node is a device deployed in the network in advance, and its information is stored on the BS server.
  • the BS server returns a failure response message; S1102, the host node to join the network obtains the landmark from the success response message.
  • the IP address of the node and then sends a probe message to the obtained landmark node based on the IP address and receives a response, and calculates a corresponding RTT (the RTT calculation method calculates the time of receiving the response message of the probe message and sends the corresponding probe message. Time between times The difference is obtained, and the subsequent calculation of RTT is similar to the method here.
  • the GNP coordinates of the host node joining the network are calculated by the Simplex Downhill method; S1103, to join the network.
  • the host node sends a probe message to the BS server to obtain the RTT of the BS server, and completes the NAT type detection of the local node (here, a person skilled in the art can understand the specific manner of NAT type detection, for example, refer to RFC3489); S1104, to join
  • the host node of the network sends a clustering proxy node information request to the BS server, and the parameter is the RTT acquired in the previous step; S1105, the BS server selects multiple aggregations from the stored clustering proxy node database according to the topology information such as the RTT value and the IP address.
  • the class proxy node is used as a candidate.
  • the criterion for the BS server to select the candidate node may be that the delay of the clustering proxy node to the BS server is similar to the delay of the host node joining the network to the BS server (ie, the difference between the two meets a certain Range, specific value can be selected according to network characteristics), in addition, selection criteria
  • the IP address of the clustering proxy node may be as long as the same IP prefix of the IP address of the joining node, and so on; S1106, the BS server returns a success response message, and carries the candidate clustering proxy node selected in S1105 in the message.
  • the information may include an IP address of the candidate clustering proxy node, or other identification information of the candidate clustering proxy node, etc.; S1107, the joined host node receives the response message, if the candidate clustering proxy node information in the response message If yes, go to S1117; S1108, if the candidate clustering proxy node information in the response message is not empty, the joined host node sends a probe message to the candidate clustering proxy nodes; S1109, the candidate clustering proxy node receives the probe message.
  • the joined host node calculates the delay RTT of the plurality of candidate clustering proxy nodes; S1111, if there is no delay RTT is less than the set intra-cluster delay maximum value (according to the network feature value In the existing case, the delay RTT between nodes in an AS on the Internet is 60 ms on average; for example, the time within the cluster can be If the maximum value is set to 60ms, then go to S1117; S1112, if the delay RTT is less than the set maximum delay within the cluster, the clustering proxy node corresponding to the minimum delay is taken as the home clustering proxy node; S1113, sending a join request message to the home clustering proxy node selected in S1112; S1114, the home clustering proxy node determines whether the join is successful according to the number of the cluster nodes, for example, if the number of storage nodes of the cluster proxy node is full Then, if it is not full, it succeeds, and returns a response message; S1111, if there is no delay RTT is less
  • the periodic information update task the joining process is completed; S1116, if a failure response is received, the remaining candidate clustering proxy nodes are repeated S1111 and S1112, and if the repetition reaches a certain number of times, then go to S1117; S1117 , joined the host
  • the node applies to the BS server to generate a new cluster, and acts as a proxy node for the cluster.
  • the BS server generates a new cluster ID for the node, and simultaneously sets the IP address of the node, GNP coordinates, to the BS server.
  • the delay RTT, the node network status (bandwidth and CPU usage), the update time, etc. are stored in the database corresponding to the cluster ID, and the joining system is completed.
  • the node may need to perform self-organizing management for periodic information update (the information includes, for example, delay and update time), and the end-to-end overlay network transit method in the first embodiment of the present invention
  • the self-organizing management process of the node includes an information update process between the host node and the clustering proxy node and an information update process between the clustering proxy node and the BS server.
  • FIG. 4 is a flow chart showing a specific example of an information update process between a host node and a clustering proxy node in the end-to-end overlay network relay method according to the first embodiment of the present invention.
  • the information is periodically refreshed between the common host node and the clustering agent to ensure the accuracy of the stored data. As shown in FIG.
  • the information update process includes: S1200, the host node periodically sends an information update message to the attached clustering proxy node, and sets a timeout timer; S1201, after the clustering proxy node receives the information update message, Updating the stored host node information, such as the delay RTT and update time of the host node to the BS server; S1202, the clustering proxy node returns a success response message, wherein if the timer expires, the host node still does not receive the cluster proxy node return The success response message, the host node sends a request message to the BS server to obtain new home clustering proxy node information; S1203, the clustering proxy node periodically detects the stored host node database, and the deletion does not periodically send the update message. Node.
  • Fig. 5 is a flowchart showing a specific example of an information update process between a clustering proxy node and a BS server in the end-to-end overlay network relay method according to the first embodiment of the present invention.
  • the information is periodically refreshed between the clustering proxy node and the BS server to ensure the accuracy of the stored data.
  • the information includes, for example, the node network status (bandwidth and CPU usage) and the update time. As shown in FIG.
  • the information update process includes: S1300: The clustering proxy node periodically sends an information update request message to the BS server; S1301: The BS server updates the stored clustering proxy node information after receiving the information update request message, For example, clustering the node network status and update time of the proxy node, etc.; S1302, the BS server returns a success response message; S1303, the BS server periodically detects the stored cluster proxy node database, and deletes the information update request message without periodically sending Clustering proxy node.
  • self-organization of nodes is performed. Management is performed to periodically update information between the host node and the clustering proxy node, and between the clustering proxy node and the BS server.
  • the self-organizing management process of the above-mentioned nodes may be omitted, thereby reducing network overhead.
  • other embodiments of the present invention may also perform information update based on other conditions, for example, updating information in response to a predetermined operation or predetermined instruction of the user or the network administrator, thereby improving network usage. Convenience.
  • the embodiments of the present invention are not intended to impose any limitation.
  • FIG. 6 is a flow chart showing a specific example of a Meridian ring construction process in the end-to-end overlay network relay method according to the first embodiment of the present invention.
  • the construction of the meridian ring is performed by the clustering proxy node, thereby ensuring the geographical dispersion of the nodes on the meridian ring.
  • the clustering proxy node joins the network for the first time, it is necessary to first acquire a batch of neighboring clustering proxy node information through the BS server to construct a meridian ring structure.
  • the BS server returns not the global clustering proxy node information.
  • the meridian ring construction process includes: S1400, the clustering proxy node sends a neighboring clustering proxy node request message to the BS server; S1401, the BS server sends the neighboring clustering proxy based on the clustering proxy node to construct the Meridian ring.
  • the node request message calculates the delay of the other clustering proxy nodes stored on the BS server to the clustering proxy node that is to construct the Meridian ring according to the GNP coordinate prediction (here, the parameter used in the calculation is other stored on the BS server)
  • the clustering proxy node finds the corresponding ring interval according to the delay of the other clustering agent nodes, and the other clustering agent node information (IP address, GNP coordinates, delay to the clustering proxy node, update time) Etc.) Stored in the corresponding ring database. Since the ring radius of the meridian ring's ring structure grows exponentially, each node can learn more about and carry the node information of the entire network topology on the basis of storing a limited number of nodes.
  • a certain number of clustering proxy nodes are selected as candidates based on the delay between the clustering proxy nodes obtained by the GNP coordinate prediction.
  • the BS server can also arbitrarily select a certain number of clustering proxy nodes as candidates, or perform selection of candidate clustering proxy nodes based on other mechanisms, as described in the second embodiment of the present invention.
  • the embodiments of the present invention are not intended to impose any limitation on this.
  • the meridian ring may also need to be maintained and updated. That is to say, after each cluster agent node completes the construction of its own meridian ring, it may need to be dynamically maintained in real time to ensure the real-time performance of the stored node delay information.
  • the ring update maintenance needs to acquire more neighboring clustering proxy node information in the current network in time to ensure that when searching for the transit node , can cover a larger range and increase the probability of finding a transit path.
  • the maintenance update process adopts a lightweight gossip mechanism, including: S1500, the clustering proxy node randomly selects some nodes as seed nodes from each ring of the meridian ring; S1501, the seed selected in S1500 The node sends a neighboring node request message; S1502, each seed node randomly selects some nodes in its own ring structure; S1503, the seed node returns a response message, where the response message carries node information of the node selected in S1502, for example, the selected node IP address, GNP coordinates, delay to the local node, update time, etc.; S1504, the clustering proxy node processes the node carried in the response message based on the acquired node information, deletes the duplicate item and repeats with the node on the meridian ring itself Nodes, these nodes are used as backup
  • the database of the corresponding ring are stored in the database of the corresponding ring.
  • the clustering proxy node may periodically send a probe request to the node on the ring structure to determine whether the node is online, and adjust the position of the node in the ring structure according to the returned RTT.
  • the maintenance update process of the meridian ring described above can be omitted, thereby reducing network overhead.
  • the maintenance update process of the Meridian ring may be performed periodically, or may be performed based on other conditions, for example, performing maintenance and update of the meridian ring in response to a predetermined operation or a predetermined instruction of the user or the network administrator, thereby improving the network.
  • the embodiments of the present invention are not intended to impose any limitation.
  • FIG. 8 is a flowchart showing a specific example of a relay node selection process in the end-to-end overlay network relay method according to the first embodiment of the present invention.
  • the selection of the relay node is based on the meridian ring information of the clustering proxy node to which the source node and the destination node belong, and combines the GNP distance prediction mechanism, thereby reducing unnecessary detection overhead.
  • the relay node selection process includes: S1600, the source node searches for the IP address of the destination node through the clustering proxy node that belongs to itself, and the source node and the destination node perform message interaction, and the two obtain the GNP of the other party respectively.
  • S1601 The source node and the destination node calculate the delay RTT and the packet loss rate of the default path by using multiple probe packet interactions.
  • S1602 The source node sends a relay node selection request message to the clustering proxy node that belongs to the home node, where the message carries the GNP coordinate information of the source node and the destination node respectively; S1603, the source node sends the cluster node to the destination node to which the destination node belongs.
  • the message carries the GNP coordinate information of the source node and the destination node respectively; S1604, the clustering proxy node to which the source node belongs calculates the stored data by GNP distance prediction according to the destination node coordinates provided in the above message.
  • the clustering proxy node to which the source node belongs returns a response message, where the message carries the candidate relay node information selected in S1604;
  • the clustering proxy node to which the destination node belongs is based on the source provided in the relay node selection request message Node coordinates, the GNP distance prediction is used to calculate the delay of other clustering proxy nodes in the ring structure stored by themselves to the source node (the calculation parameters are the GNP coordinates and source nodes of other clustering proxy nodes in the ring structure stored by itself)
  • the stored other clustering agent nodes are
  • the source node selects three nodes with better default path quality from the candidate relay nodes of S 1608 as one master and two standbys of the current session.
  • the relay node, the judgment criterion is the delay and the packet loss rate, and which condition can be selected according to the network condition and the service requirement.
  • S1602 is repeated; S1610, if the number of repetitions of S1602 reaches the set threshold, and one of the three primary and secondary relay nodes that meet the demand is still not found, Then, the node with the best path performance is selected from the previously detected nodes to complete the primary and secondary backup mechanisms; S1611, the primary and secondary backup three relay node information is notified to the destination node, and then the three relay paths are cycled. Sexually detect, obtain delay and packet loss rate, and complete the switch between paths according to network quality changes and set switching parameters.
  • another node when selecting a candidate relay node by GNP distance prediction, another node may be selected as a candidate relay node according to a random principle to avoid a large-area failure in the network.
  • the selected candidate relay nodes are all invalid. This is because when candidate relay nodes are selected using GNP distance prediction or other distance prediction mechanisms, usually these candidate relay nodes will be geographically relatively close, so when large-area failures occur in the network, it is likely that these candidates The relay nodes will all fail, making it impossible to select a relay node. By randomly selecting some candidate relay nodes, it is guaranteed that the relay node can be selected. Thereby, the adaptability of the end-to-end overlay network relay method according to the embodiment of the present invention is improved.
  • the end-to-end overlay network transit method can solve the problems of poor routing efficiency, frequent congestion, routing failure, NAT traversal, etc. in the Internet network, and provide the problem with a small detection overhead.
  • the hit rate of the higher transit node By storing neighboring node information in the form of a meridian ring structure, each node can learn more about and carry the node information of the entire network topology on the basis of storing a limited number of nodes.
  • the nodes are clustered by combining the RTT value and the IP address factor, and only the clustering proxy nodes participate in the construction of the meridian ring, which can ensure the geographical dispersion of the nodes on the meridian ring.
  • the GNP distance prediction mechanism selects and obtains a one-hop candidate relay node from the meridian ring structure of the calling party, which can greatly reduce unnecessary detection overhead and improve prediction accuracy.
  • the clustering of nodes is combined with the RTT value and the IP address factor as an example.
  • the end-to-end network there are other node clustering methods, and these nodes are also present.
  • the clustering method can effectively support end-to-end network routing, application layer multicasting, resource efficient placement, and perceptual topology construction, thereby greatly improving the performance of the end-to-end network.
  • the node clustering mechanism can also include the following scenarios:
  • each node joins the network, and the clustering is completed by IP address prefix matching.
  • the method for screening and obtaining a one-hop candidate relay node from the meridian ring structure of the called party is described by using a GNP distance prediction mechanism, but may also be based on other distance predictions.
  • the scheme is to select a relay node from the Meridian ring structure.
  • the main task of network distance prediction is to estimate the delay value between any two nodes in the actual network based on the limited measurement information, and then provide relevant information to the user.
  • the distance prediction mechanism can also include the following scenarios:
  • IDMaps is the earliest proposed large-scale network distance prediction mechanism.
  • the medium service provides distance prediction services for network nodes.
  • the mechanism includes two core contents: an address prefix block (the address prefix, called the AP) and a Tracer node.
  • Each AP represents a set of nodes with the same IP address prefix, and the Tracer node is a measurement node deployed in the network, and ensures that each address block has at least one Tracer close to it.
  • Different Tracer nodes periodically measure each other's distances, while each Tracer node periodically measures the distance to its neighboring APs. All of this measurement information is collected into a centralized server.
  • the distance between any two hosts is equal to the sum of the distance between the APs from the two hosts to their respective Tracer nodes and the distance between the two associated Tracer nodes.
  • This method uses coordinate transformation to calculate network coordinates. Firstly, a global coordinate base is set in the system. The newly added node first obtains the corresponding distance information by randomly detecting the K+1 (K is the coordinate dimension) landmark, and calculates its global coordinate base through the Gram-Schmidt process, and then passes the local sum. The transformation matrix of the global coordinate base to calculate the global coordinates of the new node. The distance between any two nodes in the system is calculated by global coordinates.
  • Virtual landmarks Use Principal Component Analysis (PCA) to extract the topology information of the network to reduce the dimension of the embedded space, and obtain the coordinates of the node in the embedded space by matrix multiplication.
  • PCA Principal Component Analysis
  • the algorithm needs to first deploy N reference nodes to form a set of reference nodes, and the reference nodes measure each other to reach each other to form an N*N distance matrix. Then use PCA technology to eliminate similar vectors, reduce dimensions, and calculate transformation matrices.
  • the distances of all the reference nodes are first measured to form a distance vector, and then the vector is mapped to the new space according to the transformation matrix, and the mapped vector value is the new coordinate.
  • Vivaldi A heuristic coordinate adjustment process that simulates the spatial embedding problem as a spring elastic potential minimization problem.
  • Each node in the system has a network coordinate X and a local error e.
  • the node randomly measures the distance to a group of nodes in the system, determines its own initial coordinates based on the measured values, and then makes the network coordinate X and the local error e continuously close to the ideal value by multiple updates.
  • the node first measures the actual delay between it and a neighbor node, and then adjusts the current network coordinate X and local error e by the measured delay.
  • the end-to-end overlay network transit method according to the second embodiment of the present invention includes the following steps: S2000, adding a node to a network and performing node clustering to select a part of nodes as a clustering proxy node, and other nodes As a host node belonging to the clustering proxy node; S2001, for each clustering proxy node, constructing its own Meridian ring node based on other clustering proxy nodes And S2002, selecting a relay node from the source node to the destination node from the nodes on the Meridian ring structure. That is, in the end-to-end overlay network relay method according to the second embodiment of the present invention, the node clustering and the feature of constructing the meridian ring are combined.
  • the steps of node clustering and the step of constructing a Meridian ring structure by clustering proxy nodes may be the same as the above according to the present invention.
  • the corresponding steps in the end-to-end overlay network relay method of the embodiment are the same.
  • node self-organizing management and Meridian ring maintenance can also be performed in the end-to-end overlay network transfer method according to the second embodiment of the present invention.
  • the update is the same as the above, and will not be described here for the sake of clarity.
  • those skilled in the art can understand that the above-mentioned end-to-end overlay network transfer method according to the embodiment of the first embodiment of the present invention is not intended to be arbitrarily limited.
  • each node can learn more about and carry the node information of the entire network topology on the basis of storing a limited number of nodes.
  • a specific method of selecting a relay node from a node on a Meridian ring structure is not limited, which makes The appropriate relay nodes can be selected based on the existing Meridian algorithm, thereby reducing system changes and facilitating compatibility with existing systems.
  • FIG. 10 is a schematic flow chart showing a method for relaying an end-to-end overlay network according to a third embodiment of the present invention.
  • the end-to-end overlay network transit method according to the third embodiment of the present invention includes the following steps: S3000, adding a node to a network and performing node clustering to select a part of nodes as a clustering proxy node, and other nodes As a host node belonging to the clustering proxy node, wherein the node calculates information required by the distance prediction mechanism when joining the network; S3001, selecting a slave source node from the clustering proxy node based on a distance prediction mechanism The relay node to the destination node.
  • the steps of node clustering and the step of selecting a relay node based on the distance prediction mechanism may be the same as the above-described first embodiment according to the present invention.
  • the corresponding steps in the end-to-end overlay network relay method are the same.
  • node self-organizing management may also be performed, and The process is the same as above, and will not be repeated here for reasons of clarity.
  • those skilled in the art can understand that other aspects of the above-described end-to-end overlay network transfer method according to the first embodiment of the present invention can also be equally applied to the end-to-end overlay network transfer method according to the third embodiment of the present invention.
  • the embodiments of the present invention are not intended to be any limitation.
  • the clustering proxy node to which the source and destination nodes belong since the clustering proxy node to which the source and destination nodes belong stores information of other clustering proxy nodes, the neighboring clustering proxy node stored by the clustering proxy node to which the source and destination nodes belong is adopted by using the distance prediction mechanism. Filtering data to obtain a candidate relay node can greatly reduce unnecessary detection overhead and improve prediction accuracy.
  • the Meridian ring structure is not limited to be constructed by the clustering proxy node, and therefore, according to the first embodiment of the present invention,
  • the end-to-end overlay network relay method of the third embodiment of the present invention can also be applied to other algorithms than the Meridian algorithm, for example, the ASAP algorithm, thereby improving the adaptability of the end-to-end overlay network relay method according to the embodiment of the present invention.
  • each includes a process of clustering to join a network to generate a clustering proxy node, and then selecting a relay node from the clustering proxy node.
  • a node joins an end-to-end overlay network, for example, as in the existing Meridian algorithm, node clustering may not be performed, but an appropriate relay node may be directly selected.
  • Figure 11 is a schematic flow chart showing a method of relaying an end-to-end overlay network according to a fourth embodiment of the present invention.
  • the method for relaying the end-to-end overlay network according to the fourth embodiment of the present invention includes the following steps: S4000, a node joins a network to construct a Meridian ring structure, where the node calculates a distance prediction mechanism when joining the network. Required information; S4001, selecting a relay node from the source node to the destination node from the nodes of the Meridian ring structure based on a distance prediction mechanism. That is to say, in the end-to-end overlay network relay method of the fourth embodiment of the present invention, the feature of constructing the meridian loop and the distance prediction is combined.
  • the end-to-end overlay network relay method according to the fourth embodiment of the present invention shown in FIG. The steps of selecting a relay node from the nodes of the Meiridan ring structure based on the distance prediction mechanism may be the same as the corresponding steps in the above-described end-to-end overlay network relay method according to the first embodiment of the present invention.
  • the maintenance update of the Meridian ring can also be performed, and The specific process is the same as above, and will not be repeated here for reasons of clarity.
  • the above-mentioned end-to-end coverage peer-end overlay network relay method according to the first embodiment of the present invention is not intended to be any limitation.
  • the three techniques of node clustering, meridian loop, and distance prediction are used in combination with each other, thereby improving the accuracy of relay node selection.
  • clustering is performed when the nodes join the network. Only the clustering proxy nodes participate in the selection of the relay nodes, which can ensure the geographical dispersion of the candidate relay nodes, thereby preventing all candidate nodes from being large-area faults in the network.
  • the unnecessary detection overhead can be greatly reduced, thereby improving the prediction accuracy.
  • Figure 12 is a schematic flow chart showing a method of relaying an end-to-end overlay network according to a fifth embodiment of the present invention.
  • the method for relaying an end-to-end overlay network according to a fifth embodiment of the present invention includes the following steps: S5000: A node joins a network, where the node calculates information required by a distance prediction mechanism when joining a network; S5001, A relay node from the source node to the destination node is selected based on the distance prediction mechanism. That is, in the end-to-end overlay network relay method according to the fifth embodiment of the present invention, only the characteristics of the distance prediction are used to select the relay node.
  • the process of joining a node to a network and the process of selecting a relay node based on a distance prediction mechanism may be the same as the corresponding steps in the above-described end-to-end overlay network relay method according to the first embodiment of the present invention.
  • node self-organization can also be performed in the end-to-end overlay network transfer method according to the fifth embodiment of the present invention. The management needs to update the information required by the distance prediction mechanism, and the specific process is the same as above, and will not be repeated here for the sake of clarity.
  • the TIV phenomenon as in the prior art can be avoided, so that the direct path from the source node to the destination node can be replaced with an alternative path with a smaller delay.
  • an end-to-end overlay network relay system is also provided.
  • an end-to-end overlay network relay system according to the first to fifth embodiments of the present invention will be described with reference to Figs. 13 to 17 .
  • Figure 13 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a first embodiment of the present invention.
  • the end-to-end overlay network according to the first embodiment of the present invention is applied to an end-to-end overlay network including a plurality of host nodes and a server, and is used to find a relay node from a source host node to a destination host node. As shown in FIG.
  • the end-to-end overlay network relay system 100 includes: a communication unit 101 for causing a host node to communicate with a boot server to obtain coordinate information for distance prediction based a mechanism to calculate a delay between two host nodes; a clustering unit 102, configured to perform clustering of the host node, to use a part of the host node as a clustering proxy node, and other host nodes as belonging to the clustering proxy node a host node; and a selecting unit 103, configured to select, from the clustering proxy node, a relay node from the source host node to the destination host node based on the distance prediction mechanism.
  • end-to-end overlay network relay system 100 may further include: a construction unit (not shown) connected between the clustering unit 102 and the selection unit 103, for each clustering node, for other aggregation
  • the class proxy node builds its own Meridian ring structure based on it; and the selecting unit 103 is specifically configured to select a relay node from the source host node to the destination host node from the clustering proxy nodes on the Meridian ring structure based on the distance prediction mechanism.
  • the method further includes: a first update unit (not shown) for updating at least one of the following information between the host node and the clustering proxy node: a network of the host node Status, delay from the host node to the boot server, and update time of the host node; and a second update unit (not shown) for more between the cluster agent node and the BS server At least one of the following new information: the network status of the clustering agent node, the delay from the clustering agent node to the boot server, and the update time of the clustering agent node.
  • the method further includes: a maintenance update unit (not shown) for causing each cluster proxy node to maintain and update its own Meridian ring structure, wherein each proxy node maintains And updating at least one of the following information: IP address of other clustering proxy nodes on the Meridian ring structure, coordinate information, delay to the clustering proxy node, and update time.
  • a maintenance update unit (not shown) for causing each cluster proxy node to maintain and update its own Meridian ring structure, wherein each proxy node maintains And updating at least one of the following information: IP address of other clustering proxy nodes on the Meridian ring structure, coordinate information, delay to the clustering proxy node, and update time.
  • the selecting unit 103 is specifically configured to: based on the distance prediction mechanism, the clustering proxy node on the Meridian ring structure of the clustering proxy node to which the source host node belongs and the cluster to which the destination host node belongs.
  • the clustering proxy node on the Meridian ring structure of the class proxy node selects the relay node from the source host node to the destination host node.
  • the selecting unit 103 is specifically configured to: cause the clustering proxy node to which the source host node belongs to calculate each aggregate of its own Meridian ring structure by distance prediction based on the coordinates of the destination host node. The delay from the class proxy node to the destination host node is respectively added to the stored delay of each clustering proxy node on the Meridian ring structure to the clustering proxy node to which the source host node belongs, and each clustering proxy node is obtained.
  • the total delay of the associated relay paths selecting a clustering proxy node associated with the relay path whose total delay is less than a predetermined threshold as a candidate relay node; delaying the relay path associated with the candidate relay node And the packet loss rate detection, and selecting the candidate relay node related to the relay path with the best path quality as the relay node from the source host node to the destination host node based on the delay and packet loss rate detection results.
  • the selecting unit 103 is further configured to: in addition to the clustering proxy node related to the relay path whose total delay is less than a predetermined threshold, additionally select some clustering proxy nodes as candidates Relay node.
  • the clustering unit 102 is specifically configured to: cluster the host nodes based on the round-trip delay of the host node to the boot server and the IP address of the host node.
  • the distance prediction mechanism is GNP distance prediction
  • the coordinate information used to calculate the delay between two host nodes based on the distance prediction mechanism is GNP coordinates
  • the end-to-end overlay network transit The system 100 further includes: a registration requesting unit (not shown) for causing the host node to transmit a registration request to the bootstrap server; an authentication unit (not shown), connected to the registration requesting unit and the communication unit 101, for causing the boot server And authenticating the host node, and sending a success response message to the host node in the case that the authentication succeeds, in the success response message
  • the information includes a plurality of landmark nodes, wherein the landmark node is a device whose information is previously stored in the network and stored on the boot server, and the information of the landmark node includes at least an IP address or a GNP coordinate of the landmark node.
  • the constructing unit is specifically configured to: enable the boot server to calculate the delay between each cluster proxy node and other cluster proxy nodes by using GNP distance prediction, and based on the delay Selecting a certain number of candidate clustering proxy nodes for each clustering proxy node; causing each clustering proxy node to store other clustering proxy node information to its own Meridian ring based on round-trip delays with other clustering proxy nodes In the structure, thus constructing its own Meridian ring structure.
  • the selecting unit 103 is specifically configured to: enable the source host node to send a relay node selection request message to the clustering proxy node to which the clustering proxy node and the destination host node to which it belongs,
  • the relay node selection request message includes GNP coordinates of the source host node and the destination host node;
  • the cluster proxy node to which the source host node belongs is based on the GNP coordinates of the destination host node, and calculates its own Meridian ring structure by GNP distance prediction.
  • the clustering proxy node is used as the second group of candidate relay nodes; delaying and packet loss detection are performed on the relay path corresponding to the first group of candidate relay nodes and the second group of candidate relay nodes, and based on delay
  • FIG. 14 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a second embodiment of the present invention.
  • the end-to-end overlay network transit system 200 includes: a node joining and clustering unit 201 configured to join a node to a network and perform node clustering to set a part of nodes to Clustering the proxy nodes, and setting other nodes as host nodes belonging to the clustering proxy nodes; Meridian loop construction unit 202, configured to build its own based on other clustering proxy nodes for each clustering proxy node Meridian ring structure; and relay node
  • the selecting unit 203 is configured to select a relay node from the source node to the destination node from the nodes on the Meridian ring structure.
  • FIG. 15 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a third embodiment of the present invention.
  • an end-to-end overlay network transit system 300 includes: a node joining and clustering unit 301 configured to join a node to a network and perform node clustering to set a part of nodes to Clustering the proxy node, and setting other nodes as the host node belonging to the clustering proxy node, wherein the node joining and clustering unit 301 calculates the information required by the distance prediction mechanism when joining the node to the network; And the relay node selection unit 302 is configured to select a relay node from the source node to the destination node from the clustering proxy node based on a distance prediction mechanism.
  • FIG. 16 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a fourth embodiment of the present invention.
  • the end-to-end overlay network relay system 400 according to the fourth embodiment of the present invention includes: a Meridian ring construction unit 401 configured to join a node to a network to construct a Meridian ring structure, wherein the Meridian ring construction unit 401 Calculating information required by the distance prediction mechanism when joining the node to the network; and the relay node selection unit 402 is configured to select a relay node from the source node to the destination node from the nodes of the Meridian ring structure based on the distance prediction mechanism .
  • FIG. 17 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a fifth embodiment of the present invention.
  • the end-to-end overlay network transit system 500 includes: a node joining unit 501 configured to join a node to a network, wherein the node joining unit 501 calculates when a node joins a network. The information required by the distance prediction mechanism; and the relay node selection unit 502 is configured to select a relay node from the source node to the destination node based on the distance prediction mechanism.
  • the end-to-end overlay network transfer method and system according to the embodiment of the present invention can quickly find an effective relay node in the end-to-end overlay network, thereby establishing a shorter delay, higher efficiency, and stability. More powerful alternative routing for end-to-end high-performance communication.
  • the disclosed systems, devices, and methods may be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored, or not executed.
  • the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be electrical, mechanical or otherwise.
  • the units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software function unit.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • the technical solution of the present invention may contribute to the prior art or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a removable hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and the like, which can store program codes. .

Abstract

The present invention provides a transfer method and system for a peer-to-peer overlay network. The transfer method for the peer-to-peer overlay network is used for searching for a relay node between a source host node and a target host node in the peer-to-peer overlay network which comprises multiple host nodes and a bootstrap server. The transfer method comprises the following steps: acquiring coordinates information by the communication between the host node and the bootstrap servers, wherein the coordinates information is used for calculating the time delay between two host nodes based on a distance prediction mechanism; performing host node clustering to make a part of the host nodes as clustering agent nodes and the other host nodes as the host nodes belonging to the clustering agent nodes; selecting, from the clustering agent nodes, the relay node between the source host node and the target host node based on the distance prediction mechanism. With the transfer method and system for the peer-to-peer overlay network of the present invention, effective relay node can be found rapidly in the peer-to-peer overlay network, so that a substitute route with shorter time delay, higher efficiency and stronger stability is established, and high performance communication of peer-to-peer is realized.

Description

端到端覆盖网中转方法和系统 技术领域  End-to-end overlay network transfer method and system
本发明实施例涉及网络访问技术,且具体地说涉及端到端覆盖网中转方 法和系统。 背景技术  Embodiments of the present invention relate to network access techniques, and in particular to end-to-end overlay network relay methods and systems. Background technique
目前的因特网网络层由于使用的路由协议和网络架构等因素导致整体 路由效率不佳, 通过 IP ( internet protocol: 因特网协议 )层尽力而为交付原 则选择的默认路由已经难以满足许多对实时性要求较高的应用层业务的性 能需求。 其主要原因包括以下几方面:  The current Internet network layer has poor overall routing efficiency due to factors such as routing protocols and network architectures. The default route selected by the IP (internet protocol: Internet Protocol) layer for best delivery principles has been difficult to meet many real-time requirements. High performance requirements for application layer services. The main reasons include the following:
IP层路由中, 数据包跨越不同域发送时, 边界网关协议(BGP: border gateway protocol )只保证连通可达, 其提供的并非最短路径。 这样两点直 连情况下的传输时延往往较长, 以至于不能满足服务应用的需求。  In IP layer routing, when a packet is sent across different domains, the border gateway protocol (BGP: border gateway protocol) only guarantees connectivity, and it does not provide the shortest path. In this case, the transmission delay in the case of two direct connections is often too long to meet the requirements of the service application.
互联网中路由器转发数据包的排队等待机制在负载较大时经常出现拥 塞, 这样的拥塞造成的网络抖动会带来时延增加和频繁丟包, 使得本来质量 较好的链路出现性能衰退。  The queuing mechanism of routers forwarding packets in the Internet often causes congestion when the load is large. The network jitter caused by such congestion causes delays and frequent packet loss, which leads to performance degradation of the better quality links.
由于网给中 NAT ( network address translation: 网给地址转换 )和防火墙 的设置, 在保护网络的同时, 也为网络应用人为设置了障碍, 这使得无法对 大量的目的结点进行直连, NAT或防火墙后的用户完全无法享受网络电话等 应用层服务。  Because the network provides NAT (network address translation) and firewall settings, it also creates obstacles for network applications while protecting the network. This makes it impossible to directly connect a large number of destination nodes, NAT or Users behind the firewall are completely unable to enjoy application layer services such as Internet telephony.
为了解决这些问题, 人们开始研究 P2P ( peer-to-peer: 端到端)覆盖网 中转技术。 因为从目前的研究发现, 因特网网络中存在大量 TIV ( triangle inequality violations三角不等式违反)现象, 如图 1所示, 约 40%~50%的路 径存在等效或时延更小的替代路径, 80%的路径存在丟包率更低的替代路 径。 图 1是示出因特网网络中的 TIV现象的示意图。 P2P覆盖网中转技术就 是通过在 P2P覆盖网中寻找合适的中继节点,媒体通过中继节点转发, 从而 为应用层两点间建立比默认 IP路由时延更短、 效率更高、 稳定性更强的替 代路由, 实现端到端的高性能通信.  In order to solve these problems, people began to study the P2P (peer-to-peer: end-to-end) overlay network transfer technology. Because from the current research, there are a lot of TIV (triangle inequality violations) in the Internet network. As shown in Figure 1, about 40%~50% of the paths have alternative paths with smaller or shorter delays. The % path has an alternate path with a lower packet loss rate. Fig. 1 is a schematic diagram showing a TIV phenomenon in an Internet network. The P2P overlay network transit technology is to find a suitable relay node in the P2P overlay network, and the media is forwarded through the relay node, thereby establishing a shorter delay, higher efficiency, and more stability between the two points of the application layer than the default IP route. Strong alternative routing for end-to-end high performance communication.
这里的 P2P覆盖网是指应用层节点(如 skype软终端)按照 P2P的方式 自组织成一个网络, 它是一个逻辑虚拟拓朴网络。 中继节点是一种具有特殊 能力的应用层节点, 它不仅为本地用户提供应用服务, 同时还充当其他两个 或多个应用层节点间的桥接节点, 完成媒体转发。 P2P覆盖网中转技术的核 心问题是中继节点的发现算法, 即如何在短时间内以可接受开销发现可用的 有效中继节点。 发明内容 The P2P overlay network here refers to an application layer node (such as a skype soft terminal) self-organizing into a network according to the P2P mode, which is a logical virtual topology network. Relay node is a special Capable application layer node, which not only provides application services for local users, but also acts as a bridge node between two other application layer nodes to complete media forwarding. The core problem of P2P overlay network transit technology is the discovery algorithm of the relay node, that is, how to find available effective relay nodes with acceptable overhead in a short time. Summary of the invention
基于上述目的做出本发明,且本发明的目的是提供用于有效地发现中继 节点的端对端覆盖网中转方法和系统。  The present invention has been made in view of the above objects, and an object of the present invention is to provide an end-to-end overlay network relay method and system for efficiently discovering a relay node.
一方面, 提供了端对端覆盖网中转方法, 所述端对端覆盖网中包括多个 主机节点和引导服务器, 所述方法用于寻找从源主机节点到目的主机节点的 中继节点,所述方法包括:所述主机节点与引导服务器通信以获得坐标信息, 所述坐标信息用于基于距离预测机制来计算两个主机节点之间的时延; 执行 所述主机节点的聚类, 以将一部分主机节点作为聚类代理节点, 而其它主机 节点作为归属于所述聚类代理节点的主机节点;基于距离预测机制从所述聚 类代理节点中选择从源主机节点到目的主机节点的中继节点。  In one aspect, an end-to-end overlay network relay method is provided, where the end-to-end overlay network includes multiple host nodes and a boot server, and the method is used to find a relay node from a source host node to a destination host node. The method includes: the host node communicating with a boot server to obtain coordinate information, wherein the coordinate information is used to calculate a delay between two host nodes based on a distance prediction mechanism; performing clustering of the host node to a part of the host node acts as a clustering proxy node, and other host nodes act as host nodes belonging to the clustering proxy node; and selects a relay from the source host node to the destination host node from the clustering proxy node based on the distance prediction mechanism node.
另一方面, 提供了端对端覆盖网中转系统, 所述端对端覆盖网中包括多 个主机节点和引导服务器, 所述系统用于寻找从源主机节点到目的主机节点 的中继节点, 所述端对端覆盖网中转系统包括: 通信单元, 用于使得所述主 机节点与引导服务器通信以获得坐标信息, 所述坐标信息用于基于距离预测 机制来计算两个主机节点之间的时延; 聚类单元, 用于执行所述主机节点的 聚类, 以将一部分主机节点作为聚类代理节点, 而其它主机节点作为归属于 所述聚类代理节点的主机节点; 以及选择单元, 用于基于距离预测机制从所 述聚类代理节点中选择从源主机节点到目的主机节点的中继节点。  In another aspect, an end-to-end overlay network transit system is provided. The end-to-end overlay network includes a plurality of host nodes and a boot server, and the system is configured to search for a relay node from a source host node to a destination host node. The end-to-end overlay network transit system includes: a communication unit, configured to enable the host node to communicate with a boot server to obtain coordinate information, where the coordinate information is used to calculate a time between two host nodes based on a distance prediction mechanism a clustering unit, configured to perform clustering of the host node to use a part of host nodes as clustering proxy nodes, and other host nodes as host nodes belonging to the clustering proxy node; and selecting units, The relay node from the source host node to the destination host node is selected from the clustering proxy nodes based on the distance prediction mechanism.
通过根据本发明实施例的端对端覆盖网中转方法和系统,可以在端对端 覆盖网中快速发现有效的中继节点, 从而建立时延更短、 效率更高且稳定性 更强的替代路由, 实现端到端的高性能通信。 附图说明  Through the end-to-end overlay network relay method and system according to the embodiment of the present invention, an effective relay node can be quickly found in the end-to-end overlay network, thereby establishing a shorter delay, higher efficiency, and more stable replacement. Routing, enabling end-to-end high-performance communication. DRAWINGS
为了更清楚地说明本发明实施例的技术方案, 下面将对实施例或现有技 术描述中所需要使用的附图作筒单地介绍, 显而易见地, 下面描述中的附图 仅仅是本发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造 性劳动的前提下, 还可以根据这些附图获得其他的附图。 In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings to be used in the embodiments or the description of the prior art will be briefly described below. Obviously, the drawings in the following description are only the present invention. Some embodiments, for those of ordinary skill in the art, do not pay for creation Under the premise of sexual labor, other drawings can also be obtained from these drawings.
图 1是示出因特网网络中的 TIV现象的示意图;  Figure 1 is a schematic diagram showing the TIV phenomenon in an Internet network;
图 2是示出根据本发明第一实施例的端对端覆盖网中转方法的示意性流 程图;  2 is a schematic flow chart showing a method of relaying an end-to-end overlay network according to a first embodiment of the present invention;
图 3是示出根据本发明第一实施例的端对端覆盖网中转方法中的节点加 入过程的具体示例的流程图;  3 is a flow chart showing a specific example of a node adding process in the end-to-end overlay network relay method according to the first embodiment of the present invention;
图 4是示出根据本发明第一实施例的端对端覆盖网中转方法中的主机节 点和聚类代理节点之间的信息更新过程的具体示例的流程图;  4 is a flow chart showing a specific example of an information update process between a host node and a clustering proxy node in the end-to-end overlay network relay method according to the first embodiment of the present invention;
图 5是示出根据本发明第一实施例的端对端覆盖网中转方法中的聚类代 理节点和 BS服务器之间的信息更新过程的具体示例的流程图;  5 is a flowchart showing a specific example of an information update process between a cluster agent node and a BS server in the end-to-end overlay network relay method according to the first embodiment of the present invention;
图 6 是示出根据本发明第一实施例的端对端覆盖网中转方法中的子午 ( Meridian )环构建过程的具体示例的流程图;  6 is a flowchart showing a specific example of a Meridian ring construction process in the end-to-end overlay network relay method according to the first embodiment of the present invention;
图 7 是示出根据本发明第一实施例的端对端覆盖网中转方法中的 Meridian环维护更新过程的具体示例的流程图;  7 is a flow chart showing a specific example of a Meridian ring maintenance update process in the end-to-end overlay network relay method according to the first embodiment of the present invention;
图 8是示出根据本发明第一实施例的端对端覆盖网中转方法中的中继节 点选择过程的具体示例的流程图;  8 is a flowchart showing a specific example of a relay node selection process in the end-to-end overlay network relay method according to the first embodiment of the present invention;
图 9是示出根据本发明第二实施例的端对端覆盖网中转方法的示意性流 程图;  9 is a schematic flow chart showing a method of relaying an end-to-end overlay network according to a second embodiment of the present invention;
图 10是示出根据本发明第三实施例的端对端覆盖网中转方法的示意性 流程图;  FIG. 10 is a schematic flow chart showing a method for relaying an end-to-end overlay network according to a third embodiment of the present invention; FIG.
图 11 是示出根据本发明第四实施例的端对端覆盖网中转方法的示意性 流程图;  11 is a schematic flow chart showing a method for relaying an end-to-end overlay network according to a fourth embodiment of the present invention;
图 12是示出根据本发明第五实施例的端对端覆盖网中转方法的示意性 流程图;  FIG. 12 is a schematic flow chart showing a method for relaying an end-to-end overlay network according to a fifth embodiment of the present invention; FIG.
图 13是示出根据本发明第一实施例的端对端覆盖网中转系统的示意性 框图;  Figure 13 is a schematic block diagram showing an end-to-end overlay network relay system according to a first embodiment of the present invention;
图 14是示出根据本发明第二实施例的端对端覆盖网中转系统的示意性 框图;  Figure 14 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a second embodiment of the present invention;
图 15是示出根据本发明第三实施例的端对端覆盖网中转系统的示意性 框图; 图 16是示出根据本发明第四实施例的端对端覆盖网中转系统的示意性 框图; Figure 15 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a third embodiment of the present invention; 16 is a schematic block diagram showing an end-to-end overlay network relay system according to a fourth embodiment of the present invention;
图 17是示出根据本发明第一实施例的端对端覆盖网中转系统的示意性 框图。 具体实施方式  Figure 17 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a first embodiment of the present invention. detailed description
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行 清楚、 完整地描述, 显然, 所描述的实施例是本发明一部分实施例, 而不是 全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没有作出创 造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。  The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is obvious that the described embodiments are a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without making creative labor are within the scope of the present invention.
在根据本发明实施例的网络环境下, 专门部署固定的一个或者多个 BS ( Bootrap Server: 引导服务器)服务器, 其指导网络节点注册, 辅助主机节 点找到归属的聚类代理节点, 管理存储系统中所有聚类代理节点信息, 并指 导新加入聚类代理节点初始构建自己的环结构。 聚类代理节点是由拥有公网 IP、 CPU处理能力强、带宽大、在线时间长等条件的普通客户终端提升而成。 聚类代理节点管理归属于自己的主机节点信息, 并维护更新由其他邻近聚类 代理节点构建的环结构。 在管理的主机节点需要中继节点时, 聚类代理节点 从自己的环结构中选取提供合适的中继节点列表。聚类代理节点需要充当中 继节点的角色, 负责用户面的 NAT穿越以及媒体中转。 并且, 主机节点指 的是普通客户终端, 其在加入网络后附着到某个聚类代理节点, 并依靠聚类 代理节点来完成中继节点的查找。  In a network environment according to an embodiment of the present invention, a fixed one or more BS (bootrap server) servers are specifically deployed, which guides network node registration, and the auxiliary host node finds a home clustering proxy node, and manages the storage system. All clustering agent node information, and guiding the new joining clustering node to initially construct their own ring structure. The clustering proxy node is upgraded by an ordinary client terminal that has the public network IP, strong CPU processing capability, large bandwidth, and long online time. The clustering agent node manages the host node information attributed to itself, and maintains the ring structure constructed by other neighboring clustering agent nodes. When the managed host node needs a relay node, the clustering proxy node selects and provides a suitable relay node list from its own ring structure. The clustering proxy node needs to act as a relay node, responsible for NAT traversal of the user plane and media relay. Moreover, the host node refers to a common client terminal, which is attached to a clustering proxy node after joining the network, and relies on the clustering proxy node to complete the searching of the relay node.
ASAP ( AS-aware peer-relay protocol: 自治系统感知对等中继协议 )算 法是 P2P覆盖网中转技术的一个示例, 其需要部署引导服务器, 负责收集存 取网络 AS ( Autonomous System: 自治系统 )分布图、 AS和 IP前缀的映射 表。 基于 IP前缀信息对用户节点进行聚类, 每个聚类选择一个能力较强的 节点作为聚类代理节点。 引导服务器需要存储维护聚类和聚类代理节点信 息。 每个聚类代理节点基于 AS拓朴图, 通过广度优先搜索获取邻近 AS信 息, 然后通过实际探测来构建邻近聚类集合。 在实际中继节点选择过程中, 该算法基于主被叫邻近聚类集合交集来选取合适的中继节点。  The ASAP (AS-aware peer-relay protocol) algorithm is an example of the P2P overlay network transit technology. It needs to deploy a boot server, which is responsible for collecting the distribution of the access network AS (Autonomous System). Map, AS and IP prefix mapping tables. User nodes are clustered based on IP prefix information, and each cluster selects a node with stronger capabilities as a clustering proxy node. The boot server needs to store maintenance clustering and clustering proxy node information. Each clustering proxy node obtains the neighboring AS information through the breadth-first search based on the AS topology map, and then constructs the neighboring cluster set by actual sounding. In the actual relay node selection process, the algorithm selects a suitable relay node based on the intersection of the primary and the called neighboring cluster sets.
在上述 ASAP算法中, AS域间关系需要通过获取 BGP广播消息来推断, In the above ASAP algorithm, the AS inter-domain relationship needs to be inferred by acquiring a BGP broadcast message.
BGP广播的内容有限, 且难于获取。 另外, 该算法基于 AS拓朴图的探测方 法, 范围太大, 实际开销也比较高。 The content of BGP broadcasts is limited and difficult to obtain. In addition, the algorithm is based on the detection side of the AS topology map. The method is too large and the actual cost is relatively high.
子午( Meridian )环算法是 P2P覆盖网中转技术的另一示例,在 Meridian 算法中, 每个节点加入网络时, 首先通过引导服务器或者已存在的节点获取 一部分现有网络节点信息。 然后对这些节点进行实际探测, 基于获取的 RTT ( round-trip time: 往返时延)信息构建环状的拓朴结构, 以自己为圓心, 由 内向外将这些节点分别放在离自己不同距离 (时延)的环上。 另外, 它基于 gossip协议周期性地维护和更新这个环结构。 在实际中继节点选择时, 发起 方根据设定的阈值从自己的环结构中选取节点进行广播,通过逐跳迭代的方 式找到合适的中继节点。  The Meridian loop algorithm is another example of the P2P overlay network relay technology. In the Meridian algorithm, when each node joins the network, it first obtains some of the existing network node information through the boot server or the existing node. Then, the actual detection of these nodes is performed, and a circular topology structure is constructed based on the obtained RTT (round-trip time) information, and the nodes are placed at different distances from the inside and the outside by themselves. Delay on the ring. In addition, it periodically maintains and updates this ring structure based on the gossip protocol. When the actual relay node is selected, the initiator selects a node from its own ring structure for broadcasting according to the set threshold, and finds a suitable relay node by hop-by-hop iteration.
但是, 通过逐步逼近的多跳方式发现中继节点, 逼近参数的设置难, 而 且多跳的方式容易造成媒体时延和丟包增大, 多个转发节点在接入侧上造成 下行带宽的消耗。 另外, meridian算法中也没有提到节点聚类来减少网络开 销和提高命中率。  However, the discovery of the relay node by the gradual approaching multi-hop method makes the setting of the approach parameters difficult, and the multi-hop mode is likely to cause media delay and packet loss, and multiple forwarding nodes cause downlink bandwidth consumption on the access side. . In addition, node clustering is not mentioned in the meridian algorithm to reduce network overhead and improve hit rate.
为了解决因特网网络故障, NAT穿越, 通信时延太大等问题, 本发明实 施例提出了新颖的和改进的端对端覆盖网中转方法和系统。  In order to solve the problems of Internet network failure, NAT traversal, and communication delay too much, the present invention proposes a novel and improved end-to-end overlay network relay method and system.
本发明实施例的基本思想是采用节点聚类、 meridian环和 GNP(Global Network Positioning全球网络位置)距离预测中的一种或多种技术的端对端 覆盖网中转方法和系统。  The basic idea of the embodiment of the present invention is an end-to-end overlay network relay method and system using one or more technologies of node clustering, meridian ring and GNP (Global Network Positioning).
在本发明的实施例中, 网络系统中的节点可以依据时延和部分网络拓朴 信息 (例如, IP地址或 ASN ( Autonomous System Number: 自治系统号)) 来完成聚类。 每个聚类内选择一个能力强的节点充当聚类代理节点, 管理本 聚类内的其它节点。 此外, 可以仅由聚类代理节点参与构建 meridian环, 从 而通过节点聚类保证 meridian环上节点地理上的分散性。  In an embodiment of the invention, nodes in the network system may perform clustering based on delay and partial network topology information (e.g., IP address or ASN (Autonomous System Number)). Within each cluster, a node with strong capabilities is selected to act as a clustering proxy node to manage other nodes within the cluster. In addition, the meridian ring can be constructed only by the clustering agent node, thereby ensuring the geographical dispersion of the nodes on the meridian ring by node clustering.
并且, 通过 meridian环的多层解析环结构, 让网络系统中的聚类代理节 点能够在存储有限数目节点的基础上, 更多的了解和携带整个网络拓朴的节 点信息。  Moreover, through the multi-layered parsing loop structure of the meridian ring, the clustering proxy nodes in the network system can more understand and carry the node information of the entire network topology on the basis of storing a limited number of nodes.
另外, 在进行中继节点的选择时, 通过比如 GNP距离预测机制的距离 预测机制从源和目的节点归属的聚类代理节点的 meridian环结构中筛选获 取一跳候选中继节点,这能够大幅度减少不必要的探测开销,提高预测精度。  In addition, when performing the selection of the relay node, the distance prediction mechanism such as the GNP distance prediction mechanism is used to filter and obtain the one-hop candidate relay node from the meridian ring structure of the clustering proxy node to which the source and destination nodes belong, which can greatly Reduce unnecessary detection overhead and improve prediction accuracy.
下面,将基于图 2到图 8对本发明的端对端覆盖网中转方法的第一实施 例进行描述。 图 2是示出根据本发明第一实施例的端对端覆盖网中转方法的示意性流 程图。 如图 2所示, 根据本发明第一实施例的一种端对端覆盖网中转方法应 用于包括多个主机节点和引导服务器的端对端覆盖网, 用于寻找从源主机节 点到目的主机节点的中继节点, 该方法包括: S1000, 所述主机节点与引导 服务器通信以获得坐标信息, 所述坐标信息用于基于距离预测机制来计算两 个主机节点之间的时延; S1001 , 执行所述主机节点的聚类, 以将一部分主 机节点作为聚类代理节点, 而其它主机节点作为归属于所述聚类代理节点的 主机节点; S1002, 基于距离预测机制从所述聚类代理节点中选择从源主机 节点到目的主机节点的中继节点。 Next, a first embodiment of the end-to-end overlay network relaying method of the present invention will be described based on FIGS. 2 through 8. 2 is a schematic flow chart showing a method for relaying an end-to-end overlay network according to a first embodiment of the present invention. As shown in FIG. 2, an end-to-end overlay network relay method according to a first embodiment of the present invention is applied to an end-to-end overlay network including a plurality of host nodes and a boot server for searching from a source host node to a destination host. a relay node of the node, the method includes: S1000, the host node communicates with a boot server to obtain coordinate information, where the coordinate information is used to calculate a delay between two host nodes based on a distance prediction mechanism; S1001, execute Clustering of the host node to use a part of the host node as a clustering proxy node, and other host nodes as host nodes belonging to the clustering proxy node; S1002, based on a distance prediction mechanism from the clustering proxy node Select the relay node from the source host node to the destination host node.
下面,将基于图 3到图 8对上述根据本发明第一实施例的端对端覆盖网 中转方法进行详细说明如下。  Next, the above-described end-to-end overlay network relaying method according to the first embodiment of the present invention will be described in detail based on Figs. 3 to 8 as follows.
在本发明的实施例中,节点加入步骤可以包括注册, GNP坐标计算和节 点聚类三个部分。 在根据本发明实施例的网络系统中, 每个节点上都存储有 BS服务器地址信息,在节点加入网络时, 首先由要加入的节点向 BS服务器 发起注册请求。 然后, 要加入的节点在 BS 服务器成功完成鉴权后获取 landmark (路标)节点信息, 然后通过 GNP算法计算得到自己的 GNP坐标。 在 GNP坐标计算完成后, 节点进行聚类操作, 并向 BS服务器发起归属聚类 代理节点信息请求。 BS服务器根据时延和 IP地址等拓朴信息, 协助新加入 节点完成聚类。 图 3是示出根据本发明第一实施例的端对端覆盖网中转方法 中的节点加入过程的具体示例的流程图。  In an embodiment of the present invention, the node joining step may include registration, GNP coordinate calculation, and node clustering. In the network system according to the embodiment of the present invention, BS server address information is stored on each node, and when the node joins the network, the node to be joined first initiates a registration request to the BS server. Then, the node to be joined obtains the landmark information after the BS server successfully completes the authentication, and then calculates its own GNP coordinates through the GNP algorithm. After the GNP coordinate calculation is completed, the node performs a clustering operation and initiates a home clustering proxy node information request to the BS server. The BS server assists the newly joined nodes to complete clustering based on topology information such as delay and IP address. 3 is a flow chart showing a specific example of a node joining process in the end-to-end overlay network relay method according to the first embodiment of the present invention.
如图 3所示, S1100,要加入网络的主机节点向 BS服务器发起注册请求 消息, 例如, 该消息中可以携带用户的用户名和密码; S1101 , BS服务器对 要加入网络的主机节点进行鉴权, 例如, 通过鉴定用户的用户名和密码的有 效性来进行鉴权。 如果鉴权成功, 则 BS服务器向要加入网络的主机节点返 回成功响应消息, 并在该消息中携带多个 landmark (地标)节点信息, 该地 标节点信息可以包括该地标节点的 IP地址、 GNP坐标等(地标节点是事先 部署在网络中的设备, 其信息存储在 BS服务器上), 如果鉴权失败, 则 BS 服务器返回失败响应消息; S1102, 要加入网络的主机节点从成功响应消息 中获取 landmark节点的 IP地址, 然后基于该 IP地址向获取的 landmark节 点发送探测消息并收到响应, 计算相应的 RTT ( RTT的计算方式通过计算收 到该探测消息的响应消息的时间与发送相应的探测消息的时间之间的时间 差得到的,后续计算 RTT的方式均与此处类似), 结合获取的 RTT以及多个 地标节点的 GNP坐标, 例如通过 Simplex Downhill方法计算得到加入网络 的主机节点的 GNP坐标; S1103 , 要加入网络的主机节点向 BS服务器发送 探测消息以获取 BS服务器的 RTT,同时完成本节点的 NAT类型检测(这里, 本领域技术人员可以理解 NAT 类型检测的具体方式, 例如可以参考 RFC3489 ); S1104, 要加入网络的主机节点向 BS服务器发送聚类代理节点 信息请求, 参数为上一步获取的 RTT; S1105, BS服务器根据 RTT值和 IP 地址等拓朴信息从存储的聚类代理节点数据库中选取多个聚类代理节点作 为候选, 例如, BS服务器选择候选节点的标准可以为聚类代理节点到 BS服 务器的时延与加入网络的主机节点到 BS服务器的时延相近(即, 两者的差 值满足一定范围, 具体取值可根据网络特征选取), 另外, 选择标准也可以 是聚类代理节点的 IP地址与加入节点的 IP地址的相同 IP前缀尽量长,等等; S1106, BS服务器返回成功响应消息, 并在该消息中携带在 S1105中选取的 候选聚类代理节点信息, 例如, 该信息可以包括候选聚类代理节点的 IP地 址, 或者候选聚类代理节点的其它标识信息等; S1107, 加入的主机节点收 到响应消息, 如果响应消息中候选聚类代理节点信息为空, 则转到 S1117; S1108, 如果响应消息中候选聚类代理节点信息非空, 则加入的主机节点向 这些候选聚类代理节点发送探测消息; S1109, 候选聚类代理节点收到探测 消息后立即返回响应消息; S1110, 加入的主机节点计算到多个候选聚类代 理节点的时延 RTT; S1111 , 如果没有时延 RTT小于设定的聚类内时延最大 值(根据网络特征取值,在现有情况下因特网上一个 AS内节点间的时延 RTT 平均为 60ms,;例如,可以将聚类内时延最大值设定为 60ms ),则转到 S1117; S1112, 如果有时延 RTT小于设定的聚类内时延最大值, 则将最小时延对应 的聚类代理节点作为归属的聚类代理节点; S1113 , 向在 S1112 中选取的归 属聚类代理节点发送加入请求消息; S1114, 归属聚类代理节点根据本聚类 节点数目, 判断加入是否成功, 例如, 如果该聚类代理节点存储节点数目已 满则失败, 如果未满则成功, 并返回响应消息; S1115 , 如果收到成功响应 消息, 加入的主机节点存储归属聚类代理节点的信息, 例如 IP地址信息, 同时启动和聚类代理节点之间周期性的信息更新任务, 本次加入过程完成; S1116, 如果收到失败响应, 则对剩下的候选聚类代理节点重复 S1111 和 S1112, 并且, 如果重复达到一定次数, 则转到 S1117; S1117, 加入的主机 节点向 BS服务器申请生成新的聚类, 自己作为该聚类的代理节点, 此时, BS服务器为该节点生成新的聚类 ID, 同时将该节点的 IP地址, GNP坐标, 到 BS服务器的时延 RTT, 节点网络状况(带宽和 CPU使用情况 ), 更新时 间等存储到与聚类 ID对应的数据库中, 加入系统完成。 As shown in FIG. 3, S1100, the host node to join the network initiates a registration request message to the BS server, for example, the message may carry the user name and password of the user; S1101, the BS server authenticates the host node to join the network, For example, authentication is performed by identifying the validity of the user's username and password. If the authentication succeeds, the BS server returns a success response message to the host node to join the network, and carries a plurality of landmark node information, where the landmark node information may include the IP address and GNP coordinates of the landmark node. Etc. (The landmark node is a device deployed in the network in advance, and its information is stored on the BS server.) If the authentication fails, the BS server returns a failure response message; S1102, the host node to join the network obtains the landmark from the success response message. The IP address of the node, and then sends a probe message to the obtained landmark node based on the IP address and receives a response, and calculates a corresponding RTT (the RTT calculation method calculates the time of receiving the response message of the probe message and sends the corresponding probe message. Time between times The difference is obtained, and the subsequent calculation of RTT is similar to the method here. Combining the obtained RTT and the GNP coordinates of multiple landmark nodes, for example, the GNP coordinates of the host node joining the network are calculated by the Simplex Downhill method; S1103, to join the network. The host node sends a probe message to the BS server to obtain the RTT of the BS server, and completes the NAT type detection of the local node (here, a person skilled in the art can understand the specific manner of NAT type detection, for example, refer to RFC3489); S1104, to join The host node of the network sends a clustering proxy node information request to the BS server, and the parameter is the RTT acquired in the previous step; S1105, the BS server selects multiple aggregations from the stored clustering proxy node database according to the topology information such as the RTT value and the IP address. The class proxy node is used as a candidate. For example, the criterion for the BS server to select the candidate node may be that the delay of the clustering proxy node to the BS server is similar to the delay of the host node joining the network to the BS server (ie, the difference between the two meets a certain Range, specific value can be selected according to network characteristics), in addition, selection criteria The IP address of the clustering proxy node may be as long as the same IP prefix of the IP address of the joining node, and so on; S1106, the BS server returns a success response message, and carries the candidate clustering proxy node selected in S1105 in the message. Information, for example, the information may include an IP address of the candidate clustering proxy node, or other identification information of the candidate clustering proxy node, etc.; S1107, the joined host node receives the response message, if the candidate clustering proxy node information in the response message If yes, go to S1117; S1108, if the candidate clustering proxy node information in the response message is not empty, the joined host node sends a probe message to the candidate clustering proxy nodes; S1109, the candidate clustering proxy node receives the probe message. Immediately after returning the response message; S1110, the joined host node calculates the delay RTT of the plurality of candidate clustering proxy nodes; S1111, if there is no delay RTT is less than the set intra-cluster delay maximum value (according to the network feature value In the existing case, the delay RTT between nodes in an AS on the Internet is 60 ms on average; for example, the time within the cluster can be If the maximum value is set to 60ms, then go to S1117; S1112, if the delay RTT is less than the set maximum delay within the cluster, the clustering proxy node corresponding to the minimum delay is taken as the home clustering proxy node; S1113, sending a join request message to the home clustering proxy node selected in S1112; S1114, the home clustering proxy node determines whether the join is successful according to the number of the cluster nodes, for example, if the number of storage nodes of the cluster proxy node is full Then, if it is not full, it succeeds, and returns a response message; S1115, if a success response message is received, the joined host node stores information of the home clustering proxy node, such as IP address information, and simultaneously starts and clusters between the proxy nodes. The periodic information update task, the joining process is completed; S1116, if a failure response is received, the remaining candidate clustering proxy nodes are repeated S1111 and S1112, and if the repetition reaches a certain number of times, then go to S1117; S1117 , joined the host The node applies to the BS server to generate a new cluster, and acts as a proxy node for the cluster. At this time, the BS server generates a new cluster ID for the node, and simultaneously sets the IP address of the node, GNP coordinates, to the BS server. The delay RTT, the node network status (bandwidth and CPU usage), the update time, etc. are stored in the database corresponding to the cluster ID, and the joining system is completed.
在完成节点加入的过程之后, 节点可能需要进行自组织管理, 以进行周 期性的信息更新 (该信息例如包括时延和更新时间), 在本发明第一实施例 的端对端覆盖网中转方法中, 该节点的自组织管理过程包括主机节点和聚类 代理节点之间的信息更新过程和聚类代理节点和 BS服务器之间的信息更新 过程。  After completing the process of node joining, the node may need to perform self-organizing management for periodic information update (the information includes, for example, delay and update time), and the end-to-end overlay network transit method in the first embodiment of the present invention The self-organizing management process of the node includes an information update process between the host node and the clustering proxy node and an information update process between the clustering proxy node and the BS server.
图 4是示出根据本发明第一实施例的端对端覆盖网中转方法中的主机节 点和聚类代理节点之间的信息更新过程的具体示例的流程图。在上述信息更 新过程中, 普通主机节点和聚类代理之间定期地刷新信息, 从而保证存储数 据的准确性。 如图 4所示, 上述信息更新过程包括: S1200, 主机节点周期 性地向附着的聚类代理节点发送信息更新消息, 并设定超时定时器; S1201 , 聚类代理节点接收到信息更新消息后更新所存储的主机节点信息, 例如主机 节点到 BS服务器的时延 RTT和更新时间; S1202, 聚类代理节点返回成功 响应消息, 其中, 如果定时器超时主机节点仍没有收到聚类代理节点返回的 成功响应消息, 则该主机节点向 BS服务器发送请求消息以获取新的归属聚 类代理节点信息; S1203 , 聚类代理节点周期性地检测存储的主机节点数据 库, 删除没有周期性地发送更新消息的节点。  4 is a flow chart showing a specific example of an information update process between a host node and a clustering proxy node in the end-to-end overlay network relay method according to the first embodiment of the present invention. In the above information update process, the information is periodically refreshed between the common host node and the clustering agent to ensure the accuracy of the stored data. As shown in FIG. 4, the information update process includes: S1200, the host node periodically sends an information update message to the attached clustering proxy node, and sets a timeout timer; S1201, after the clustering proxy node receives the information update message, Updating the stored host node information, such as the delay RTT and update time of the host node to the BS server; S1202, the clustering proxy node returns a success response message, wherein if the timer expires, the host node still does not receive the cluster proxy node return The success response message, the host node sends a request message to the BS server to obtain new home clustering proxy node information; S1203, the clustering proxy node periodically detects the stored host node database, and the deletion does not periodically send the update message. Node.
图 5是示出根据本发明第一实施例的端对端覆盖网中转方法中的聚类代 理节点和 BS服务器之间的信息更新过程的具体示例的流程图。 在上述信息 更新过程中, 聚类代理节点和 BS服务器之间定期地刷新信息, 从而保证存 储数据的准确性, 该信息例如主要包括节点网络状况(带宽和 CPU使用情 况) 以及更新时间。 如图 5所示, 上述信息更新过程包括: S1300, 聚类代 理节点周期性地向 BS服务器发送信息更新请求消息; S1301 , BS服务器接 收到信息更新请求消息后更新存储的聚类代理节点信息, 例如, 聚类代理节 点的节点网络状况和更新时间等; S1302, BS 服务器返回成功响应消息; S1303 , BS服务器周期性地检测存储的聚类代理节点数据库, 删除没有周期 性地发送信息更新请求消息的聚类代理节点。  Fig. 5 is a flowchart showing a specific example of an information update process between a clustering proxy node and a BS server in the end-to-end overlay network relay method according to the first embodiment of the present invention. During the above information update process, the information is periodically refreshed between the clustering proxy node and the BS server to ensure the accuracy of the stored data. The information includes, for example, the node network status (bandwidth and CPU usage) and the update time. As shown in FIG. 5, the information update process includes: S1300: The clustering proxy node periodically sends an information update request message to the BS server; S1301: The BS server updates the stored clustering proxy node information after receiving the information update request message, For example, clustering the node network status and update time of the proxy node, etc.; S1302, the BS server returns a success response message; S1303, the BS server periodically detects the stored cluster proxy node database, and deletes the information update request message without periodically sending Clustering proxy node.
在根据本发明第一实施例的端对端覆盖网中转方法中,进行节点的自组 织管理以在主机节点与聚类代理节点之间, 以及在聚类代理节点与 BS服务 器之间周期性地进行信息更新。 但是, 在本发明的其它实施例中, 例如, 在 网络系统中的变化相对较小的环境中, 可以省略上述节点的自组织管理过 程, 从而减少网络开销。 并且, 代替周期性地进行信息更新, 本发明的其它 实施例也可以基于其它条件来进行信息更新, 例如, 响应于用户或者网络管 理员的预定操作或预定指令来进行信息更新, 从而提高网络使用的便利度。 这里, 本发明的实施例并不意在进行任何限制。 In the end-to-end overlay network relay method according to the first embodiment of the present invention, self-organization of nodes is performed. Management is performed to periodically update information between the host node and the clustering proxy node, and between the clustering proxy node and the BS server. However, in other embodiments of the present invention, for example, in an environment where the change in the network system is relatively small, the self-organizing management process of the above-mentioned nodes may be omitted, thereby reducing network overhead. Moreover, instead of periodically updating the information, other embodiments of the present invention may also perform information update based on other conditions, for example, updating information in response to a predetermined operation or predetermined instruction of the user or the network administrator, thereby improving network usage. Convenience. Here, the embodiments of the present invention are not intended to impose any limitation.
图 6 是示出根据本发明第一实施例的端对端覆盖网中转方法中的 Meridian环构建过程的具体示例的流程图。 在本发明的第一实施例中, 以聚 类代理节点来进行 meridian环的构建,从而保证 meridian环上节点地理上的 分散性。 并且, 在聚类代理节点初次加入网络时, 需要首先通过 BS服务器 获取一批邻近聚类代理节点信息来构建 meridian环结构。为了减轻网络的负 载和 BS服务器的压力,在本发明的第一实施例中, BS服务器返回的并非全 局聚类代理节点信息。 如图 6所示, meridian环构建过程包括: S1400, 聚 类代理节点向 BS服务器发送邻近聚类代理节点请求消息; S1401 , BS服务 器基于要构建 Meridian环的聚类代理节点发送的邻近聚类代理节点请求消 息,根据 GNP坐标预测来计算 BS服务器上存储的其他聚类代理节点到该要 构建 Meridian环的聚类代理节点的时延(这里, 该计算所使用的参数为 BS 服务器上存储的其他聚类代理节点的 GNP坐标和该聚类代理节点的 GNP坐 标, 并且计算方法可以为欧式距离: d=sqrt(∑(xil-xi2)A ) 这里 i=l,2..n ), 来选取一定数量的聚类代理节点作为候选; S1402 , BS服务器返回响应消息, 该响应消息中携带在 S1401选取的聚类代理节点信息, 例如, 该信息可以包 括选取的聚类代理节点的 IP地址、 或者其他标识信息等; S1403 , 聚类代理 节点从上步 BS服务器返回的响应消息中获取得到邻近聚类代理节点信息, 例如, IP地址, 并向获取的这些节点发送探测消息; S1404, 邻近聚类代理 节点返回响应消息; S1405 , 聚类代理节点计算获取从发送探测消息到接收 响应消息的时延 RTT, 然后根据 RTT将这些邻近聚类代理节点信息存储到 相应的环结构中, 从而构建自己初始的 meridian环。 这里, Meridian环的具 体的构建方法可以如下。 首先, 聚类代理节点以自己为圓心, 生成多个不同 半径的同心环, 这些环的内半径 ri=asA(i-l), 外半径 Ri=asA(i)(i>0), a是一个 常数, s是一个倍增的因数。 最内层环 r0=0, R0=a。 其中, 具体环的个数, 环上存储节点的个数, 以及环之间的时延设置需要通过实际测试数据来分析 得到较优值。 然后, 聚类代理节点按照其他聚类代理节点到其的时延, 找到 对应的环区间, 将其他聚类代理节点信息 (IP地址, GNP 坐标, 到本聚类 代理节点的时延, 更新时间等)存储到对应的环数据库中。 由于 meridian环 的环结构的环半径成指数增长, 所以每个节点能够在存储有限数目节点的基 础上, 更多的了解和携带整个网络拓朴的节点信息。 6 is a flow chart showing a specific example of a Meridian ring construction process in the end-to-end overlay network relay method according to the first embodiment of the present invention. In the first embodiment of the present invention, the construction of the meridian ring is performed by the clustering proxy node, thereby ensuring the geographical dispersion of the nodes on the meridian ring. Moreover, when the clustering proxy node joins the network for the first time, it is necessary to first acquire a batch of neighboring clustering proxy node information through the BS server to construct a meridian ring structure. In order to alleviate the load of the network and the pressure of the BS server, in the first embodiment of the present invention, the BS server returns not the global clustering proxy node information. As shown in FIG. 6, the meridian ring construction process includes: S1400, the clustering proxy node sends a neighboring clustering proxy node request message to the BS server; S1401, the BS server sends the neighboring clustering proxy based on the clustering proxy node to construct the Meridian ring. The node request message calculates the delay of the other clustering proxy nodes stored on the BS server to the clustering proxy node that is to construct the Meridian ring according to the GNP coordinate prediction (here, the parameter used in the calculation is other stored on the BS server) The GNP coordinates of the clustering proxy node and the GNP coordinates of the clustering proxy node, and the calculation method may be the Euclidean distance: d=sqrt(∑(xil-xi 2 ) A ) where i=l, 2 ..n ), Selecting a certain number of clustering proxy nodes as candidates; S1402, the BS server returns a response message, where the response message carries the clustering proxy node information selected in S1401, for example, the information may include the IP address of the selected clustering proxy node, Or other identification information, etc.; S1403, the clustering proxy node obtains the information of the neighboring clustering proxy node from the response message returned by the previous BS server For example, an IP address, and sending a probe message to the acquired nodes; S1404, the proximity clustering node returns a response message; S1405, the clustering proxy node calculates a delay RTT from the sending of the probe message to the reception of the response message, and then according to the RTT These neighboring clustering proxy node information is stored into the corresponding ring structure to construct its own original meridian ring. Here, the specific construction method of the Meridian ring can be as follows. First, the clustering proxy node generates a plurality of concentric rings of different radii with its own center. The inner radius of these rings is ri=as A (il), and the outer radius Ri=as A (i)(i>0), a is A constant, s is a multiplication factor. The innermost ring r0=0, R0=a. Where the number of specific rings, The number of storage nodes on the ring and the delay settings between the rings need to be analyzed by actual test data to obtain better values. Then, the clustering proxy node finds the corresponding ring interval according to the delay of the other clustering agent nodes, and the other clustering agent node information (IP address, GNP coordinates, delay to the clustering proxy node, update time) Etc.) Stored in the corresponding ring database. Since the ring radius of the meridian ring's ring structure grows exponentially, each node can learn more about and carry the node information of the entire network topology on the basis of storing a limited number of nodes.
在上述本发明的第一实施例中, 为了减轻网络的负载和 BS服务器的压 力, 基于 GNP坐标预测而获得的聚类代理节点之间的时延, 来选取一定数 量的聚类代理节点作为候选, 但是, 本领域技术人员可以理解 BS服务器也 可以任意选择一定数量的聚类代理节点来作为候选, 或者基于其它机制进行 候选的聚类代理节点的选择, 如本发明的第二实施例所述, 本发明的实施例 并不意在对此进行任何限制。  In the above-described first embodiment of the present invention, in order to reduce the load of the network and the pressure of the BS server, a certain number of clustering proxy nodes are selected as candidates based on the delay between the clustering proxy nodes obtained by the GNP coordinate prediction. However, those skilled in the art can understand that the BS server can also arbitrarily select a certain number of clustering proxy nodes as candidates, or perform selection of candidate clustering proxy nodes based on other mechanisms, as described in the second embodiment of the present invention. The embodiments of the present invention are not intended to impose any limitation on this.
在完成 meridian环的构建之后, meridian环也可能需要进行维护更新。 也就是说, 每个聚类代理节点在完成自己的 meridian环的构建之后, 可能需 要动态地实时维护以保证存储的节点时延信息的实时性。 另外, 由于在登录 过程中, BS服务器并没有返回网络中所有聚类代理节点信息, 所以环的更 新维护需要及时获取当前网络中更多的邻近聚类代理节点信息, 以保证在寻 找中转节点时, 能够覆盖更大的范围, 并增大找到中转路径的概率。 图 7是 示出根据本发明第一实施例的端对端覆盖网中转方法中的 Meridian环维护 更新过程的具体示例的流程图。 如图 7所示, 该维护更新过程采用轻量级的 gossip机制, 包括: S1500, 聚类代理节点从 meridian环的每个环上随机选 取一些节点作为种子节点; S1501 , 向在 S1500选取的种子节点发送邻近节 点请求消息; S1502 , 每个种子节点在自己环结构中随机选取一些节点; S1503 , 种子节点返回响应消息, 该响应消息中携带 S1502中选取的节点的 节点信息, 例如, 选取的节点的 IP地址, GNP坐标, 到本节点时延, 更新 时间等; S1504, 聚类代理节点基于获取的节点信息对响应消息中携带的节 点进行处理, 删除重复项以及与本身 meridian环上节点重复的节点, 将这些 节点作为后备环节点; S1505, 聚类代理节点向在 S1504获取的后备环节点 发送探测请求消息; S1506, 后备环节点返回响应消息; S1507, 计算从发送 探测请求消息到接收响应消息的时延 RTT, 然后根据时延 RTT找到自己 meridian环结构上对应的环区间, 然后将这些节点信息, 例如 IP地址, GNP 坐标, 到本节点时延, 更新时间等存储到对应环的数据库中。 在本发明的第 一实施例中, 因为环上存储的节点数目有限, 需要根据时延、 节点 IP地址 等拓朴信息以及节点选做中继节点的次数等综合信息来制定替换机制。 After completing the construction of the meridian ring, the meridian ring may also need to be maintained and updated. That is to say, after each cluster agent node completes the construction of its own meridian ring, it may need to be dynamically maintained in real time to ensure the real-time performance of the stored node delay information. In addition, since the BS server does not return all the clustering proxy node information in the network during the login process, the ring update maintenance needs to acquire more neighboring clustering proxy node information in the current network in time to ensure that when searching for the transit node , can cover a larger range and increase the probability of finding a transit path. 7 is a flow chart showing a specific example of a Meridian ring maintenance update process in the end-to-end overlay network relay method according to the first embodiment of the present invention. As shown in FIG. 7, the maintenance update process adopts a lightweight gossip mechanism, including: S1500, the clustering proxy node randomly selects some nodes as seed nodes from each ring of the meridian ring; S1501, the seed selected in S1500 The node sends a neighboring node request message; S1502, each seed node randomly selects some nodes in its own ring structure; S1503, the seed node returns a response message, where the response message carries node information of the node selected in S1502, for example, the selected node IP address, GNP coordinates, delay to the local node, update time, etc.; S1504, the clustering proxy node processes the node carried in the response message based on the acquired node information, deletes the duplicate item and repeats with the node on the meridian ring itself Nodes, these nodes are used as backup ring nodes; S1505, the clustering proxy node sends a probe request message to the backup ring node acquired at S1504; S1506, the backup ring node returns a response message; S1507, calculates a send probe request message to receive a response message The delay RTT, then find its own meridian ring structure based on the delay RTT On the corresponding ring interval, then the node information, such as IP address, GNP The coordinates, the delay to the node, the update time, etc. are stored in the database of the corresponding ring. In the first embodiment of the present invention, since the number of nodes stored on the ring is limited, it is necessary to formulate a replacement mechanism based on comprehensive information such as delay, node IP address, and the like, and the number of times the node is selected as the relay node.
在上述实施例中,聚类代理节点可以定期向环结构上的节点发送探测请 求, 判断节点是否在线, 同时根据返回的 RTT调整该节点在环结构中的位 置。  In the above embodiment, the clustering proxy node may periodically send a probe request to the node on the ring structure to determine whether the node is online, and adjust the position of the node in the ring structure according to the returned RTT.
与上述节点的自组织管理的情况相同,在本发明的其它实施例中,例如, 在网络系统中的变化相对较小的环境中,可以省略上述 meridian环的维护更 新过程, 从而减少网络开销。 并且, 上述 meridian环的维护更新过程可以周 期性地进行的, 也可以基于其它条件来进行, 例如, 响应于用户或者网络管 理员的预定操作或预定指令来进行 meridian环的维护更新,从而提高网络使 用的便利度。 这里, 本发明的实施例并不意在进行任何限制。  As in the case of the self-organizing management of the above-described nodes, in other embodiments of the present invention, for example, in a relatively small change in the network system, the maintenance update process of the meridian ring described above can be omitted, thereby reducing network overhead. Moreover, the maintenance update process of the Meridian ring may be performed periodically, or may be performed based on other conditions, for example, performing maintenance and update of the meridian ring in response to a predetermined operation or a predetermined instruction of the user or the network administrator, thereby improving the network. The convenience of use. Here, the embodiments of the present invention are not intended to impose any limitation.
图 8是示出根据本发明第一实施例的端对端覆盖网中转方法中的中继节 点选择过程的具体示例的流程图。 在本发明的第一实施例中, 中继节点的选 择基于源节点和目的节点归属的聚类代理节点的 meridian环信息,并结合了 GNP距离预测机制, 从而减少不必要的探测开销。 如图 8所示, 中继节点选 择过程包括: S1600, 源节点通过自己归属的聚类代理节点查找得到目的节 点的 IP地址, 源节点和目的节点进行消息交互, 两者分别获取得到对方的 GNP坐标, 归属的聚类代理节点的 IP地址,所处网络的 NAT类型等信息 。 S1601 , 源节点和目的节点之间通过多次探测包的交互来计算缺省路径的时 延 RTT和丟包率。 S1602, 源节点向自己归属的聚类代理节点发送中继节点 选择请求消息, 该消息中分别携带源节点和目的节点的 GNP 坐标信息; S1603, 源节点向目的节点归属的聚类代理节点发送中继节点选择请求消 息, 该消息中分别携带源节点和目的节点的 GNP坐标信息; S1604, 源节点 归属的聚类代理节点根据上述消息中提供的目的节点坐标, 通过 GNP距离 预测来计算自己存储的环结构中的其他聚类代理节点到目的节点的时延(计 算参数为自己存储的环结构中的其他聚类代理节点的 GNP坐标和目的节点 的 GNP坐标, 计算方法为欧式距离: d=sqrt(∑(xil-xi2)A ) 这里 i=l,2..n ) 并与环结构中存储的其他聚类代理节点到本节点的实际探测时延相加以得 到每条中继路径总时延, 然后, 删除总时延大于缺省路径时延的节点, 得到 一个候选节点集合, 继而从中选取一定数量的节点作为候选中继节点; S1605 , 源节点归属的聚类代理节点返回响应消息, 该消息中携带 S1604中 选取的候选中继节点信息; S1606, 目的节点归属的聚类代理节点根据中继 节点选择请求消息中所提供的源节点坐标, 通过 GNP距离预测来计算自己 存储的环结构中的其他聚类代理节点到源节点的时延(计算参数为自己存储 的环结构中的其他聚类代理节点的 GNP 坐标和源节点的 GNP 坐标的时延 值, 计算方法为欧式距离: d=sqrt( X(xil-xi2)A ) 这里 i=l,2..n, 并且计算 得到的结果也是时延值) 并与环结构中存储的其他聚类代理节点到本节点 的实际探测时延相加以得到每条中继路径总时延, 然后, 删除总时延大于缺 省路径时延的节点, 得到一个候选节点集合, 继而从中选取一定数量的节点 作为候选中继节点; S1607, 目的节点归属的聚类代理节点返回响应消息, 该消息中携带 S1606中选取的候选中继节点信息; S1608, 源节点从响应消 息中获取候选中继节点信息, 删除重复项, 得到一个候选节点集合, 然后对 这些中继节点对应的中继路径发起时延和丟包率探测(具体探测方式为: 源 节点向中继节点发送探测消息, 中继节点将该消息转发给目的节点, 然后反 向返回响应,通过多次的消息交互能够计算得到中继路径的时延和丟包率 ), 获取各条中继路径的时延和丟包率; S1609, 源节点从 S 1608的候选中继节 点中选取三个比缺省路径质量好的节点作为本次会话的一主二备三个中继 节点, 判断标准为时延和丟包率, 可根据网络情况和业务需求选择以哪个条 件为主。 而如果通过当前获得的中继节点无法找到合适的三个节点, 则重复 S1602; S1610, 如果 S1602的重复次数达到设定阈值, 且仍未找齐满足需求 的一主二备三个中继节点, 则从前面已经探测的节点中选取路径性能最好的 节点将一主二备机制补齐; S1611 , 将一主二备三个中继节点信息通知给目 的节点, 然后对三条中继路径进行周期性地探测, 获取时延和丟包率, 根据 网路质量变化以及设置的切换参数完成路径之间的切换。 FIG. 8 is a flowchart showing a specific example of a relay node selection process in the end-to-end overlay network relay method according to the first embodiment of the present invention. In the first embodiment of the present invention, the selection of the relay node is based on the meridian ring information of the clustering proxy node to which the source node and the destination node belong, and combines the GNP distance prediction mechanism, thereby reducing unnecessary detection overhead. As shown in FIG. 8, the relay node selection process includes: S1600, the source node searches for the IP address of the destination node through the clustering proxy node that belongs to itself, and the source node and the destination node perform message interaction, and the two obtain the GNP of the other party respectively. Coordinates, the IP address of the clustering proxy node to which the attribute belongs, and the NAT type of the network. S1601: The source node and the destination node calculate the delay RTT and the packet loss rate of the default path by using multiple probe packet interactions. S1602: The source node sends a relay node selection request message to the clustering proxy node that belongs to the home node, where the message carries the GNP coordinate information of the source node and the destination node respectively; S1603, the source node sends the cluster node to the destination node to which the destination node belongs. Following the node selection request message, the message carries the GNP coordinate information of the source node and the destination node respectively; S1604, the clustering proxy node to which the source node belongs calculates the stored data by GNP distance prediction according to the destination node coordinates provided in the above message. The delay of other clustering proxy nodes in the ring structure to the destination node (the calculation parameter is the GNP coordinates of other clustering proxy nodes in the ring structure stored by itself and the GNP coordinates of the destination node, and the calculation method is the Euclidean distance: d=sqrt (∑(xil-xi2) A ) where i=l,2..n) is added to the actual probe delay of the other clustering proxy nodes stored in the ring structure to the local node to obtain the total delay of each relay path. Then, deleting the node whose total delay is greater than the default path delay, obtaining a candidate node set, and then selecting a certain number of nodes as candidates Following the node; S1605, the clustering proxy node to which the source node belongs returns a response message, where the message carries the candidate relay node information selected in S1604; S1606, the clustering proxy node to which the destination node belongs is based on the source provided in the relay node selection request message Node coordinates, the GNP distance prediction is used to calculate the delay of other clustering proxy nodes in the ring structure stored by themselves to the source node (the calculation parameters are the GNP coordinates and source nodes of other clustering proxy nodes in the ring structure stored by itself) The delay value of the GNP coordinate is calculated as the Euclidean distance: d=sqrt( X(xil-xi2) A ) where i=l,2..n, and the calculated result is also the delay value) and in the ring structure The stored other clustering agent nodes are added to the actual probe delay of the node to obtain the total delay of each relay path, and then the nodes whose total delay is greater than the default path delay are deleted, and a candidate node set is obtained, and then Selecting a certain number of nodes as candidate relay nodes; S1607, the clustering proxy node to which the destination node belongs returns a response message, and the message carries the candidate relay selected in S1606 Node information; S1608, the source node obtains the candidate relay node information from the response message, deletes the duplicate item, obtains a candidate node set, and then initiates delay and packet loss rate detection for the relay path corresponding to the relay node (specific detection The method is as follows: The source node sends a probe message to the relay node, and the relay node forwards the message to the destination node, and then returns the response in reverse, and the delay and the packet loss rate of the relay path can be calculated through multiple message interactions. Obtaining the delay and packet loss rate of each relay path; S1609, the source node selects three nodes with better default path quality from the candidate relay nodes of S 1608 as one master and two standbys of the current session. The relay node, the judgment criterion is the delay and the packet loss rate, and which condition can be selected according to the network condition and the service requirement. If the currently obtained relay node cannot find the appropriate three nodes, then S1602 is repeated; S1610, if the number of repetitions of S1602 reaches the set threshold, and one of the three primary and secondary relay nodes that meet the demand is still not found, Then, the node with the best path performance is selected from the previously detected nodes to complete the primary and secondary backup mechanisms; S1611, the primary and secondary backup three relay node information is notified to the destination node, and then the three relay paths are cycled. Sexually detect, obtain delay and packet loss rate, and complete the switch between paths according to network quality changes and set switching parameters.
另外, 在上述中继节点选择过程中, 当通过 GNP距离预测选择候选中 继节点时, 还可以另外根据随机原则选择一些节点作为候选中继节点, 以避 免当网络中出现大面积故障时, 所选的候选中继节点全部失效的情况。 这是 因为当采用 GNP距离预测或者其他距离预测机制选择候选中继节点时, 通 常这些候选中继节点会处于地理上相对接近的位置, 因此当在网络中出现大 面积故障时, 很可能这些候选中继节点会全部失效, 从而使得无法选择中继 节点。而通过另外随机选择一些候选中继节点,可以保证能够选出中继节点, 从而提高根据本发明实施例的端到端覆盖网中转方法的适应性。 In addition, in the foregoing relay node selection process, when selecting a candidate relay node by GNP distance prediction, another node may be selected as a candidate relay node according to a random principle to avoid a large-area failure in the network. The selected candidate relay nodes are all invalid. This is because when candidate relay nodes are selected using GNP distance prediction or other distance prediction mechanisms, usually these candidate relay nodes will be geographically relatively close, so when large-area failures occur in the network, it is likely that these candidates The relay nodes will all fail, making it impossible to select a relay node. By randomly selecting some candidate relay nodes, it is guaranteed that the relay node can be selected. Thereby, the adaptability of the end-to-end overlay network relay method according to the embodiment of the present invention is improved.
通过根据本发明第一实施例的端对端覆盖网中转方法,可以解决因特网 网络中路由效率不佳, 频繁出现拥塞以及路由失效, NAT穿越等问题, 并在 较小的探测开销情况下, 提供较高的中转节点的查找命中率。 通过采用 meridian环结构的形式存储邻近节点信息, 能够让每个节点在存储有限数目 节点的基础上, 更多的了解和携带整个网络拓朴的节点信息。 并且, 通过结 合 RTT 值和 IP 地址因素对节点进行聚类, 且仅使得聚类代理节点参与 meridian环的构建, 可以保证 meridian环上节点地理上的分散性。 另外, 在 选择中继节点时, 通过 GNP距离预测机制从主被叫的 meridian环结构中筛 选获取一跳候选中继节点, 可以大幅度减少不必要的探测开销, 并提高预测 精度。  The end-to-end overlay network transit method according to the first embodiment of the present invention can solve the problems of poor routing efficiency, frequent congestion, routing failure, NAT traversal, etc. in the Internet network, and provide the problem with a small detection overhead. The hit rate of the higher transit node. By storing neighboring node information in the form of a meridian ring structure, each node can learn more about and carry the node information of the entire network topology on the basis of storing a limited number of nodes. Moreover, the nodes are clustered by combining the RTT value and the IP address factor, and only the clustering proxy nodes participate in the construction of the meridian ring, which can ensure the geographical dispersion of the nodes on the meridian ring. In addition, when selecting a relay node, the GNP distance prediction mechanism selects and obtains a one-hop candidate relay node from the meridian ring structure of the calling party, which can greatly reduce unnecessary detection overhead and improve prediction accuracy.
在上述本发明的第一实施例中, 以结合 RTT值和 IP地址因素对节点进 行聚类为例进行了描述, 但是, 在端对端网络中, 还存在其它的节点聚类方 法, 这些节点聚类方法可以有效地支撑端对端网络路由、 应用层组播、 资源 有效放置、 感知拓朴构建等, 从而极大地提高端对端网络的性能。 例如, 节 点聚类机制还可以包括以下方案:  In the first embodiment of the present invention described above, the clustering of nodes is combined with the RTT value and the IP address factor as an example. However, in the end-to-end network, there are other node clustering methods, and these nodes are also present. The clustering method can effectively support end-to-end network routing, application layer multicasting, resource efficient placement, and perceptual topology construction, thereby greatly improving the performance of the end-to-end network. For example, the node clustering mechanism can also include the following scenarios:
( 1 ) 通过根据 BGP路由表前缀划分 Cluster (聚类), 每个节点加入网 络时, 通过 IP地址前缀匹配完成聚类。  (1) By clustering according to the BGP routing table prefix, each node joins the network, and the clustering is completed by IP address prefix matching.
( 2 )基于路由器聚类: 利用传输网络中的路由器(Router )比位于网络 边缘的端节点相对稳定的特点,将 P2P的覆盖网络和物理网络之间的匹配关 系用端节点和路由器之间的匹配关系来表示。 每个节点加入网络时, 首先向 网络事先选定的地标节点发送 traceroute(跟踪路由)请求,通过分析 traceroute 记录的时延信息, 就能够找出位于区域之间的路由器, 然后根据这些路由器 实现聚类。  (2) Based on router clustering: Using the router in the transport network (Router) is more stable than the end node located at the edge of the network, the matching relationship between the overlay network and the physical network of the P2P is used between the end node and the router. Match the relationship to represent. When each node joins the network, it first sends a traceroute request to the pre-selected landmark node of the network. By analyzing the delay information recorded by the traceroute, it can find the routers located between the areas, and then implement the aggregation according to these routers. class.
并且, 在上述本发明的第一实施例中, 以通过 GNP距离预测机制从主 被叫的 meridian环结构中筛选获取一跳候选中继节点为例进行了描述, 但 是,还可以基于其它距离预测方案来从 Meridian环结构中选择中继节点。 实 际上, 网络距离预测的主要任务就是根据有限的测量信息对实际网络中任意 两个节点间的时延值进行推测, 进而向用户提供相关的信息。 例如, 距离预 测机制还可以包括以下的方案:  Moreover, in the first embodiment of the present invention described above, the method for screening and obtaining a one-hop candidate relay node from the meridian ring structure of the called party is described by using a GNP distance prediction mechanism, but may also be based on other distance predictions. The scheme is to select a relay node from the Meridian ring structure. In fact, the main task of network distance prediction is to estimate the delay value between any two nodes in the actual network based on the limited measurement information, and then provide relevant information to the user. For example, the distance prediction mechanism can also include the following scenarios:
IDMaps: IDMaps是最早提出的一种大规模网络距离预测机制, 通过集 中服务为网络节点提供距离预测服务。 该机制中包括两个核心内容: 地址前 缀块( address prefix, 筒称 AP ) 以及 Tracer节点。 每个 AP代表一个具有相 同 IP地址前缀的节点集合, Tracer节点则是网络中部署的测量节点, 并保证 每个地址块至少有一个 Tracer与其接近。不同的 Tracer节点周期性地互相测 量相互之间的距离, 同时每个 Tracer节点周期性地测量到与其邻近 AP的距 离。 所有这些测量信息都被收集到某个集中式服务器中。 这样任意两台主机 间的距离就等于两台主机所在 AP 到各自 Tracer 节点间距离与两个相关 Tracer节点间距离之和。 IDMaps: IDMaps is the earliest proposed large-scale network distance prediction mechanism. The medium service provides distance prediction services for network nodes. The mechanism includes two core contents: an address prefix block (the address prefix, called the AP) and a Tracer node. Each AP represents a set of nodes with the same IP address prefix, and the Tracer node is a measurement node deployed in the network, and ensures that each address block has at least one Tracer close to it. Different Tracer nodes periodically measure each other's distances, while each Tracer node periodically measures the distance to its neighboring APs. All of this measurement information is collected into a centralized server. Thus, the distance between any two hosts is equal to the sum of the distance between the APs from the two hosts to their respective Tracer nodes and the distance between the two associated Tracer nodes.
Lighthouse: 该方法采用坐标变换的方式计算网络坐标。 系统中首先设 定一个全局坐标基,新加入的节点首先通过随机探测 K+1 ( K为坐标的维度) 地标获得相应距离信息, 并通过 Gram-Schmidt过程计算其全局坐标基, 然 后通过局部和全局坐标基的转换矩阵来计算新节点的全局坐标。 系统中任意 两个节点之间的距离通过全局坐标计算。  Lighthouse: This method uses coordinate transformation to calculate network coordinates. Firstly, a global coordinate base is set in the system. The newly added node first obtains the corresponding distance information by randomly detecting the K+1 (K is the coordinate dimension) landmark, and calculates its global coordinate base through the Gram-Schmidt process, and then passes the local sum. The transformation matrix of the global coordinate base to calculate the global coordinates of the new node. The distance between any two nodes in the system is calculated by global coordinates.
Virtual landmarks: 使用主成分分析法( PCA )提取网络的拓朴信息以降 低嵌入空间维数, 通过矩阵乘法运算获取节点在嵌入空间中的坐标。 该算法 需要首先部署 N个基准节点构成基准节点集,基准节点之间互相测量到达彼 此的距离以形成一 N*N的距离矩阵。 然后采用 PCA技术消除相似向量, 减 少维度, 计算变换矩阵。 当一个节点加入系统时, 首先测量到所有基准节点 的距离以形成一个距离向量, 然后根据变换矩阵将该向量映射到新的空间 中, 映射后的向量值即为新坐标。  Virtual landmarks: Use Principal Component Analysis (PCA) to extract the topology information of the network to reduce the dimension of the embedded space, and obtain the coordinates of the node in the embedded space by matrix multiplication. The algorithm needs to first deploy N reference nodes to form a set of reference nodes, and the reference nodes measure each other to reach each other to form an N*N distance matrix. Then use PCA technology to eliminate similar vectors, reduce dimensions, and calculate transformation matrices. When a node joins the system, the distances of all the reference nodes are first measured to form a distance vector, and then the vector is mapped to the new space according to the transformation matrix, and the mapped vector value is the new coordinate.
Vivaldi: 采用启发式的坐标调整过程, 其将空间嵌入问题模拟为弹簧弹 性势能最小化问题。 系统中每个节点都有一个网络坐标 X和本地误差 e。 节 点在加入系统时随机测量到系统中一组节点的距离,根据测量值确定自己的 初始坐标,然后通过多次更新使得网络坐标 X和本地误差 e不断接近理想值。 在每一次更新中, 节点首先测量它到某个邻居节点间的实际时延, 然后通过 测量的时延对当前的网络坐标 X和本地误差 e的值进行调整。  Vivaldi: A heuristic coordinate adjustment process that simulates the spatial embedding problem as a spring elastic potential minimization problem. Each node in the system has a network coordinate X and a local error e. When the node joins the system, it randomly measures the distance to a group of nodes in the system, determines its own initial coordinates based on the measured values, and then makes the network coordinate X and the local error e continuously close to the ideal value by multiple updates. In each update, the node first measures the actual delay between it and a neighbor node, and then adjusts the current network coordinate X and local error e by the measured delay.
图 9是示出根据本发明第二实施例的端对端覆盖网中转方法的示意性流 程图。 如图 9所示, 根据本发明第二实施例的端对端覆盖网中转方法包括步 骤: S2000, 将节点加入网络并执行节点聚类, 以将一部分节点选为聚类代 理节点, 而其它节点作为归属于所述聚类代理节点的主机节点; S2001 , 对 于每个聚类代理节点,以其它聚类代理节点为基础构建自己的 Meridian环结 构; 和 S2002, 从 Meridian环结构上的节点中选择从源节点到目的节点的中 继节点。 也就是说, 在根据本发明第二实施例的端对端覆盖网中转方法中, 结合了节点聚类和构建 meridian环的特征。 9 is a schematic flow chart showing a method for relaying an end-to-end overlay network according to a second embodiment of the present invention. As shown in FIG. 9, the end-to-end overlay network transit method according to the second embodiment of the present invention includes the following steps: S2000, adding a node to a network and performing node clustering to select a part of nodes as a clustering proxy node, and other nodes As a host node belonging to the clustering proxy node; S2001, for each clustering proxy node, constructing its own Meridian ring node based on other clustering proxy nodes And S2002, selecting a relay node from the source node to the destination node from the nodes on the Meridian ring structure. That is, in the end-to-end overlay network relay method according to the second embodiment of the present invention, the node clustering and the feature of constructing the meridian ring are combined.
在图 9所示的根据本发明第二实施例的端对端覆盖网中转方法中,其节 点聚类的步骤和以聚类代理节点构建 Meridian环结构的步骤均可以与上述 根据本发明第一实施例的端对端覆盖网中转方法中的相应步骤相同。 并且, 与上述根据本发明第一实施例的端对端覆盖网中转方法类似,在根据本发明 第二实施例的端对端覆盖网中转方法中, 也可以进行节点自组织管理和 Meridian环维护更新, 并且其具体过程与上述相同, 在此为了筒明的原因便 不再赘述。 此外, 本领域技术人员可以理解, 上述根据本发明第一实施例的 实施例的端对端覆盖网中转方法, 本发明的实施例并不意在对此进行任意限 制。  In the end-to-end overlay network relay method according to the second embodiment of the present invention shown in FIG. 9, the steps of node clustering and the step of constructing a Meridian ring structure by clustering proxy nodes may be the same as the above according to the present invention. The corresponding steps in the end-to-end overlay network relay method of the embodiment are the same. Moreover, similar to the above-described end-to-end overlay network transfer method according to the first embodiment of the present invention, in the end-to-end overlay network transfer method according to the second embodiment of the present invention, node self-organizing management and Meridian ring maintenance can also be performed. The update is the same as the above, and will not be described here for the sake of clarity. In addition, those skilled in the art can understand that the above-mentioned end-to-end overlay network transfer method according to the embodiment of the first embodiment of the present invention is not intended to be arbitrarily limited.
如上所述, 通过在节点加入网络时进行聚类, 并仅以聚类代理节点参与 构建 Meridian环, 可以保证 Meridian环上节点地理上的分散性, 从而避免 在网络中出现大面积故障时候选节点全部失效的情况, 并提高候选节点的选 择效率。 并且, 通过采用 meridian环结构的形式存储邻近节点信息, 能够让 每个节点在存储有限数目节点的基础上, 更多的了解和携带整个网络拓朴的 节点信息。  As described above, by clustering when nodes join the network, and only participating in the construction of the Meridian ring by the clustering proxy node, the geographical dispersion of the nodes on the Meridian ring can be ensured, thereby avoiding the candidate nodes in the case of large-area failures in the network. All failures, and improve the selection efficiency of candidate nodes. Moreover, by storing neighboring node information in the form of a meridian ring structure, each node can learn more about and carry the node information of the entire network topology on the basis of storing a limited number of nodes.
与上述本发明的第一实施例相比,在根据本发明第二实施例的端对端覆 盖网中转方法中,并不限定从 Meridian环结构上的节点选取中继节点的具体 方法, 这使得可以基于现有的 Meridian算法来选择适当的中继节点,从而减 少对系统的改动, 促进与现有系统的兼容性。  Compared with the above-described first embodiment of the present invention, in the end-to-end overlay network relay method according to the second embodiment of the present invention, a specific method of selecting a relay node from a node on a Meridian ring structure is not limited, which makes The appropriate relay nodes can be selected based on the existing Meridian algorithm, thereby reducing system changes and facilitating compatibility with existing systems.
图 10是示出根据本发明第三实施例的端对端覆盖网中转方法的示意性 流程图。 如图 10所示, 根据本发明第三实施例的端对端覆盖网中转方法包 括步骤: S3000, 将节点加入网络并执行节点聚类, 以将一部分节点选为聚 类代理节点, 而其它节点作为归属于所述聚类代理节点的主机节点, 其中, 所述节点在加入网络时计算出距离预测机制所需的信息; S3001 , 基于距离 预测机制从所述聚类代理节点中选择从源节点到目的节点的中继节点。也就 是说, 在根据本发明第三实施例的端对端覆盖网中转方法中, 结合了节点聚 类和距离预测的特征。 在图 10所示的根据本发明第三实施例的端对端覆盖网中转方法中, 其 节点聚类的步骤和基于距离预测机制选择中继节点的步骤均可以与上述根 据本发明第一实施例的端对端覆盖网中转方法中的相应步骤相同。 并且, 与 上述根据本发明第一实施例的端对端覆盖网中转方法类似,在根据本发明第 三实施例的端对端覆盖网中转方法中, 也可以进行节点自组织管理, 并且其 具体过程与上述相同, 在此为了筒明的原因便不再赘述。 此外, 本领域技术 人员可以理解,上述根据本发明第一实施例的端对端覆盖网中转方法中的其 它方面也可以相同地应用于根据本发明第三实施例的端对端覆盖网中转方 法, 本发明的实施例并不意在对此进行任意限制。 FIG. 10 is a schematic flow chart showing a method for relaying an end-to-end overlay network according to a third embodiment of the present invention. As shown in FIG. 10, the end-to-end overlay network transit method according to the third embodiment of the present invention includes the following steps: S3000, adding a node to a network and performing node clustering to select a part of nodes as a clustering proxy node, and other nodes As a host node belonging to the clustering proxy node, wherein the node calculates information required by the distance prediction mechanism when joining the network; S3001, selecting a slave source node from the clustering proxy node based on a distance prediction mechanism The relay node to the destination node. That is, in the end-to-end overlay network relay method according to the third embodiment of the present invention, the features of node clustering and distance prediction are combined. In the end-to-end overlay network relay method according to the third embodiment of the present invention shown in FIG. 10, the steps of node clustering and the step of selecting a relay node based on the distance prediction mechanism may be the same as the above-described first embodiment according to the present invention. The corresponding steps in the end-to-end overlay network relay method are the same. Moreover, similar to the above-described end-to-end overlay network transfer method according to the first embodiment of the present invention, in the end-to-end overlay network transfer method according to the third embodiment of the present invention, node self-organizing management may also be performed, and The process is the same as above, and will not be repeated here for reasons of clarity. In addition, those skilled in the art can understand that other aspects of the above-described end-to-end overlay network transfer method according to the first embodiment of the present invention can also be equally applied to the end-to-end overlay network transfer method according to the third embodiment of the present invention. The embodiments of the present invention are not intended to be any limitation.
如上所述, 由于源和目的节点归属的聚类代理节点存储有其它聚类代理 节点的信息, 因此, 通过采用距离预测机制从源和目的节点归属的聚类代理 节点存储的邻近聚类代理节点数据中筛选获取一条候选中继节点, 可以大幅 度地减少不必要的探测开销, 从而提高预测精度。  As described above, since the clustering proxy node to which the source and destination nodes belong stores information of other clustering proxy nodes, the neighboring clustering proxy node stored by the clustering proxy node to which the source and destination nodes belong is adopted by using the distance prediction mechanism. Filtering data to obtain a candidate relay node can greatly reduce unnecessary detection overhead and improve prediction accuracy.
并且, 与上述本发明的第一实施例相比, 在根据本发明第三实施例的端 对端覆盖网中转方法中, 并不限定要以聚类代理节点构建 Meridian环结构, 因此, 根据本发明第三实施例的端对端覆盖网中转方法也可以应用于除 Meridian算法以外的其它算法, 例如, ASAP算法, 从而提高根据本发明实 施例的端对端覆盖网中转方法的适应性。  Moreover, in the end-to-end overlay network relay method according to the third embodiment of the present invention, the Meridian ring structure is not limited to be constructed by the clustering proxy node, and therefore, according to the first embodiment of the present invention, The end-to-end overlay network relay method of the third embodiment of the present invention can also be applied to other algorithms than the Meridian algorithm, for example, the ASAP algorithm, thereby improving the adaptability of the end-to-end overlay network relay method according to the embodiment of the present invention.
在上述根据本发明的第一到第三实施例中, 均包含节点在加入网络时进 行聚类以产生聚类代理节点的过程, 之后再从聚类代理节点中选择中继节 点。 这里, 本领域技术人员可以理解, 在节点加入端对端覆盖网时, 例如, 如现有 Meridian算法中那样, 可以不进行节点聚类, 而是直接选择适当的中 继节点。  In the above-described first to third embodiments according to the present invention, each includes a process of clustering to join a network to generate a clustering proxy node, and then selecting a relay node from the clustering proxy node. Here, those skilled in the art can understand that when a node joins an end-to-end overlay network, for example, as in the existing Meridian algorithm, node clustering may not be performed, but an appropriate relay node may be directly selected.
图 11是示出根据本发明第四实施例的端对端覆盖网中转方法的示意性 流程图。 如图 11 所示, 根据本发明第四实施例的端对端覆盖网中转方法包 括步骤: S4000, 节点加入网络, 以构建 Meridian环结构, 其中所述节点在 加入网络时计算出距离预测机制所需的信息; S4001 , 基于距离预测机制从 所述 Meridian环结构的节点中选择从源节点到目的节点的中继节点。也就是 说, 在本发明第四实施例的端对端覆盖网中转方法中, 结合了构建 meridian 环和距离预测的特征。  Figure 11 is a schematic flow chart showing a method of relaying an end-to-end overlay network according to a fourth embodiment of the present invention. As shown in FIG. 11, the method for relaying the end-to-end overlay network according to the fourth embodiment of the present invention includes the following steps: S4000, a node joins a network to construct a Meridian ring structure, where the node calculates a distance prediction mechanism when joining the network. Required information; S4001, selecting a relay node from the source node to the destination node from the nodes of the Meridian ring structure based on a distance prediction mechanism. That is to say, in the end-to-end overlay network relay method of the fourth embodiment of the present invention, the feature of constructing the meridian loop and the distance prediction is combined.
这里, 在图 11 所示的根据本发明第四实施例的端对端覆盖网中转方法 中,基于距离预测机制从 Meiridan环结构的节点中选择中继节点的步骤均可 以与上述根据本发明第一实施例的端对端覆盖网中转方法中的相应步骤相 同。 并且, 与上述根据本发明第一实施例的端对端覆盖网中转方法类似, 在 根据本发明第四实施例的端对端覆盖网中转方法中,也可以进行 Meridian环 的维护更新,并且其具体过程与上述相同,在此为了筒明的原因便不再赘述。 此外, 本领域技术人员可以理解, 上述根据本发明第一实施例的端对端覆盖 对端覆盖网中转方法, 本发明的实施例并不意在对此进行任意限制。 Here, the end-to-end overlay network relay method according to the fourth embodiment of the present invention shown in FIG. The steps of selecting a relay node from the nodes of the Meiridan ring structure based on the distance prediction mechanism may be the same as the corresponding steps in the above-described end-to-end overlay network relay method according to the first embodiment of the present invention. Moreover, similar to the above-described end-to-end overlay network transfer method according to the first embodiment of the present invention, in the end-to-end overlay network transfer method according to the fourth embodiment of the present invention, the maintenance update of the Meridian ring can also be performed, and The specific process is the same as above, and will not be repeated here for reasons of clarity. In addition, those skilled in the art can understand that the above-mentioned end-to-end coverage peer-end overlay network relay method according to the first embodiment of the present invention is not intended to be any limitation.
如上所述,通过采用距离预测机制从 Meridian环结构上的节点中筛选获 取一条候选中继节点, 可以大幅度地减少不必要的探测开销, 从而提高预测 精度。  As described above, by using the distance prediction mechanism to select a candidate relay node from the nodes on the Meridian ring structure, unnecessary detection overhead can be greatly reduced, thereby improving prediction accuracy.
另外,通过在现有 Meridian算法中直接应用距离预测机制, 可以提高根 据本发明实施例的端对端覆盖网中转方法与采用现有 Meridian算法的网络 的兼容性。  In addition, by directly applying the distance prediction mechanism in the existing Meridian algorithm, the compatibility of the end-to-end overlay network relay method according to the embodiment of the present invention with the network using the existing Meridian algorithm can be improved.
如上所述, 在本发明的实施例中, 通过将节点聚类、 meridian环和距离 预测三种技术相互结合地使用, 从而提高中继节点选择的精确性。 其中, 通 过节点加入网络时进行聚类, 只有聚类代理节点参与中继节点的选择, 可以 保证候选的中继节点在地理上的分散性,从而防止在网络中出现大面积故障 时候选节点全部失效的情况, 并提高候选节点的选择效率; 并且, 通过距离 预测机制从候选的中继节点中筛选获取一跳候选中继节点, 可以大幅度减少 不必要的探测开销, 从而提高预测精度。  As described above, in the embodiment of the present invention, the three techniques of node clustering, meridian loop, and distance prediction are used in combination with each other, thereby improving the accuracy of relay node selection. Among them, clustering is performed when the nodes join the network. Only the clustering proxy nodes participate in the selection of the relay nodes, which can ensure the geographical dispersion of the candidate relay nodes, thereby preventing all candidate nodes from being large-area faults in the network. In the case of failure, and improving the selection efficiency of the candidate nodes; and screening and obtaining the one-hop candidate relay node from the candidate relay nodes by the distance prediction mechanism, the unnecessary detection overhead can be greatly reduced, thereby improving the prediction accuracy.
图 12是示出根据本发明第五实施例的端对端覆盖网中转方法的示意性 流程图。 如图 12所示, 根据本发明第五实施例的端对端覆盖网中转方法包 括步骤: S5000, 节点加入网络, 其中所述节点在加入网络时计算出距离预 测机制所需的信息; S5001 , 基于距离预测机制选择出从源节点到目的节点 的中继节点。 也就是说, 在根据本发明第五实施例的端对端覆盖网中转方法 中, 仅采用距离预测的特征来选择中继节点。  Figure 12 is a schematic flow chart showing a method of relaying an end-to-end overlay network according to a fifth embodiment of the present invention. As shown in FIG. 12, the method for relaying an end-to-end overlay network according to a fifth embodiment of the present invention includes the following steps: S5000: A node joins a network, where the node calculates information required by a distance prediction mechanism when joining a network; S5001, A relay node from the source node to the destination node is selected based on the distance prediction mechanism. That is, in the end-to-end overlay network relay method according to the fifth embodiment of the present invention, only the characteristics of the distance prediction are used to select the relay node.
这里,节点加入网络的过程与基于距离预测机制选择中继节点的过程可 以与上述根据本发明第一实施例的端对端覆盖网中转方法中的相应步骤相 同。 并且, 与上述根据本发明第一实施例的端对端覆盖网中转方法类似, 在 根据本发明第五实施例的端对端覆盖网中转方法中,也可以进行节点的自组 织管理以更新距离预测机制所需的信息, 并且其具体过程与上述相同, 在此 为了筒明的原因便不再赘述。 此外, 本领域技术人员可以理解, 上述根据本 发明第一实施例的端对端覆盖网中转方法中的其它方面也可以相同地应用 于根据本发明第五实施例的端对端覆盖网中转方法, 本发明的实施例并不意 在对此进行任意限制。 Here, the process of joining a node to a network and the process of selecting a relay node based on a distance prediction mechanism may be the same as the corresponding steps in the above-described end-to-end overlay network relay method according to the first embodiment of the present invention. Moreover, similar to the above-described end-to-end overlay network transfer method according to the first embodiment of the present invention, in the end-to-end overlay network transfer method according to the fifth embodiment of the present invention, node self-organization can also be performed. The management needs to update the information required by the distance prediction mechanism, and the specific process is the same as above, and will not be repeated here for the sake of clarity. In addition, those skilled in the art can understand that other aspects of the above-described end-to-end overlay network transfer method according to the first embodiment of the present invention can also be equally applied to the end-to-end overlay network transfer method according to the fifth embodiment of the present invention. The embodiments of the present invention are not intended to be any limitation.
通过在端对端覆盖网中采用距离预测机制来选择中继节点,可以避免如 现有技术当中的 TIV现象,从而可以以时延更小的替代路径来代替从源节点 到目的节点的直接路径,建立时延更短、效率更高且稳定性更强的替代路由, 实现端到端的高性能通信。  By selecting a relay node by using a distance prediction mechanism in the end-to-end overlay network, the TIV phenomenon as in the prior art can be avoided, so that the direct path from the source node to the destination node can be replaced with an alternative path with a smaller delay. Establish alternative routes with shorter latency, higher efficiency and greater stability for end-to-end high-performance communication.
根据本发明实施例的另一方面,还提供了端对端覆盖网中转系统。下面, 将参考图 13到图 17描述根据本发明第一实施例到第五实施例的端对端覆盖 网中转系统。  According to another aspect of an embodiment of the present invention, an end-to-end overlay network relay system is also provided. Next, an end-to-end overlay network relay system according to the first to fifth embodiments of the present invention will be described with reference to Figs. 13 to 17 .
图 13是示出根据本发明第一实施例的端对端覆盖网中转系统的示意性 框图。根据本发明第一实施例的端对端覆盖网应用于包括多个主机节点和 ^ I 导服务器的端对端覆盖网,且用于寻找从源主机节点到目的主机节点的中继 节点。 如图 13 所示, 根据本发明第一实施例的端对端覆盖网中转系统 100 包括: 通信单元 101 ,用于使得主机节点与引导服务器通信以获得坐标信息, 该坐标信息用于基于距离预测机制来计算两个主机节点之间的时延; 聚类单 元 102,用于执行主机节点的聚类, 以将一部分主机节点作为聚类代理节点, 而其它主机节点作为归属于聚类代理节点的主机节点; 以及选择单元 103 , 用于基于距离预测机制从聚类代理节点中选择从源主机节点到目的主机节 点的中继节点。  Figure 13 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a first embodiment of the present invention. The end-to-end overlay network according to the first embodiment of the present invention is applied to an end-to-end overlay network including a plurality of host nodes and a server, and is used to find a relay node from a source host node to a destination host node. As shown in FIG. 13, the end-to-end overlay network relay system 100 according to the first embodiment of the present invention includes: a communication unit 101 for causing a host node to communicate with a boot server to obtain coordinate information for distance prediction based a mechanism to calculate a delay between two host nodes; a clustering unit 102, configured to perform clustering of the host node, to use a part of the host node as a clustering proxy node, and other host nodes as belonging to the clustering proxy node a host node; and a selecting unit 103, configured to select, from the clustering proxy node, a relay node from the source host node to the destination host node based on the distance prediction mechanism.
在上述端对端覆盖网中转系统 100中, 可以进一步包括: 构建单元(未 示出), 连接在聚类单元 102和选择单元 103之间, 用于对于每个聚类代理 节点, 以其它聚类代理节点为基础构建自己的 Meridian环结构; 且选择单元 103具体用于基于距离预测机制从 Meridian环结构上的聚类代理节点中选择 从源主机节点到目的主机节点的中继节点。  In the above-mentioned end-to-end overlay network relay system 100, it may further include: a construction unit (not shown) connected between the clustering unit 102 and the selection unit 103, for each clustering node, for other aggregation The class proxy node builds its own Meridian ring structure based on it; and the selecting unit 103 is specifically configured to select a relay node from the source host node to the destination host node from the clustering proxy nodes on the Meridian ring structure based on the distance prediction mechanism.
在上述端对端覆盖网中转系统 100中, 进一步包括: 第一更新单元(未 示出),用于在主机节点和聚类代理节点之间更新以下信息的至少其中之一: 主机节点的网络状况、 主机节点到引导服务器的时延和主机节点的更新时 间; 以及第二更新单元(未示出), 用于在聚类代理节点和 BS服务器之间更 新以下信息的至少其中之一: 聚类代理节点的网络状况、 聚类代理节点到引 导服务器的时延和聚类代理节点的更新时间。 In the above-mentioned end-to-end overlay network transit system 100, the method further includes: a first update unit (not shown) for updating at least one of the following information between the host node and the clustering proxy node: a network of the host node Status, delay from the host node to the boot server, and update time of the host node; and a second update unit (not shown) for more between the cluster agent node and the BS server At least one of the following new information: the network status of the clustering agent node, the delay from the clustering agent node to the boot server, and the update time of the clustering agent node.
在上述端对端覆盖网中转系统 100中, 进一步包括: 维护更新单元(未 示出), 用于使得每个聚类代理节点维护并更新其自己的 Meridian环结构, 其中, 每个代理节点维护并更新以下信息的至少其中之一: Meridian环结构 上其它聚类代理节点的 IP地址、 坐标信息、 到本聚类代理节点的时延和更 新时间。  In the above-mentioned end-to-end overlay network transit system 100, the method further includes: a maintenance update unit (not shown) for causing each cluster proxy node to maintain and update its own Meridian ring structure, wherein each proxy node maintains And updating at least one of the following information: IP address of other clustering proxy nodes on the Meridian ring structure, coordinate information, delay to the clustering proxy node, and update time.
在上述端对端覆盖网中转系统 100中, 选择单元 103具体用于: 基于距 离预测机制从源主机节点所属的聚类代理节点的 Meridian环结构上的聚类 代理节点以及目的主机节点所属的聚类代理节点的 Meridian环结构上的聚 类代理节点中选择从源主机节点到目的主机节点的中继节点。  In the above-mentioned end-to-end overlay network transit system 100, the selecting unit 103 is specifically configured to: based on the distance prediction mechanism, the clustering proxy node on the Meridian ring structure of the clustering proxy node to which the source host node belongs and the cluster to which the destination host node belongs The clustering proxy node on the Meridian ring structure of the class proxy node selects the relay node from the source host node to the destination host node.
在上述端对端覆盖网中转系统 100中, 选择单元 103具体用于: 使得源 主机节点所属的聚类代理节点基于目的主机节点的坐标,通过距离预测计算 其自己的 Meridian环结构上的各个聚类代理节点到目的主机节点的时延,并 分别与所存储的该 Meridian环结构上的各个聚类代理节点到源主机节点所 属的聚类代理节点的时延相加以得到与各个聚类代理节点相关的各条中继 路径的总时延; 选择与总时延小于预定阈值的中继路径相关的聚类代理节点 作为候选中继节点; 对与候选中继节点相关的中继路径进行时延和丟包率检 测, 并基于时延和丟包率检测结果选择与路径质量最好的中继路径相关的候 选中继节点作为从源主机节点到目的主机节点的中继节点。  In the above-mentioned end-to-end overlay network transit system 100, the selecting unit 103 is specifically configured to: cause the clustering proxy node to which the source host node belongs to calculate each aggregate of its own Meridian ring structure by distance prediction based on the coordinates of the destination host node. The delay from the class proxy node to the destination host node is respectively added to the stored delay of each clustering proxy node on the Meridian ring structure to the clustering proxy node to which the source host node belongs, and each clustering proxy node is obtained. The total delay of the associated relay paths; selecting a clustering proxy node associated with the relay path whose total delay is less than a predetermined threshold as a candidate relay node; delaying the relay path associated with the candidate relay node And the packet loss rate detection, and selecting the candidate relay node related to the relay path with the best path quality as the relay node from the source host node to the destination host node based on the delay and packet loss rate detection results.
在上述端对端覆盖网中转系统 100中, 选择单元 103进一步用于: 在与 总时延小于预定阈值的中继路径相关的聚类代理节点之外, 另外随机选择一 些聚类代理节点作为候选中继节点。  In the above-mentioned end-to-end overlay network transit system 100, the selecting unit 103 is further configured to: in addition to the clustering proxy node related to the relay path whose total delay is less than a predetermined threshold, additionally select some clustering proxy nodes as candidates Relay node.
在上述端对端覆盖网中转系统 100中, 聚类单元 102具体用于: 基于主 机节点到引导服务器的往返时延和主机节点的 IP地址对主机节点进行聚类。  In the above-mentioned end-to-end overlay network transit system 100, the clustering unit 102 is specifically configured to: cluster the host nodes based on the round-trip delay of the host node to the boot server and the IP address of the host node.
在上述端对端覆盖网中转系统 100中,距离预测机制是 GNP距离预测, 且用于基于距离预测机制计算两个主机节点之间的时延的坐标信息是 GNP 坐标, 端对端覆盖网中转系统 100进一步包括: 注册请求单元(未示出), 用于使得主机节点向引导服务器发送注册请求; 鉴权单元(未示出), 与注 册请求单元和通信单元 101连接,用于使得引导服务器对主机节点进行鉴权, 并在鉴权成功的情况下向主机节点所述发送成功响应消息, 成功响应消息中 包含多个地标节点的信息, 其中, 地标节点是事先部署在网络中的其信息存 储在引导服务器上的设备, 且地标节点的信息至少包括地标节点的 IP地址 或 GNP坐标。 In the above-mentioned end-to-end overlay network transit system 100, the distance prediction mechanism is GNP distance prediction, and the coordinate information used to calculate the delay between two host nodes based on the distance prediction mechanism is GNP coordinates, and the end-to-end overlay network transit The system 100 further includes: a registration requesting unit (not shown) for causing the host node to transmit a registration request to the bootstrap server; an authentication unit (not shown), connected to the registration requesting unit and the communication unit 101, for causing the boot server And authenticating the host node, and sending a success response message to the host node in the case that the authentication succeeds, in the success response message The information includes a plurality of landmark nodes, wherein the landmark node is a device whose information is previously stored in the network and stored on the boot server, and the information of the landmark node includes at least an IP address or a GNP coordinate of the landmark node.
在上述端对端覆盖网中转系统 100中, 构建单元具体用于: 使得引导服 务器通过采用 GNP距离预测计算每个聚类代理节点与其它聚类代理节点之 间的时延, 并基于该时延对于每个聚类代理节点选择一定数量的候选聚类代 理节点; 使得每个聚类代理节点基于与其它聚类代理节点的往返时延, 将其 它聚类代理节点信息存储到其自己的 Meridian环结构中,从而构建其自己的 Meridian环结构。  In the above-mentioned end-to-end overlay network transit system 100, the constructing unit is specifically configured to: enable the boot server to calculate the delay between each cluster proxy node and other cluster proxy nodes by using GNP distance prediction, and based on the delay Selecting a certain number of candidate clustering proxy nodes for each clustering proxy node; causing each clustering proxy node to store other clustering proxy node information to its own Meridian ring based on round-trip delays with other clustering proxy nodes In the structure, thus constructing its own Meridian ring structure.
在上述端对端覆盖网中转系统 100中, 选择单元 103具体用于: 使得源 主机节点向自己所属的聚类代理节点和目的主机节点所属的聚类代理节点 发送中继节点选择请求消息, 该中继节点选择请求消息中包含源主机节点和 目的主机节点的 GNP坐标; 使得源主机节点所属的聚类代理节点基于目的 主机节点的 GNP坐标,通过 GNP距离预测计算其自己的 Meridian环结构上 的各个聚类代理节点到目的节点的时延,并与其自己的 Meridian环结构上的 各个聚类代理节点到源主机节点的时延相加以得到每条中继路径的总时延; 选择总时延小于等于预定阈值的中继路径所对应的聚类代理节点作为第一 组候选中继节点; 使得目的主机节点所属的聚类代理节点基于源主机节点的 GNP坐标, 通过 GNP距离预测计算其自己的 Meridian环结构上的各个聚类 代理节点到源主机节点的时延,并与其自己的 Meridian环结构上的各个聚类 代理节点到目的主机节点的时延相加以得到每条中继路径的总时延; 选择总 时延小于等于预定阈值的中继路径所对应的聚类代理节点作为第二组候选 中继节点; 对于第一组候选中继节点和第二组候选中继节点所对应的中继路 径进行时延和丟包检测, 并基于时延和丟包检测结果选择路径质量最好的中 继路径所对应的中继节点作为从源节点到目的节点的中继节点。  In the above-mentioned end-to-end overlay network transit system 100, the selecting unit 103 is specifically configured to: enable the source host node to send a relay node selection request message to the clustering proxy node to which the clustering proxy node and the destination host node to which it belongs, The relay node selection request message includes GNP coordinates of the source host node and the destination host node; the cluster proxy node to which the source host node belongs is based on the GNP coordinates of the destination host node, and calculates its own Meridian ring structure by GNP distance prediction. The delay of each clustering agent node to the destination node, and adding the delay of each clustering proxy node to the source host node on its own Meridian ring structure to obtain the total delay of each relay path; selecting the total delay a clustering proxy node corresponding to a relay path less than or equal to a predetermined threshold as a first group of candidate relay nodes; causing a clustering proxy node to which the destination host node belongs to calculate its own GNP distance based on GNP coordinates of the source host node Delay of each clustering proxy node on the Meridian ring structure to the source host node And adding the delay of each clustering proxy node to the destination host node on the Meridian ring structure to obtain the total delay of each relay path; selecting the relay path corresponding to the total delay of less than or equal to the predetermined threshold The clustering proxy node is used as the second group of candidate relay nodes; delaying and packet loss detection are performed on the relay path corresponding to the first group of candidate relay nodes and the second group of candidate relay nodes, and based on delay and packet loss The detection result selects the relay node corresponding to the relay path with the best path quality as the relay node from the source node to the destination node.
图 14是示出根据本发明第二实施例的端对端覆盖网中转系统的示意性 框图。 如图 14所示, 根据本发明第二实施例的端对端覆盖网中转系统 200 包括: 节点加入和聚类单元 201 , 配置为将节点加入网络并执行节点聚类, 以将一部分节点设置为聚类代理节点, 而将其它节点设置为归属于所述聚类 代理节点的主机节点; Meridian环构建单元 202, 配置为对于每个聚类代理 节点, 以其它聚类代理节点为基础构建自己的 Meridian环结构; 和中继节点 选择单元 203 , 配置为从 Meridian环结构上的节点中选择从源节点到目的节 点的中继节点。 Figure 14 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a second embodiment of the present invention. As shown in FIG. 14, the end-to-end overlay network transit system 200 according to the second embodiment of the present invention includes: a node joining and clustering unit 201 configured to join a node to a network and perform node clustering to set a part of nodes to Clustering the proxy nodes, and setting other nodes as host nodes belonging to the clustering proxy nodes; Meridian loop construction unit 202, configured to build its own based on other clustering proxy nodes for each clustering proxy node Meridian ring structure; and relay node The selecting unit 203 is configured to select a relay node from the source node to the destination node from the nodes on the Meridian ring structure.
图 15是示出根据本发明第三实施例的端对端覆盖网中转系统的示意性 框图。 如图 15所示, 根据本发明第三实施例的端对端覆盖网中转系统 300 包括: 节点加入和聚类单元 301 , 配置为将节点加入网络并执行节点聚类, 以将一部分节点设置为聚类代理节点, 而将其它节点设置为归属于所述聚类 代理节点的主机节点, 其中, 所述节点加入和聚类单元 301在将节点加入网 络时计算出距离预测机制所需的信息; 和中继节点选择单元 302, 配置为基 于距离预测机制从所述聚类代理节点中选择从源节点到目的节点的中继节 点。  Figure 15 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a third embodiment of the present invention. As shown in FIG. 15, an end-to-end overlay network transit system 300 according to a third embodiment of the present invention includes: a node joining and clustering unit 301 configured to join a node to a network and perform node clustering to set a part of nodes to Clustering the proxy node, and setting other nodes as the host node belonging to the clustering proxy node, wherein the node joining and clustering unit 301 calculates the information required by the distance prediction mechanism when joining the node to the network; And the relay node selection unit 302 is configured to select a relay node from the source node to the destination node from the clustering proxy node based on a distance prediction mechanism.
图 16是示出根据本发明第四实施例的端对端覆盖网中转系统的示意性 框图。 如图 16所示, 根据本发明第四实施例的端对端覆盖网中转系统 400 包括: Meridian环构建单元 401 , 配置为将节点加入网络以构建 Meridian环 结构,其中所述 Meridian环构建单元 401在将节点加入网络时计算出距离预 测机制所需的信息; 和中继节点选择单元 402, 配置为基于距离预测机制从 所述 Meridian环结构的节点中选择从源节点到目的节点的中继节点。  Figure 16 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a fourth embodiment of the present invention. As shown in FIG. 16, the end-to-end overlay network relay system 400 according to the fourth embodiment of the present invention includes: a Meridian ring construction unit 401 configured to join a node to a network to construct a Meridian ring structure, wherein the Meridian ring construction unit 401 Calculating information required by the distance prediction mechanism when joining the node to the network; and the relay node selection unit 402 is configured to select a relay node from the source node to the destination node from the nodes of the Meridian ring structure based on the distance prediction mechanism .
图 17是示出根据本发明第五实施例的端对端覆盖网中转系统的示意性 框图。 如图 17所示, 根据本发明第五实施例的端对端覆盖网中转系统 500 包括: 节点加入单元 501 , 配置为将节点加入网络, 其中所述节点加入单元 501在将节点加入网络时计算出距离预测机制所需的信息; 和中继节点选择 单元 502,配置为基于距离预测机制选择出从源节点到目的节点的中继节点。  Figure 17 is a schematic block diagram showing an end-to-end overlay network relay system in accordance with a fifth embodiment of the present invention. As shown in FIG. 17, the end-to-end overlay network transit system 500 according to the fifth embodiment of the present invention includes: a node joining unit 501 configured to join a node to a network, wherein the node joining unit 501 calculates when a node joins a network. The information required by the distance prediction mechanism; and the relay node selection unit 502 is configured to select a relay node from the source node to the destination node based on the distance prediction mechanism.
综上所述, 通过根据本发明实施例的端对端覆盖网中转方法和系统, 可 以在端对端覆盖网中快速发现有效的中继节点, 从而建立时延更短、 效率更 高且稳定性更强的替代路由, 实现端到端的高性能通信。  In summary, the end-to-end overlay network transfer method and system according to the embodiment of the present invention can quickly find an effective relay node in the end-to-end overlay network, thereby establishing a shorter delay, higher efficiency, and stability. More powerful alternative routing for end-to-end high-performance communication.
本领域普通技术人员可以意识到, 结合本文中所公开的实施例描述的各 示例的单元及算法步骤, 能够以电子硬件、 计算机软件或者二者的结合来实 现, 为了清楚地说明硬件和软件的可互换性, 在上述说明中已经按照功能一 般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执 行, 取决于技术方案的特定应用和设计约束条件。 专业技术人员可以对每个 特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超 出本发明的范围。 所属领域的技术人员可以清楚地了解到, 为描述的方便和筒洁, 上述描 述的系统、 装置和单元的具体工作过程, 可以参考前述方法实施例中的对应 过程, 在此不再赘述。 Those of ordinary skill in the art will appreciate that the elements and algorithm steps of the various examples described in connection with the embodiments disclosed herein can be implemented in electronic hardware, computer software or a combination of both, in order to clearly illustrate hardware and software. Interchangeability, the composition and steps of the various examples have been generally described in terms of function in the above description. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the solution. A person skilled in the art can use different methods for implementing the described functions for each particular application, but such implementation should not be considered to be beyond the scope of the present invention. A person skilled in the art can clearly understand that, for the convenience and the cleaning of the description, the specific working processes of the system, the device and the unit described above can refer to the corresponding processes in the foregoing method embodiments, and details are not described herein again.
在本申请所提供的几个实施例中, 应该理解到, 所揭露的系统、 装置和 方法, 可以通过其它的方式实现。 例如, 以上所描述的装置实施例仅仅是示 意性的, 例如, 所述单元的划分, 仅仅为一种逻辑功能划分, 实际实现时可 以有另外的划分方式, 例如多个单元或组件可以结合或者可以集成到另一个 系统, 或一些特征可以忽略, 或不执行。 另一点, 所显示或讨论的相互之间 的耦合或直接耦合或通信连接可以是通过一些接口, 装置或单元的间接耦合 或通信连接, 可以是电性, 机械或其它的形式。  In the several embodiments provided herein, it should be understood that the disclosed systems, devices, and methods may be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the unit is only a logical function division. In actual implementation, there may be another division manner, for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored, or not executed. In addition, the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be electrical, mechanical or otherwise.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作 为单元显示的部件可以是或者也可以不是物理单元, 即可以位于一个地方, 或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或 者全部单元来实现本实施例方案的目的。  The units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solution of the embodiment.
另外, 在本发明各个实施例中的各功能单元可以集成在一个处理单元 中, 也可以是各个单元单独物理存在, 也可以两个或两个以上单元集成在一 个单元中。 上述集成的单元既可以采用硬件的形式实现, 也可以采用软件功 能单元的形式实现。  In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of a software function unit.
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销 售或使用时, 可以存储在一个计算机可读取存储介质中。 基于这样的理解, 本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方 案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在 一个存储介质中, 包括若干指令用以使得一台计算机设备(可以是个人计算 机, 服务器, 或者网络设备等)执行本发明各个实施例所述方法的全部或部 分步骤。 而前述的存储介质包括: U盘、 移动硬盘、 只读存储器(ROM, Read-Only Memory )、 随机存取存储器 ( RAM, Random Access Memory )、 磁碟或者光盘等各种可以存储程序代码的介质。  The integrated unit, if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention may contribute to the prior art or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium. A number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention. The foregoing storage medium includes: a U disk, a removable hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and the like, which can store program codes. .
以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围并不局限 于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内, 可轻易 想到变化或替换, 都应涵盖在本发明的保护范围之内。 因此, 本发明的保护 范围应所述以权利要求的保护范围为准。  The above is only the specific embodiment of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily think of changes or substitutions within the technical scope of the present invention. It should be covered by the scope of the present invention. Therefore, the scope of the invention should be determined by the scope of the claims.

Claims

权利要求 Rights request
1、 一种端对端覆盖网中转方法, 所述端对端覆盖网中包括多个主机节 点和引导服务器, 所述方法用于寻找从源主机节点到目的主机节点的中继节 点, 所述方法包括: An end-to-end overlay network transit method, the end-to-end overlay network includes a plurality of host nodes and a boot server, and the method is used to find a relay node from a source host node to a destination host node, Methods include:
所述主机节点与引导服务器通信以获得坐标信息, 所述坐标信息用于基 于距离预测机制来计算两个主机节点之间的时延;  The host node communicates with a boot server to obtain coordinate information, and the coordinate information is used to calculate a delay between two host nodes based on a distance prediction mechanism;
执行所述主机节点的聚类, 以将一部分主机节点作为聚类代理节点, 而 其它主机节点作为归属于所述聚类代理节点的主机节点;  Performing clustering of the host node to use a part of the host node as a clustering proxy node, and other host nodes as host nodes belonging to the clustering proxy node;
基于距离预测机制从所述聚类代理节点中选择从源主机节点到目的主 机节点的中继节点。  A relay node from the source host node to the destination host node is selected from the clustering proxy nodes based on a distance prediction mechanism.
2、 如权利要求 1 所述的方法, 在所述执行所述主机节点的聚类的步骤 之后和所述基于距离预测机制从所述聚类代理节点中选择从源主机节点到 目的主机节点的中继节点的步骤之前进一步包括:  2. The method of claim 1, after the step of performing clustering of the host node and the distance prediction mechanism selecting a source host node to a destination host node from the clustering proxy node The steps of the relay node further include:
对于每个聚类代理节点, 以其它聚类代理节点为基础构建自己的 For each clustering proxy node, build your own based on other clustering proxy nodes.
Meridian环结构; Meridian ring structure;
且所述基于距离预测机制从所述聚类代理节点中选择从源主机节点到 目的主机节点的中继节点的步骤具体为:  And the step of selecting the relay node from the source host node to the destination host node from the clustering proxy node based on the distance prediction mechanism is specifically:
基于距离预测机制从所述 Meridian环结构上的聚类代理节点中选择从 源主机节点到目的主机节点的中继节点。  A relay node from the source host node to the destination host node is selected from the clustering proxy nodes on the Meridian ring structure based on the distance prediction mechanism.
3、 如权利要求 2所述的方法, 进一步包括  3. The method of claim 2, further comprising
在主机节点和聚类代理节点之间更新以下信息的至少其中之一: 主机节 点的网络状况、 主机节点到引导服务器的时延和主机节点的更新时间; 以及 在聚类代理节点和 BS服务器之间更新以下信息的至少其中之一: 聚类 代理节点的网络状况、聚类代理节点到引导服务器的时延和聚类代理节点的 更新时间。  Updating at least one of the following information between the host node and the clustering proxy node: network status of the host node, delay of the host node to the boot server, and update time of the host node; and clustering proxy node and BS server At least one of the following information is updated: the network status of the clustering node, the delay from the clustering node to the boot server, and the update time of the clustering node.
4、 如权利要求 2所述的方法, 进一步包括:  4. The method of claim 2, further comprising:
由每个聚类代理节点维护并更新其自己的 Meridian环结构, 其中,每个 代理节点维护并更新以下信息的至少其中之一: Meridian环结构上其它聚类 代理节点的 IP地址、 坐标信息、 到本聚类代理节点的时延和更新时间。  Each cluster node maintains and updates its own Meridian ring structure, where each agent node maintains and updates at least one of the following: IP address, coordinate information, and other cluster agent nodes on the Meridian ring structure The delay and update time to the clustering agent node.
5、如权利要求 2所述的方法, 其中,所述基于距离预测机制从 Meridian 环结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点 的步骤具体包括: 5. The method of claim 2, wherein the distance prediction mechanism is from Meridian The step of selecting a relay node from the source host node to the destination host node in the clustering proxy node on the ring structure specifically includes:
基于距离预测机制从源主机节点所属的聚类代理节点的 Meridian环结 构上的聚类代理节点以及目的主机节点所属的聚类代理节点的 Meridian环 结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点。  Selecting from the source host node based on the distance prediction mechanism from the clustering proxy node on the Meridian ring structure of the clustering proxy node to which the source host node belongs and the clustering proxy node on the Meridian ring structure of the clustering proxy node to which the destination host node belongs The relay node to the destination host node.
6、 如权利要求 5所述的方法, 其中, 所述基于距离预测机制从源主机 节点所属的聚类代理节点的 Meridian环结构上的聚类代理节点以及目的节 点所属的聚类代理节点的 Meridian环结构上的聚类代理节点中选择从源主 机节点到目的主机节点的中继节点的步骤具体包括:  6. The method according to claim 5, wherein the distance prediction mechanism is based on a clustering proxy node on a Meridian ring structure of a clustering proxy node to which a source host node belongs and a clustering proxy node to which the destination node belongs. The step of selecting a relay node from the source host node to the destination host node in the clustering proxy node on the ring structure specifically includes:
所述源主机节点所属的聚类代理节点基于目的主机节点的坐标,通过距 离预测计算其自己的 Meridian环结构上的各个聚类代理节点到目的主机节 点的时延,并分别与所存储的该 Meridian环结构上的各个聚类代理节点到所 述源主机节点所属的聚类代理节点的时延相加以得到与各个聚类代理节点 相关的各条中继路径的总时延;  The clustering proxy node to which the source host node belongs calculates the delay of each clustering proxy node to the destination host node on its own Meridian ring structure by distance prediction based on the coordinates of the destination host node, and respectively stores the stored delay The delays of each clustering proxy node on the Meridian ring structure to the clustering proxy node to which the source host node belongs are added to obtain the total delay of each relay path associated with each clustering proxy node;
选择与总时延小于预定阈值的中继路径相关的聚类代理节点作为候选 中继节点;  Selecting, as a candidate relay node, a clustering proxy node associated with a relay path whose total delay is less than a predetermined threshold;
对与候选中继节点相关的中继路径进行时延和丟包率检测, 并基于时延 和丟包率检测结果选择与路径质量最好的中继路径相关的候选中继节点作 为从源主机节点到目的主机节点的中继节点。  Performing delay and packet loss detection on the relay path associated with the candidate relay node, and selecting the candidate relay node related to the relay path with the best path quality as the slave source host based on the delay and packet loss rate detection result The relay node from the node to the destination host node.
7、 如权利要求 6所述的方法, 其中, 所述选择与总时延小于预定阈值 的中继路径相关的聚类代理节点作为候选中继节点的步骤进一步包括: 在与总时延小于预定阈值的中继路径相关的聚类代理节点之外, 另外随 机选择一些聚类代理节点作为候选中继节点。  7. The method according to claim 6, wherein the step of selecting a clustering proxy node associated with a relay path whose total delay is less than a predetermined threshold as the candidate relay node further comprises: In addition to the clustering proxy nodes associated with the relay path of the threshold, some clustering proxy nodes are randomly selected as candidate relay nodes.
8、 如权利要求 2到 7中任意一项所述的方法, 其中, 所述执行所述主 机节点的聚类的步骤具体包括:  The method according to any one of claims 2 to 7, wherein the step of performing clustering of the host node specifically includes:
基于所述主机节点到引导服务器的往返时延和所述主机节点的 IP地址 对所述主机节点进行聚类。  The host node is clustered based on a round trip delay of the host node to the boot server and an IP address of the host node.
9、 如权利要求 2到 7中任意一项所述的方法, 其中, 所述距离预测机 制是 GNP距离预测, 且所述用于基于距离预测机制计算两个主机节点之间 的时延的坐标信息是 GNP坐标,  The method according to any one of claims 2 to 7, wherein the distance prediction mechanism is GNP distance prediction, and the coordinates for calculating a delay between two host nodes based on a distance prediction mechanism Information is GNP coordinates,
所述主机节点与引导服务器通信以计算用于基于距离预测机制计算两 个主机节点之间的时延的坐标信息的步骤之前进一步包括: The host node communicates with a boot server to calculate two for calculating based on a distance prediction mechanism The steps of the coordinate information of the delay between the host nodes further include:
所述主机节点向所述引导服务器发送注册请求;  Sending, by the host node, a registration request to the boot server;
所述引导服务器对所述主机节点进行鉴权, 并在鉴权成功的情况下向所 述主机节点所述发送成功响应消息,所述成功响应消息中包含多个地标节点 的信息, 其中, 所述地标节点是事先部署在网络中的其信息存储在引导服务 器上的设备,且所述地标节点的信息至少包括所述地标节点的 IP地址或 GNP 坐标。  The boot server authenticates the host node, and sends a success response message to the host node if the authentication succeeds, where the success response message includes information of multiple landmark nodes, where The landmark node is a device that is previously deployed in the network and whose information is stored on the boot server, and the information of the landmark node includes at least the IP address or GNP coordinates of the landmark node.
10、 如权利要求 9所述的方法, 其中, 所述对于每个聚类代理节点以其 它聚类代理节点为基础构建自己的 Meridian环结构的步骤包括:  10. The method of claim 9, wherein the step of constructing its own Meridian ring structure based on other clustering proxy nodes for each clustering proxy node comprises:
引导服务器通过采用 GNP距离预测计算每个聚类代理节点与其它聚类 代理节点之间的时延, 并基于所述时延对于每个聚类代理节点选择一定数量 的候选聚类代理节点;  The boot server calculates a delay between each cluster proxy node and other cluster proxy nodes by using GNP distance prediction, and selects a certain number of candidate cluster proxy nodes for each cluster proxy node based on the delay;
每个聚类代理节点基于与其它聚类代理节点的往返时延,将其它聚类代 理节点信息存储到其自己的 Meridian环结构中,从而构建其自己的 Meridian 环结构。  Each clustering proxy node stores its own clustering node information into its own Meridian ring structure based on the round-trip delay with other clustering proxy nodes to construct its own Meridian ring structure.
11、如权利要求 9所述的方法,其中,所述基于距离预测机制从 Meridian 环结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点 的步骤具体包括:  The method of claim 9, wherein the step of selecting a relay node from the source host node to the destination host node from the clustering proxy nodes on the Meridian ring structure based on the distance prediction mechanism comprises:
源主机节点向自己所属的聚类代理节点和目的主机节点所属的聚类代 理节点发送中继节点选择请求消息,所述中继节点选择请求消息中包含所述 源主机节点和所述目的主机节点的 GNP坐标;  The source host node sends a relay node selection request message to the clustering proxy node to which the owning cluster proxy node and the destination host node belong, and the relay node selection request message includes the source host node and the destination host node. GNP coordinates;
所述源主机节点所属的聚类代理节点基于所述目的主机节点的 GNP坐 标, 通过 GNP距离预测计算其自己的 Meridian环结构上的各个聚类代理节 点到所述目的主机节点的时延,并与其自己的 Meridian环结构上的各个聚类 代理节点到所述源主机节点的时延相加以得到每条中继路径的总时延;  The clustering proxy node to which the source host node belongs calculates the delay of each clustering proxy node on its own Meridian ring structure to the destination host node by GNP distance prediction based on the GNP coordinates of the destination host node, and Adding the delay of each clustering proxy node on the Meridian ring structure to the source host node to obtain the total delay of each relay path;
选择总时延小于等于预定阈值的中继路径所对应的聚类代理节点作为 第一组候选中继节点;  Selecting, as a first group of candidate relay nodes, a clustering proxy node corresponding to the relay path whose total delay is less than or equal to a predetermined threshold;
所述目的主机节点所属的聚类代理节点基于所述源主机节点的 GNP坐 标, 通过 GNP距离预测计算其自己的 Meridian环结构上的各个聚类代理节 点到源主机节点的时延,并与其自己的 Meridian环结构上的各个聚类代理节 点到所述目的主机节点的时延相加以得到每条中继路径的总时延; 选择总时延小于等于预定阈值的中继路径所对应的聚类代理节点作为 第二组候选中继节点; The clustering proxy node to which the destination host node belongs is calculated based on the GNP coordinates of the source host node, and the delay of each clustering proxy node on the own Meridian ring structure to the source host node is calculated by GNP distance prediction, and is itself The delay of each clustering proxy node on the Meridian ring structure to the destination host node is added to obtain the total delay of each relay path; Selecting, as a second group of candidate relay nodes, a clustering proxy node corresponding to the relay path whose total delay is less than or equal to a predetermined threshold;
对于第一组候选中继节点和第二组候选中继节点所对应的中继路径进 行时延和丟包检测, 并基于时延和丟包检测结果选择路径质量最好的中继路 径所对应的中继节点作为从源主机节点到目的主机节点的中继节点。  Performing delay and packet loss detection on the relay path corresponding to the first group of candidate relay nodes and the second group of candidate relay nodes, and selecting the relay path with the best path quality based on the delay and the packet loss detection result The relay node acts as a relay node from the source host node to the destination host node.
12、 一种端对端覆盖网中转系统, 所述端对端覆盖网中包括多个主机节 点和引导服务器, 所述系统用于寻找从源主机节点到目的主机节点的中继节 点, 所述端对端覆盖网中转系统包括:  12. An end-to-end overlay network transit system, the end-to-end overlay network includes a plurality of host nodes and a boot server, and the system is configured to search for a relay node from a source host node to a destination host node, The end-to-end overlay network transit system includes:
通信单元, 用于使得所述主机节点与引导服务器通信以获得坐标信息, 所述坐标信息用于基于距离预测机制来计算两个主机节点之间的时延;  a communication unit, configured to enable the host node to communicate with a boot server to obtain coordinate information, where the coordinate information is used to calculate a delay between two host nodes based on a distance prediction mechanism;
聚类单元, 用于执行所述主机节点的聚类, 以将一部分主机节点作为聚 类代理节点, 而其它主机节点作为归属于所述聚类代理节点的主机节点; 选择单元, 用于基于距离预测机制从所述聚类代理节点中选择从源主机 节点到目的主机节点的中继节点。  a clustering unit, configured to perform clustering of the host node, to use a part of the host node as a clustering proxy node, and other host nodes as a host node belonging to the clustering proxy node; The prediction mechanism selects a relay node from the source host node to the destination host node from the clustering proxy node.
13、 如权利要求 12所述的端对端覆盖网中转系统, 进一步包括: 构建单元, 连接在所述聚类单元和所述选择单元之间, 用于对于每个聚 类代理节点, 以其它聚类代理节点为基础构建自己的 Meridian环结构;  13. The end-to-end overlay network relay system of claim 12, further comprising: a building unit coupled between the clustering unit and the selecting unit for each clustering proxy node, The clustering proxy node builds its own Meridian ring structure based on it;
且所述选择单元具体用于基于距离预测机制从所述 Meridian环结构上 的聚类代理节点中选择从源主机节点到目的主机节点的中继节点。  And the selecting unit is specifically configured to select, according to the distance prediction mechanism, a relay node from the source host node to the destination host node from the clustering proxy nodes on the Meridian ring structure.
14、 如权利要求 13所述的端对端覆盖网中转系统, 进一步包括 第一更新单元, 用于在主机节点和聚类代理节点之间更新以下信息的至 少其中之一: 主机节点的网络状况、 主机节点到引导服务器的时延和主机节 点的更新时间; 以及  14. The end-to-end overlay network relay system of claim 13, further comprising a first update unit, configured to update at least one of the following information between the host node and the clustering proxy node: network status of the host node , the delay from the host node to the boot server and the update time of the host node;
第二更新单元, 用于在聚类代理节点和 BS服务器之间更新以下信息的 至少其中之一: 聚类代理节点的网络状况、 聚类代理节点到引导服务器的时 延和聚类代理节点的更新时间。  a second updating unit, configured to update at least one of the following information between the clustering proxy node and the BS server: a network status of the clustering proxy node, a delay of the clustering proxy node to the boot server, and a clustering proxy node Update time.
15、 如权利要求 13所述的端对端覆盖网中转系统, 进一步包括: 维护更新单元, 用于使得每个聚类代理节点维护并更新其自己的 Meridian环结构,其中,每个代理节点维护并更新以下信息的至少其中之一: Meridian环结构上其它聚类代理节点的 IP地址、 坐标信息、 到本聚类代理 节点的时延和更新时间。 15. The end-to-end overlay network relay system of claim 13, further comprising: a maintenance update unit for causing each cluster agent node to maintain and update its own Meridian ring structure, wherein each agent node maintains And updating at least one of the following information: IP address of other clustering proxy nodes on the Meridian ring structure, coordinate information, delay to the clustering proxy node, and update time.
16、 如权利要求 13所述的端对端覆盖网中转系统, 其中, 所述选择单 元具体用于: The end-to-end overlay network transit system according to claim 13, wherein the selection unit is specifically configured to:
基于距离预测机制从源主机节点所属的聚类代理节点的 Meridian环结 构上的聚类代理节点以及目的主机节点所属的聚类代理节点的 Meridian环 结构上的聚类代理节点中选择从源主机节点到目的主机节点的中继节点。  Selecting from the source host node based on the distance prediction mechanism from the clustering proxy node on the Meridian ring structure of the clustering proxy node to which the source host node belongs and the clustering proxy node on the Meridian ring structure of the clustering proxy node to which the destination host node belongs The relay node to the destination host node.
17、 如权利要求 16所述的端对端覆盖网中转系统, 其中, 所述选择单 元具体用于:  The end-to-end overlay network transit system according to claim 16, wherein the selection unit is specifically configured to:
使得所述源主机节点所属的聚类代理节点基于目的主机节点的坐标,通 过距离预测计算其自己的 Meridian环结构上的各个聚类代理节点到目的主 机节点的时延,并分别与所存储的该 Meridian环结构上的各个聚类代理节点 到所述源主机节点所属的聚类代理节点的时延相加以得到与各个聚类代理 节点相关的各条中继路径的总时延;  The clustering proxy node to which the source host node belongs is calculated based on the coordinates of the destination host node, and the delay of each clustering proxy node on the own Meridian ring structure to the destination host node is calculated by distance prediction, and respectively stored and stored The delays of each clustering proxy node on the Meridian ring structure to the clustering proxy node to which the source host node belongs are added to obtain a total delay of each relay path associated with each clustering proxy node;
选择与总时延小于预定阈值的中继路径相关的聚类代理节点作为候选 中继节点;  Selecting, as a candidate relay node, a clustering proxy node associated with a relay path whose total delay is less than a predetermined threshold;
对与候选中继节点相关的中继路径进行时延和丟包率检测, 并基于时延 和丟包率检测结果选择与路径质量最好的中继路径相关的候选中继节点作 为从源主机节点到目的主机节点的中继节点。  Performing delay and packet loss detection on the relay path associated with the candidate relay node, and selecting the candidate relay node related to the relay path with the best path quality as the slave source host based on the delay and packet loss rate detection result The relay node from the node to the destination host node.
18、 如权利要求 17所述的端对端覆盖网中转系统, 其中, 所述选择单 元进一步用于:  18. The end-to-end overlay network transit system of claim 17, wherein the selection unit is further configured to:
在与总时延小于预定阈值的中继路径相关的聚类代理节点之外, 另外随 机选择一些聚类代理节点作为候选中继节点。  In addition to clustering proxy nodes associated with relay paths whose total delay is less than a predetermined threshold, some clustering proxy nodes are randomly selected as candidate relay nodes.
19、 如权利要求 13到 18中任意一项所述的端对端覆盖网中转系统, 其 中, 所述聚类单元具体用于:  The end-to-end overlay network relay system according to any one of claims 13 to 18, wherein the clustering unit is specifically configured to:
基于所述主机节点到引导服务器的往返时延和所述主机节点的 IP地址 对所述主机节点进行聚类。  The host node is clustered based on a round trip delay of the host node to the boot server and an IP address of the host node.
20、 如权利要求 13到 18中任意一项所述的端对端覆盖网中转系统, 其 中, 所述距离预测机制是 GNP距离预测, 且所述用于基于距离预测机制计 算两个主机节点之间的时延的坐标信息是 GNP坐标,  The end-to-end overlay network transit system according to any one of claims 13 to 18, wherein the distance prediction mechanism is GNP distance prediction, and the method is used to calculate two host nodes based on a distance prediction mechanism. The coordinate information of the time delay is the GNP coordinate.
所述端对端覆盖网中转系统进一步包括:  The end-to-end overlay network transit system further includes:
注册请求单元, 用于使得所述主机节点向所述引导服务器发送注册请 求; 鉴权单元, 与所述注册请求单元和所述通信单元连接, 用于使得所述引 导服务器对所述主机节点进行鉴权, 并在鉴权成功的情况下向所述主机节点 所述发送成功响应消息, 所述成功响应消息中包含多个地标节点的信息, 其 中, 所述地标节点是事先部署在网络中的其信息存储在引导服务器上的设 备, 且所述地标节点的信息至少包括所述地标节点的 IP地址或 GNP坐标。 a registration requesting unit, configured to cause the host node to send a registration request to the boot server; An authentication unit, configured to connect to the registration request unit and the communication unit, to enable the boot server to authenticate the host node, and send the successfully sent to the host node if the authentication succeeds a response message, the success response message includes information of a plurality of landmark nodes, wherein the landmark node is a device that is previously deployed in the network and whose information is stored on the boot server, and the information of the landmark node includes at least The IP address or GNP coordinates of the landmark node.
21、 如权利要求 20所述的端对端覆盖网中转系统, 其中, 所述构建单 元具体用于:  The end-to-end overlay network transit system according to claim 20, wherein the constructing unit is specifically configured to:
使得引导服务器通过采用 GNP距离预测计算每个聚类代理节点与其它 聚类代理节点之间的时延, 并基于所述时延对于每个聚类代理节点选择一定 数量的候选聚类代理节点;  Having the boot server calculate a delay between each cluster proxy node and other cluster proxy nodes by using GNP distance prediction, and select a certain number of candidate cluster proxy nodes for each cluster proxy node based on the delay;
使得每个聚类代理节点基于与其它聚类代理节点的往返时延,将其它聚 类代理节点信息存储到其自己的 Meridian 环结构中, 从而构建其自己的 Meridian环结构。  Each clustering proxy node is configured to store other clustering proxy node information into its own Meridian ring structure based on the round-trip delay with other clustering proxy nodes, thereby constructing its own Meridian ring structure.
22、 如权利要求 20所述的端对端覆盖网中转系统, 其中, 所述选择单 元具体用于:  22. The end-to-end overlay network transit system of claim 20, wherein the selection unit is specifically configured to:
使得源主机节点向自己所属的聚类代理节点和目的主机节点所属的聚 类代理节点发送中继节点选择请求消息, 所述中继节点选择请求消息中包含 所述源主机节点和所述目的主机节点的 GNP坐标;  And causing the source host node to send a relay node selection request message to the clustering proxy node to which the owning cluster proxy node and the destination host node belong, where the relay node selection request message includes the source host node and the destination host The GNP coordinates of the node;
使得所述源主机节点所属的聚类代理节点基于所述目的主机节点的 GNP坐标, 通过 GNP距离预测计算其自己的 Meridian环结构上的各个聚类 代理节点到所述目的主机节点的时延,并与其自己的 Meridian环结构上的各 个聚类代理节点到所述源主机节点的时延相加以得到每条中继路径的总时 延;  The clustering proxy node to which the source host node belongs is calculated based on the GNP coordinates of the destination host node, and the delay of each clustering proxy node on the own Meridian ring structure to the destination host node is calculated by GNP distance prediction. And adding the delay of each clustering proxy node on the Meridian ring structure to the source host node to obtain the total delay of each relay path;
选择总时延小于等于预定阈值的中继路径所对应的聚类代理节点作为 第一组候选中继节点;  Selecting, as a first group of candidate relay nodes, a clustering proxy node corresponding to the relay path whose total delay is less than or equal to a predetermined threshold;
使得所述目的主机节点所属的聚类代理节点基于所述源主机节点的 GNP坐标, 通过 GNP距离预测计算其自己的 Meridian环结构上的各个聚类 代理节点到源主机节点的时延,并与其自己的 Meridian环结构上的各个聚类 代理节点到所述目的主机节点的时延相加以得到每条中继路径的总时延; 选择总时延小于等于预定阈值的中继路径所对应的聚类代理节点作为 第二组候选中继节点; 对于第一组候选中继节点和第二组候选中继节点所对应的中继路径进 行时延和丟包检测, 并基于时延和丟包检测结果选择路径质量最好的中继路 径所对应的中继节点作为从源主机节点到目的主机节点的中继节点。 The clustering proxy node to which the destination host node belongs is calculated based on the GNP coordinates of the source host node, and the delay of each clustering proxy node on the own Meridian ring structure to the source host node is calculated by GNP distance prediction, and The delay of each clustering proxy node on the own Meridian ring structure to the destination host node is added to obtain the total delay of each relay path; and the aggregation corresponding to the relay path whose total delay is less than or equal to a predetermined threshold is selected. a class proxy node as a second group of candidate relay nodes; Performing delay and packet loss detection on the relay path corresponding to the first group of candidate relay nodes and the second group of candidate relay nodes, and selecting the relay path with the best path quality based on the delay and the packet loss detection result The relay node acts as a relay node from the source host node to the destination host node.
PCT/CN2012/071027 2012-02-10 2012-02-10 Transfer method and system for peer-to-peer overlay network WO2012092899A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2012/071027 WO2012092899A2 (en) 2012-02-10 2012-02-10 Transfer method and system for peer-to-peer overlay network
CN2012800001963A CN102714632A (en) 2012-02-10 2012-02-10 Transfer method and system for peer-to-peer overlay network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2012/071027 WO2012092899A2 (en) 2012-02-10 2012-02-10 Transfer method and system for peer-to-peer overlay network

Publications (2)

Publication Number Publication Date
WO2012092899A2 true WO2012092899A2 (en) 2012-07-12
WO2012092899A3 WO2012092899A3 (en) 2013-01-10

Family

ID=46457758

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/071027 WO2012092899A2 (en) 2012-02-10 2012-02-10 Transfer method and system for peer-to-peer overlay network

Country Status (2)

Country Link
CN (1) CN102714632A (en)
WO (1) WO2012092899A2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104079659B (en) * 2014-07-14 2017-06-13 清华大学 A kind of location-based service anonymity inquiry system and its application method based on random agency
US10554568B2 (en) * 2015-09-25 2020-02-04 Intel Corporation Technologies for network round-trip time estimation
CN107689970A (en) * 2016-08-03 2018-02-13 中国移动通信集团湖北有限公司 A kind of method and device for selecting the optimal server that tests the speed
CN109447177B (en) * 2018-11-12 2020-12-18 南京中孚信息技术有限公司 Account clustering method and device and server
CN113660158B (en) * 2021-08-05 2023-06-30 北京网聚云联科技有限公司 Scheduling method, server and storage medium for dynamic routing of Overlay virtual link

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11205343A (en) * 1998-01-09 1999-07-30 Nec Corp Atm multicast system
CN101924690A (en) * 2009-06-10 2010-12-22 华为技术有限公司 Data routing method and equipment
CN101945127A (en) * 2010-09-10 2011-01-12 华中科技大学 Voice dynamic transfer method in voice over Internet Protocol (VoIP) system
CN102300281A (en) * 2011-09-14 2011-12-28 长安大学 Routing method for monitoring bridge state based on wireless sensor network

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102143290B (en) * 2010-02-03 2014-08-20 中兴通讯股份有限公司 Method and system for selecting transit node of voice over internet protocol service in peer-to-peer network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11205343A (en) * 1998-01-09 1999-07-30 Nec Corp Atm multicast system
CN101924690A (en) * 2009-06-10 2010-12-22 华为技术有限公司 Data routing method and equipment
CN101945127A (en) * 2010-09-10 2011-01-12 华中科技大学 Voice dynamic transfer method in voice over Internet Protocol (VoIP) system
CN102300281A (en) * 2011-09-14 2011-12-28 长安大学 Routing method for monitoring bridge state based on wireless sensor network

Also Published As

Publication number Publication date
CN102714632A (en) 2012-10-03
WO2012092899A3 (en) 2013-01-10

Similar Documents

Publication Publication Date Title
US10051527B2 (en) Systems and methods for evolved packet core cluster and session handling
Lenders et al. Service discovery in mobile ad hoc networks: A field theoretic approach
JP4571666B2 (en) Method, communication device and system for address resolution mapping in a wireless multi-hop ad hoc network
WO2019001174A1 (en) Application instance address translation method and apparatus
US9515920B2 (en) Name-based neighbor discovery and multi-hop service discovery in information-centric networks
Zhang et al. Universal IP multicast delivery
US10104633B1 (en) Active position driven mobility content delivery in information centric networks
US20100085916A1 (en) Systems and Methods for Hybrid Wired and Wireless Universal Access Networks
WO2013082983A1 (en) Method and apparatus for data transmission between openflow network domains
WO2004073271A1 (en) Network connection apparatus and network connection switching method
JP6926737B2 (en) Communication systems, hopping nodes, communication control methods, and programs
CN101155134A (en) Path computation and network topological method, structure, system, entity and router
WO2012092899A2 (en) Transfer method and system for peer-to-peer overlay network
Gao et al. Scalable control plane for intra-domain communication in software defined information centric networking
WO2015010519A1 (en) Topology structure discovery method and device
WO2013040970A1 (en) Relay node selecting method and device
WO2012089040A1 (en) Method and device for network conferences
Mukherjee et al. EIR: Edge-aware inter-domain routing protocol for the future mobile internet
US20100085892A1 (en) Overlay network coordination redundancy
WO2022193086A1 (en) Communication method, communication apparatus and communication system
WO2012000366A1 (en) Relay method for service data and relay node system
Pan et al. Efficient data dissemination for Wi-Fi peer-to-peer networks by unicasting among Wi-Fi P2P groups
Narayana Rao et al. Way-point multicast routing framework for improving QoS in hybrid wireless mesh networks
KR101445047B1 (en) Confidential or protected access to a network of nodes distributed over a communication architecture with the aid of a topology server
Bronzino et al. The named-object abstraction for realizing advanced mobility services in the future internet

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201280000196.3

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12732219

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12732219

Country of ref document: EP

Kind code of ref document: A2