A Novel Distributed Clustering Algorithm for Mobile Ad-hoc Networks

: This paper proposed a new Distributed Score Based Clustering Algorithm (DSBCA) for Mobile Ad-hoc Networks (MANETs).In MANETs, select suitable nodes in clusters as cluster heads are so important. The proposed Clustering Algorithm considers the Battery Remaining, Number of Neighbors, Number of Members, and Stability in order to calculate the node’s score with a linear algorithm. After each node calculates its score independently, the neighbors of the node must be notified about it. Also each node selects one of its neighbors with the highest score to be its cluster head and, therefore the selection of cluster heads is performed in a distributed manner with most recent information about current status of neighbor nodes. The proposed algorithm was compared with Weighted Clustering Algorithm and Distributed Weighted Clustering Algorithm in terms of number of clusters, number of re-affiliations, lifespan of nodes in the system, end-to-end throughput and overhead. The simulation results proved that the proposed algorithm has achieved the goals.


INTRODUCTION
Mobile ad hoc networks (MANETs) consist of mobile devices that form the wireless networks with out any fixed infrastructure or centralized administration. In these networks each node communicates the other nodes immediately or via intermediate nodes. Relying packets to neighboring nodes along with path from the source node to the destination node are done by intermediate nodes. A well-known method for saving the energy and communication bandwidth is dividing mobile nodes to groups that named clusters. In Ad hoc networks, clustering algorithm and select suitable nodes in clusters as cluster heads are so important. This is just because, cluster heads act as local coordinators and handle various network functions such as packets routing and forwarding. As election of optimal cluster heads is an NP-hard problem [1] , many heuristic clustering algorithms have been proposed [2][3][4][5][6][7][8] .
One of the important points in ad hoc networks is preserved the structure of clusters, so each cluster head should be able to changes its role to an ordinary node, border node or gateway node. There have been several proposals for the election of cluster heads in mobile adhoc networks, which include the Highest-Degree [3,4] , the Lowest-Identifier [5,6,7] , Distributed Clustering Algorithm [8] , the Weighted Clustering Algorithm (WCA) and Distributed Weighted Clustering Algorithm (DWCA). Highest-Degree (HD) algorithm exclusively uses location information for cluster formation: the highest degree node in a neighborhood, i.e. the node with the largest number of neighbors is elected as cluster head. Basically, each node either becomes a cluster head or remains an ordinary node (neighbor of a cluster head).The re-affiliation count of nodes is being high due to node movements. The Lowest-Identifier algorithm chooses the node with the minimum identifier (ID) as a cluster head. The system performance is better than Highest-Degree heuristic in terms of throughput [2] .However, since this heuristic is based to choose nodes with smaller IDs suffer from the battery drainage, resulting short lifetime span of the system. The Distributed Clustering Algorithm is a modified version of the Lowest-Identifier algorithm. For each cluster, it chooses a node with locally lowest ID among all the neighbor nodes as a cluster head. Every node can determine its cluster and only one cluster, and transmits only one message during the algorithm [9] .Since it uses node ID for the selection of cluster heads, it inherits the drawbacks of the Lowest-Identifier heuristic.
The WCA employs combined metrics-based clustering: a number of metrics, including node degree, CH serving time (to estimate residual energy capacity) and moving speed, are taken into account to calculate a weight factor W v for every node v .As a result, the overhead induced by WCA is very high. If a node moves into a region that is not covered by any cluster head, then the cluster set-up procedure is invoked throughout the whole system. The goals of this paper for the clustering area are set to minimize the number of clusters and to maximize lifespan of mobile nodes in the system. To achieve these goals, we proposed a Distributed Score Based Clustering Algorithm (DSBCA) that utilizes factors like the Number of Neighbors, Battery Remaining, Number of Members, and Stability for election of the cluster heads. The result of simulation showed that DSBCA provided better performance than WCA (Weighted Clustering Algorithm) [2] and Distributed Weighted Clustering Algorithm (DWCA) [17] in terms of the number of clusters, end-to-end throughput, number of re-affiliations, minimum lifespan of nodes and overhead.

MATERIALS AND METHODS
Clustering set up: In Distributed Score Based Clustering Algorithm (DSBCA) various important parameters for cluster heads selection is considered. These parameters are Battery Remaining, Number of Neighbors, Number of Members and Stability of node. Each node calculates its score by using a formula that considers all the above parameters. The score of node N is defined as Equation (1).
The energy is consumed through transmitting/receiving data packets and messages • Number of Members (N m ): Set of nodes that is handled by each cluster head and is calculated from Equation (2).
Where Mem V is the member value and calculated as Equation (3).
Where is a pre-defined threshold for the number of nodes that a cluster head can handle ideally.
• Stability(S): The total time in which the neighbors of a specific node have spent their time beside the node. A Higher stability simply means that the neighbors of a certain node has spent a longer time in its transmission range, we conclude that the mentioned node has a more stable situation. The stability is used to address movements and adjacencies of nodes and is calculated by Equation (4).
{n is the number of node's neighbors} Where T RF is the time of the first packet reception and T RL is the time of the last packet reception.
Main structure of DSBCA is a five-step protocol: Step 1. (Updating Neighborhood table) .Each node updates its Neighborhood table as soon as it receives Score-value messages. This process would be held until the node's timer is elapsed. Obviously if Score-value message is not received from a node, which is previously located in Neighborhood table, in specific period of time the node will be dropped from the table.
Step 2. (Calculating Score value). Each node calculates its score according to Equation (1) and broadcasts it by sending a Score-value (my-id, Score) message.
Step 3. (Selecting cluster head). Each node checks its Neighborhood table to choose the node with the highest score to be its cluster head; furthermore the node announces its leadership to all neighbors through broadcasting a My-Ch (my-id, my-ch-id, init time) message.
Step 4. (Broadcasting messages). Each node broadcasts its type to all neighbors through a Type (myid, is-border, is-ch) message. Three types of nodes are defined in DSBCA: • Cluster head (Zone leader node): A node that receives My-Ch message from at least one of its neighbors which its my-ch-id field is equal to node's id.
• Border node: A node which is associated with two following conditions and finds no other nodes with a higher score in the neighborhood region.
1. A node which receives messages from more than one cluster head which are located in its neighborhood region.

2.
A node which receives messages from those nodes which are in its neighborhood region with different cluster heads • Ordinary node: Members of existing clusters.
Step 5. (Calculating new timer value). First T V (Indicates the timer value) is set to desire acceptable value , then calculated as illustrated in Equation (5,6,7): a) If the node is cluster head then: Where D is the local density calculated as N m +1, N m is the Number of Members, i and b are the normalization factors. b) If the node is border then: T V = Random (1600, current time of cluster head's timer) (6) c) If the node is ordinary then: T V = Random (200, initial time of cluster head's timer) (7) The descriptions of all using messages are shown in Table 1. Advertising node's Score value to neighbors.

My-Ch(my-id,my-ch-id,init time)
Notifying node's ID, cluster head ID and initial time of cluster head to neighbors Type(my-id,is-border,is-ch) Notifying type

RESULTS AND DISCUSSION
As battery reservation becomes a valuable resource since it cannot be replenished, minimizing the energy consumption is an important challenge in MANET. According to this important concept, Score Based Clustering Algorithm (DSBCA) was presented based on Battery Remaining, Number of Neighbors, Number of Members and Stability of node in selecting cluster head. In this section, the performance of the algorithm obtained by simulations using GloMoSim (Global Mobile Information system Simulator) [10] , is suggested. The measured performance of the proposed algorithm was compared with WCA and DWCA. We simulate a system of N nodes on an 800m ×800m area. The value of N was varied between 10 and 60. Radio range for each node was set to 250 meters. Nodes in the simulation move according to the random waypoint model [11] . The nodes move randomly in all directions with maximum speed of 10m/s, 20m/s, 30m/s. AODV [12] was selected as an underlying routing protocol. A source node selects its destination randomly and sends constant bit rate (CBR) traffic through UDP with a rate of 2 packets per second. Each packet carries 512 bytes of data payload. In our experiments, the values of score factors used in score calculation were set to the, C 2 = 0.5, C 3 =0.3, C 4 = -0.8 and C 1 is calculated through a linear function as Equation (8), also the ideal degree for each cluster head, , was set to 8.
Where E max is the maximum battery capacity, Max CE is the maximum coefficient for calculating Score value that is set to 1.2, and Min CE is the minimum coefficient for calculating Score value that is set to -0.4. To measure the performance of DSBCA algorithm, following five metrics were considered, also the Simulation results were compared with WCA and DWCA in these metrics: • The number of clusters • The End-to-end throughput • The Number of re-affiliations • The Minimum lifespan of a node that fails first due to battery exhaustion.
• Overhead of packets generated during the initial clustering set-up phase Fig. 1 depicts the average number of clusters formed with respect to the total number of nodes in the Ad-hoc If the node density Increased, DSBCA produced constantly less clusters in comparison with either WCA or DWCA regardless of node speed. As a result, our algorithm gave better performance in terms of the number of clusters when the node density and node mobility in the network are high.
. Fig. 1: Average number of clusters in DSBCA, WCA and DWCA Fig. 2 shows the results of end-to-end throughput of CBR traffics. DSBCA, WCA and DWCA gave lower throughput as the node density and mobility increased. Regardless of the number of nodes and the node speed, DSBCA gave consistently better end-to-end throughput in comparison with both WCA and DWCA. Results illustrated in Fig. 2 prove affirmatively effect of distributed and dynamic clustering approach used in DSBCA.
The result of the average number of re-affiliations due to node mobility is depicted in Fig. 3.As the number of nodes and the mobility of nodes increased, the increasing rate of re-affiliations slowed down. According to the result DSBCA constantly gave less reaffiliation than WCA and DWCA especially for the high node density and low node mobility. Fig. 4 shows the minimum lifespan of nodes, which is the time when a node fails due to battery exhaustion. As the mobility of nodes increased, nodes consumed more battery power. For a simplified power model of radio communication [13,14] used in our simulation, the energy consumed per second in transmission is illustrated in Equation (9): Where, e t is the energy/bit consumed by the transmitter electronics, e d accounts for energy dissipated in the transmit op-amp (including op-amp inefficiencies), the parameter n is the power index for the channel path loss of the antenna, this factor depends on the RF environment and is generally between 2 and 4 [14,15] , r is the transmission range which is set to 250 in our simulation. Finally, B is the bit rate of the radio and is a fixed parameter in our simulation.
On the receiving side, a fixed amount of power is required to capture the incoming radio signal as illustrated in Equation (10): Where, e r is the energy/bit consumed by the receiver electronics used by the node. Both e t and e d are properties of the transceiver used by the nodes, Typical values for currently available radio transceivers are as follows [16] : e t =50x10 -9 J/bit ,e r =50x10 -9 J/bit , e d =100x10 -12 J/bit/m 2 (for n=2) and B=1Mbit/s. Overall, the overhead of the proposed algorithm was consistently less than that of WCA. Such result can be obtained since our algorithm uses neighbor information only to form clusters and eliminates delivery of packets with weight information of nodes that are not within transmission range. Also the proposed algorithm gave less overhead than DWCA.

CONCLUSION
In this paper a novel clustering algorithm for MANETs has been proposed. In DSBCA each node calculated its score by linear algorithm which is based on four important parameters: battery remaining, number of neighbors, number of members and stability. Each node independently chose one of its neighbors with the highest score to be its cluster head and thus the cluster head selection was performed in a distributed manner with most recently gathered information of current state of the neighbors. DSBCA has been compared with WCA and DWCA to evaluate its performance. The Results of simulations obviously confirmed that our suggested algorithm provided a better end-to-end throughput and overhead, a longer lifespan and a smaller number of clusters in comparison with both WCA and DWCA.