International Journal of Computer Applications (0975 – 8887)Volume 54– No.2, September 201225A Stable Covering Set-based Leader Election Algorithm(SCLEA) for Mobile Adhoc Distributed SystemsSanaa A. AlwidianDepartment of Computer Science and ApplicationsFaculty of Prince Al-Hussein Bin Abdallah II for ITThe Hashemite UniversityZarqa 13115, JordanAlaa N. AlslaityDepartment of Computer ScienceSchool of Computer and Information TechnologyJordan university of Science and TechnologyIrbid 22110, JordanABSTRACTLeader election process is known as the task of selecting aparticular node or a process to be a unique leader of thedistributed system. Many algorithms were proposed for leaderelection in classical, wired distributed systems. However, withthe advent of wireless communication technology, the domainof distributed computing becomes much wide, and theconcept of leader election in such environments has beenchanged due to the dynamic topology resulted from nodes’mobility. The existing classical leader election algorithms donot adapt well in mobile ad hoc environments. In this paper,we propose a new leader election algorithm that is consciousabout nodes’ mobility and the dynamic topology of ad hocnetworks. The main idea of our algorithm is to select a subsetof the nodes to participate in the election process, the selectednodes should ensure coverage of other nodes and that are oflow mobility. We show through mathematical analysis thatour proposed algorithm, the “Stable CoveringSet-BasedLeader Election Algorithm (SCLEA)” outperforms any otheralgorithm that depends on the simple flooding to performleader election. The enhancement of our algorithm is adventin terms of reducing the message overhead associated withleader election process and minimizing the number ofredundant ELECTION messages as much as possible.General TermsLeader Election Algorithms, Distributed Systems. Mobile Adhoc NetworksKeywordsVelocity, MANETs, Distributed System, Leader, LeaderElection, ELECTION message, CoveringSet1. INTRODUCTIONA distributed system is defined as a system that consists of acollection of independent computers (or processes) located atdifferent geographical areas . Due to the distributed natureof such systems, processes are expected to have equalresponsibilities and interact with each other through messagepassing with a desire that there would be no centralizedprocess that control and manage the system . However,with this-time technology, people recognized that this desirecould not be completely fulfilled, and there is a need to havean independent computer (or process) to be assigned an extraload and to be responsible about the coordination andmanagement of the system. This particular process is referredto as the leader.In distributed systems, a leader is responsible to act as aninitiator and a coordinator and to handle a specific job such asdirectory server, token regenerator and central lockcoordinator The process of selecting and assigning a unique leader in adistributed system is known as leader election problem. In theliterature, several leader election algorithms have beenproposed for classical distributed systems , , , .However, with the advent of wireless communicationtechnology, the domain of distributed computing becomesmuch wide, and the concept of leader election in suchenvironments has been changed due to the dynamic topologyresulted from nodes’ mobility. A network that consists ofmobile nodes that move arbitrarily causing the topology to bedynamic and unpredicted is known as a Mobile Ad hocNetwork (MANET) .Unlike the classical wired systems,MANETs have challenging characteristics including mobility,limited bandwidth and constrained resources (such as batterypower). Such features make leader election in MANETs anon-trivial mission.Many leader election algorithms have been proposed to workin ad hoc environments. However, most of them are describedas extrema-finding algorithms in which nodes are assumed tohave a unique ID numbers without considering any othercriteria such as mobility or computational capability , andthe elected leader is the node with the largest ID number. Inorder for a leader election algorithm to be deployable inMANETs, the algorithm should take into consideration thelimited resources and the mobility of nodes (not only the nodeID) as key factors to elect the best possible leader.In this paper, we propose a new leader election algorithm thatis conscious about nodes’ mobility and the dynamic topologyof ad hoc networks. We refer to our proposed algorithm asthe: Stable CoveringSet-based Leader Election Algorithm forMobile Ad Hoc Network (SCLEA).The main idea of our algorithm is to make preferences amongnodes such that only a subset of nodes that provide coverageof other nodes and that are of low mobility are chosen toparticipate in the election process to elect the best possibleleader. The best leader node is the node with lower velocitythan any other available nodes. Depending on the velocity ofnodes as a major factor to elect leaders ensures high stabilityof the network.Proposing this algorithm was motivated by two issues: first,the need to reduce the communication overhead in mobile adhoc environments that is resulted from the redundantexchange (or broadcast) of messages (ELECTION and OKmessages in the context of leader election). Such extra
International Journal of Computer Applications (0975 – 8887)Volume 54– No.2, September 201226transmission of messages will consume the limited resourcesof the ad hoc network such as battery power, bandwidth andbuffers capacity. The second issue that motivate us is the needto accommodate with the dynamic topology of mobile ad hocenvironment which resulted from the free and arbitrarymovement of nodes. Such free movement, if not taken intoconsideration, will have negative impacts on the leaderelection process, and might result in either an incorrectelection (i.e. the election of a high-mobility node), or an earlycrash of the leader (due to link breakages caused by the highmobility of nodes).During the design of our proposed algorithm, we take the twopreviously mentioned issues into consideration, and we comeup with an algorithm that is stable and that depends on aselected subset of nodes (called CoveringSet) to participate inthe leader election process instead of allowing all nodes to doso.The rest of this paper is organized as the following: Section 2discusses the related work. The objectives and assumptions ofthe proposed algorithm are discussed in Sections 3 and 4,respectively. Section 5 illustrates the proposed algorithm, anda mathematical analysis of the proposed algorithm is providedin Section 6. Finally Section 7 concludes the paper andprovides future directions.2. RELATED WORKLeader election is the process of electing a node (or a process)as the coordinator of a specific task that is distributed amongseveral nodes (processes). Leader election is not a recentproblem, and there are many algorithms designed for classic,static distributed systems. Bully algorithm designed byGarcia-Molina  is one of the most important traditionalelection algorithms. Bully algorithm works as follows: when anode N detects the crash of the current leader, it sends anELECTION message to all other nodes with IDs higher thanN’s ID. If no node answers, N wins the election and declaresitself as a leader. However, if one of the nodes with higher IDresponds, N takes over. The higher-up node that receives theelection message sends an OK message back to the sender toannounce that it is available and will take over the election.The receiver then holds an election unless it already holdingone. This process is repeated until all nodes give up but onlyone, which is eventually the newly elected leader. In Bullyalgorithm, the best case happens when the node that detectsthe leader crash is the node with an ID just below the crashedleader. In this case, the algorithm requires n-1 messages(where n is the total number of nodes in the system). In theworst case, that is, when the lowest-ID process detects thecrash, the algorithm requires O(n2) messages. In addition, thisalgorithm is not deployable in mobile ad hoc networksMamun et al  have proposed a modified version of bullyalgorithm to enhance the performance of the algorithm byminimizing the number of redundant election messages thatare used to discover and elect the leader. The algorithmproposed in  is more efficient than Bully algorithm interms of message and time complexity, in the best case, itrequires n-1 message, while in the worst case, it requires 2(n-1) messages. However, this algorithm also is not deployablein wireless ad hoc networksAnother modification of the bully algorithm had beenproposed in . The proposed algorithm is an overhead-aware leader election algorithm that is based on the basicassumptions of bully algorithm but outperforms the former interms of reducing message overhead and time complexity.The main aim of  is to perform leader election by sendinga minimum number of ELECTION messages as much aspossible. This goal is fulfilled by sorting the nodes in adescending order based on their IDs. Once the current leadergot crashed, the node with the next higher ID (after thecrashed leader) is elected as the new leader. Applying thisalgorithm for leader election sufficiently reduces the numberof election messages (O (N) in the worst case, where N is thetotal number of nodes in the system). Moreover, the numberof steps required to perform leader election is also reduced,resulting in time saving, as if compared to Bully algorithm.However, since the algorithm proposed in  relies on theassumption that the environment is reliable and each nodeknows about the entire nodes in the system, then it is difficultto apply this algorithm on unreliable environments such asmobile ad hoc networks.Gerard Le Lann  proposed the first leader electionalgorithm for unidirectional rings. The main idea of ringalgorithm is that each node prepares an election message thatcontains its own ID and circulates this message around thering clockwise. The process with the highest ID will have thepriority and assigned as the leader. Le Lann’s algorithmrequires n2messages to perform the election, where n is thetotal number of nodes. In addition, this algorithm is a singlepoint of failure and not efficient in mobile wirlessenvironments.Authors of  and  proposed leader election algorithmsfor wired networks. They take into consideration theprobability of process crash and link failure. However, theyassume strong and impractical assumptions. In , thenetwork is assumed to be order-preserving. This means that ifa particular message M1 sent by a node N1 at time T1, thismessage should be received by all nodes before receivinganother message M2 that is sent by some other node, say N2,at time T2, where T2>T1. In , the authors assumed thatthe failure of processes occur before election start. Suchimpractical assumptions make these algorithms notdeployable in mobile environments.Tai Woo Kum  proposes a leader election approach towork in mobile ad hoc networks. In this proposed work, nodestend to make another election of a provisional leader while theoriginal leader is still available and executing. The purpose ofthis extra election is to replace the leader with the provisionalleader when the current leader crashes. Although the approachof  can make the system operate fast and might reduce theperformance degradation in distributed systems, but this is notguaranteed always and failures of nodes and links can occur
International Journal of Computer Applications (0975 – 8887)Volume 54– No.2, September 201227during or after election, making the approach impractical inmobile ad hoc distributed systems, where link failure is of avital impact in the overall performance.The authors of  proposed two algorithms for mobile adhoc networks. The algorithms viewed the ad hoc network asDirected Acyclic Graph (DAC) and impose that eachconnected component of the graph should have a singleleader. The proposed leader election algorithms where builtbased on the routing algorithm TORA . The firstalgorithm designed to adapt to a single topology changes; thismeans that a new topology change occurs only after thealgorithm has terminated its execution. While the secondalgorithm is designed for concurrent topology changes, whichmeans that topology changes can occur at any time. Bothalgorithms require nodes in the network to communicate withtheir neighbours, thus, the algorithms are deployable in ad hocenvironments, however, they have been provided with noproof of correctness.Vasudevan et al  considered the issue of secure leaderelection in mobile ad hoc networks and proposes a leaderelection algorithm called the Secure Extrema FindingAlgorithm (SEFA). In SEFA, as the name indicates, is anextrema finding algorithm which assumes that all nodes thatparticipate in election process have the same evaluationfunction that result in the agreement upon the same candidatenode. In addition, SEFA requires that the parameters used toselect the leader in each round remain constant .In , an extrema-finding leader election algorithm formobile ad hoc networks had been proposed. Althoughdesigning an algorithm with an extrema-finding aspect isinteresting for environments such as ad hoc networks (becauseit is important to select a leader with performance-relatedattributes as computational capabilities, battery power ornodes’ velocity), the algorithms in  are considered to beunrealistic and not suitable for some applications since allnodes (without any exception) are required to exchangeinformation in order to elect a leader, and this is impractical.As a comparative summary, the algorithm proposed in  iscostly and has a high message overhead (reaches to O(n2)), inaddition, it is not deployable in mobile ad hoc systems. Theapproach in  does not take mobility of processes intoconsideration, therefore, it is impractical to be deployed inwireless ad hoc networks. The algorithm proposed in relies on the assumption that the environment is reliable andeach node knows about the entire nodes, thus, it is difficult toapply this algorithm on unreliable environments such asmobile ad hoc networks. The algorithms proposed in , and  require large number of messages to perform leaderelection, have a single-point-of-failure problem, and rely onunrealistic assumptions that make it hard to be deployed inMANETs. The approach of  is exposed to frequent linkbreakages and failures of nodes that can occur during or afterelection, while the two protocols proposed in  have beenprovided with no proofs of correctness. The approachesprovided in  and  are both impractical since theformer assumes that all nodes that participate in electionprocess have the same evaluation function, while the laterassumes that all nodes (without any exception) are required toexchange information in order to elect a leader, and this is notrealistic!3. ALGORITHM OBJECTIVESThe main objective of our proposed SCLEA is to decrease thecommunication overhead resulted from the redundantexchange of ELECTION messages between all nodes in thenetwork. This goal is achieved by selecting a subset of nodes(rather than all nodes) to participate in the leader electionprocess. For any hop, Hi, the subset of nodes is chosen with aguarantee that the nodes belonging to this set will cover all thenodes in the next hop, Hi+1. Therefore, along all hops, thenodes will reached via a minimum number of nodes, thus, themessage overhead will be reduced as much as possible. Thesecond objective of our algorithm is to elect, as a leader, themost-valued-node among all nodes in the network, rather thanelecting the node with higher ordinary ID as in the case of theprevious leader election algorithms. Since the preferenceattribute used in this work is the velocity of nodes, thenelecting the leader with lower velocity will ensure morestability and survivability of the leader. Thus, the probabilityof the frequent leader crash or the chance that the leader willmove and leave the transmission range of other nodes will belower.4. ALGORITHM ASSUMPTIONSFor our proposed SCLEA algorithm, we model the mobile adhoc network as a connected graph that consists of a set ofnodes, such that each node is assigned a unique identifier, IDand a VALUE. The ID is used to identify nodes during theelection process, while the VALUE represents the capacity ofnodes which is used to make preferences among nodes duringthe process of leader election. This value could represent anyperformance attribute such as the level of nodes’ velocity(speed), battery power or computational capabilities. For ouralgorithm, we depend on velocity as a major preference-basedattribute, such that nodes with lower velocity (thus, morestability) will be preferred to be chosen to participate in theleader election process. There are cases where nodes have thesame capacity, i.e. the same VALUE. In these cases node IDsare used to break ties among nodes which have the sameVALUE.In the graph model of the mobile ad hoc distributed system,each node is represented by a vertex, and the lines (or edges)between nodes represent communication links. Two nodes aresaid to be connected together if they are positioned within thetransmission range of each other, hence, they can directlycommunicate with each other. It is worth to mention here thatthe graph is not always connected and nodes might lose thedirect communication links toward other nodes. This is due tothe fact that nodes are free to move arbitrarily and gets out ofthe transmission range of any particular node. Therefore, thegraph becomes disconnected and changes over time as nodesmove. In our proposed algorithm, we only consider thosenodes that belong to the graph. That is, nodes that still exist
International Journal of Computer Applications (0975 – 8887)Volume 54– No.2, September 201228within the transmission radius of some other node. Whilenodes that leave all of the available transmission ranges andgo out of the network scope will not be considered at all.In addition, we assume that all nodes are periodicallyinformed about and aware of other nodes. The periodicupdates are achieved through the exchange of periodicHELLO messages between nodes every HELLO_INTERVALtime. In this HELLO messages, each node appends its uniqueID and VALUE to inform the neighboring node about itsstatus. Based on this information, each node maintains aneighbor table that contains <nbr ID, VALUE> entries. Theseentries are ordered ascendingly according to the node’sVALUE. In case there is a tie (i.e. two or more nodes have thesame VALUE), the order will be based on the node’s ID. Thisway of ordering neighbor tables according to nodes’ VALUE(which represents nodes’ velocity) guarantees that the nodeswith lower mobility will have a higher probability toparticipate in the leader election process, thus, the networkwill be more stable and less prone to link breakages andfailures.5. THE PROPOSED ALGORITHMIn this section, we describe our proposed leader electionalgorithm, SCLEA. But before we discuss its details, it isworthy to discuss the ordinary situation of leader election thathappens in mobile ad hoc networks. In such types ofnetworks, flooding is the major technique that is used forcommunication and message transmission between nodes.Flooding is the process wherein, each node, and uponreceiving a particular message, sends the received messageagain to its neighboring nodes (i.e. the nodes that arepositioned within its transmission range) . This processcontinues until all nodes in the network receive the message(at least once). In the domain of leader election, if the currentleader got crashed and a particular source node, S, detects thecrash, it initiates a leader election process by sending anELECTION message to all of its 1-hop neighbors. In turn,those 1-hop neighbors resend the ELECTION message to theirentire 1-hop neighbors (that is, 2-hop neighbors of node S),and so on. If the network consists of n hops, the process ofleader election terminates when the nodes of hop number (n-1) send the ELECTION message to all of their next hopneighbors, that is, the nth-hop neighbors. It is obvious that theleader election process which is performed depending on thementioned naïve flooding technique is of a big cost, and has anon negligible message overhead, especially when the numberof nodes and hops becomes larger. It can be noticed that a lotof redundant messages are transmitted because all nodes(without any preferences) participate in the election of thenew leader. This process is illustrated in Figure 1.According to Figure 1, it is clear that the number of messagesthat should be exchanged between nodes using the simpleflooding is high, imposing heavy traffic on the network. Toovercome this problem, we present an enhanced CoveringSet-based and velocity-aware algorithm that significantlydecreases the number of messages (ELECTION and OKmessages) that should be exchanged between nodes toperform leader election task. Message reduction is achievedby reducing the number of nodes that perform leader electionprocess. This is done by depending on the CoveringSet, whichis a subset of the 1-hop nodes that guarantee full coverage ofthe 2-hop nodes. The algorithm that we apply to selectCoveringSets is described in Section 5.1.The idea of our proposed algorithm is illustrated in Figure 2.In this figure, we assumed that node S detects the crash of thecurrent leader; therefore, it initiates the election process.Instead of broadcasting the ELECTION message to all itsneighboring nodes (as in the case of the flooding-basedalgorithms), node S creates its CoveringSet, then it multicaststhe ELECTION message to its CoveringSet. In turn, each oneof the CoveringSet nodes (colored with blue in the figure)multicast the ELECTION message further to their CoveringSetnodes, and so on, until reaching the last hop.The use of CoveringSet nodes introduces a major contributionin our work, since it reduces the message overhead associatedwith simple flooding-based leader election algorithms.Source node.Transmission range1-hop neighbor2-hop neighborLinkSFig 1: Flooding-based Leader Election Algorithms
International Journal of Computer Applications (0975 – 8887)Volume 54– No.2, September 2012295.1.Creating CoveringSetCoveringSet of node X is defined as the set of Xs 1-hopneighbors that ensures full coverage for the entire 2-hopneighbors of X . It is worthy to mention here that theneighbors of any node are sorted in ascending order based ontheir VALUE (in our algorithm, the value is the velocity orspeed of the node). Also it is important to mention that thebuilding of CoveringSets is performed in a distributedmanner, that is, each node builds its own CoveringSetindependently from any other node. Therefore, at any time T,the CoveringSet of a node A is different than the CoveringSetof a node B (unless both nodes have the same neighbors),Moreover, the CoveringSet of any particular node N at timeT1 is different than the CoveringSet of the same node at timeT2 (this is determined instantly based on the mobility status ofnodes, and which node have joined the transmission range ofN and which have departed).In any hop, the members of CoveringSet are chosen carefullysuch that they provide full coverage of the nodes in the nexthop. In addition, they are with lower mobility in comparisonwith other non-covering set nodes. These two features (i.e. theselection of a subset of nodes with velocity-awareness) areimportant strength points of our proposed algorithm, sinceusing CoveringSets will reduce message overhead associatedwith flooding. In addition, allowing nodes with low mobilityto participate in leader election will enforce stability in thenetwork, since the lower the mobility of nodes, the morestable the links, thus, the less probable that the leader will gotcrashed.When a node X wants to send an ELECTION message itfirstly creates its CoveringSet using its neighbor table; startingfrom the first entry in the neighbor table (i.e. the neighborwith lower velocity) until reaching full coverage for the 2-hopneighbors. For each neighbor, X checks if this neighbor addsadditional coverage (i.e., if it has path(s) to some of the 2-hopneighbors that are not covered previously by any of theselected nodes). If so, X adds the current neighbor to itsCoveringSet and checks if there are more nodes that are notcovered by any node yet; if so, X repeats the process for thenext neighbor until all 2-hop neighbors are covered. Thealgorithm used to build the CoveringSet is shown in Figure 3.Fig 2: CoveringSet-based Leader Election Algorithm(?????)Source node.Transmission range1-hop neighbor2-hop neighborCovering set nodesLinkSFig 3: Building a CoveringSet Algorithm1. START2. CoveringSet(x) = NULL3. For each node m in nbrTable(x);4. If m gets additional coverage (i.e. it has a path forsome 2-hop neighbors that are not coveredpreviously by any other node)5. add m to the CoveringSet(x);6. If all the 2-hop neighbors are covered (i.e. reached) bythe CoveringSet(x);7. return CoveringSet(x);8. END
International Journal of Computer Applications (0975 – 8887)Volume 54– No.2, September 2012305.2. Reply Back PhaseAs mentioned previously, ELECTION messages will betransmitted from one hop to another through the CoveringSetnodes until reaching the last hop. At this point, theELECTION phase terminates and the time to reply back andsend OK messages begins. Nodes are responsible to replytheir parents informing them about their existence. The OKmessage includes entries of <ID, VALUE> for each node, toinform them about their capacity, precisely, their velocity.The “VALUE” piece of information is very useful for theparent to decide which one of its children will be consideredas a candidate leader, such that the child with the lowestmobility will be passed to the parent, the parent of parent, andso on until reaching the source node that initiates the leaderelection. At the end, the node with lower mobility will bedeclared as the leader. Figure 4 illustrates how the reply backprocess done.6. MATHEMATICAL ANALYSISIn the SCLEA algorithm, when a node S detects that theleader is crashed, S does not send an ELECTION message toall nodes in its 1-hop neighbor range (as in the case offlooding-based leader election algorithms) rather, it looks upits CoveringSet and sends the ELECTION message to thenodes that belong to this set. For the analysis of thisalgorithm, we will denote the number of nodes constitutingthe network as N. These nodes are distributed randomly in thenetwork in the form of hops, where each hop consists of aparticular number of nodes. Let us assume that the number ofnodes in the 1-hop range of the source node S is equal to H1,the number of nodes in the second hop is H2, the number ofnodes in the third hop is H3, and so on. So the number ofnodes in the last hop, say the ithhop will be Hi. Further, let usassume that number of nodes that will not participate in theelection process (that is, nodes that do not belong to theCoveringSets in any hop) is equal to C, so the covering set inany hop i will be Hi-CThe subsequent discussion illustrates message complexity inthe worst case for both the ordinary leader election algorithmsthat depend on flooding to perform election and for ourproposed SCLEA algorithm that depends on CoveringSetnodes to perform the election of leader.6.1. Message Complexity in Flooding-basedLeader Election Algorithms:If node S has H1 neighbors in its 1-hop transmission range andH2 nodes in its 2-hop transmission range and Hi nodes in its ithtransmission range, then the number of ELECTION messagesthat will be sent by the source node S that detects the leadercrash will be equal to H1 messages, which is equivalent to thenumber of its 1-hop neighbors. Further, each node in the 1-hop transmission range will send H2 messages for all of its 1-hop neighbors (that is, 2-hop neighbors of node S), therefore,the total number of messages that will be sent by nodes in the1-hop transmission range will be H1*H2. This processcontinues until reaching the last hop i, where the number ofmessages that are sent by Hi-1 nodes will be Hi-1 * Hi, where Hiis the number of nodes in the last hop. The messagecomplexity associated with flooding-based leader electionalgorithms is illustrated in equation 1.6.2. Message Complexity in Covering Set-Based Leader Election Algorithm:If node S has H1 neighbors in its 1-hop transmission range andH2 nodes in its 2-hop transmission range and Hi nodes in its ithtransmission range, then the number of nodes in the coveringset for these hops will be H1-C, H2-C, H3-C, … and Hi-C,respectively. Where C is the number of nodes that areexcluded from the covering sets and that will not participate inleader election. The number of ELECTION messages that willbe sent by the source node S that detects the leader crash willbe only H1-C, where the number of messages sent by thecovering set of the first hop will be H2-C, which is equivalentto the number of nodes of the covering set in the second hop.Fig 4: The Reply Back Process541231310976S11128(7,20)(8,40)(6,15)(7,20)(6,15)(10,50)(11,5)(12,10)(11,5)14(10,50)S Source.1-hop neighbor2-hop neighborCoveringSet member.
International Journal of Computer Applications (0975 – 8887)Volume 54– No.2, September 201231The nodes of the Hi-1 hop will send messages to their nextcovering set nodes only. That is, Hi-C messages. Messagecomplexity associated with CoveringSet-based leader electionalgorithms is illustrated in equation 2.6.3. A Practical ExampleIn this section, we provided an illustrative example that showsclearly the message overhead (complexity) associated withboth flooding-based leader election algorithms and ourSCLEA algorithm. In Figure 5-A it is shown that if a node Sdetects the crash of the leader, it initiates a leader electionprocess, and broadcasts an ELECTION message to all of its 1-hop neighbors, that is, it sends 6 messages (as H1=6). In turn,each one of the H1 nodes and upon receiving an ELECTIONmessage broadcasts the message to its entire 1-hop neighbors.For example, node 4 broadcasts the election message to its 1-hop neighbors, in this example node 4 sends 4 messages.However, It is worthwhile to mention here that in the worstcase, node 4 might have all of the nodes in the second hop(H2) positioned within its transmission range, in other words,the nodes of H2 might be neighbors of node 4, in this case,node 4 will send 8 messages. The same case might apply foreach node in H1, that is, nodes 1, 2, …, 6 may have all of the8 nodes in the H2 hop as their neighbors, therefore, each onewill send 8 messages, with a total messages sent equals to 48messages (6*8). In addition, its clear from the figure thatnodes 4 and 2 have three mutual neighbors, this means thatthere are useless redundant messages, and as the number ofnodes increases the number of redundant messages increases.For simplicity, we didn’t mention more than 2 hops in thefigure. But it should be understood that the previouslymentioned case applies for multiple hops, depending on thesize of the network and the number of hops.In the other side, Figure5–B shows the improvement achievedby our proposed algorithm in terms of message overheadreduction. In this example, node S detects that the leader is nolonger alive, and initiates a leader election process by sendingan ELECTION message to its CoveringSet (i.e. the covering,1-hop neighbors), namely, nodes 1, 2 and 3, therefore, themessage reduction is obvious such that node S sends only 3messages instead of sending 6 messages (as in the case ofFigure5-A). Furthermore, each one of the selected coveringnodes forwards the message just to their 1-hop neighbors thatprovide coverage to their next hop nodes. Comparing toFigure5-A, node 4 and 2 will send 2 messages instead of 7. Sothe message reduction is evident here in that 5 nodes out of 8will receive the ELECTION message and forward it further.7. CONCLUSIONIn this paper, we proposed a velocity aware, and covering-setbased leader election algorithm for mobile ad hoc networks.Our main contribution was in the selection of a subset ofnodes (covering sets) to participate in the leader electionprocess rather than depending on all of the nodes in thenetwork (as the case of the traditional leader electionalgorithms). The selection of covering sets is performed in adistributed manner, that is, each node creates its own coveringset independently from any other nodes. In any hop, thecovering set nodes are chosen with a guarantee that theyprovide full coverage to the nodes of the next hop, and chosento be with minimum velocity among all other nodes. Theseselection criteria ensure network stability (due to the lowmobility of nodes) and reduces message overhead (due toA) Flooding-based Leader Election AlgorithmsB) CoveringSet-based Leader ElectionAlgorithmSSS SSSSSFig 5: A Practical Comparative Example
International Journal of Computer Applications (0975 – 8887)Volume 54– No.2, September 201232reducing the number of nodes that participate in leaderelection process.)In this paper, although we show the improvement achieved byour algorithm through mathematical analysis, our next stepwill be to assess our algorithm by simulation using a well-known routing algorithms, such as AODV, to study theimpact of covering set nodes with mobility awareness. Inaddition, we will use more preference-based attributes (i.e.value), for example, battery power or distance of nodes toexamine their impact on the leader election process.8. REFERENCES Sung-Hoon Park “A Stable Election Protocol based on anUnreliable Failure Detector in Distributed Systems”.2011 Eighth International Conference on InformationTechnology: New Generations. pp. 979 – 984, April2011. Haddar, M.A., Hadj Kacem, A. , Metivier, Y. , Mosbah,M. and Jmaiel, M. “Electing a leader in the localcomputation model using mobile agents”, IEEE/ACSInternational Conference on Computer Systems andApplications, 2008. AICCSA 2008. pp.: 473 – 480,April, 2008. Mehdi Mirakhorli, Amir A. Sharifloo, MaghsoudAbbaspour, "A Novel Method for Leader ElectionAlgorithm". The 7th IEEE International Conference onComputer and Information Technology (CIT 2007),pp.452-456, October 2007. Mina Shirali, Abolfazl Haghighat Toroghi, and MehdiVojdani “Leader election algorithms: History and novelschemes”. Third 2008 International Conference onConvergence and Hybrid InformationTechnology(ICCIT’08),pp. 1001-1006, November 2008. Scott D. Stoller. “Leader Election in AsynchronousDistributed Systems”. IEEE Transaction on ComputersJournal, volume 49, no. 3 pp.283- 284, March 2000. G.L. Lann, "Distributed Systems - Towards a FormalApproach", in Proc. IFIP Congress, pp.155-160, 1977. Randolph Franklin “An improved algorithm fordecentralized extrema-finding in circular configurationsof processes”. Communications of the ACM Magazine.pp.336–337, May 1982. Nourddine E, Mohammed K, Amine B. “EnhancingAODV Performance based on Statistical MobilityQuantification”. The IEEE International Conference onInformation & Communication Technology (ICTTA06),pp. 2455-2460, 2006. Gerard Tel “Introduction to Distributed Algorithms.Second Edition”, Cambridge University Press, 1995. Garcia-Molina H. “Election in a distributed ComputingSystem”. IEEE Transaction on Computers Journal,vol31, no. 1 pp. 48-59. 1982. Quazi Ehsanul Kabir Mamun, Salahuddin MohammadMasum, and Mohammad Abdur Rahim Mustafa.“Modified bully algorithm for electing coordinator indistributed systems”. WSEAS Transactions onComputers, Issue 4, Volum 3, pp. 948-953, October2004. Muneer Bani Yassein, Ala’a N Alslaity and Sana’a AAlwidian “An Efficient Overhead-aware Leader ElectionAlgorithm for Distributed Systems.” InternationalJournal of Computer Applications, volume 49 no. 6, pp:10-15, July 2012. J. Brunekreef, J. Katoen, R. Koymans and S. Mauw.“Design and Analysis of Leader Election Protocols inBroadcast Networks”. In Distributed Computing Journal,vol. 9 no. 4, pp. 157-171, February 1996. G. Taubenfeld. “Leader Election in presence of n-1initial failures”. In Information Processing Letters,Journal vol.33, no.1, pp. 25-28, October 1989. Tai Woo Kim, Eui Hong Kim, Joong Kwon Kim, and TaiYun Kim. “A leader election algorithm in a distributedcomputing system”. Proceedings of the 5th IEEEWorkshop on Future Trends of Distributed ComputingSystems, page 481, August 1995. N. Malpani, J. Welch and N. Vaidya. “Leader ElectionAlgorithms for Mobile Ad Hoc Networks”. DIALM 00Proceedings of the 4th international workshop onDiscrete algorithms and methods for mobile computingand communications, Boston, MA, pp. 96-103, August2000. Sudarshan Vasudevan, Jim Kurose, and Don Towsley.“Design and analysis of a leader election algorithm formobile ad hoc networks”. Proceedings of the 12th IEEEInternational Conference on Network Protocols, 2004.(ICNP04), pp:350–360, October 2004 K. Hatzis, G. Pentaris, P. Spirakis, V. Tampakas and R.Tan. “Fundamental Control Algorithms in Mobil MobileNetworks”. In Proc. of 11th ACM SPAA, pp: 251-260,March 1999. Abdalla MH, Aamir S, Irfan A, Mike W. “DynamicProbabilistic Flooding Performance Evaluation of On-Demand Routing Protocols in MANETs CISIS 08Proceedings of the 2008 International Conference onComplex, Intelligent and Software Intensive Systems,IEEE,pp. 200-204, 2008. Ala’a N. Alslaity “Stable Neighborhood-Based RouteDiscovery Protocol For Mobile Ad Hoc Networks”,Dissertation, Jordan University of Science andTechnology. May, 2012. V.D.Park and Scott.M.Corson, “A Highly AdaptiveDistributed Routing Algorithm for Mobile WirelessNetworks”, INFOCOM 97 Proceedings of theINFOCOM 97. Sixteenth Annual Joint Conference ofthe IEEE Computer and Communications Societies.Driving the Information Revolution, pp. 1405, 1997.