Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. Abhilasha Gupta, B.V.R. Reddy, Udayan Ghosh, Ashish Khanna / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 4, July-August 2012, pp.019-026 A Permission-based Clustering Mutual Exclusion Algorithm for Mobile Ad-Hoc NetworksAbhilasha Gupta*, B.V.R. Reddy **, Udayan Ghosh***, Ashish Khanna*****, **, *** (University School of Information Technology, Guru Gobind Singh Inderprastha University, New Delhi) **** (M.A.I.T, Guru Gobind Singh Inderprastha University, New Delhi)ABSTRACT In the last ten years a lot of research has algorithms proposed for static distributed systemsbeen done on resource allocation in Ad-hoc needs to be modified before these can be applied innetworks. The Classical approaches of mutual mobile computing environment. For that purpose,exclusion and its variants need to be modified to they proposed two-tier principle to restructure thesuit the dynamic topology, low bandwidth and low distributed algorithms to make them suitable forprocessing capabilities of mobile ad-hoc network mobile environment. Moreover, MANETs are an(MANET).The distributed mutual exclusion in important class of mobile computing systems andMANETs is comparatively less explored area of because of its infrastructure less nature two-tierresearch. In this paper, we propose a new principal cannot be applied directly to MANETs.approach for mutual exclusion in MANETs which Hence, the algorithms required to solve a resourceis based on clustering and the concept of weight allocation problem in MANETs, has to be designedthrowing. The algorithm uses cluster based considering the special characteristics of MANETs.hierarchal approach which also helps in reducing Mutual exclusion (MUTEX) is a fundamentalthe message complexity of the algorithm. problem in distributed systems, where collections of nodes intermittently need entering the Critical Section Keywords - Ad-hoc network, Clustering, Critical (CS) in order to exclusively process few critical Section, Mutual Exclusion (MUTEX), Voting operations, e.g. accessing the shared resource. A solution to the MUTEX problem must satisfy the1. Introduction following three correctness properties: (i) Mutual Exclusion (safety): No two processes can A mobile ad- hoc networks is a network be inside their CS simultaneously.which has no fixed infrastructure and is combination (ii) Deadlock Free (liveness): At any point of time, atof mobile nodes and some immobile infrastructure. least one node able to take an action and enter CS.Ad-hoc network has dynamic topology. Nodes in ad- (iii) Starvation Free (Fairness): Every node wantinghoc system can communicate directly only with the to enter CS must eventually be able to enter CS.nodes that are immediately within their transmission The performance of a mutual exclusion (ME)range. To communicate with the other nodes, an algorithm can be judged based upon variousintermediate node is required to forward the packet performance parameters like Waiting time,from the source to the destination. Therefore, in ad Synchronization delay, Message complexity,hoc system, nodes are required to cooperate in order Message size [2].to maintain connectivity and each node may act as arouter in routing data through the network. Permission-based algorithms [3] need cycles ofCommonly suggested applications for MANETs message exchange among the nodes to get theinclude disaster management, Battlefields, and permission to enter CS. The main concept on whichenvironmental data collection. Although lots of permission-based algorithms are based is as follows:hardware challenges have been solved, programming When a process wants to execute its CS, it sendsapplication for MANETs remains a tedious task. request to other nodes for their permission. A process on getting a request, it grants permission if it is notThe resource allocation problem is one of the most interested in CS. If it is interested in CS, the priorityimportant problems in MANETs. However, according of the incoming request is located against its ownto Badrinath-Acharya-Imelinski [1], due to the special request. Commonly, priority decisions totally dependcharacteristics of mobile computing environment, the upon the timestamps. Total ordering of events is done with the help of Lamport’s [4] logical clocks for having clear time difference between the request time 19 | P a g e
  2. 2. Abhilasha Gupta, B.V.R. Reddy, Udayan Ghosh, Ashish Khanna / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 4, July-August 2012, pp.019-026stamps. Permission-based algorithms can be further one performance metric or the other. Based on theclassified into coterie-based algorithms and voting- technique used, DME algorithms can be classified asbased algorithms. In voting-based algorithms, each token based algorithms and permission-basednode in the current system is allocated a vote (a algorithms as suggested by Raynal [13], or as token-nonnegative integer). A node wanting access to CS based algorithms and non-token-based algorithms asmust get permission from a suitable number of nodes, suggested by Singhal [14].In token-based algorithms,i.e., a number of nodes whose total votes comprises a a token is passed among all the nodes. A node ismajority of the total number of votes allocated to the allowed to enter the CS only if it possesses the token.system. In coterie-based algorithms, a group of sets In a permission-based algorithm, the node requesting(of the nodes of the system), called a coterie, is pin to for the CS must first obtain the permissions fromthe system. A node wanting access to CS must get other nodes by exchanging messages. Some examplespermission from each and every node of a set from of token-based algorithms are Helary et al.’s [15] andthe coterie. Each of these two categories may further Suzuki and Kasami’s [16] algorithms (broadcastbe classified into static and dynamic algorithms .The based, static), Singhal’s [17] and Yan et al.’s [18]paper [5] is proposed for solving the Group mutual algorithms (broadcast-based, dynamic), Raymond’sexclusion (GME) by using clustering concept. In [6] [19] and Neilson and Mizuno’s [20] algorithms[7], R.Mellier et J-F. Myoupo and Stefano Basagni (logical structure-based, static) and Chang et al.’shave presented a MUTEX protocol for MANETs [21], Helary et al.’s [22] and Naimi et al.’s [23]which takes advantages of the cluster structure algorithms (logical structure-based, dynamic).offered by the partitioning techniques. During the past several years, algorithms for solvingThis paper is organized as follow: the section 2 the mutual exclusion problem in MANETs have beendiscusses related work and the basic idea of proposed. The entire algorithm makes use of a tokenclustering concept. Section 3 presents our proposed circulated along a logical ring or passed in a logicalalgorithm & its pseudo code. We prove the algorithm tree consisting of all the nodes.correctness in section 4. Section 5 gives the A token-based mutual exclusion algorithm, namedperformance analysis of proposed algorithm. RL (Reverse link) [24], for ad-hoc network isConclusion and future work are offered in section 6. proposed. In the RL algorithm, when a node wishes to access the shared resource, it sends a request.2. Related work message along one of the communication link. The The origin of the mutual exclusion problem RL algorithm totally orders nodes so that the lowestcan be traced back to 1965 when Dijkstra [8] ordered node is always the token holder. Thedescribed and solved the mutual exclusion problem. algorithm guarantees the safety and liveness property.Dijkstra stated that any solution to the mutual But it did not guarantee the network partitioning.exclusion problem must satisfy 4 constraints. Malpani et al [25] proposed a parametric token basedDijkstra’s algorithm guaranteed mutual exclusion and algorithm with many variations. In the algorithm, awas deadlock- free, but it did not guarantee fairness. dynamic logical ring is imposed on the nodes theThat is, it was possible that a process seeking access successor of a node in the ring is computed on- the-to its critical section waited indefinitely while others fly.entered and exited their critical sections frequently. Weigang Wu et al [26] proposed the first permission-Knuth [9] proposed the first fair solution to the based MUTEX algorithm for MANETs. In order tomutual exclusion problem. Thereafter, a number of reduce the message cost, the algorithm uses the soalgorithms were proposed which guaranteed mutual called”look-ahead” technique, which enforcesexclusion and were deadlock- free and fair. Each of MUTEX only among the hosts currently competingthese algorithms aimed at improving performance in for the critical section (C.S). The algorithm is basedterms of synchronization delay, the period of time on the well-known Ricart-Agrawala algorithm [27] inbetween the instant a site invokes mutual exclusion which, when a nodes wants to enter CS, it sends aand the instant when it enters CS. Some of these request to all the other nodes to collect permissions.algorithms are De Bruijns’s algorithm [10], Several MUTEX algorithms for MANETs have beenEisenberg and McGuire’s algorithm [11] and proposed and nearly all of them use the token- basedPeterson’s algorithm [12]. All these algorithms were approach [28] [29] [25] [30]. Compared with thedesigned for the centralized systems, the systems permission-based approach [26], the token-basedpossessing a central memory that all processes can approach has many desirable features, e.g. nodes onlyaccess simultaneously for reading and writing. need to keep the information about their neighborsA number of DME algorithms have been developed, and few messages are needed to pass the privilege ofall aiming at enhanced performance with respect to entering CS. Both token-circulating (ring-based) and token-asking (tree-based or graph-based) approaches 20 | P a g e
  3. 3. Abhilasha Gupta, B.V.R. Reddy, Udayan Ghosh, Ashish Khanna / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 4, July-August 2012, pp.019-026have been used in MUTEX algorithm for MANETS. the weight of a node, the better that node for the roleThe fatal problem of token loss makes these of clusterleader [5].The main benefit of this approachalgorithms not robust. In MANETs, the mobility and is that, by representing with the weights mobility-disconnections of nodes make token loss a more related parameters of the nodes, we can pick for theserious problem and the maintenance of a tree or ring role of clusterleader those nodes that are better suitedtopology more difficult. for that role. For instance, when the weight of a nodeCompared with the token-based approach, permission is inversely proportional to its speed, the less mobilebased algorithm have the following advantages:- nodes are confirmed to be clusterleader. Since these  There is no need to maintain the logical nodes either do not moves or move lesser than the topology to pass the token. other nodes, their cluster is guaranteed to have a  There is no need to propagate any message durable life, and consequently the overhead attached if no node request to enter CS. with the cluster maintenance in the mobileThese advantages make the permission-based environment is reduced.approach will suitable for MANETs where all theresources, e.g. the network bandwidth and the battery 2.2 Initialization of clusterspower of the nodes are limited. Initially out of all nodes heaviest weight node isA problem of the permission-based approach is the chosen, after which nodes in direct range of that nodelarge number of message to be exchanged between forms a cluster and this process is repeated till allthe nodes. Therefore to design a efficient permission- nodes are part of any cluster.based algorithm , we use the “clustering concept”, inwhich only clusterleader of the respective cluster is 3. ALGORITHMresponsible for taking & giving the permission to The algorithm is assumed to execute in aenter the CS, which reduce the number of message system consisting of n nodes and m clusters, eachexchanged among the clusterleaders. cluster contains one clusterleader. Nodes are labeled as 0, 1…….n-1, and clusterleaders are labeled as 0, 1……m-1. We assume there is a unique time-stamp2.1Clustering Concept generated with every “Req_CS” message by node i.Partitioning the nodes in to cluster is called 3.1 Assumptionsclustering. In addition, clustering is crucial for This algorithm takes the following assumptions onmanaging the spatial reuse of the shared channel, for the mobile nodes and clusters.reducing the amount of data to be exchanged in order  All nodes have unique ids.to maintain routing and control information in a  No new cluster will be formed aftermobile environment, as well as for constructing and initialization.maintaining cluster-based virtual network  A link level protocol ensures that each nodearchitecture. In existing solutions for clustering of ad- is aware of the set of nodes with which ithoc networks [5], the clustering is performed in two can currently communicate by providingphases: clustering initialization and clustering indications of link formation and failures.maintenance. Each cluster comprises clusterleader  Global synchronize clock is maintained onand in-range nodes (direct communicates with its each node.own clusterleader).A clustering algorithm is required  Each node has inbuilt singleton vote.to partition the nodes of the network so that the  Node can move in their respective clusterfollowing ad-hoc clustering properties are satisfied: only. I. Every in-range node has at least a  No node can move while the cluster clusterleader as neighbor (dominance formation is in progress. property).  Each node has a different weight. II. Every in-range node affiliates with the  No two clusters overlap with each other. neighboring clusterleader that has the bigger weight. III. No two clusterleader can be neighbors 3.2 Requirements (independence property) As all nodes have singleton vote allocated to them, so a node can enter C.S only when its respectiveElection of clusterleader depends either on the basis clusterleader acquire more than 50% of singletonof lower id or on the basis of weight. Weight based vote of whole system. Equation (1) should be metcriteria is better way of deciding clusterleader rather accordingly if value of weight is even or odd.than deciding it on the basis of lower id. The heavier 21 | P a g e
  4. 4. Abhilasha Gupta, B.V.R. Reddy, Udayan Ghosh, Ashish Khanna / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 4, July-August 2012, pp.019-026  Req_CS(): when a node i whishes to enter the CS. It send out Req_CS() to the its own clusterleader.  Cluster_Vote: a message used for clusterleaders to transfer their singleton voteWhere Majζ: number of majority weighted votes in for giving the permission to enter the CS tothe system. requesting clusterleader. Gives the total number of  Allow_CS (): a message for node to enter thesingleton CS. This message is received by requesting votes in the system. node from its own clusterleader. Vi = singleton vote of node i.  Release (): a message for node i to release the CS, it sends Release () to the own3.3 Data structures clusterleader.3.3.1Data structures of clusterleader  Release_Cluster_Vote: when a requested 1. Status: - indicate whether node is in the clusterleader’s request queue = φ, then it Remainder, Waiting or C.S. Initially status will return their vote to the respective = Remainder clusterleader which has given permission. 2. Clust_idi:- id of a particular clusterleader. 3. Clust_Vi:- Each clusterleader has singleton 3.5 Principle of the algorithm vote. Singleton vote associated to In this paper, a mutual exclusion algorithm is Clusterleader is used it to give permission. proposed which is permission based. This algorithm 4. Clust_Rqi:- Request list stores the request of works on the concept of clustering and uses a voting all nodes of cluster’s and requests Received based hierarchal approach. Here initialization is done by other clusterleaders of their respective on the basis of weight throwing scheme [5]. Where nodes with their unique time stamp. one by one cluster are made till the last node is part 5. Clusteri: - The set of all nodes id in direct of any cluster and each cluster has one clusterleader. wireless contact with clusteri. Total number of nodes in the cluster decides the 6. Allower_infoi:- The set of all clusterleaders number of votes acquired by any clusterleader. Each with their respective singleton vote which node in the system can send its request only to its have allowed the requesting cluster to enter respective clusterleader which further forwards that C.S. to the other clusterleader for getting more than half 7. Clust_Tot_Vote:- total singleton vote of in- number of votes to allow its requesting node to enter range nodes of clusteri. to enter C.S. Each clusterleader maintains request list SYS_Tot_Vote:- total singleton vote of the of whole system. Request generated has unique time system. stamp dependency upon lamport’s logical clock [4]. 8. Allow:- Boolean array indicating whether The proposed algorithm is event-driven. An event at the cluesterleader has given permission to node i consists of receiving a message from requesting node or not. clusterleader. Each event triggers a procedure, which Initially Allow ≠ TRUE (has not given is assumed to be executed atomically. Below, wepermission) present the overview of the event-driven procedure. Allow = TRUE (has given  Node i wants to enter CS:permission) When node i want to enter the CS, it first sets T_Sreq3.3.2 Data structures of nodei to the current time and sends the “Req_CS” message 1. N_idi :- Each node has unique identifier. to the clusterleader and sets status to waiting. 2. N_Vi :- The singleton vote allocated to node  Cluster leader i receives request from node i. j: 3. T_Sreq :- Unique time stamp at which the When a Req_CS (j, T_Sreq) message sent by a node j request is generated that is also used to set is received at clusterleader i. the priority of request with which they will Request stored in request-queue of clusterleader i be served. with its time-stamp and node id. if the singleton vote 4. Status:- indicate whether node is in the of cluster i is greater than half of the total system Remainder, Waiting or C.S. Initially status = singleton vote and Allow ≠ TRUE then clusterleader i Remainder sends “Allow_CS” message to requesting node j and 5. Clusterleader_infoi:-Clusterleader_infoi list sets Allow = TRUE otherwise it sends maintain the information about clusteri Req_CS(nid,T_Sreq) to all clusterleader.3.4 Message used in the algorithm 22 | P a g e
  5. 5. Abhilasha Gupta, B.V.R. Reddy, Udayan Ghosh, Ashish Khanna / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 4, July-August 2012, pp.019-026  Cluster leader i receives request from clusterleader j T_Sreqi = t1 (current value of clock)When a Req_CS (nid, T_Sreq) message sent by a State: = Waitingclusterleader j is received at clusterleader i, if therequest list of clusterleader i is empty and Allow ≠ Node i send Req_CS (nid, T_Sreq) to clusterleader j.TRUE then its sends the Cluster_Vote (Clust_id,Clust_Tot_Vote) to requesting clusterleader j and sets 2. Clusterleader i receives request fromClust_Tot_Votei = 0, sets Allow = TRUE otherwise node jinsert the request in the request list at its appropriateposition after sorting the list. Request stored in request_list of clusterleader with its  Clusterleader i receives singleton vote timestamp and node id. message from Clusterleader j.When Cluster_Vote (Clust_id, Clust_Tot_Vote) If (Clust_Tot_Vote > ½ SYS_Tot_Vote) && Allowmessage sent by a clusterleader j is received by ≠ TRUEclusterleader i. clusterleader i increments the value of {its own singleton vote by adding the singleton vote of Send Allow_CS() to node jcluster j. if the singleton vote of clusterleader i is Allow: = TRUEgreater than the half of the total singleton vote of the }system and Allow ≠ TRUE then it sends the ElseAllow_CS message to lowest T_Sreq node and set {Allow = TRUE otherwise wait for the new request. Send Req_CS (nid, T_Sreqi) to all clusterleader.  Node i receives Allow_CS message from } clusterleader j:When node i received Allow_CS message from 3. Clusterleader i receives request fromclusterleader j. node i sets status = C.S. and enter clusterleader jC.S.. After processing it come out from C.S.  Node i exits from the C.S: If (Cluster_reqi = φ && Allow ≠ TRUE)When node i comes out from the C.S. it sends {“Release” message to clusterleader j and sets status = Send Cluster_ Vote (Clust_Tot_Vote) to clusterleaderRemainder. j  Clusterleader i receives release message Set Clust_Tot_Vote = 0 from node j: Set Allow = TRUEWhen “Release” message sent by a node j is receivedby clusterleader i. firstly clusterleader sets Allow ≠ // comparison made between the time-stamp ofTRUE after that it checks request list and send arrived request and request which is positioned at the“Release_Cluster_Vote” message to the other top on the list //clusterleader or to its any other node whichever is Else if ( T_Sreqi < T_Sreqi)having lowest time stamp. {  “Release_Cluster_Vote” message is Send Cluster_Vote (Clust_Tot_Vote) to clusterleader received by clusterleader i. jWhen “Release_Cluster_Vote” message is received Elseby clusterleader i. clusterleader i restore the value if {its own singletons vote. If the request list of Insert the request in the request list at its appropriateclusterleader i is not empty and the singleton vote of position after sorting the list.clusterleader i is greater than the total singleton vote }of the system and Allow ≠ TRUE then it sends }“Allow_CS” message to that node having lowest }T_Sreq.Pseudo code: Clustering Permission based MUTEX 4. Cluster leader i receives vote messagealgorithm, code for ni. from clusterleader j. 1. Node i wants to enter C.S: // clusterleader i updates the value of its ownInitially when node i wants to enter C.S then singleton vote//timestamp at which request is generated is also storedand forwarded to respective clusterleader. Clust_Tot_Votei=Clust_Tot_Votei+ Clust_Tot_Vote j 23 | P a g e
  6. 6. Abhilasha Gupta, B.V.R. Reddy, Udayan Ghosh, Ashish Khanna / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 4, July-August 2012, pp.019-026(Current) (Received In this section we prove the correctness of thevote) proposed algorithm that the three correctness requirements for distributed MUTEX algorithm areIf(Clust_Tot_Votei > ½ SYS_Tot_Vote && Allow satisfied.≠ TRUE) Lemma 5.1 Once the node i want to enter the C.S. it{ eventually gets the access of C.S. [4].Send Allow_CS () to lowest T_Sreq node. Node i enter the CS when the following threeSet Allow = TRUE conditions are satisfied:Else{ L1: Clusterleader of ni has received a message withWait for additional singleton vote timestamp larger than (T_Sreqi, i) from all other} clusterleader.} 5. Node i receives allow message from L2: Node ni has lowest timestamp. clusterleader j L3: Respective Cluster leader should have majorityState = C.S votesEnter C.S (Equation 1)Exit C.S Theorem 1: At most one node can be in the CS at any 6. Node i exits from the C.S time (safety). Argument: we prove the theorem by contradiction.Node i send_ Release () to clusterleader j Assuming two nodes ni and nj are executing the CSState: = Remainder simultaneously. From equation (1), every requesting node must have more than 50% of singleton votes of 7. Clusterleader i receives release message the total system vote. If both ni and nj are in CS from node j simultaneously, means both have 51% of majority singleton votes which sums up to102%. However,Set Allow ≠ TRUE total singleton votes of the system can never be exceeds by 100%.This is a contradiction.Checks request queue and sendRelease_Cluster_Vote () to the other clusterleader or Theorem 2: The algorithm is deadlock- freeto its any other node whichever is having lowest time (liveness).stamp. Argument: A deadlock occurs when there is a circular wait and there is no “RELEASE” in transit. This 8. When Release_Cluster_Vote () message is means that each node in the cycle is waiting for a received by clusterleader i. “RELEASE” from its successor node in the respective request queue. According to ourClust_Tot_Votei = Clust_Tot_Votei (received vote) assumption each node has unique timestamp. Our(Current vote) algorithm says eventually each request with unique timestamp will be added to every request list. Therefore we can say that request list is maintainedIf (Clust_Tot_Votei > ½ SYS_Tot_Vote && Allow ≠ globally. Above discussion proves that to allow aTRUE) node to enter CS will be a global decision without{ any deadlock.Send Allow_CS () to that node having lowestT_Sreq. Theorem 3: The algorithm is starvation-free} (fairness). Proof A proposed mutual exclusion algorithm forElse MANETs is fair if the requests for CS are executed in{ the order of their timestamps [4]. Whenever a nodeWait for the new request request for CS its request is forwarded to all the} cluster leaders eventually with the respective unique4. Correctness of the proposed algorithm timestamp, therefore clusterleaders are able to come to the global decision that which requests time stamp is lowest. In response to this decision eventually 24 | P a g e
  7. 7. Abhilasha Gupta, B.V.R. Reddy, Udayan Ghosh, Ashish Khanna / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 4, July-August 2012, pp.019-026every request gets fair chance to enter CS in order. Synchronizatio 2T 2T(m+1The proof is by contradiction. Suppose a node ni’s n delay )request has a smaller timestamp than the request ofanother node nj and nj is able to execute the CS Table (2)before ni. For nj to execute the CS, it has to satisfy theconditions L1 L2 and L3 (by lemma 5.1). This Where, T is the maximum message propagationimplies that at some instant in time nj has its own delay.request at the top of its queue and it has also receiveda message with timestamp larger than the timestamp m is the number of clusterleader.of its request from all other nodes. But request_list ata node is ordered by timestamp, and according to our n is the number of nodes.assumption ni has lower timestamp. So ni’s requestmust be placed ahead of the nj’s request in the 6. Conclusion and Future Workrequest_listj. This is a contradiction. Hence this In this paper, we described a permission-algorithm is starvation-free mutual exclusion based clustering mutual exclusion algorithm inalgorithm. mobile ad-hoc networks. To reduce the number of messages exchanged, the “Clustering concept” is5. Performance Analysis of Algorithm used. This algorithm is independent from logical In this section, the performance of proposed topology so as to reduce the cost of maintainingalgorithm has been analyzed with respect to the logical topology. Simulation is left as a futurefollowing performance metrics, namely, message work.complexity, message size, waiting time,synchronization delay.Message size: The size of message used in proposed REFERENCESalgorithm has been given in the table (1). [1] B. R. Badrinath, A. Achaya, and T. Imielinski, Desinging Distributed Algorithm for Mobile Message type Size Computing Networks. Computer Communication, Vol. 19, No. 4, April 1996. Req_CS O(1) [2] A.Swaroop, Efficient group mutual exclusion protocols for message passing distributed Allow_CS O(1) computing system, doctoral diss, National institute of technology, Kurukshetra, India, Cluster_Vote O(m) 2009. [3] Saxena, P.C., Rai, J., A survey of permission- Release_CS O(1) based distributed mutual exclusion algorithms. Computer standards & interfaces, vol. 25, no. Release_Cluster_Vote O(m) 2, pp. 159-181, 2003. Table (1) [4] Lamport, L., Time, clocks, and the ordering of events in a distributed systems.Performance parameter: the performance Communications of the ACM, vol. 21, no. 7,parameter used in proposed algorithm has been given pp. 558-565, 1978.in the table (2) [5] Ousmane thiare and Mohamed Naimi. “APerformance Best case Averag Worst Weight- throwing Clustering Group Mutualparameter e case case Exclusion Algorithm for Mobile Ad Hoc Networks” International Journal of DigitalWaiting time 2T 2T(m+1 Content Technology and its Applications. ) Volume 5, Number 4, April 2011.Message 0 if O(n) [6] Romain Mellier and Jean-Frederic Myoupo,complexity clusterleade “A clustering mutual exclusion protocol for r itself. multi-hop mobile ad hoc networks”, Networks, 2005. Jointly held with the 2005 IEEE 7th O(2) if any Malaysia International Conference on node Communication., 13th IEEE International Conference, 6 pages, 2005. 25 | P a g e
  8. 8. Abhilasha Gupta, B.V.R. Reddy, Udayan Ghosh, Ashish Khanna / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 4, July-August 2012, pp.019-026[7] Stefano Basagni, “Distributed clustering for ad [21] Y.I. Chang, M. Singhal, M.T. Liu, An hoc networks”, Proceedings of I-SPAN, improved o(log(n))mutual exclusion algorithm Australia 1999. for distributed systems, International[8] E.W. Dijkstra, Co-operating sequential Conference on Parallel Processing,pp.295– processes, in: F. Genuys (Ed.), Programming 302,1990. Languages, Academic Press, New York, pp. [22] M. Helary, A. Mostefaoui, M. Raynal, A 43–112, 1965. general scheme for token and tree based distributed mutual exclusion algorithms, IEEE[9] D.E. Knuth, Additional comments on a Transactions on Parallel and Distributed problem in concurrent programming control, Systems 5 (11),pp. 1185– 1196,1994. Communications of the ACM 9 (5), pp.321– [23] M. Naimi, M. Trehel, A. Arnold, A log(n) 322, 1966. distributed mutual exclusion algorithm based on path reversal, Journal of Parallel and[10] J.G. De Bruijn, Additional comments on a Distributed Computing 34,pp.1 – 13,1996. problem in concurrent programming control, [24] Jennifer Walter, Jennifer Welch and Nitin Communications of the ACM 10 (3), pp.137– Vaidya, “A mutual exclusion algorithm for ad 138, 1967. hoc mobile network”, In Journal of Wireless Networks, vol. 7, pp. 585-600, 2001. [11] M.A. Eisenberg, M.R. McGuire, Further [25] N.Malpani, N. H. Vaidya and J. L. Welch, comments on Dijkstra’s concurrent Distributed Token Circulation on Mobile Ad programming control problem, Hoc Networks, Technical report, Intel Communications of the ACM 15 (11) (1972) Corporation 505 E. Huntland Dr. Suite 550, 999. Austin TX 78752. [12] G.L. Peterson, Myths about the mutual [26] Wu, W., Cao, J., Yang, J.: A Scalable Mutual exclusion problem, Information Processing Exclusion Algorithm for Mobile Ad Hoc Letters 12 (3), pp.115– 116, 1981. Networks. In: Proc. of ICCCN (2005).[13] M. Raynal, A simple taxonomy for distributed [27] G. Ricart and A. Agrawala, An optimal mutual exclusion algorithms, ACM Operating algorithm for mutual exclusion in computer Systems Review 23 (2), pp. 47–51, 1991. networks, Communications of the ACM, vol.[14] M. Singhal, taxonomy of distributed mutual 24, no. 1,pp. 9-17,1981. exclusion, Journal of Parallel and Distributed [28] Baldoni, R., Virgillito, A., Petrassi, R.: A Computing 18, pp. 94–101, 1993. Distributed Mutual Exclusion Algorithm for [15] M. Helary, N. Plouzeau, M. Raynal, A Mobile Ad-Hoc Networks. In: Proc. of ISCC distributed algorithm for mutual exclusion in (2002). an arbitrary network, The Computer Journal [29] Benchaïba, M., Bouabdallah, A., Badache, N., 31 (4), pp. 289– 295, 1988. Ahmed-Nacer, M.: Distributed Mutual[16] I. Suzuki, T. Kasami, A distributed mutual Exclusion Algorithms in Mobile Ad Hoc exclusion algorithm, ACM Transactions on Networks: an Overview. ACM SIGOPS Computer Systems 3 (4), pp. 344–349, 1985. Operating Systems Review 38(1) (2004).[17] M. Singhal, A heuristically aided algorithm for [30] Walter, J., Kini, S.: Mutual Exclusion on mutual exclusion in distributed systems, IEEE Multihop, Mobile Wireless Networks, Texas Transactions on Computers 38 (8), pp.651– A&M Univ., College Station, TX 77843-3112, 661, 1989. TR97-014 (December 9, 1997).[18] Y. Yan, X. Zhang, H. Yang, A fast token chasing mutual exclusion algorithm in arbitrary network topologies, Journal of Parallel and Distributed Computing 35,pp.156–172,1996.[19] K. Raymond, A tree based algorithm for distributed mutual exclusion algorithms, ACM Transactions on Computer Systems 7 (1), pp. 61– 77, 1989.[20] L.N. Neilson, M. Mizuno, A DAG based algorithm for distributed mutual exclusion, International Conference on Distributed Computer Systems, pp. 354– 360, 1991. 26 | P a g e