180 likes | 308 Views
An Evaluation of Communication-Optimal P Algorithms. Mikel Larrea Iratxe Soraluze Roberto Cortiñas Alberto Lafuente Department of Computer Architecture and Technology The University of the Basque Country. Contents. Motivation System Model Communication Optimality The Algorithms
E N D
An Evaluationof Communication-OptimalP Algorithms Mikel Larrea Iratxe Soraluze Roberto Cortiñas Alberto Lafuente Department of Computer Architecture and Technology The University of the Basque Country
Contents • Motivation • System Model • Communication Optimality • The Algorithms • Complexity Analysis • Performance Evaluation • Conclusion PDP 2008 − Toulouse, France, February 13-15, 2008
Motivation • Unreliable failure detectors have been used to address Consensus and related problems in asynchronous crash-prone distributed systems • Theory: impossibility/possibility results, minimality results • Practice: efficient implementations and transformations • The P class satisfies the following properties • Strong Completeness: eventually every process that crashes is permanently suspected by every correct process • Eventual Strong Accuracy: there is a time after which correct processes are not suspected by any correct process PDP 2008 − Toulouse, France, February 13-15, 2008
} ring-based Motivation:Implementing P Efficiently • Communication efficiency • Number of links used forever • Periodic communication cost • Non communication-efficient algorithms • Communication-efficient algorithms • Communication-optimal algorithms • Sporadic communication overhead • Number of messages to manage a suspicion • Quality of Service • Query accuracy probability • Crash detection latency PDP 2008 − Toulouse, France, February 13-15, 2008
System Model • Finite set of n processes = {p1, p2, ..., pn} that communicate only by message-passing • Every pair of processes is connected by two unidirectional and reliable communication links, one in each direction • Processes can fail by crashing. Once a process crashes, it does not recover • Up to n-1 processes may crash • C is the (unknown) number of correct processes • Processes are arranged in a logical ring • Partially synchronous system PDP 2008 − Toulouse, France, February 13-15, 2008
p1 p2 p6 p5 p3 p4 Communication Optimality A ring arrangement of processes PDP 2008 − Toulouse, France, February 13-15, 2008
p1 p2 p6 p5 p3 p4 Communication Optimality Communication-efficient algorithms: n links are used forever PDP 2008 − Toulouse, France, February 13-15, 2008
p1 p2 p6 p5 p3 p4 Communication Optimality Communication-optimal algorithms: C links are used forever PDP 2008 − Toulouse, France, February 13-15, 2008
The Algorithms • We have implemented several ring-based communication-optimalPalgorithms • Algorithms are based on reporting failure suspicions (and suspicion refutations) • Three communication patterns • Algorithm 1: based on Reliable Broadcast • RBcast is a communication primitive guaranteeing that all correct processes deliver the same set of messages. This set includes at least all messages broadcast by correct processes • Algorithm 2: based on one-to-one communication • Algorithm 3: based on one-to-all communication PDP 2008 − Toulouse, France, February 13-15, 2008
p1 p2 p6 p5 p3 p4 The Algorithms Algorithm 1: RBcast-based • O(n2) messages required to communicate a suspicion • Low crash detection latency PDP 2008 − Toulouse, France, February 13-15, 2008
p1 Suspected1= {p3, p5, p6} p2 p6 p5 p3 p4 The Algorithms Algorithm 2: one-to-one based • O(n) messages required to communicate a suspicion • High crash detection latency PDP 2008 − Toulouse, France, February 13-15, 2008
p1 Suspected1= {p3, p5, p6} p2 p6 p5 p3 p4 The Algorithms Algorithm 3: one-to-all based • O(n) messages required to communicate a suspicion • Low crash detection latency PDP 2008 − Toulouse, France, February 13-15, 2008
Complexity Analysis PDP 2008 − Toulouse, France, February 13-15, 2008
Performance Evaluation:Query Accuracy PDP 2008 − Toulouse, France, February 13-15, 2008
Performance Evaluation:Crash Detection Latency PDP 2008 − Toulouse, France, February 13-15, 2008
Conclusion • We have presented several communication-optimal algorithms implementing P • Which to use: Algorithm 2 or Algorithm 3? • Best choice: hybrid approach • Initially (erroneous suspicions), use Algorithm 2 • When the ring has probably stabilized, switch to Algorithm 3 • Issues • What about crashes during stabilization? • How do we know (guess) that the system has stabilized? PDP 2008 − Toulouse, France, February 13-15, 2008
Questions ? PDP 2008 − Toulouse, France, February 13-15, 2008
Future Work • Current scenario: • Local area network settings • Uniform communication delays • 1-to-all communication supported easily (Ethernet, WiFi) • Future scenario: • Wide area network settings • Non-uniform communication delays • 1-to-all communication not supported • Local communication patterns required • For periodic messages (heartbeats) ring • For sporadic messages (suspicions and refutations) PDP 2008 − Toulouse, France, February 13-15, 2008