Issue No.03 - March (1999 vol.10)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/71.755824
<p><b>Abstract</b>—Distributed computer systems are increasingly being employed for critical applications, such as aircraft control, industrial process control, and banking systems. Maximizing performance has been the conventional objective in the allocation of tasks for such systems. Inherently, distributed systems are more complex than centralized systems. The added complexity could increase the potential for system failures. Some work has been done in the past in allocating tasks to distributed systems, considering reliability as the objective function to be maximized. Reliability is defined to be the probability that none of the system components fails while processing. This, however, does not give any guarantees as to the behavior of the system when a failure occurs. A failure, not detected immediately, could lead to a catastrophe. Such systems are <it>unsafe</it>. In this paper, we describe a method to determine an <it>allocation that introduces safety</it> into a heterogeneous distributed system and at the same time attempts to maximize its reliability. First, we devise a new heuristic, based on the concept of <it>clustering</it>, to allocate tasks for maximizing reliability. We show that for task graphs with precedence constraints, our heuristic performs better than previously proposed heuristics. Next, by applying the concept of <it>task-based fault tolerance</it>, which we have previously proposed, we add extra <it>assertion</it> tasks to the system to make it safe. We present a new heuristic that does this in such a way that the decrease in reliability for the added safety is minimized. For the purpose of allocating the extra tasks, this heuristic performs as well as previously known methods and runs an order of magnitude faster. We present a number of simulation results to prove the efficacy of our scheme.</p>
Allocation, clustering, distributed systems, reliability, safety.
Santhanam Srinivasan, Niraj K. Jha, "Safety and Reliability Driven Task Allocation in Distributed Systems", IEEE Transactions on Parallel & Distributed Systems, vol.10, no. 3, pp. 238-251, March 1999, doi:10.1109/71.755824