logo

Distributed consensus

PDF Publication Title:

Distributed consensus ( distributed-consensus )

Previous Page View | Next Page View | Return to Search List

Text from PDF Page: 031

CHAPTER 2. CONSENSUS & CLASSIC PAXOS 31 of available epochs (Algorithm 3, line 4). For simplicity, we have the proposers try epochs in-order, though it is safe for the proposer to use any unused epoch. The message prepare(e) is sent to all acceptors (Algorithm 3, line 5) and the proposer waits for responses. As promises are received, the proposer tracks the maximum epoch, emax, received in a proposal and its associated value, v (Algorithm 3, lines 8-11). If a promise does not include a proposal then the maximum epoch, emax, and its associated value, v, arenotupdated(Algorithm3,line10).ThesetQP trackswhichacceptorshavepromised thus far. If promises are not received from a majority of acceptors before a timeout then the algorithm retries (Algorithm 3, lines 6, 12-13). If no proposals were received with promises, the proposal value v is set to the candidate value γ (Algorithm 3, lines 14-15). The proposer then sends propose(e,v) to the acceptors (Algorithm 3, line 16). The proposer will return value v (Algorithm 3, line 23) after the majority of acceptors accept the proposal (e, v) (Algorithm 3, lines 17-20) and retry otherwise (Algorithm 3, lines 21-22). Note that all other messages which are received by the proposer but do not match a switch statement (such as messages from previous epochs or promises during phase two) can be safely ignored. 2.2.2 Acceptor algorithm Algorithm 4: Acceptor algorithm for Classic Paxos 1 2 3 4 5 6 7 8 9 10 11 state : • epro: last promised epoch (persistent) • eacc: last accepted epoch (persistent) while true do switch do case prepare(e) received from proposer if epro =nil∨e≥epro then epro ← e send promise(e,eacc,vacc) to proposer case propose(e,v) received from proposer if epro =nil∨e≥epro then epro ← e vacc ←v,eacc ←e send accept(e) to proposer The acceptors in Classic Paxos are responsible for handling incoming prepare and propose messages. The logic for this is described in Algorithm 412. All messages, whether prepare(e) 12Algorithm 4 uses the variable vacc, however it is not included in the state list. Due to space limitations,

PDF Image | Distributed consensus

distributed-consensus-031

PDF Search Title:

Distributed consensus

Original File Name Searched:

UCAM-CL-TR-935.pdf

DIY PDF Search: Google It | Yahoo | Bing

Cruise Ship Reviews | Luxury Resort | Jet | Yacht | and Travel Tech More Info

Cruising Review Topics and Articles More Info

Software based on Filemaker for the travel industry More Info

The Burgenstock Resort: Reviews on CruisingReview website... More Info

Resort Reviews: World Class resorts... More Info

The Riffelalp Resort: Reviews on CruisingReview website... More Info

CONTACT TEL: 608-238-6001 Email: greg@cruisingreview.com | RSS | AMP