Issue No. 01 - January (1994 vol. 5)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/71.262588
<p>In a fault-tolerant distributed system, different non-faulty processes may arrive atdifferent values for a given system parameter. To resolve this disagreement, processesmust exchange and vote upon their respective local values. Faulty processes mayattempt to inhibit agreement by acting in a malicious or "Byzantine" manner. Approximate agreement defines one form of agreement in which the voted values obtained by the non-faulty processes need not be identical. Instead, they need only agree to within a predefined tolerance. Approximate agreement can be achieved by a sequence of convergent voting rounds, in which the range of values held by non-faulty processes isreduced in each round. Historically, each new convergent voting algorithm has beenaccompanied by ad-hoc proofs of its convergence rate and fault-tolerance, using anoverly conservative fault model in which all faults exhibit worst-case Byzantine behavior.This paper presents a general method to quickly determine convergence rate andfault-tolerance for any member of a broad family of convergent voting algorithms. Thismethod is developed under a realistic mixed-mode fault model comprised of asymmetric,symmetric, and benign fault modes. These results are employed to more accuratelyanalyze the properties of several existing voting algorithms, to derive a sub-family ofoptimal mixed-mode voting algorithms, and to quickly determine the properties ofproposed new voting algorithms.</p>
Index Termsfault tolerant computing; reliability; distributed processing; synchronisation; mixed-modefaults; approximate agreement; fault-tolerant distributed system; convergent votingalgorithm; worst-case Byzantine behavior; voting algorithms
R. Kieckhafer and M. Azadmanesh, "Reaching Approximate Agreement with Mixed-Mode Faults," in IEEE Transactions on Parallel & Distributed Systems, vol. 5, no. , pp. 53-63, 1994.