3 research outputs found
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
Recommended from our members
Initialisation Problems in Feature Composition
Composing features that have inconsistent requirements may lead to feature interactions that violate requirements satisfied by each feature in isolation. These interactions manifest themselves as conflicts on shared resources. Arbitration is a common approach to resolving such conflicts that uses prioritisation to decide which feature has access to resources when there is a conflict. However, arbitration alone does not guarantee satisfaction of the requirement of the feature that eventually gains access to a resource. This is because arbitration does not take into account that the resource may be in a state that is inconsistent with that expected by the feature. We call this the initialisation problem.
In this thesis we propose an approach to addressing the initialisation problem which combines arbitration with contingencies. Contingency means having several specifications per feature satisfying the same requirement, depending on the current resource state. We illustrate and validate our approach by applying it to resolving conflicts between features in smart home and automotive domains. The validation shows that contingencies complement arbitration by enabling satisfaction of the requirement of the feature that eventually gains access to a shared resource, regardless of the current state of the resource.
The main contribution of this thesis is an approach to analysing initialisation concerns in feature composition. At the core of our approach is an explicit consideration of all possible states of a resource as potential initial states. Given each initial state we then derive corresponding specifications that would enable a feature to satisfy its requirement in those states. We show that our approach to initialisation problems is relevant to addressing the feature interaction problem by characterising some types of conflicts as initialisation concerns
Topics in Distributed Algorithms: On Wireless Networks, Distributed Storage and Streaming
Distributed algorithms are executed on a set of computational instances. Werefer to these instances as nodes. Nodes are runningconcurrently and are independent from each other. Furthermore, they have their own instructions and information. In this context, the challenges are to show thatthe algorithm is correct, regardless of computational, or communication delaysand to show bounds on the usage of communication.We are especially interested the behaviour after transient faults and underthe existence of Byzantine nodes.This thesis discusses fundamental communication models for distributed algorithms. These models are implementing abstract communication methods. First, we address medium access control for a wireless medium with guaranteeson the communication delay. We discuss time division multiple access(TDMA) protocols for ad-hoc networks and we introduce an algorithm that creates aTDMA schedule without using external references for localisation, or time. We justify our algorithm by experimental results.The second topic is the emulation of shared memory on message passingnetworks. Both, shared memory and message passing are basic interprocessorcommunication models for distributed algorithms. We are providing a way ofemulating shared memory on top of an existing message passing network underthe presence of data corruption and stop-failed nodes. Additionally, we ensurethe privacy of the data that is stored in the shared memory. The third topic looks into streaming algorithms and optimisation. We study the problem of sorting a stream ofvehicles on a highway with severallanes so that each vehicle reaches its target lane. We look into optimality interms of minimising the number of move operations, as well as, minimising the length of the output stream. We present an exact algorithm for the case oftwo lanes and show that NP-Hardness for a increasing number of lanes