Distributed systems of simple interacting agents

Based on earlier research on population protocols, we establish a theoretical model to study distributed systems of simple anonymous interacting agents. We define global fairness to model nondeterministic scheduling in loosely-coupled distributed systems and show that global fairness is a realistic assumption and useful abstraction in many circumstances. Fault-tolerance is a critical requirement for most tasks in the systems we consider. We study fault-tolerance in this model from two aspects: self-stabilization and distributed consensus. Self-stabilization is a way to design algorithms that tolerate arbitrary transient faults. In the type of systems we study, most of the known algorithms and even problem definitions are no longer applicable. We give the appropriate definitions and present self-stabilizing algorithms for a number of important problems including token circulation, distance-2 coloring, ring orientation, spanning-tree construction, and leader election, with some constraints on the underlying interaction graph or external inputs. To achieve constant-space uniform self-stabilizing leader election in rings under the assumption of global fairness, we introduce the failure detector Ω? to provide the agents with limited eventually-correct global information concerning the presence or absence of leader(s). Ω? can be implemented in practice with simple mechanisms such as timeouts. On the other hand, uniform self-stabilizing leader election is impossible, under local fairness, even with the help of Ω?. It is known that consensus is impossible in the presence of even one crash failure in an asynchronous system. We define a nonterminating version of the consensus problem appropriate to our model of computation called stabilizing consensus which allows the inputs and outputs to change over time and requires the outputs of non-faulty agents to eventually reach agreement if the inputs of non-faulty agents stabilize. We present stabilizing-consensus algorithms in the presence of both crash failures and Byzantine failures. To tolerate Byzantine failures, it is necessary to augment agents with partial identifiers, and the number of Byzantine faults must be less than one-third of the total number of distinct identifiers.

[1]  Jerrold R. Griggs,et al.  Labelling Graphs with a Condition at Distance 2 , 1992, SIAM J. Discret. Math..

[2]  Ferial El-Hawary,et al.  The Electrical Engineering Handbook Series , 2004 .

[3]  Silvio Micali,et al.  Optimal algorithms for Byzantine agreement , 1988, STOC '88.

[4]  Vicsek,et al.  Novel type of phase transition in a system of self-driven particles. , 1995, Physical review letters.

[5]  Mohammad Ilyas,et al.  Smart Dust , 2006 .

[6]  Edsger W. Dijkstra,et al.  Self-stabilizing systems in spite of distributed control , 1974, CACM.

[7]  Michael Ben-Or,et al.  Another advantage of free choice (Extended Abstract): Completely asynchronous agreement protocols , 1983, PODC '83.

[8]  Bharat K. Bhargava,et al.  Data Consistency in Intermittently Connected Distributed Systems , 1999, IEEE Trans. Knowl. Data Eng..

[9]  Leslie Lamport,et al.  The part-time parliament , 1998, TOCS.

[10]  Daniele Varacca New Perspectives of Fairness , 2006, Bull. EATCS.

[11]  David Eisenstat,et al.  Stably computable predicates are semilinear , 2006, PODC '06.

[12]  David Powell,et al.  A Survey of Dependability Issues in Mobile Wireless Networks , 2003 .

[13]  Michael J. Fischer,et al.  Self-stabilizing population protocols , 2005, TAAS.

[14]  Jie Lin,et al.  Coordination of groups of mobile autonomous agents using nearest neighbor rules , 2003, IEEE Trans. Autom. Control..

[15]  Shlomi Dolev,et al.  Memory requirements for silent stabilization , 1996, PODC '96.

[16]  Tracy Camp,et al.  Comparison of broadcasting techniques for mobile ad hoc networks , 2002, MobiHoc '02.

[17]  Sam Toueg,et al.  The weakest failure detector for solving consensus , 1996, JACM.

[18]  Janos Simon,et al.  Deterministic, Constant Space, Self-Stabilizing Leader Election on Uniform Rings , 1995, WDAG.

[19]  Soma Chaudhuri,et al.  More Choices Allow More Faults: Set Consensus Problems in Totally Asynchronous Systems , 1993, Inf. Comput..

[20]  David Eisenstat,et al.  On the Power of Anonymous One-Way Communication , 2005, OPODIS.

[21]  Michael J. Fischer,et al.  Self-stabilizing Leader Election in Networks of Finite-State Anonymous Agents , 2006, OPODIS.

[22]  Philippe Pucheral,et al.  A Unilateral Commit Protocol for Mobile and Disconnected Computing , 2005 .

[23]  Leslie Lamport,et al.  Reaching Agreement in the Presence of Faults , 1980, JACM.

[24]  Linda Briesemeister,et al.  Group membership and communication in highly mobile ad hoc networks , 2001 .

[25]  Paul G. Spirakis,et al.  Smart dust protocols for local detection and propagation , 2002, POMC '02.

[26]  Nancy A. Lynch,et al.  Easy impossibility proofs for distributed consensus problems , 1985, PODC '85.

[27]  Nancy A. Lynch,et al.  Reaching approximate agreement in the presence of faults , 1986, JACM.

[28]  Randy H. Katz,et al.  Next century challenges: mobile networking for “Smart Dust” , 1999, MobiCom.

[29]  Nitin H. Vaidya,et al.  A Mutual Exclusion Algorithm for Ad Hoc Mobile Networks , 2001, Wirel. Networks.

[30]  Arobinda Gupta,et al.  An Exercise in Fault-Containment: Self-Stabilizing Leader Election , 1996, Inf. Process. Lett..

[31]  Daniel Barbará,et al.  Mobile Computing and Databases - A Survey , 1999, IEEE Trans. Knowl. Data Eng..

[32]  Nancy A. Lynch,et al.  Impossibility of distributed consensus with one faulty process , 1985, JACM.

[33]  Sam Toueg,et al.  Unreliable failure detectors for reliable distributed systems , 1996, JACM.

[34]  Jennifer L. Welch,et al.  Random walk for self-stabilizing group communication in ad-hoc networks , 2002, 21st IEEE Symposium on Reliable Distributed Systems, 2002. Proceedings..

[35]  Danny Dolev,et al.  The Byzantine Generals Strike Again , 1981, J. Algorithms.

[36]  Rachid Guerraoui,et al.  The weakest failure detectors to solve certain fundamental problems in distributed computing , 2004, PODC '04.

[37]  Danny Dolev,et al.  Authenticated Algorithms for Byzantine Agreement , 1983, SIAM J. Comput..

[38]  Michael J. Fischer,et al.  Stabilizing Consensus in Mobile Networks , 2006, DCOSS.

[39]  Michael O. Rabin,et al.  Randomized byzantine generals , 1983, 24th Annual Symposium on Foundations of Computer Science (sfcs 1983).

[40]  Tore Syversen,et al.  Electronic shepherd - a low-cost, low-bandwidth, wireless network system , 2004, MobiSys '04.

[41]  Ted Herman,et al.  Probabilistic Self-Stabilization , 1990, Information Processing Letters.

[42]  Leslie Lamport,et al.  The Byzantine Generals Problem , 1982, TOPL.

[43]  Leonid A. Levin,et al.  Fast and lean self-stabilizing asynchronous protocols , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[44]  Michael D. Schroeder,et al.  A state-of-the-art distributed system: computing with BOB , 1993 .

[45]  Danny Dolev,et al.  Polynomial algorithms for multiple processor agreement , 1982, STOC '82.

[46]  R. Dorf,et al.  The handbook of ad hoc wireless networks , 2003 .

[47]  Hagit Attiya,et al.  Achievable cases in an asynchronous environment , 1987, 28th Annual Symposium on Foundations of Computer Science (sfcs 1987).

[48]  Michael J. Fischer,et al.  Computation in networks of passively mobile finite-state sensors , 2004, PODC '04.

[49]  Amos Israeli,et al.  Uniform Dynamic Self-Stabilizing Leader Election , 1997, IEEE Trans. Parallel Distributed Syst..

[50]  Elizabeth M. Belding-Royer,et al.  A review of current routing protocols for ad hoc mobile wireless networks , 1999, IEEE Wirel. Commun..

[51]  Nitin H. Vaidya,et al.  Leader election algorithms for mobile ad hoc networks , 2000, DIALM '00.

[52]  Maria Gradinariu Potop-Butucaru,et al.  Memory space requirements for self-stabilizing leader election protocols , 1999, PODC '99.

[53]  Lisa Higham,et al.  Self-Stabilizing Token Circulation on Anonymous Message Passing Rings (Extended Abstract) , 1998 .

[54]  Michael J. Fischer,et al.  Stably Computable Properties of Network Graphs , 2005, DCOSS.

[55]  Colette Johnen,et al.  Bounded service time and memory space optimal self-stabilizing token circulation protocol on unidirectional rings , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[56]  Maria Gradinariu Potop-Butucaru,et al.  Self-stabilizing Neighborhood Unique Naming under Unfair Scheduler , 2001, Euro-Par.

[57]  Sébastien Tixeuil,et al.  A Distributed TDMA Slot Assignment Algorithm for Wireless Sensor Networks , 2004, ALGOSENSORS.

[58]  Ehud Shapiro,et al.  Bringing DNA computers to life , 2006 .

[59]  Sape J. Mullender,et al.  Distributed systems (2nd Ed.) , 1993 .

[60]  Michael J. Fischer,et al.  The Consensus Problem in Unreliable Distributed Systems (A Brief Survey) , 1983, FCT.

[61]  Rafail Ostrovsky,et al.  Self-stabilizing symmetry breaking in constant-space (extended abstract) , 1992, STOC '92.