368 research outputs found
Local algorithms : Self-stabilization on speed
Non peer reviewe
Self-stabilizing tree algorithms
Designers of distributed algorithms have to contend with the problem of making the algorithms tolerant to several forms of coordination loss, primarily faulty initialization. The processes in a distributed system do not share a global memory and can only get a partial view of the global state. Transient failures in one part of the system may go unnoticed in other parts and thus cause the system to go into an illegal state. If the system were self-stabilizing, however, it is guaranteed that it will return to a legal state after a finite number of state transitions. This thesis presents and proves self-stabilizing algorithms for calculating tree metrics and for achieving mutual exclusion on a tree structured distributed system
On the Limits and Practice of Automatically Designing Self-Stabilization
A protocol is said to be self-stabilizing when the distributed system executing it is guaranteed to recover from any fault that does not cause permanent damage. Designing such protocols is hard since they must recover from all possible states, therefore we investigate how feasible it is to synthesize them automatically. We show that synthesizing stabilization on a fixed topology is NP-complete in the number of system states. When a solution is found, we further show that verifying its correctness on a general topology (with any number of processes) is undecidable, even for very simple unidirectional rings. Despite these negative results, we develop an algorithm to synthesize a self-stabilizing protocol given its desired topology, legitimate states, and behavior. By analogy to shadow puppetry, where a puppeteer may design a complex puppet to cast a desired shadow, a protocol may need to be designed in a complex way that does not even resemble its specification. Our shadow/puppet synthesis algorithm addresses this concern and, using a complete backtracking search, has automatically designed 4 new self-stabilizing protocols with minimal process space requirements: 2-state maximal matching on bidirectional rings, 5-state token passing on unidirectional rings, 3-state token passing on bidirectional chains, and 4-state orientation on daisy chains
Self-stabilizing distributed algorithms for acyclic graphs
A self-stabilizing distributed system is a network of processors, which when started from an arbitrary and possibly illegal state, always returns to a legal state in a finite number of steps. Two self-stabilizing protocols for distributed systems are presented in this thesis. The first protocol topologically sorts the processors in a distributed system of directed acyclic graph (DAG) topology and uses this information to build a shortest path routing table in each node in the system to all accessible nodes from that node. The second protocol determines the rank of the individual processors in a distributed tree network based on the values possessed by them. Due to the self-stabilizing nature of these protocols the system can withstand transient errors and recover automatically from them
Self-Stabilization in the Distributed Systems of Finite State Machines
The notion of self-stabilization was first proposed by Dijkstra in 1974 in his classic paper. The paper defines a system as self-stabilizing if, starting at any, possibly illegitimate, state the system can automatically adjust itself to eventually converge to a legitimate state in finite amount of time and once in a legitimate state it will remain so unless it incurs a subsequent transient fault. Dijkstra limited his attention to a ring of finite-state machines and provided its solution for self-stabilization. In the years following his introduction, very few papers were published in this area. Once his proposal was recognized as a milestone in work on fault tolerance, the notion propagated among the researchers rapidly and many researchers in the distributed systems diverted their attention to it. The investigation and use of self-stabilization as an approach to fault-tolerant behavior under a model of transient failures for distributed systems is now undergoing a renaissance. A good number of works pertaining to self-stabilization in the distributed systems were proposed in the yesteryears most of which are very recent. This report surveys all previous works available in the literature of self-stabilizing systems
Learning-Based Constraint Satisfaction With Sensing Restrictions
In this paper we consider graph-coloring problems, an important subset of
general constraint satisfaction problems that arise in wireless resource
allocation. We constructively establish the existence of fully decentralized
learning-based algorithms that are able to find a proper coloring even in the
presence of strong sensing restrictions, in particular sensing asymmetry of the
type encountered when hidden terminals are present. Our main analytic
contribution is to establish sufficient conditions on the sensing behaviour to
ensure that the solvers find satisfying assignments with probability one. These
conditions take the form of connectivity requirements on the induced sensing
graph. These requirements are mild, and we demonstrate that they are commonly
satisfied in wireless allocation tasks. We argue that our results are of
considerable practical importance in view of the prevalence of both
communication and sensing restrictions in wireless resource allocation
problems. The class of algorithms analysed here requires no message-passing
whatsoever between wireless devices, and we show that they continue to perform
well even when devices are only able to carry out constrained sensing of the
surrounding radio environment
Making local algorithms efficiently self-stabilizing in arbitrary asynchronous environments
This paper deals with the trade-off between time, workload, and versatility
in self-stabilization, a general and lightweight fault-tolerant concept in
distributed computing.In this context, we propose a transformer that provides
an asynchronous silent self-stabilizing version Trans(AlgI) of any terminating
synchronous algorithm AlgI. The transformed algorithm Trans(AlgI) works under
the distributed unfair daemon and is efficient both in moves and rounds.Our
transformer allows to easily obtain fully-polynomial silent self-stabilizing
solutions that are also asymptotically optimal in rounds.We illustrate the
efficiency and versatility of our transformer with several efficient (i.e.,
fully-polynomial) silent self-stabilizing instances solving major distributed
computing problems, namely vertex coloring, Breadth-First Search (BFS) spanning
tree construction, k-clustering, and leader election
- …