Cluster-based Communication Protocol for Load- Balancing in Wireless Sensor Networks

One of the main problems in wireless sensor networks is information collection. How the sensor nodes can send efficiently the sensed information to the sink since their number is very large and their resources are limited? Clustering provides a logical view, much more effective than the physical view, which extends the lifetime of the network and achieves the scalability objective. Although the assumption that all sensor nodes can communicate directly with each other or with the sink is not always valid because of the limited transmission range of the sensor nodes and the remoteness of the sink. In this paper, we introduce a cluster-based communication protocol that uses a multi-hop communication mode between the cluster-heads. The protocol aims to reduce and evenly distribute the energy consumption among the sensor nodes, and cover a large area of interest. The simulations show that the proposed protocol is efficient in terms of energy consumption, maximization of the network lifetime, data delivery to the sink and scalability.


INTRODUCTION
A wireless sensor network is composed of a large number of sensor nodes and one or more sink nodes (base stations).The sensor nodes are deployed inside the area of interest to collect useful information from the surrounding environment and report it to a base station located generally at the extremity of the area of interest.For example, the sensor nodes can monitor and report certain events like the movement of objects.The role of the base station is to gather the information sent by the sensor nodes and send it back to the user (control node), and eventually send queries to the sensor nodes.Generally, the base station is much more powerful in terms of resources than the sensor nodes.
A sensor node is a small device that includes four basic components: a data acquisition unit, a processing unit, a wireless communication unit and an energy unit.The sensor node is equipped with low-power batteries suitable for its small size, which limits the ability of the sensor node in terms of processing, storage and transmission.In most cases, the sensor nodes are disposable and should last until their energy runs out.Thus, the energy is the most precious resource in a wireless sensor network.The conservation of energy and the maintenance of the wireless sensor network as long as possible are important challenges.
When the sensor nodes communicate directly with the base station, the sensor nodes located farther away from the base station will have a higher energy load due to the long range communication.When the sensor nodes use a multi-hop communication to reach the base station, the sensor nodes located close to the base station will have a higher energy load because they relay the packets of other nodes [3].
The clustering-based communication mode is considered as the most suitable communication mode for the wireless sensor networks.Clustering consists in selecting a set of cluster-heads from the set of sensor nodes and then regrouping the remaining sensor nodes around the cluster-heads.The cluster-members send the data to the cluster-head that sends it back to the base station.Clustering gives better results, it reduces and balances the energy consumption and improves the lifetime and scalability of the wireless sensor network.Clustering is often used with a data aggregation technique.Thus, the number of sent messages and transmission ranges can be reduced.
When the sensor nodes make the decision to become cluster-heads based on a limited view, the formed clusters will not be effective.In the proposed protocol, the sensor nodes base on their local parameters and the parameters of their neighbors in order to have a global view and ensure a good distribution of the cluster-heads.
Most of the clustering-based protocols use a single-hop communication to send data from the cluster-heads to the base station.In fact, they assume that all sensor nodes can communicate directly with each other or with the base station [3] [4] [12].This becomes impossible when the size of the area of interest increases.The proposed protocol uses a multi-hop communication between the cluster-heads to conserve energy and cover a large area of interest.To reduce the amount of information to be sent to the base station, we integrated data aggregation.Moreover, the rotation of cluster-heads and the use of the low-power sleep mode by the sensor nodes that do not participate in routing allow to balance the load and reduce energy consumption significantly.
The remainder of this paper is organized as follows.Section 2 provides an overview of related work.In Section 3, we define the system model.In Section 4, we present our protocol.Section 5 provides details of the proposed protocol.Section 6 presents the simulation setup and results.Section 7 concludes the paper and outlines future work.www.ijacsa.thesai.orgLEACH [3] is one of the first cluster-based communication protocols proposed for the wireless sensor networks.LEACH is executed in two phases: the setup phase and the steady-state phase.In the first phase, the cluster-heads are selected and the clusters are formed.In the second phase, the data transmission to the base station will take place.No negotiation is needed to determine the cluster-heads.Each sensor node makes the decision to become cluster-head or not independently of the other nodes in the network based on a predetermined value of the optimal percentage of cluster-heads for the network and the number of rounds in which the node has not been a clusterhead.A sensor node n chooses a random value between 0 and 1.If this value is less than a threshold T(n), the node becomes a cluster-head for the current round.The threshold T(n) is calculated as follows: where P is the desired percentage of cluster-heads (P = 0.05), r is the current round, and G is the set of sensor nodes that have not been cluster-heads in the last 1/P rounds.
The cluster-heads inform all the sensor nodes in the network of their election by broadcasting an advertisement message.Each sensor node chooses the closest cluster-head that requires the minimum communication energy, based on the signal strength of the advertisement message.After this step, the sensor nodes send join-request messages to the chosen cluster-heads.
Once the sensor nodes are organized into clusters, each cluster-head creates a TDMA schedule and broadcasts it to its members.Each node transmits its data to the cluster-head during its time slot specified in the TDMA table and turns off its radio waiting for the next transmission slot, which minimizes the consumed energy.On the other hand, the cluster-heads keep their radio on in order to receive data from cluster-members.Once a cluster-head has received the data from all members, it performs data aggregation and then transmits the aggregated data directly to the base station.Since the base station is generally far away, this transmission is a high-energy transmission.LEACH uses random rotation of the role of cluster-head after each round to evenly distribute the energy load among the sensor nodes.LEACH-C [4] is a variant of LEACH that uses a centralized clustering algorithm.In the setup phase of each round, the base station receives the coordinates of the sensor nodes and their remaining energy.Based on this information and using the optimization method of simulated annealing, the base station selects the cluster-heads and forms the clusters.The steady-state phase is similar to that of LEACH.
In LEACH-F [4], the base station uses the same clustering algorithm used in LEACH-C.The clusters remain fixed and the sensor nodes in the same cluster rotate the role of cluster-head.Each sensor node can become a cluster-head.This method does not allow adding new nodes to the network.

III. SYSTEM MODEL
There are several possible models for wireless sensor networks.Our protocol is designed for the wireless sensor networks where the sensor nodes are homogeneous (same initial energy, same processing and data storage capacities) and energy-constrained.Once deployed randomly in the area of interest (Fig. 1), the sensor nodes are left unattended.It is impossible to recharge or change the batteries in case of energy depletion.Therefore, the energy conservation and the maximization of the lifetime of each sensor node are required.The sensor nodes ignore their geographic location (no location system such as GPS).Our protocol is designed for surveillance applications, also called time-driven applications.The sensor nodes collect data from the surrounding environment at a fixed rate and send it to a single base station characterized by its unlimited capacity (energy, processing and storage).The base station is located at the extremity of the area of interest, away from the sensor nodes.All nodes including the base station are fixed (very common configuration for the applications of wireless sensor networks).Each node has multiple transmission power levels and controls the transmission power.Direct communication between all the nodes including the base station is not possible.The sensor nodes play two different roles: sensor node and cluster-head.The sensor node monitors its environment and transmits the collected data to its clusterhead.The cluster-head aggregates the collected data and forwards it to the base station.The cluster-head also participates in routing the data of other clusters.

A. Radio Energy Consumption Model
The energy consumed by the radio represents the largest portion of the energy consumed by a sensor node and the receive/listen mode represents often the main source of consumption.Therefore, the model of the energy consumed by the radio in different modes (transmit, receive/listen and sleep) affects the evaluation results and change the advantages of different protocols.Different radio energy consumption models were proposed [3] [4] [15].Heinzelman et al. [3] proposed a simple model where the radio consumes to run the transmitter or receiver circuitry and for the transmit amplifier.Thus, to transmit a k-bit message a distance d, the radio consumes: www.ijacsa.thesai.org

( )
To receive this message, the radio consumes: ( ) Castalia Simulator [1] provides realistic wireless channel and radio models.The energy is consumed according to the state of the radio.For example, the radio consumes the same energy in the receive mode and the listen mode in other words if it is receiving packets or just listening.Castalia provides three radio models: CC2420, CC1000 and BAN Radio.CC2420 and CC1000 define the real radios of the same name.BAN Radio describes the narrowband radio proposed in the IEEE 802.15 Task Group 6 documents.
In our work, we opted for the CC2420 radio.This radio is widely used in wireless sensor networks.CC2420 radio consumes 62mW in the receive/listen mode.In the sleep mode, the radio consumes 1.4mW (a single sleep level is defined).For the transmit mode, there are eight possible transmission power levels (dBm) with different power consumption (mW) (Table 2).In Table 2, the first column lists the different transmission levels and the second column shows how much energy the radio is spending when transmitting in a power level.For example, if the radio transmits with 0dBm, it consumes 57.42mW.These numbers that Castalia Simulator is using for the CC2420 radio are straight out of its datasheet.From Table 1 and 2, we notice that the receive/listen mode and the transmit mode consume a lot of energy and it is better to transmit than receive or remain in the listen mode.Therefore, the communication protocols must minimize not only the transmission distances but also the transmission and reception operations by keeping the sensor nodes in the sleep mode as often as possible.
Table 3 and 4 specify respectively the delays (in msec) and the power consumed (in mW) to switch between the three main modes of the CC2420 radio.For the transition delays, the radio takes 94μs c to change from the sleep mode to either receive/listen or transmit modes, μs to change between transmit and receive modes and μs to enter the sleep mode.The no transitions are represented by "-" instead of a number.For the consumed power, the transitions to the sleep mode consume 1.4mW while any other transitions take 62mW.

B. Transmission power adjustment
The sensor nodes have several transmission power levels.In order to minimize the amount of energy required for transmission, the sensor nodes can adjust their transmission power before communicating with each other or with the base station.For example in the case of a clustering-based communication protocol, the sensor nodes adjust their transmission power before communicating with the clusterhead.The cluster-heads can also adjust their transmission power to communicate with each other or communicate directly with the base station.This adjustment allows achieving a significant energy gain.
In order to determine the appropriate transmission power for the communication from a sensor node A to another sensor node B, the node A must first receive a packet from the node B. The sensor node A bases on the RSSI (Received Signal Strength Indicator) of the received packet, calculated by its radio.The node A needs other information as the sensitivity of the radio of the node B and the transmission power used to transmit the packet.Suppose that the sensor nodes are equipped with a CC2420 radio and the sensor node B has transmitted the packet with a transmission power of 0dBm.The sensitivity of the CC2420 radio is -95dBm.If the RSSI of the packet is -75dBm, the sensor node A knows that there is a 20dB "link budget".In other words it can reduce the transmission power of the node B by 20dB or less and remains above the radio sensitivity.The adjusted transmission power is calculated as follows [1]: where P A : adjusted transmission power.P TX : transmission power of the transmitter node.
S: sensitivity of the radio of the transmitter node (in dBm).RSSI: RSSI of the received packet.This is true if the links are completely symmetric.In case of asymmetry, for example, both directions of a path between two sensor nodes vary by 4dB, the possible variation has to be accounted in the formula: where V: possible variation.www.ijacsa.thesai.orgAn optimal communication protocol for wireless sensor networks collects the data at the base station from the distributed sensor nodes while consuming their energy slowly and evenly.In other words, the sensor nodes die at about the same time avoiding the rapid and unbalanced depletion of energy.Cluster-based communication protocols are very effective.These protocols conserve the energy using different techniques: reducing the distance sensor nodes need to transmit their data, turning off the radio of the sensor nodes, aggregating data, rotating the role of cluster-head, etc.The proposed protocol aims to reduce and balance the energy consumption.In fact, this protocol is designed with two main objectives: maximization of the network lifetime and scalability.The protocol operation is divided into rounds.Each round consists of three main phases: initialization phase, clustering phase and data transmission phase (Fig. 2).During the initialization phase, the sensor nodes exchange information and organize themselves into layers according to their distance from the base station (hop count).Our protocol is based on the clustering algorithm of Qin and Zimmermann [7].In fact, the performance of any cluster-based communication protocol depends mainly on the clustering algorithm.The position of cluster-heads and the number of nodes in each cluster are very important factors.The clustering phase starts with the selection of cluster-heads and clusters formation.Each sensor node executes a distributed clustering algorithm in order to become cluster-head or join a cluster based on the information exchanged during the initialization phase.To reduce the intracluster collisions, each cluster-head creates a TDMA schedule.During the transmission phase, data collected by the clustermembers are sent to the cluster-head according to this schedule.The cluster-head aggregates the data and sends it to the upper layer.The data is then sent from cluster-head to cluster-head until reach the base station.
Clustering or re-clustering is not an end in itself.Despite the advantages of the rotation of cluster-heads, the frequent change is undesirable because it imposes a considerable overhead.In order to remedy this problem and minimize the consumed energy during initialization and clustering, the transmission phase is long compared to the other two phases.

A. Initialization Phase
This phase assigns to each sensor node a level according to its distance with the base station and a weight of eligibility to become cluster-head according to its remaining energy.The base station starts the process by sending a setup message with a zero level (Fig. 3).Initially, only the sensor nodes that are within the reach of the base station can receive this message.
Then, these sensor nodes of a 1-hop explore the next-hop sensor nodes.The process continues until there will be no nexthop nodes.When a sensor node receives multiple setup messages, it chooses the one with the smallest level.Fig. 3 shows the structure of the network after the initialization phase.
While building the topology of the network and assigning levels, each sensor node collects the remaining energy of its neighbors regardless of the level of the neighbor.Based on its remaining energy and the remaining energy of its neighbors, each sensor node determines its suitability and the suitability of its neighbors to become cluster-head and assigns the votes.The vote given by a sensor node S i to itself is: A node explores the next-hop.
where E i is the remaining energy of the sensor node S i and N i is the set of neighbors of the sensor node S i .The vote given by a sensor node S i to a neighboring sensor node S j is: Each sensor node broadcasts the votes attributed to its neighbors.After receiving the votes, each sensor node determines its weight as follows: www.ijacsa.thesai.org

( ) ( ) ∑ ( )
Each sensor node broadcasts its weight to its neighbors.During the clustering phase, the sensor nodes use these weights to elect themselves cluster-heads or remain regular sensor nodes.The advantage of this technique of vote lies in the fact that the importance of a sensor node must be determined by the node itself and all its neighbors instead of using the local properties alone.More votes a sensor node accumulates, the more important it is in the entire network.

B. Clustering Phase
In this phase, the sensor nodes elected to be cluster-heads form the clusters by broadcasting advertisement messages and receiving join-request messages.The clustering phase is divided into three sub-phases: cluster-heads selection, clusters formation and TDMA schedule.
Taking into account the energy during the selection of cluster-heads is of major importance.Since the cluster-heads consume more energy than the regular sensor nodes, they should be selected from the set of nodes with high remaining energy.In the cluster-heads selection sub-phase, each sensor node decides to become cluster-head or not based on the weights of eligibility calculated and broadcasted in the initialization phase.The sensor node compares its weight with the weights of its neighbors.If its weight is the highest, it becomes cluster-head for the current round and broadcasts an advertisement message.The cluster-heads use the CSMA/CA MAC protocol and the same transmission power to transmit their advertisement.During this phase, the non-cluster-heads nodes must keep their radio on (listen/receive mode) to hear the advertisement messages.A sensor node can receive the advertisement of several cluster-heads.In this case, the sensor node must decide to which cluster it will belong in this round.The decision must balance the load of the cluster-heads because the main objective of our protocol is to maximize the lifetime of the network.The sensor nodes choose to join the cluster whose cluster-head has the minimum degree (number of neighbors).To do this, each cluster-head calculates its fitness value and broadcasts it with the advertisement message.The fitness of a sensor node S i is calculated as follows: where D(S i ) is the degree of the sensor node S i (number of neighbors).
The sensor nodes receive the advertisement messages and choose the cluster-head with the maximum fitness.After choosing a cluster-head, the sensor node adjusts its transmission power according to the RSSI of the advertisement message and the transmission power used by the cluster-head.This adjustment saves the energy considerably.Then, the sensor node sends a join-request message to the cluster-head using the CSMA/CA MAC protocol.The cluster-heads must keep their radio in the listen/receive mode during this phase in order to hear the join-request messages.It is possible that some sensor nodes receive advertisement messages from clusterheads that belong to different layers.We did not impose restrictions preventing nodes to join the cluster-heads of other layers.The cluster-heads can also receive the advertisement of other cluster-heads.In this case, the cluster-head selects the cluster-head that belongs to an upper layer (lower level) and has the maximum fitness as its parent-cluster-head.The clusterheads do not send join-request messages to other cluster-heads.
After receiving the join-request messages, each cluster-head creates a TDMA schedule and broadcasts it to the clustermembers.The TDMA schedule assigns to each node in the cluster a time slot during which it can transmit.Thus, the sensor nodes can enter the sleep mode and conserve energy.The use of the TDMA approach also ensures the absence of collisions in the cluster.
After the clustering phase, it is possible that some sensor nodes do not belong to any cluster.These nodes turn off their radio and wait the next round in order to conserve energy.During the transmission phase, the sensor nodes transmit the collected data to the cluster-heads and the cluster-heads transmit the aggregated data to the base station.

C. Data Transmission Phase
This phase is divided into frames and each frame is divided into slots (Fig. 4).The number of slots in a frame corresponds to the number of nodes in the cluster including the cluster-head.Each sensor node sends its data to the cluster-head once per frame during its allocated transmission slot.During the slots of the other cluster-members, the node turns off its radio to minimize energy dissipation.Instead of transmitting all the received data to the base station, the cluster-head checks and combines the content of the data.This aggregation reduces the traffic load, since much less data needs to be transmitted to the base station.
The cluster-heads use the CSMA/CA MAC protocol to transmit the aggregated data to the base station.Each clusterhead sends the data to its parent-cluster-head.If a cluster-head does not have a parent-cluster-head then it broadcasts the data message.Any other cluster-head who receives this message sends it to its parent-cluster-head or broadcasts it back if it does not have a parent.
The cluster-heads consume more energy than the regular nodes because they have more responsibilities.In order to evenly distribute the energy consumption among all the nodes in the network, after each round our protocol repeats the process from the initialization phase.The re-clustering prevents the assignment of the role of cluster-head to some sensor nodes and therefore the rapid depletion of their energy.

VI. SIMULATION AND DISCUSSION
In this section, we analyze the performance of our protocol, simulated using OMNeT++/Castalia [1][2], against LEACH [3][4].The comparison is made in terms of the following metrics:  Energy consumption: this metric shows the energy consumed during the network operation.
 Network lifetime: this metric shows the number of sensor nodes that die during the network operation.www.ijacsa.thesai.orgWe also test the scalability of the proposed solution.

A. Simulation Setup
The simulations were executed in a square area of 100 × 100 meters, with 100 sensor nodes randomly deployed (Fig. 1).The base station is located at position 50, 150.Each sensor node has an initial energy of 100 J.The radio used is CC2420.The size of the data packets is fixed at 2000 bytes and the size of the control packets at 25 bytes.Table 5 summarizes the parameters used in our simulations.

B. Simulation Results
Since the cluster-heads consume more energy, our protocol assigns this role to sensor nodes with high remaining energy.After each round, these cluster-heads will be replaced with other sensor nodes with more remaining energy.LEACH does not take into account the remaining energy of sensor nodes during the selection of cluster-heads.The choice is made randomly and all sensor nodes in the network play that role periodically.Moreover, the cluster-heads communicate directly with the base station using the highest transmission power, which requires a high energy.Our protocol uses short distance transmissions to reduce energy consumption.Fig. 5 and Fig. 6 show that LEACH consumes more energy.
To analyze the network lifetime, we have chosen the following three definitions: the time until the first sensor node dies, the time until half of the sensor nodes die, and the time until the last sensor node dies.Since more than one sensor node is required to perform the clustering, the latter definition represents the lifetime of the network when 80% of the sensor nodes die.
In the case where the cluster-heads are not in the center of the clusters, some sensor nodes will consume more energy than others.LEACH does not guarantee a good distribution of cluster-heads because the selection is done randomly without considering the network parameters.To form the clusters, the sensor nodes listen to the advertisement messages and choose the cluster-head with the strongest signal (largest RSSI).In the case of ties, a random cluster-head is chosen.Using this technique with the random selection of cluster-heads, a sensor node with low remaining energy can be cluster-head and have a large number of members.This reduces the lifetime of that node.When the network becomes dense, this situation is more likely to occur.Fig. 7 shows that the first node dies earlier in LEACH.
The main objective of our approach is to extend the network lifetime.This objective is achieved through: short distance transmissions, good distribution of cluster-heads, and load balancing among the cluster-heads.The sensor nodes communicate only with their close neighbors to save energy.In order to have a global view and ensure a good distribution of cluster-heads, the sensor nodes base on their parameters and the parameters of their neighbors to elect themselves cluster-heads.Knowing that the energy consumed by a cluster-head depends essentially on the number of cluster-members, it is very important to balance the load of the cluster--heads.The use of the fitness value of the cluster-heads tries to balance the clusters size.A sensor node tries to join the cluster-head with the minimum load.Fig. 8 and Fig. 9 show that the sensor nodes remain alive for longer time with the proposed protocol.Scalability is one of the most important features.In a large network, the communication protocol should not be affected and the control traffic should be negligible compared to the data traffic.Because a large number of sensor nodes generates a lot of transmissions.Sending and receiving messages consume energy.Fig. 10 shows that our protocol outperforms LEACH and generates a longer lifetime when the density of nodes increases.In both protocols, the sensor nodes send data to the cluster-heads over a single-hop.To reduce the amount of data to be transmitted to the base station, the cluster-heads aggregate the data received from the sensor nodes.In LEACH, the data is sent directly to the base station while in our protocol, it is sent from cluster-head to cluster-head until the base station.The transmissions over short distances conserve energy and avoid collisions.Fig. 11 shows the number of data messages received by the base station during the network operation.Since the rate of dead sensor nodes in the proposed protocol is less, more data messages will be sent to the base station.

VII. CONCLUSION AND FUTURE WORK
In this paper, we introduced a clustering-based communication protocol, which aims to evenly distribute the energy consumption among the sensor nodes and extend the lifetime of wireless sensor networks.Simulation results show that the proposed protocol is better than LEACH in terms of energy consumption, maximization of the network lifetime, data delivery to the base station and scalability.Our algorithm improves the formation of clusters by incorporating the information of the neighboring nodes.However, like many other distributed clustering algorithms, it does not guarantee an optimal formation of clusters.Moreover, the problem of load-balancing remains.When the sensor nodes use the single-hop communication, some sensor nodes will have a high energy load due to the long-distance communication.
When the sensor nodes use the multi-hop communication, some sensor nodes will have a high energy load because they relay packets of other nodes.Our future work is to improve the protocol and find a much more suitable communication mode for wireless sensor networks.


Received data messages: this metric shows the number of data messages successfully delivered to the base station.

Figure 10 .Figure 11 .
Figure 10.Network lifetime as a function of number of nodes when the first node dies