Bully Algorithm for Election in Distributed Systems
Abstract
One of the most indispensable circumstances that distributed systems encounter is an inconvenience and delay in the leader process, however, electing an authoritative leader is the imperative procedure for recovering from partial failure and continuing to perform the goal without any repercussions for main duties until a proper redress has been accomplished. Therefore, this paper aims to investigate and resolve the problem of the coordinator's failure with full interaction of message passing. However, for these spectacular distinguishing features of fault tolerance; the study utilized the bully algorithm with modern techniques of the PVM (Parallel Virtual Machine) software to think through this issue. The purpose of this, is choosing a new process with the highest number of coordinators, as PVM tool is mainly designed to be employed by a concurrent and heterogeneous environment, particularly, the possibility of providing a virtual view.
The implementation section shows the simulation of communication failure and the program testing steps. A clear description of the interaction of executed messages for all nodes is given. The proposed algorithm has been achieved and yielded varied outcomes, including full topology architecture with free crush during the election operations; moreover, the election algorithm has successfully elected the leader, the node which containing the highest figure. The source code program documentation was illustrated; as well as the entire PVM simulations of casting communications. The algorithm’s ambiance has been written in the C language, which supports concurrent computers and UNIX environment on Clusters Systems.