摘要 |
The leader server proposing commands or sequences of commands to be executed by a plurality of servers according to an asynchronous consensus algorithm, such as Paxos, is replaced with a synchronous virtual leader agreement algorithm executed by each of the servers. The synchronous agreement algorithm used to determine the virtual leader's actions is called the leader agreement algorithm. The asynchronous consensus agreement algorithm performed by the virtual leader and the servers may be the Paxos algorithm. However, any asynchronous Byzantine agreement algorithm may be used. By replacing the leader in the Paxos consensus algorithm with a synchronous virtual leader agreement algorithm, the Paxos algorithm can survive a Byzantine failure of one or more leader server, as long as the servers are behaving synchronously.
|