Patent ID: 7515553
Filing Date: 2009-04-07
Classification: H04L

Abstract:
1. A method for performing processing that is distributed among a plurality of nodes, the method comprising: assigning a node to a first subgroup within a computing system group, the computing system group comprising the first subgroup and a second subgroup, the second subgroup comprising at least a remote node within the computing system group that is not assigned to the first subgroup; receiving a protocol message at the node, wherein the protocol message is received by all nodes within the computing system group and defines at least a first subgroup protocol processing and a second subgroup protocol processing, the first subgroup protocol processing defining a first number of sequential subprotocols to be performed by members of the first subgroup, each of the first number of sequential protocols requiring a respective vote upon completion, the second subgroup protocol processing defining a second number of sequential subprotocols to be performed by members of the second subgroup, each of the second number of sequential protocols requiring a respective vote upon completion, wherein the second number is greater than the first number; the first subgroup protocol processing specifying processing that is different from processing specified by the second subgroup protocol processing, executing the first subgroup protocol processing at the node and sending respective votes upon completion of each of the first number of sequential subprotocols; receiving, from the remote node within the second subgroup in accordance with the protocol message and while executing the first subgroup protocol processing, a second subgroup protocol vote corresponding to a last vote within the first number of votes received from the remote node; suspending, subsequent to the executing the first subgroup protocol processing and sending respective votes upon completion of each of the first number of sequential subprotocols, execution of protocol processing on the node; receiving, subsequent to suspending protocol processing and in accordance with the protocol message, a remote node vote from the remote node; and transmitting from the node, subsequent to suspending protocol processing and in response to receiving the remote node vote that was received subsequent to suspending protocol processing, a dummy vote.