1 / 23

Refined Quorum Systems

Refined Quorum Systems. Rachid Guerraoui and Marko Vukoli ć. Ecole Polytechnique Federale de Lausanne School of Computer and Communication Sciences EPFL / IC. " Plan for the worst, hope for the best.«  English proverb. Distributed algorithms. Hope for: Few (no) failures Synchrony

Download Presentation

Refined Quorum Systems

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. Refined Quorum Systems Rachid Guerraoui and Marko Vukolić Ecole Polytechnique Federale de Lausanne School of Computer and Communication Sciences EPFL / IC

  2. " Plan for the worst, hope for the best.«  English proverb PODC ’07: Refined Quorum SystemsSlide 2

  3. Distributed algorithms Hope for: • Few (no) failures • Synchrony • No Contention Plan for: • Many failures • Asynchrony • Contention Optimistic algorithms optimize w.r.t complexity (e.g., latency) Resilient algorithms PODC ’07: Refined Quorum SystemsSlide 3

  4. Contribution An abstraction to devise resilient & optimistic algorithms Refined Quorum Systems (RQS) PODC ’07: Refined Quorum SystemsSlide 4

  5. The paper • RQS definition • Optimal algorithms built around RQS • Atomic storage (register abstraction) • Consensus (state machine replication) PODC ’07: Refined Quorum SystemsSlide 5

  6. This talk • Why RQS? • What is RQS? • How to use RQS? PODC ’07: Refined Quorum SystemsSlide 6

  7. A simple example • Single writer crash-tolerant atomic storage • Implemented over 5 servers • Any majority is a quorum (2 servers may crash) WRITE (v1) W S E R V E R S 1 2 3 4 5 R1 R2 READ -> v1 READ PODC ’07: Refined Quorum SystemsSlide 7

  8. A simple example What if we want to expedite only best-case operations that access all (5) servers? WRITE (v1) W S E R V E R S 1 2 3 4 5 R1 R2 READ -> v1 READ PODC ’07: Refined Quorum SystemsSlide 8

  9. A simple example Do we really need to access all servers? Is it sufficient to access only 4? WRITE (v1) W S E R V E R S 1 2 3 4 5 R1 R2 READ -> v1 READ PODC ’07: Refined Quorum SystemsSlide 9

  10. What is really going on? • Traditional quorum intersections are too small for building optimistic, yet resilient, atomic storage W Quorum R1 Quorum 3 4 2 5 1 R2 Quorum PODC ’07: Refined Quorum SystemsSlide 10

  11. What is really going on? • Intuitively, if all servers are accessed operations can be expedited W Quorum R1 Quorum 3 4 2 5 1 R2 Quorum PODC ’07: Refined Quorum SystemsSlide 11

  12. What is really going on? • In a set of 5 servers, an intersection of any 2 subsets of 4 servers, intersects with a subset of 3 servers R1 Quorum W Quorum 3 4 2 5 1 R2 Quorum PODC ’07: Refined Quorum SystemsSlide 12

  13. Question • What mathematical abstraction captures these "larger" intersections in the general context of • Byzantine failures (w/o authentication)? • Non-threshold quorums/failures? • Graceful degradation? Answer: Refined Quorum Systems PODC ’07: Refined Quorum SystemsSlide 13

  14. Refined Quorum Systems • Consider object O implemented over a set of processes S • RQS: 3 classes of refined quorums (subsets of S) Class 3  Class 2  Class 1 • Let l1 be the best possible latency for O: no failures, synchrony and no-contention • Let l2,l3 be the next best possible latencies Class j quorum correct Synchrony no contention = + + = Latency lj is achieved! PODC ’07: Refined Quorum SystemsSlide 14

  15. Back to the example • Any quorum that contains at least 4 servers is class 1 • Other quorums (simple majorities) are class 2 W quorum (Class 1) R1 quorum (Class 1) 3 4 2 5 • l1 – 1 round trip • l2 – 2 round trips 1 R2 quorum (Class 2) PODC ’07: Refined Quorum SystemsSlide 15

  16. Refined Quorum Systems(definition) Consider a set S, let RQS be any set of quorums (subsets of S) Consider an adversary structure BforS: Bis a set of subsets of S such that: B’B: B’’ B’  B’’B RQS is a refined quorum system, if:  QC1, QC2: QC1  QC2  QC3 = RQS, such that: (elements ofQCiare called class i quorums) P1)  Q3, Q3’ QC3: Q3  Q3’  B P2)  Q1, Q1’ QC1,  Q3QC3 ,  B1, B2B: Q1  Q1’  Q3  B1  B2 P3)  Q2QC2,  Q3QC3 ,  B1, B2B:  Q2  Q3  B1  B2   Q1QC1: Q1  Q2  Q3  B PODC ’07: Refined Quorum SystemsSlide 16

  17. Application 1: Storage • Single writer atomic storage (register) • Clients • Crash faulty (non-Byzantine) • Servers • RQS formed around servers • Do not communicate among themselves • Send messages only in response to clients • Safety • Byzantine server failures: adversary B • Any number of crash failures! • Liveness • As long as there is (any) quorum of correct servers PODC ’07: Refined Quorum SystemsSlide 17

  18. Application 1: Storage Client (reader or writer) 2nd round-trip 3rd round-trip Class 2 quorum S E R V E R S Class 3 quorum Class 1 quorum li = i round-trips (i=1..3) Synchrony + no contention PODC ’07: Refined Quorum SystemsSlide 18

  19. Application 2: Consensus • Consensus (Lamport’s SMR framework) • Proposers, learners • Any number may be Byzantine • Acceptors • RQS formed around acceptors • may communicate among each other • Safety • Byzantine acceptor failures: adversary B • Liveness • As long as there is (any) quorum of correct acceptors • Eventual synchrony (FLP) PODC ’07: Refined Quorum SystemsSlide 19

  20. Application 2: Consensus propose(v) proposer Class 1 quorum Class 2 quorum Class 3 quorum A C C E P T O R S learners learn v learn v learn v li = i+1 message delays (i=1..3) Synchrony + no contention PODC ’07: Refined Quorum SystemsSlide 20

  21. (Some) Open questions • Authentication and weaker semantics • Number of RQS given a set S and adversary • Opaque RQS PODC ’07: Refined Quorum SystemsSlide 21

  22. Summary An abstraction to devise resilient & optimistic algorithms Refined Quorum Systems (RQS) PODC ’07: Refined Quorum SystemsSlide 22

  23. Thank you PODC ’07: Refined Quorum SystemsSlide 23

More Related