1 / 7

Consensus Impossibility

Consensus Impossibility. Dennis Shasha (following Lynch, Fischer, Patterson). Failure Model. Processes can fail-stop (but that is all; no fail traitorous). Communication is two-way. Messages can be dropped or take an arbitrarily long time.

washi
Download Presentation

Consensus Impossibility

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. Consensus Impossibility Dennis Shasha (following Lynch, Fischer, Patterson)

  2. Failure Model • Processes can fail-stop (but that is all; no fail traitorous). • Communication is two-way. • Messages can be dropped or take an arbitrarily long time. • To show: no algorithm can guarantee to solve consensus in the face of fail-stop processes and unlimited message delays.

  3. Bald Man’s Paradox • Man with a full head of hair is not bald. • Man with no hair is bald. • Suppose you tell me that a man with x number of hairs or more is not bald. • Suppose the man has an opaque patch on his head • Outside of patch, man has less than x number of hairs. • What’s under patch determines status!

  4. Consensus Problem Simplified • Every input process has either a 0 or 1. • If all working processes have 1 initially, then all should conclude 1. • If all working processes have 0 initially, then all should conclude 0 • In any other case, all should conclude either 0 or 1 but they must all agree.

  5. Terminology • State is just set of states of individual processes. • State is univalent for 1 (respectively 0), if, regardless of failures, the conclusion will be 1 (respectively 0). • State is bivalent if could go either to 0 or to 1.

  6. There must be some bivalent initial states • Suppose that every initial state having at least x% of 1s is univalent for 1 and any less is univalent for 0. • If one process is not communicating, then maybe that would make the difference. • So others can’t decide. • Therefore that state is bivalent.

  7. From Every Bivalent State, another bivalent state is reachable • Suppose some message sent and received changes the state from bivalent to univalent. • If that message can be lost, then state is still bivalent. • Conclusion: we can be bivalent forever. • Nota Bene: might be very unlikely to remain in such a state (e.g. two phase commit).

More Related