1 / 18

Distributed Systems Algorithms Review: Mutual Exclusion & Deadlock Detection

Explore distributed mutual exclusion, deadlock detection, agreement protocols, Lamport-Shostak-Pease algorithm, and more in distributed systems. Learn key algorithms, protocols, and models for fault-tolerant operations.

gverrill
Download Presentation

Distributed Systems Algorithms Review: Mutual Exclusion & Deadlock Detection

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Outline • Distributed Mutual Exclusion • Token-based algorithms • Distributed Deadlock Detection • Review and overview • Agreement Protocols • Introduction • Lamport-Shostak-Pease algorithm • Dolev et al’s algorithm • Applications of agreement protocols COP5611

  2. Announcements • There will be a quiz next Tuesday • It will be an open book quiz • It covers the things we have covered so far • It will be at the end of the class • You can turn in your homework #2 next Tuesday • However, no submission after that date will be accepted • Please do not run your programs on diablo COP5611

  3. Distributed Deadlock Detection • In distributed systems, the system state can be represented by a wait-for graph (WFG) • In WFG, nodes are processes and there is a directed edge from node P1 to node P2 if P1 is blocked and is waiting for P2 to release some resource • The system is deadlocked if there is a directed cycle or knot in its WFG • The problem is how to maintain the WFG and detect cycle/knot in the graph COP5611

  4. Distributed Deadlock Detection – cont. • Centralized detection algorithms • Distributed deadlock algorithms • Path-pushing • Edge-chasing • Diffusion computation • Global state detection • You need to know the basic ideas but not the details about those algorithms COP5611

  5. Agreement Protocols • In distributed systems, sites are often required to reach mutual agreement • In distributed database systems, data managers must agree on whether to commit or to abort a transaction • Reaching an agreement requires the sites have knowledge about values at other sites • Agreement when the system is free from failures • Agreement when the system is prone to failure COP5611

  6. The System Model • There are n sites in the distributed system and at most m can be faulty • Each site can communicate with all other sites through message passing • A receiver always knows the identity of the sender of a message • The communication is reliable COP5611

  7. The System Model – cont. • Synchronous vs. asynchronous computations • In a synchronous computation, processes in the distributed system run in lock step manner • In each step, a process receives messages from other sites sent in the previous step, performs a computation, and sends messages to other processes COP5611

  8. The System Model – cont. • Processor Failures • Crash fault • Omission fault • Malicious fault • Authenticated vs. non-authenticated messages COP5611

  9. The System Model – cont. • Performance Analysis • Time to reach an agreement under a given protocol • Message traffic measured by the number of messages exchanged to reach an agreement • Storage overhead COP5611

  10. Agreement Problems • There are three well known agreement problems • Byzantine agreement problem • Consensus problem • Interactive consistency problem COP5611

  11. Byzantine Agreement Problem • A chosen process, called source process, broadcasts its initial value to all other processes • A solution should COP5611

  12. The Consensus Problem • In this problem, every process broadcasts its initial value to all other processes, where the initial values of different processes can be different COP5611

  13. The Interactive Consistency Problem • In this problem, every process broadcasts its initial value to all other processes, where the initial values of different processes can be different COP5611

  14. Lamport-Shostak-Pease Algorithm COP5611

  15. Lamport-Shostak-Pease Algorithm – cont. COP5611

  16. Lamport-Shostak-Pease Algorithm – cont. • Performance analysis • Time • Message traffic • Storage overhead COP5611

  17. Fault-Tolerant Clock Synchronization • The interactive convergence algorithm COP5611

  18. Fault-Tolerant Clock Synchronization – cont. • The interactive consistency algorithm COP5611

More Related