Is 1 different from 12? Eli Gafni UCLA Eli Gafni UCLA.

Slides:



Advertisements
Similar presentations
College of Information Technology & Design
Advertisements

Shortest Vector In A Lattice is NP-Hard to approximate
Impossibility of Distributed Consensus with One Faulty Process
Two absolute bounds for distributed bit complexity Yefim Dinitz, Noam Solomon, 2007 Presented by: Or Peri & Maya Shuster.
N-Consensus is the Second Strongest Object for N+1 Processes Eli Gafni UCLA Petr Kuznetsov Max Planck Institute for Software Systems.
Paris, 3 Dec 2007MPRI Course on Concurrency MPRI – Course on Concurrency Lecture 12 Probabilistic process calculi Catuscia Palamidessi LIX, Ecole Polytechnique.
The weakest failure detector question in distributed computing Petr Kouznetsov Distributed Programming Lab EPFL.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Consensus Steve Ko Computer Sciences and Engineering University at Buffalo.
Bigamy Eli Gafni UCLA GETCO Outline Models, tasks, and solvability What is SM? r/w w.f. asynch computability Sperner Lemma as a consequence of the.
Analysis of Algorithms
Gossip and its application Presented by Anna Kaplun.
Computer Science 425 Distributed Systems CS 425 / ECE 428 Consensus
Outline. Theorem For the two processor network, Bit C(Leader) = Bit C(MaxF) = 2[log 2 ((M + 2)/3.5)] and Bit C t (Leader) = Bit C t (MaxF) = 2[log 2 ((M.
R/W Reductions Eli Gafni UCLA Disc Godel Celebration 10/4/04.
R/W Reductions Eli Gafni UCLA ICDCN06 12/30. Outline Tasks and r/w impossible task: –2 cons –3 cons NP-completeness R/W reduction “Weakest Unsolvable.
Byzantine Generals Problem: Solution using signed messages.
Failure Detectors. Can we do anything in asynchronous systems? Reliable broadcast –Process j sends a message m to all processes in the system –Requirement:
State Machine Replication Project Presentation Ido Zachevsky Marat Radan Supervisor: Ittay Eyal Winter Semester 2010.
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Lecture IX: Coordination And Agreement.
1 Distributed Computing Algorithms CSCI Distributed Computing: everything not centralized many processors.
Distributed Algorithms: Asynch R/W SM Computability Eli Gafni, UCLA Summer Course, CRI, Haifa U, Israel.
CPSC 668Set 9: Fault Tolerant Consensus1 CPSC 668 Distributed Algorithms and Systems Spring 2008 Prof. Jennifer Welch.
Group-Solvability The Ultimate Wait-Freedom Eli Gafni UCLA DISC /4/04.
CSE115/ENGR160 Discrete Mathematics 03/03/11 Ming-Hsuan Yang UC Merced 1.
1 Fault-Tolerant Consensus. 2 Failures in Distributed Systems Link failure: A link fails and remains inactive; the network may get partitioned Crash:
Abstract Data Types (ADT)
Bit Complexity of Breaking and Achieving Symmetry in Chains and Rings.
Deriving an Algorithm for the Weak Symmetry Breaking Task Armando Castañeda Sergio Rajsbaum Universidad Nacional Autónoma de México.
Chapter Resynchsonous Stabilizer Chapter 5.1 Resynchsonous Stabilizer Self-Stabilization Shlomi Dolev MIT Press, 2000 Draft of Jan 2004, Shlomi.
Distributed Algorithms: Agreement Protocols. Problems of Agreement l A set of processes need to agree on a value (decision), after one or more processes.
CS 425 / ECE 428 Distributed Systems Fall 2014 Indranil Gupta (Indy) Lecture 19: Paxos All slides © IG.
The Design and Analysis of Algorithms
Data Compression Arithmetic coding. Arithmetic Coding: Introduction Allows using “fractional” parts of bits!! Used in PPM, JPEG/MPEG (as option), Bzip.
Quadratic Residuosity and Two Distinct Prime Factor ZK Protocols By Stephen Hall.
Distributed Consensus Reaching agreement is a fundamental problem in distributed computing. Some examples are Leader election / Mutual Exclusion Commit.
Lecture #12 Distributed Algorithms (I) CS492 Special Topics in Computer Science: Distributed Algorithms and Systems.
1 © P. Kouznetsov A Note on Set Agreement with Omission Failures Rachid Guerraoui, Petr Kouznetsov, Bastian Pochon Distributed Programming Laboratory Swiss.
1 Problem Solving using computers Data.. Representation & storage Representation of Numeric data The Binary System.
Review for Exam 2. Topics included Deadlock detection Resource and communication deadlock Graph algorithms: Routing, spanning tree, MST, leader election.
Ch11 Distributed Agreement. Outline Distributed Agreement Adversaries Byzantine Agreement Impossibility of Consensus Randomized Distributed Agreement.
1 Chapter 12 Consensus ( Fault Tolerance). 2 Reliable Systems Distributed processing creates faster systems by exploiting parallelism but also improve.
Error Control Code. Widely used in many areas, like communications, DVD, data storage… In communications, because of noise, you can never be sure that.
DISTRIBUTED SYSTEMS II A POLYNOMIAL LOCAL SOLUTION TO MUTUAL EXCLUSION Prof Philippas Tsigas Distributed Computing and Systems Research Group.
CS 425/ECE 428/CSE424 Distributed Systems (Fall 2009) Lecture 9 Consensus I Section Klara Nahrstedt.
CSE 60641: Operating Systems Implementing Fault-Tolerant Services Using the State Machine Approach: a tutorial Fred B. Schneider, ACM Computing Surveys.
Chap 15. Agreement. Problem Processes need to agree on a single bit No link failures A process can fail by crashing (no malicious behavior) Messages take.
UNIVERSITY of WISCONSIN-MADISON Computer Sciences Department
1 Fault tolerance in distributed systems n Motivation n robust and stabilizing algorithms n failure models n robust algorithms u decision problems u impossibility.
Replication predicates for dependent-failure algorithms Flavio Junqueira and Keith Marzullo University of California, San Diego Euro-Par Conference, Lisbon,
DISTRIBUTED ALGORITHMS Spring 2014 Prof. Jennifer Welch Set 9: Fault Tolerant Consensus 1.
بسم الله الرحمن الرحيم My Project Huffman Code. Introduction Introduction Encoding And Decoding Encoding And Decoding Applications Applications Advantages.
1 Fault-Tolerant Consensus. 2 Communication Model Complete graph Synchronous, network.
Of 17 Limits of Local Algorithms in Random Graphs Madhu Sudan MSR Joint work with David Gamarnik (MIT) 7/11/2013Local Algorithms on Random Graphs1.
1 © R. Guerraoui Set-Agreement (Generalizing Consensus) R. Guerraoui.
Unreliable Failure Detectors for Reliable Distributed Systems Tushar Deepak Chandra Sam Toueg Presentation for EECS454 Lawrence Leinweber.
© 2007 P. Kouznetsov On the Weakest Failure Detector Ever Petr Kouznetsov (Max Planck Institute for SWS) Joint work with: Rachid Guerraoui (EPFL) Maurice.
1 AGREEMENT PROTOCOLS. 2 Introduction Processes/Sites in distributed systems often compete as well as cooperate to achieve a common goal. Mutual Trust/agreement.
PROBABILITY AND COMPUTING RANDOMIZED ALGORITHMS AND PROBABILISTIC ANALYSIS CHAPTER 1 IWAMA and ITO Lab. M1 Sakaidani Hikaru 1.
Computable Functions.
The Design and Analysis of Algorithms
Data Structures and Algorithms
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
A way to detect a collision…
Alternating Bit Protocol
Distributed Consensus
Agreement Protocols CS60002: Distributed Systems
Rodolfo Conde Joint work with Sergio Rajsbaum Instituto de Matemáticas
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
A Trusted Safety Verifier for Process Controller Code
Presentation transcript:

Is 1 different from 12? Eli Gafni UCLA Eli Gafni UCLA

OR Is theoretical distributed computing is a brunch of Mathematics or Engineering? What is theoretical distributed computing ``on one leg?’’ An algorithm has a geometric representation and a ``code’’ representation. Which should I use? Is theoretical distributed computing is a brunch of Mathematics or Engineering? What is theoretical distributed computing ``on one leg?’’ An algorithm has a geometric representation and a ``code’’ representation. Which should I use?

Consensus Task Two versions: 0-1: procs input is 0 or 1 All output o or all output 1 if output i then some proc input is i election: proc input is its id all output the same participating id Two versions: 0-1: procs input is 0 or 1 All output o or all output 1 if output i then some proc input is i election: proc input is its id all output the same participating id

k-set Cons (Chaudhuri 90) Two versions k-value: Proc’s input and output from {0,1,...,k} At most k distinct output, if i is output then some proc input is i k-Election: Proc input is its id All output together at most k participating ids Two versions k-value: Proc’s input and output from {0,1,...,k} At most k distinct output, if i is output then some proc input is i k-Election: Proc input is its id All output together at most k participating ids

1=?k Can any property of cons has it analogue to k-set cons? TST= 2 procs cons ? 0-1 cons = election ? State machine approach to distributed computing ? Can any property of cons has it analogue to k-set cons? TST= 2 procs cons ? 0-1 cons = election ? State machine approach to distributed computing ?

What about n Processors with m<n consensus? With 2-cons can do Test-and-Set

TST (Test-and-Set) TST: One proc output 0 all the rest 1 (2,1) k-TST: At most k at least one proc output 0 all the rest 1 (k+1,k) TST implementable for 2 proc cons =(2,1) k-TST implementable from (k+1,k) set cons. TST: One proc output 0 all the rest 1 (2,1) k-TST: At most k at least one proc output 0 all the rest 1 (k+1,k) TST implementable for 2 proc cons =(2,1) k-TST implementable from (k+1,k) set cons. n 3 2 1

But what about m=3 (3,1), (k+2,k)...[Afek, Weisberger] (3,1), (k+2,k)...[Afek, Weisberger]

Is View of k-set a la Chahudhuri is the most convenient? What will be the analogue of binary consensus? With consensus b.c.=election, how do I use at most k values to elect at most k leaders? What will be the analogue of binary consensus? With consensus b.c.=election, how do I use at most k values to elect at most k leaders?

All of DC ``on one foot!’’ Geometric approach Agreement: Geometric approach Agreement:

Digression: DC= -Agreement Center of Gravity MWMR Registers While total weight < W make next 0 into 1 at your corner Return CG

Algorithmically All processors return vertices from same triangle restricted to the face of participation a b c d...

How to converge on ``abstract’’ subdivided simplex Add ``weight’’ until the ``longest path’’ If not max add 1 and step one in shortest path to max Cannot converge without ``adding’’ unless n=2. Add ``weight’’ until the ``longest path’’ If not max add 1 and step one in shortest path to max Cannot converge without ``adding’’ unless n=2.

Ahm...but 2 procs can do independent cons with at least one output! Can do - agreement at least one agreement no proc will output ? But can do - agreement for any number of processors if I can group them in two groups With 2-set cons can solve at least one of 2 independent cons! Can do - agreement at least one agreement no proc will output ? But can do - agreement for any number of processors if I can group them in two groups With 2-set cons can solve at least one of 2 independent cons! ? ?

o-1 = election (k?) What is the meaning of 0-1 when it comes to k-set???

In General 3 procs Cons i=1,2,3 Say cons 2 -agreement on the line perpendicular to the base Only 2 lines intersect at a point 3 procs Cons i=1,2,3 Say cons 2 -agreement on the line perpendicular to the base Only 2 lines intersect at a point 1(2) 0(2) 0(2) 1 0

What if 2-set and 3 ind cons? 2 out of the 3 cons will return decision With k set cons and m>k ind cons then m- k+1 cons will return 2 out of the 3 cons will return decision With k set cons and m>k ind cons then m- k+1 cons will return Text

How to do Multi-Valued

Algorithmically 2 set = 2 ind cons at least on return Choose two vectors (a1,a2) (b1,b2) post vector proposal for cons on 1st entry if alone return for first entry else proceed return b2 for 2nd entry 2 set = 2 ind cons at least on return Choose two vectors (a1,a2) (b1,b2) post vector proposal for cons on 1st entry if alone return for first entry else proceed return b2 for 2nd entry

Algorithmically 2 set cons with 3 ind cons return from at least 2 con’s will have 2 3-entry vectors (a1,a2,a3) (b1,b2,b3) post for 1st, if alone return from 1st, post chosen value, proceed to 2nd if not alone proceed with B vector to second... Return all posted values 2 set cons with 3 ind cons return from at least 2 con’s will have 2 3-entry vectors (a1,a2,a3) (b1,b2,b3) post for 1st, if alone return from 1st, post chosen value, proceed to 2nd if not alone proceed with B vector to second... Return all posted values

How to do election from set binary-cons Will see ``prefix’’ of id for jth cons and propose a bit continuation for a leader name But how I know who return what from were: While I assume nobody returned in fact ``she just was late’’ Will see ``prefix’’ of id for jth cons and propose a bit continuation for a leader name But how I know who return what from were: While I assume nobody returned in fact ``she just was late’’

How to do Multi-Valued If take small enough if any proc commit all commit or adopt same adopt 0 adopt 1 commit 1 commit 0

1-State-Machine Want to emulate: Repeat: All send command to the ``center’’ Center chooses one and send it to all Implement in rounds in SM using consensus in each round Want to emulate: Repeat: All send command to the ``center’’ Center chooses one and send it to all Implement in rounds in SM using consensus in each round

2-State-Machine Want to emaulate Repeat synchronously All send to ``center1’’ and ``center2’’ at least one of which is omission non- faulty at the round Center(s) choose and send back Can emulate with 2-set cons? Want to emaulate Repeat synchronously All send to ``center1’’ and ``center2’’ at least one of which is omission non- faulty at the round Center(s) choose and send back Can emulate with 2-set cons?

Solution 2-State-Machine with 2-set cons Do 2 independents cons If get ``adopt v’’ at cons[i] the next command to cons[i] is the adopted value If the adopted value was commited all will propose same and commit If collid with the new value just commit the adopted Do 2 independents cons If get ``adopt v’’ at cons[i] the next command to cons[i] is the adopted value If the adopted value was commited all will propose same and commit If collid with the new value just commit the adopted

Too Numerous Ramifications Subsumes BG What is BG? If cannot answer 1st-cons both participate, will proceed to second, if collide in 2nd- cons, see exact positions in 1st-cons and can decide it Subsumes BG What is BG? If cannot answer 1st-cons both participate, will proceed to second, if collide in 2nd- cons, see exact positions in 1st-cons and can decide it ? 21 ?

Conclusions It is MATH.....