The Voltan application programming environment for fail-silent processes

D. A. Black, Colin Low, Santosh Kumar Shrivastava · Distributed Systems Engineering · 1998

The Voltan software library for building distributed applications provides the support for (i) a process pair to act as a single Voltan self-checking `fail-silent' process; and (ii) connection management for Voltan process communication. A Voltan fail-silent process is written by the application developer as a single threaded program. The Voltan system replicates this program transparently. The active replication of applications engenders problems when dealing with non-deterministic calculations. This paper outlines the mechanisms deployed by Voltan to deal with non-determinism. The current implementation can achieve a level of performance that is suitable for many real-time applications. The work described in this paper provides a way of solving the challenging problem of constructing fault-tolerant distributed computing systems capable of tolerating Byzantine failures, using general-purpose, low-cost components. The present practice is to employ hardware-based approaches to construct a `fail-silent' node using a self-checking processor pair working in lock-step. However, this approach is very costly in terms of the engineering effort required, and further, as processor speeds increase, keeping a pair in lock-step execution may prove difficult.

Read the paper · More papers on PaperTik