Received: 8 June 2017 Revised: 14 February 2018 Accepted: 7 March 2018 DOI: 10.1002/dac.3583 RESEARCH ARTICLE A novel leader election algorithm based on resources for ring networks Tarun Biswas 1 Rajat Bhardwaj 2 Anjan Kumar Ray 1 Pratyay Kuila 1 1 Department of Computer Science and Engineering, National Institute of Technology Sikkim, Ravangla, Sikkim 737139, India 2 Department of Electrical and Electronics Engineering, National Institute of Technology Sikkim, Ravangla, Sikkim 737139, India Correspondence Pratyay Kuila, Department of Computer Science and Engineering, National Institute of Technology Sikkim, Ravangla, Sikkim 737139, India. Email: pratyay_kuila@yahoo.com Summary The leader node in a distributed computing system is responsible to establish coordination among all other nodes that are situated apart geographically. Selec- tion of a suitable leader is one of the major and challenging problems. In this paper, a novel leader election algorithm is proposed based on resources of each node in a ring network. All the nodes compute resource strength values by con- sidering available resources like CPU, memory capacity, and residual energy. A node with the highest resource strength over the network is elected as the leader. The proposed algorithm has also considered sudden failure of the nodes particularly when it is the leader node. Moreover, addition of new nodes is also considered. The proposed algorithm shows improvement on message com- plexity over the network and resource-based priority generation, which helps in efficient election of the leader. To validate, the proposed algorithm is exten- sively simulated as well as real-life hardware experiment is also done. In the experiment, 2 cases are considered with different weight of the resources, and consequent effects are shown. The results are also compared with the exist- ing algorithms, and it is observed that the proposed work comparably performs better that the existing related algorithms. KEYWORDS distributed computing systems, election message, leader election, resource strength, ring networks 1 INTRODUCTION 1.1 Background and motivations A distributed system is a combination of different computing nodes, interconnected by a communication network. A node can accept and share information. The communication between nodes is done by transmitting messages, commonly known as message passing. 1 There are several types of distributed systems, such as grids, 2 peer-to-peer systems, 3 ad hoc networks, 4 cloud computing systems, 5 pervasive computing systems, 6 and online social network systems. 7 Distributed systems have a wide range of real-life applications, such as web services, scientific computations, and file storages. An application is divided into a set of sub processes those are executed on different nodes of the distributed system, and gen- erally the nodes are situated apart geographically. It is very important as well as challenging to maintain and synchronize the executable processes among the nodes. Without a proper synchronization, the system may lead to an inconsistent state and that in turns produces an ambiguous and unacceptable results. To solve the problem, one of the nodes from the system is selected as a leader. The leader node is responsible to establish coordination among all the nodes. 8,9 The leader Int J Commun Syst. 2018;e3583. wileyonlinelibrary.com/journal/dac Copyright © 2018 John Wiley & Sons, Ltd. 1 of 13 https://doi.org/10.1002/dac.3583