This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: CSE4/586 (Spring 2009): Homework 6 Due by Apr 23 Thursday, in class. 1. (40 points) Consider the “synchronous agreement with crash faults” program we studied in Section 12.6. Modify this algorithm to design an early-stopping version of the algorithm that terminates within f + 1 rounds, where f , the actual number of crash faults, is less than f . Prove (argue for) the correctness of your algorithm. (Hint: Processes can track the other processes that failed, which is detectable by identi- fying the processes from which no message was received.) Answer: Each node maintains a set called “alive-node-set”. Initially alive-node-set is equal to the set of all nodes in the system. At a round k , the node expects to hear a value from all the nodes in its alive-node-set. If that is the case, the node chooses the minimum value among these as its decision value tentatively. Else, if the node does not hear from all of the nodes in its alive-node-set, it continues on the next round and broadcasts its tentative decision, urging the other nodes to also continue on the next round. Consider the case where no faults occur, then all nodes hear from all the other nodes, and no node continues on the second round. When there is one crash in the first round, thenand no node continues on the second round....
View Full Document
- Spring '09
- Alice, Leader Election, single crash fault, mark Eve