System and method for optimizing the topology of a virtual ring based upon a TCP/IP network
First Claim
1. A method in a network having nodes and a transport layer protocol providing end to end data transfer, wherein N of the nodes are members of a virtual communications ring for multicast communication among the N nodes, each of the N member nodes being logically associated with only a logically upstream one of the N nodes and a logically downstream one of the N nodes, and wherein for the communications ring one of the N nodes functions as a manager node for managing changes in ring membership, the method comprising:
- a) requesting, by the manager node, the others of the N member nodes to participate in measuring respective communication distances to a N+1th, non-member node responsive to the manager node receiving an insertion request message from the non-member node; and
b) inserting, by the manager node, the N+1th node as a new member node in the communications ring responsive to receiving replies to the requesting, wherein the inserting includes inserting the N+1th node in a selected location between two selected ones of the N nodes, such that the N nodes and the N+1th node are enabled to multicast messages around the communication ring and communications distances for the multicasted messages tend to be shorter due to the selected location of the N+1th node than would communications distances that would arise for other possible locations of the N+1th node, wherein b) includes;
selecting, as a first one of the two selected ones of the N nodes, one of the N nodes having a shortest communications distance to the N+1th node; and
selecting, as a second one of the two selected ones of the N nodes, the one of the upstream and downstream nodes of the first selected node having a shortest communications distance to the N+1th node.
1 Assignment
0 Petitions
Accused Products
Abstract
In a network having nodes, N nodes are members of a virtual communications ring for multicast communication among the N nodes, each of the N nodes being associated with only an upstream and a downstream one of the other N nodes. One of the N nodes manages changes in ring membership, including requesting the others of the N nodes to participate in measuring distances to a N+1th, node responsive to receiving an insertion request message. The manager node inserts the N+1th node in the communications ring responsive to receiving replies, which includes inserting the N+1th node in a selected location between two selected ones of the N nodes, such that the N nodes and the N+1th node are enabled to multicast messages around the ring. Due to the selected location of the N+1th node, communication distances for muticasted messages tend to be shorter than such distances that would otherwise occur.
19 Citations
17 Claims
-
1. A method in a network having nodes and a transport layer protocol providing end to end data transfer, wherein N of the nodes are members of a virtual communications ring for multicast communication among the N nodes, each of the N member nodes being logically associated with only a logically upstream one of the N nodes and a logically downstream one of the N nodes, and wherein for the communications ring one of the N nodes functions as a manager node for managing changes in ring membership, the method comprising:
-
a) requesting, by the manager node, the others of the N member nodes to participate in measuring respective communication distances to a N+1th, non-member node responsive to the manager node receiving an insertion request message from the non-member node; and b) inserting, by the manager node, the N+1th node as a new member node in the communications ring responsive to receiving replies to the requesting, wherein the inserting includes inserting the N+1th node in a selected location between two selected ones of the N nodes, such that the N nodes and the N+1th node are enabled to multicast messages around the communication ring and communications distances for the multicasted messages tend to be shorter due to the selected location of the N+1th node than would communications distances that would arise for other possible locations of the N+1th node, wherein b) includes; selecting, as a first one of the two selected ones of the N nodes, one of the N nodes having a shortest communications distance to the N+1th node; and selecting, as a second one of the two selected ones of the N nodes, the one of the upstream and downstream nodes of the first selected node having a shortest communications distance to the N+1th node. - View Dependent Claims (2, 3, 4, 5)
-
-
6. An apparatus comprising:
-
a network having nodes and a transport layer protocol providing end to end data transfer; wherein N selected ones of the nodes are members of a virtual communications ring for multicast communication among the N nodes, each of the N member nodes being logically associated with only a logically upstream one of the N nodes and a logically downstream one of the N nodes; wherein one of the N nodes of the communications ring is operable to provide a manager node function for managing changes in ring membership, the manager node having a processor; wherein the network includes a tangible, computer readable memory having program code for execution by the manager node processor, including; first program code for requesting the others of the N member nodes to participate in measuring respective communication distances to a N+1th, non-member node responsive to the manager node receiving an insertion request message from the non-member node; and second program code for inserting the N+1th node as a new member node in the communications ring responsive to receiving replies to the requesting, wherein the inserting includes inserting the N+1th node in a selected location between two selected ones of the N nodes, such that the N nodes and the N+1th node are enabled to multicast messages around the communication ring and communications distances for the multicasted messages tend to be shorter due to the selected location of the N+1th node than would be communications distances that would arise for other possible locations of the N+1th node, wherein the second program code includes; program code for selecting, as a first one of the two selected ones of the N nodes, one of the N nodes having a shortest communications distance to the N+1th node; and program code for selecting, as a second one of the two selected ones of the N nodes, the one of the upstream and downstream nodes of the first selected node having a shortest communications distance to the N+1th node. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer program product for use in a network having nodes and a transport layer protocol providing end to end data transfer, wherein N of the nodes are members of a virtual communications ring for multicast communication among the N nodes, each of the N member nodes being logically associated with only a logically upstream one of the N nodes and a logically downstream one of the N nodes, and wherein for the communications ring one of the N nodes functions as a manager node for managing changes in ring membership, the computer program product including a tangible, computer usable medium including computer usable program code for execution by the manager node, the program code including:
-
first program code for requesting the others of the N member nodes to participate in measuring respective communication distances to a N+1th, non-member node responsive to the manager node receiving an insertion request message from the non-member node; and second program code for inserting the N+1th node as a new member node in the communications ring responsive to receiving replies to the requesting, wherein the inserting includes inserting the N+1th node in a selected location between two selected ones of the N nodes, such that the N nodes and the N+1th node are enabled to multicast messages around the communication ring and communications distances for the multicasted messages tend to be shorter due to the selected location of the N+1th node than would be communications distances that would arise for other possible locations of the N+1th node, wherein the second program code includes; program code for selecting, as a first one of the two selected ones of the N nodes, one of the N nodes having a shortest communications distance to the N+1th node; and program code for selecting, as a second one of the two selected ones of the N nodes, the one of the upstream and downstream nodes of the first selected node having a shortest communications distance to the N+1th node. - View Dependent Claims (12, 13, 14, 15)
-
-
16. In a network having nodes, a method of providing a service to manage nodes, wherein the network includes a transport layer protocol providing end to end data transfer and N of the nodes are members of a virtual communications ring for multicast communication among the N nodes, each of the N member nodes being logically associated with only a logically upstream one of the N nodes and a logically downstream one of the N nodes, and wherein for the communications ring one of the N nodes functions as a manager node for managing changes in ring membership, the service comprising:
-
a) requesting, by the manager node, the others of the N member nodes to participate in measuring respective communication distances to a N+1th, non-member node responsive to the manager node receiving an insertion request message from the non-member node, wherein a) further includes; sending, by the manager node to the manager node'"'"'s downstream node, a compute distance message, wherein the compute distance message is for each receiving one of the N node'"'"'s to send to its respective downstream node in the communications ring, so that the compute distance message is multicasted throughout the communications ring; and b) inserting, by the manager node, the N+1th node as a new member node in the communications ring responsive to receiving replies to the requesting, wherein the inserting includes inserting the N+1th node in a selected location between two selected ones of the N nodes, such that the N nodes and the N+1th node are enabled to multicast messages around the communication ring and communications distances for the multicasted messages tend to be shorter due to the selected location of the N+1th node than would be communications distances that would arise for other possible locations of the N+1th node, wherein b) further includes; inserting, by the manager node, the N+1th node as a new member node in the communications ring responsive to receiving replies to the requesting, wherein the inserting includes inserting the N+1th node in a selected location between two selected ones of the N nodes, such that the N nodes and the N+1th node are enabled to multicast messages around the communication ring and communications distances for the multicasted messages tend to be shorter due to the selected location of the N+1th node than would be communications distances that would arise for other possible locations of the N+1th node. - View Dependent Claims (17)
-
Specification