broadcast algorithms
play

Broadcast Algorithms BJRN A. JOHNSSON Overview Best-Effort - PowerPoint PPT Presentation

Broadcast Algorithms BJRN A. JOHNSSON Overview Best-Effort Broadcast (Regular) Reliable Broadcast (2) Uniform Reliable Broadcast (2) Stubborn Broadcast Logged Best-Effort Broadcast Logged Uniform Reliable Broadcast


  1. Broadcast Algorithms BJÖRN A. JOHNSSON

  2. Overview • Best-Effort Broadcast • (Regular) Reliable Broadcast (2) • Uniform Reliable Broadcast (2) • Stubborn Broadcast • Logged Best-Effort Broadcast • Logged Uniform Reliable Broadcast • Probabilistic Broadcast (2)

  3. Abstracting Processes • Crash-stop • Omissions • Crash-recovery • Eavesdropping faults • Arbitrary-fault (Byzantine) • Faulty or correct

  4. Timing Assumptions • Asynchronous System • Synchronous System • Partial Synchrony

  5. Distributed-System Models • Fail-stop – crash-stop, perfekt links, perfect failure detector ( P ) • Fail-noisy – crash-stop, perfekt links, eventually P ( � P) • Fail-silent – crash-stop, perfekt links, no failure detector • Fail-recovery – crash-recovery, stubborn links, eventual leader detector ( Ω ) • Fail-arbitrary – fail-arbitrary, authenticated perfekt links

  6. Motivation • Client-server scheme – point-to-point communication – Useful when reliable , e.g. TCP • Bigger systems usually more than 2 processes – Broadcast abstractions convenient – Send to all processes, in a single one-shot op. • Reliability req. of p2p not directly transposable – “No message lost or duplicated” – Complex for broadcast …

  7. Best-Effort Broadcast • Burden of ensuring reliability on sender: – Receivers unconcerned with enforcing reliability – No delivery guarantees if sender fails

  8. Best-Effort Broadcast PP2PL

  9. Best-Effort Broadcast

  10. Best-Effort Broadcast

  11. (Regular) Reliable Broadcast • Best-effort only ensures delivery if sender doesn’t crash – Processes might not agree on message delivery – Even if all messages sent before sender crashes … • (Regular) Reliable broadcast provides stronger notion of reliablity: – Ensures agreement even if sender fails. – Sender failure – no process delivers message

  12. (Regular) Reliable Broadcast New!

  13. (Regular) Reliable Broadcast array of sets message descriptor original source

  14. (Regular) Reliable Broadcast

  15. (Regular) Reliable Broadcast

  16. (Regular) Reliable Broadcast

  17. (Regular) Reliable Broadcast • Problem: only requires the correct processes deliver the same set of messages

  18. Uniform Reliable Broadcast Different!

  19. Uniform Reliable Broadcast Infinite array for all possible message …

  20. Uniform Reliable Broadcast

  21. Uniform Reliable Broadcast

  22. Uniform Reliable Broadcast • Requires N > 2 f Size of ack[m]

  23. Stubborn Broadcast No duplication gone!

  24. Stubborn Broadcast

  25. Logged Best-Effort Broadcast • First for Fail-recovery model • Strongest model, uniform reliable, not enough • Difficulty: crashing, recovery and never crashing again is correct • Solution: stable storage, as seen in “logged perfect links"

  26. Logged Best-Effort Broadcast

  27. Logged Best-Effort Broadcast ensures Validity

  28. Logged Uniform Reliable Broadcast New!

  29. Logged Uniform Reliable Broadcast

  30. Logged Uniform Reliable Broadcast

  31. Probabilistic Broadcast • No deterministic broadcast guarantees • Offers “cost” reduction at the price of lower reliability a. Reliability not scalable – ack implosion problem b. Possible solution – requires configuration • Epidemic dissemination – rumor spreading, gossiping

  32. Probabilistic Broadcast Weaker than validity

  33. Eager Probabilistic Broadcast • Sends to k random processes – the fanout • A round of gossiping = receiving and resending message • R rounds of gossiping per message • R and k determine efficiency of algorithm

  34. Eager Probabilistic Broadcast Returns k processes from Π \ {self}

  35. Lazy Probabilistic Broadcast • EPB too eager; consumes resources and causes redundant transmissions 1. Gossip until e.g. N/2 processes infected (push-phase) 2. Missed processes ask for message (pull-phase)

  36. Lazy Probabilistic Broadcast

  37. Lazy Probabilistic Broadcast

  38. Lazy Probabilistic Broadcast

Recommend


More recommend