St. Lawrence University

Festival of Science 2003

Vivek Bachhawat '03

"Byzantine Generals: Who is Loyal, Who is Not?"

Faculty Advisor: Dr. Brian C. Ladd, Mathematics, Computer Science, and Statistics Dept.

 Oral Presentation Abstract:
This study will discuss the process of reaching a consensus among various non-faulty computers in a distributed computer system. A distributed system refers to a collection of computers that perform collectively on a large task by sharing resources.  They achieve this by working independently but coordinating their actions with other processors.  The individual (faulty) systems can exhibit inconsistent behavior and relay conflicting information to other computers in a distributed system. It is important for the non-faulty computers to make the ‘right’ decisions despite the presence of faulty systems. This presentation will include a live demonstration of two algorithms and discuss the assumptions in the process of achieving unanimity among the non-faulty computers and identify the conditions under which this unanimity remains valid. These algorithms provide solution for Byzantine system failures in a synchronous distributed system. Byzantine Generals Problem, as described by Lamport et al. (1982), is used as a model to discuss algorithms for Byzantine failures. Byzantine Generals Problem is stated as “… a group of generals of the Byzantine army camped with their troops around an enemy city. Communicating only by messenger, the generals must agree upon a common battle plan. However, one or more of them may be traitors who will try to confuse the others. The problem is to find an algorithm to ensure that the loyal generals will reach an agreement.”

Created: 4/21/03