Maintaining membership within a federation infrastructure
First Claim
1. At a current node in a federating infrastructure, a method for the current node to maintain membership within the federation infrastructure, the method comprising:
- an act of sending a first ping message to a neighborhood node, the first ping message indicating to the neighborhood node the current node is participating as a neighbor of the neighborhood node and including routing partner and neighborhood nodes'"'"' state of the current node;
an act of receiving a second ping message from a neighborhood node, the second ping message indicating to the current node at least that the neighborhood node originating the second ping message is participating as a neighbor of the current node and including routing partner and neighborhood nodes'"'"' state of the originating neighborhood node;
an act of proximally routing an update request message to a perfect routing node, the update request message indicating to the routing node that the current node is participating as a routing partner of the routing node and including at least the current node'"'"'s neighborhood nodes'"'"' identities; and
an act of receiving an update response message from the processing routing node, the update response indicating to the current node that the processing routing node is participating as a routing partner of the current node and including at least the processing routing partner'"'"'s neighborhood nodes'"'"' identities.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention extends to methods, systems, and computer program products for establishing and maintaining membership within a federation infrastructure. A joining node submits a join message to an existing federation infrastructure. The federation infrastructure routes the join message to a processing node. The processing node facilitates identification of predecessor, successor, neighborhood, and routing nodes (for the joining node) within a ring of nodes. The joining node exchanges messages with identified nodes to obtain state information for the identified nodes and other nodes within the ring. Nodes periodically exchange state information, including state information for other nodes, such that state information for the ring is efficiently propagated to all nodes in the ring even when communication between some nodes is lost. Instance IDs, phase values, and freshness values are used to determine when state information is stale and/or is to be updated.
-
Citations
44 Claims
-
1. At a current node in a federating infrastructure, a method for the current node to maintain membership within the federation infrastructure, the method comprising:
-
an act of sending a first ping message to a neighborhood node, the first ping message indicating to the neighborhood node the current node is participating as a neighbor of the neighborhood node and including routing partner and neighborhood nodes'"'"' state of the current node;
an act of receiving a second ping message from a neighborhood node, the second ping message indicating to the current node at least that the neighborhood node originating the second ping message is participating as a neighbor of the current node and including routing partner and neighborhood nodes'"'"' state of the originating neighborhood node;
an act of proximally routing an update request message to a perfect routing node, the update request message indicating to the routing node that the current node is participating as a routing partner of the routing node and including at least the current node'"'"'s neighborhood nodes'"'"' identities; and
an act of receiving an update response message from the processing routing node, the update response indicating to the current node that the processing routing node is participating as a routing partner of the current node and including at least the processing routing partner'"'"'s neighborhood nodes'"'"' identities. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43)
-
-
44. A computer program product for use at a current node in a federating infrastructure, the computer program product for implementing a method for the current node to maintain membership within the federation infrastructure, the computer program product comprising one or more computer-readable media having stored thereon computer-executable instructions that, when executed by a processor, cause the current node to perform the following:
-
send a first ping message to a neighborhood node, the first ping message indicating to the neighborhood node the current node is participating as a neighbor of the neighborhood node and including routing partner and neighborhood nodes'"'"' state of the current node;
receive a second ping message from a neighborhood node, the second ping message indicating to the current node at least that the neighborhood node originating the second ping message is participating as a neighbor of the current node and including routing partner and neighborhood nodes'"'"' state of the originating neighborhood node;
proximally route an update request message to a perfect routing node, the update request message indicating to the routing node that the current node is participating as a routing partner of the routing node and including at least the current node'"'"'s neighborhood nodes'"'"' identities; and
receive an update response message from the processing routing node, the update response indicating to the current node that the processing routing node is participating as a routing partner of the current node and including at least the processing routing partner'"'"'s neighborhood nodes'"'"' identities.
-
Specification