Message complexity of distributed algorithms revisited
Distributed systems offer many features such as resource sharing, scalability, fault tolerance and reliability. Several distributed algorithms have been proposed in literature to solve fundamental problems such as mutual exclusion and leader election in distributed systems. When more than one algorithm is invented to solve the same problem particularly in asynchronous distributed systems, their performance is compared mostly based on the message complexity. This paper reviews the concept of message complexity and offers more clarity by studying the performance of the two most popular distributed algorithms - Ricart-Agrawala's algorithm and Raymond algorithm designed to solve the mutual exclusion problem. The paper has four main contributions (i) observes how the message complexity is understood and computed in the asynchronous distributed system so far and exposes its elusiveness; (ii) offers a more suitable definition of message complexity; (iii) briefly presents the simulator designed to study the performance of the distributed algorithms using the refined metric; and finally (iv) discusses about the simulation study to illustrate the significance and usefulness of the proposed metric.