Handling Emergent Nondeterminism in Replicated Services
نویسندگان
چکیده
When distributed applications are replicated for fault tolerance, the presence of even a single nondeterministic service can lead to emergent system-wide nondeterminism that compromises replica consistency. Our approach, Midas identifies and addresses multiple sources of nondeterminism (including system calls, multithreading, etc.) in a multi-service replicated distributed architecture. Midas involves a synergistic combination of compile-time dependency, concurrency and nondeterminism analyses, followed by the performance-sensitive compensation of nondeterminism at runtime. This approach upholds existing application semantics and allows services to continue to be nondeterministic, while yet maintaining their replicas consistent. We demonstrate Midas’ scalability through a microbenchmark that shows the underlying tradeoffs under different kinds of dependencies between clients, services and invocations in a distributed system. We also validate our claims by modeling a representative multi-service application using Java Pathfinder.
منابع مشابه
Living with Nondeterminism in Replicated Middleware Applications
Application-level nondeterminism can lead to inconsistent state that defeats the purpose of replication as a fault-tolerance strategy. We present Midas, a new approach for living with nondeterminism in distributed, replicated, middleware applications. Midas exploits (i) the static program analysis of the application’s source code prior to replica deployment and (ii) the online compensation of r...
متن کاملLanguages for Reactive Specifications: Synchrony Vs Asynchrony
Asynchronous and Synchronous languages have been in use for the speciication of reactive systems. One of the main distinguishing features of these two classes lies in the way nondeterminism is used for the specii-cation of programs. From this viewpoint, we analyze CSP (a typical asynchronous language) and Esterel (a synchronous language). The synchronous language Esterel is based on the notions...
متن کاملProving Correctness of an Efficient Abstraction for Interrupt Handling
This paper presents an approach to the efficient abstraction of interrupt handling in microcontroller systems. Such systems usually operate in uncertain environments, giving rise to a high degree of nondeterminism in the corresponding formal models, which in turn aggravates the state explosion problem. Careful handling of nondeterminism is therefore crucial for obtaining efficient model checkin...
متن کاملAbout time nondeterminism and exception handling in a temporal extension of LOTOS
The paper deals with the study of a temporal extension of Basic LOTOS, and addresses in particular issues related to the expression of time nondeterminism and to the speciication of temporal exception handling behaviors. The underlying framework of the proposed extension stems from our previous proposal, RT-LOTOS, and from the work conducted by G. Leduc on Timed LOTOS and, more recently on ET-L...
متن کاملRigorous Simulation-Based Analysis of Linear Hybrid Systems
Design analysis of Cyber-Physical Systems (CPS) with complex continuous and discrete behaviors, in-practice, relies heavily on numerical simulations. While useful for evaluation and debugging, such analysis is often incomplete owing to the nondeterminism in the discrete transitions and the uncountability of the continuous space. In this paper, we present a precise notion of simulations for CPS ...
متن کامل