+ All Categories
Home > Documents > Refined Quorum Systems

Refined Quorum Systems

Date post: 31-Dec-2015
Category:
Upload: jessica-mitchell
View: 42 times
Download: 0 times
Share this document with a friend
Description:
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 - PowerPoint PPT Presentation
23
Refined Quorum Refined Quorum Systems Systems Rachid Guerraoui and Marko Vukoli Rachid Guerraoui and Marko Vukoli ć ć Ecole Polytechnique Federale de Lausanne Ecole Polytechnique Federale de Lausanne School of Computer and Communication Sciences School of Computer and Communication Sciences EPFL / IC EPFL / IC
Transcript

Refined Quorum Refined Quorum SystemsSystems

Rachid Guerraoui and Marko VukoliRachid Guerraoui and Marko Vukolićć

Ecole Polytechnique Federale de LausanneEcole Polytechnique Federale de Lausanne

School of Computer and Communication SciencesSchool of Computer and Communication Sciences

EPFL / ICEPFL / IC

PODC ’07: Refined Quorum Systems

Slide 2

" Plan for the worst, hope for " Plan for the worst, hope for the best.« the best.« 

English proverbEnglish proverb

PODC ’07: Refined Quorum Systems

Slide 3

Distributed algorithmsDistributed algorithms

Plan for:Plan for:• Many failures• Asynchrony• Contention

Hope for:Hope for:• Few (no) failures• Synchrony• No Contention

Resilient algorithmsResilient algorithms Optimistic algorithmsOptimistic algorithmsoptimize w.r.t complexity optimize w.r.t complexity

(e.g., latency)(e.g., latency)

PODC ’07: Refined Quorum Systems

Slide 4

ContributionContribution

An abstraction to deviseAn abstraction to devise

resilient & optimistic algorithmsresilient & optimistic algorithms

Refined Quorum Systems Refined Quorum Systems

(RQS)(RQS)

PODC ’07: Refined Quorum Systems

Slide 5

The paperThe paper

• RQS definitionRQS definition

• Optimal algorithms built around Optimal algorithms built around RQSRQS• Atomic storage (register abstraction)• Consensus (state machine replication)

PODC ’07: Refined Quorum Systems

Slide 6

This talkThis talk

• Why RQS? Why RQS?

• What is RQS?What is RQS?

• How to use RQS?How to use RQS?

PODC ’07: Refined Quorum Systems

Slide 7

A simple exampleA simple example• Single writer crash-tolerant atomic storageSingle writer crash-tolerant atomic storage• Implemented over 5 serversImplemented over 5 servers• Any majority is a quorum (2 servers may Any majority is a quorum (2 servers may crash)crash)

R1R1

R2R2

WWWRITE (v1)WRITE (v1)

SS

EE

RR

VV

EE

RR

SS

11

22

33

44

55

READ -> v1READ -> v1

READREAD

PODC ’07: Refined Quorum Systems

Slide 8

A simple exampleA simple exampleWhat if we want to expedite only best-case What if we want to expedite only best-case

operations operations

that access that access allall (5) servers? (5) servers?

R1R1

R2R2

WWWRITE (v1)WRITE (v1)

SS

EE

RR

VV

EE

RR

SS

11

22

33

44

55

READ -> v1READ -> v1

READREAD

PODC ’07: Refined Quorum Systems

Slide 9

A simple exampleA simple exampleDo we really need to access all servers?Do we really need to access all servers?

Is it sufficient to access only 4?Is it sufficient to access only 4?

R1R1

R2R2

WWWRITE (v1)WRITE (v1)

SS

EE

RR

VV

EE

RR

SS

11

22

33

44

55

READ -> v1READ -> v1

READREAD

PODC ’07: Refined Quorum Systems

Slide 10

What is really going on?What is really going on?• Traditional quorum intersections are too Traditional quorum intersections are too small for building optimistic, yet small for building optimistic, yet resilient, atomic storageresilient, atomic storage

11

22

3344

55

W QuorumW Quorum R1 QuorumR1 Quorum

R2 QuorumR2 Quorum

PODC ’07: Refined Quorum Systems

Slide 11

What is really going on?What is really going on?• Intuitively, if all servers are accessed Intuitively, if all servers are accessed operations can be expeditedoperations can be expedited

11

22

3344

55

W QuorumW QuorumR1 QuorumR1 Quorum

R2 QuorumR2 Quorum

PODC ’07: Refined Quorum Systems

Slide 12

What is really going on?What is really going on?• In a set of 5 servers, an intersection of In a set of 5 servers, an intersection of any 2 subsets of 4 servers, intersects any 2 subsets of 4 servers, intersects with a subset of 3 serverswith a subset of 3 servers

11

22

3344

55

W QuorumW Quorum R1 QuorumR1 Quorum

R2 QuorumR2 Quorum

PODC ’07: Refined Quorum Systems

Slide 13

QuestionQuestion

• What mathematical abstraction What mathematical abstraction captures these "larger" captures these "larger" intersections in the general intersections in the general context of context of • Byzantine failures (w/o authentication)?

• Non-threshold quorums/failures?• Graceful degradation?Answer:Answer:

Refined Quorum SystemsRefined Quorum Systems

PODC ’07: Refined Quorum Systems

Slide 14

Refined Quorum SystemsRefined Quorum Systems• Consider object O implemented over a set of Consider object O implemented over a set of processes S processes S

• RQS: 3 classes of refined quorums (subsets of S) RQS: 3 classes of refined quorums (subsets of S) Class 3 Class 2 Class 1

• Let lLet l1 1 be the best possible latency for O: be the best possible latency for O: no no failures, synchrony and no-contentionfailures, synchrony and no-contention• Let l2, l3 be the next best possible latencies

SynchronSynchronyy

++++ no no contenticontenti

onon

Class j quorum Class j quorum

correctcorrect==

== Latency lLatency ljj is is achieved!achieved!

PODC ’07: Refined Quorum Systems

Slide 15

Back to the exampleBack to the example• Any quorum that contains at least 4 Any quorum that contains at least 4 servers is servers is class 1class 1

• Other quorums (simple majorities) are Other quorums (simple majorities) are class 2class 2

11

22

3344

55

W quorumW quorum

(Class 1)(Class 1)R1 quorumR1 quorum

(Class 1)(Class 1)

R2 quorumR2 quorum

(Class 2)(Class 2)

• ll1 1 – 1 round trip– 1 round trip

• ll2 2 – 2 round trips– 2 round trips

PODC ’07: Refined Quorum Systems

Slide 16

Refined Quorum SystemsRefined Quorum Systems(definition)(definition)

Consider a set Consider a set SS, let RQS be any set of quorums , let RQS be any set of quorums (subsets of S)(subsets of S)

Consider Consider an adversary structure an adversary structure BB forfor SS:: BB is a set of subsets of is a set of subsets of SS such that: such that: BB’’B: B: B’’B’’ B’ B’ B’’ B’’BB

RQS is a refined quorum system, if:RQS is a refined quorum system, if: QC1, QC2: QC1 QC1, QC2: QC1 QC2 QC2 QC3 QC3 == RQS, such that: RQS, such that:

((elements ofelements of QCiQCi are called class i quorumsare called class i quorums))

P1) P1) QQ33, Q, Q33’ ’ QC3: QC3: QQ33 Q Q33’ ’ BBP2) P2) QQ11, Q, Q11’ ’ QC1, QC1, QQ33 QC3 , QC3 , BB11, B, B22 B: B:

QQ11 Q Q11’ ’ Q Q33 B B1 1 B B22

P3) P3) QQ22 QC2, QC2, QQ33 QC3 , QC3 , BB11, B, B22 B: B: QQ22 Q Q33 B B1 1 B B22

QQ11 QC1: QC1: QQ11 Q Q22 Q Q33 BB

PODC ’07: Refined Quorum Systems

Slide 17

Application 1: StorageApplication 1: Storage• Single writer atomic storage (register)Single writer atomic storage (register)• ClientsClients

• Crash faulty (non-Byzantine)• ServersServers

• RQS formed around servers • Do not communicate among themselves• Send messages only in response to clients

• SafetySafety• Byzantine server failures: adversary B• Any number of crash failures!

• LivenessLiveness• As long as there is (any) quorum of correct servers

PODC ’07: Refined Quorum Systems

Slide 18

Application 1: StorageApplication 1: StorageClientClient

(reader or writer)(reader or writer)

SS

EE

RR

VV

EE

RR

SS

llii = i round-trips (i=1..3) = i round-trips (i=1..3)

Class 1 quorumClass 1 quorum

Class 2 Class 2

quorumquorum

2nd round-trip2nd round-trip

Class 3 quorumClass 3 quorum

3rd round-trip3rd round-trip

Synchrony + no contentionSynchrony + no contention

PODC ’07: Refined Quorum Systems

Slide 19

Application 2: ConsensusApplication 2: Consensus• Consensus (Lamport’s SMR framework)Consensus (Lamport’s SMR framework)• Proposers, learnersProposers, learners

• Any number may be Byzantine

• AcceptorsAcceptors• RQS formed around acceptors• may communicate among each other

• SafetySafety• Byzantine acceptor failures: adversary B

• LivenessLiveness• As long as there is (any) quorum of correct acceptors

• Eventual synchrony (FLP)

PODC ’07: Refined Quorum Systems

Slide 20

Application 2: ConsensusApplication 2: Consensus

AA

CC

CC

EE

PP

TT

OO

RR

SS

Synchrony + no contentionSynchrony + no contention

proposerproposer

learnerslearners

propose(v)propose(v)

Class 1 quorumClass 1 quorum

learn vlearn v

Class 2 quorumClass 2 quorum

learn vlearn v

Class 3 quorumClass 3 quorum

learn vlearn v

llii = i+1 message delays (i=1..3) = i+1 message delays (i=1..3)

PODC ’07: Refined Quorum Systems

Slide 21

(Some) Open questions(Some) Open questions

• Authentication and weaker Authentication and weaker semanticssemantics

• Number of RQS given a set S and Number of RQS given a set S and adversaryadversary

• Opaque RQSOpaque RQS

PODC ’07: Refined Quorum Systems

Slide 22

SummarySummary

An abstraction to deviseAn abstraction to devise

resilient & optimistic algorithmsresilient & optimistic algorithms

Refined Quorum Systems Refined Quorum Systems

(RQS)(RQS)

PODC ’07: Refined Quorum Systems

Slide 23

Thank youThank you


Recommended