Duty Cycling Centralized Hierarchical Routing Protocol With Content Analysis Duty Cycling Mechanism for Wireless Sensor Networks

In this paper, a Duty Cycling Centralized Hierarchical Protocol (DCCHP) has been proposed for wireless sensor networks. DCCHP is an energy efficient protocol that prolongs the lifetime of the network by applying a duty cycling mechanism named DCM that chooses the nodes that send unimportant data in a certain epoch to be candidates to be put to sleep. But if the proposed equations for choosing the cluster head nodes put any of them in a high priority it works in the active mode. When comparing DCCHP to the previously proposed LEACH-CS, LEACH-C protocols, using a simulation study, DCCHP in average extends the network lifetime 50% more than LEACH-CS and about 60% more than LEACH-C across a different number of nodes in the network scaled up to 1000 nodes. That is because DCCHP chooses the definite number of nodes of unimportant data to be switched to sleeping mode unlike LEACH-CS and unlike LEACHC which keeps all nodes in active mode. Also an analytical study of energy consumption proves that DCCHP preserves energy consumption more than LEACH-CS and DCCHP. DCCHP has been proposed for applications with scarce resources.


INTRODUCTION
Wireless Sensor Networks (WSNs) is a revolutionary technology consisting of a large number of tiny nodes named sensors deployed randomly to monitor events of interest. WSNs can be used in multiple applications difficult to monitor by human attendance as earthquakes, volcanoes, fires and military applications. Data collected from sensors are routed to base stations for further processing and decision making. Unfortunately, sensors have limited resources including power, storage and processing capabilities; once power used up sensors cannot be replaced and thus limiting the network lifetime. Therefore, targeting * Correspondence: anar_abdelhady@eri.sci.eg prolonging the network lifetime by introducing energy efficient algorithms is a crucial issue and is extensively studied by many researchers [1,2].
Wireless sensor networks consume energy in numerous activities; one of the most important reasons for consuming energy is idle listening, where nodes keep listening to the channel until there is data. A lot of techniques have been introduced to solve this problem and one of these techniques is duty cycling. Duty cycling refers to a mechanism where sensors switch between the active state (working) mode and the sleep state mode. During the active mode, nodes can listen to the channel and monitor it, send and receive data, while in the sleeping mode nodes switch off its radio and enter a power saving mode [3].
As has been mentioned sensor nodes are energy constrained devices [4] and consequently this has to be put in account while designing routing protocols. Clustering has been introduced in routing as an energy efficient solution. Clustering refers to the process of partitioning the network into groups called clusters with nodes acting as cluster heads for each group. Therefore, sensed data is sent from the sensor nodes through clusters heads to the base station [5,6]. Data aggregation can also be done by cluster heads where data received from cluster members is aggregated before being sent to the base station [7].
Adding duty cycling techniques to protocols based on clustering is a challenging point, so as to balance between integrated clusters' tasks and a powerful duty cycling algorithm. Considering the different roles of nodes inside clusters needs special techniques for balancing the choice of status of nodes, either to be in the active mode or to be put to sleep if it is not needed for data sensing or for any other cluster roles.
This paper introduces a routing protocol that adopts a duty cycling technique for nodes inside the network to extend the network lifetime while managing the priority in choice of modes according to the different roles required from each node. The second section reviews the work related to the proposed protocol. The remaining part of this paper is organized as follows: The third section describes the function of DCCHP protocol in details. The fourth section presents the simulation study of DCCHP in comparison to LEACH-CS and LEACH-C and its evaluation through simulation results. The fifth section presents an analytical study of energy consumption for the three protocols. Finally, the last section discusses the conclusions and future work.

RELATED WORK
Authors of [8] proposed Low-Energy Adaptive Clustering Hierarchy (LEACH) protocol. The protocol operation is divided into rounds; each round consists of two phases a cluster set-up phase and a steady-state phase. In the cluster set-up phase a fraction p of nodes is chosen as cluster heads, the rest of the nodes join cluster heads according to their signal strength from them and finally clusters are formed. In the steady-state phase sensed data is sent from sensors to cluster heads, aggregated and then sent to the base station. LEACH assumes that all nodes in the network can reach each other and can reach the base station. In each round different cluster heads are chosen, the selection process is based on a random rule that chooses cluster heads from nodes that have never been chosen before or such that the number of time being a cluster head is minimal. By this algorithm LEACH protocol minimizes energy consumption overall the networks and extends its lifetime. LEACH protocol is based on a distributed algorithm where cluster heads and clusters are chosen by negotiations between nodes in the network. Although using a distributed algorithm may have its advantages, it also has problems in effectively choosing cluster heads and cluster members. This was the main drive behind proposing a centralized algorithm by the same authors of LEACH; LEACH-Centralized (LEACH-C) [9] protocol. LEACH-C protocol is based on a centralized algorithm in forming clusters. Nodes in the network at the beginning of each round send their location and energy level to the base station, according to this information the base station chooses the cluster heads, form clusters and sends to each node its transmission time slot. The steady-state phase in LEACH-C is similar to that of LEACH. LEACH-C outperforms LEACH as the base station has a better overall vision of the network and can choose cluster heads and cluster members more efficiently and also save the energy exerted in messages sent to form clusters. LEACH and LEACH-C do not consider different modes of functionality of nodes, such as the modes considered in this paper which switch nodes from active to sleeping modes depending on content analysis of data and whether nodes are candidates for special roles inside the cluster. The authors of this paper has introduced in [10] a Low-Energy Adaptive Clustering Hierarchy Centralized Sleeping Protocol (LEAH-CS); a protocol that employs an intelligent sleeping algorithm to switch the functionality of clusters according to their data either to sleeping or active mode. Though this protocol has proved a significant improvement in lifetime and delay, it suffers from the problem of switching the complete cluster to sleeping mode if its aggregated data is below a certain threshold. While this gives an indication of the sensed data by nodes in the cluster, it may be inaccurate if individual nodes are considered as sensed data of each node may be above the required threshold and thus, considering data of nodes before cluster formation maybe in the networks accuracy favor.
Authors of [11] propose an algorithm that extends the network lifetime by changing the mode of nodes into sleeping mode according to their energy level. It also uses a fuzzy control algorithm to add the speed of energy consumption to the equation of mode change. Accordingly, nodes with a high rate of energy consumption switch to sleeping mode while nodes with a low rate serve in active modes. Every node seeks in its "probing range" if there are working nodes, if so it switches to sleeping mode or else it enters the working node, and thus the overall energy consumption in the network is decreased by using the minimal essential nodes. The probing range is defined as a circle around each node with itself as the centre and RP as the radius. This method although extending the network lifetime, it uses a lot of control data which overheads the network and requires a free channel most of the time.
In [12], authors propose an energy efficient hierarchical protocol. Since this protocol is cluster based, cluster heads are chosen according to an algorithm consisting of two stages. This scheme manages the energy exerted in communication, as categorized the highest in the network operation, by using a TDMA and sleeping transmission scheme. Cluster heads give node members transmission slots according to their needs. Nodes identify their sleeping and working modes according to their sensed data. This scheme though appears to save energy it depends on a dense deployment of nodes in the field and thus it does not actually save resources it only uses auxiliary nodes for field coverage.
In [13] the authors propose a node scheduling algorithm for wireless sensor networks that tackles energy efficiency problem. This scheduling algorithm manages the sleeping and working modes of nodes so as to maximize the network lifetime. The algorithm works in dense networks. It operates in two parts; the first is sleep scheduling using redundancy of nodes, probe rate and the adjustment of the sleep timer to take into account failure of nodes. Passive messaging is used by active modes to decrease the overhead charge. Also, to overcome one of the major problems in wireless networks, namely collisions which may cause the activation of multiple nodes in a single area, a disabling procedure is adopted between active nodes using activity duration weight. This scheme suffers both from control overhead and dense deployment condition.

Overview
The following assumptions are adopted for operation of the protocol: the base station location is set far from sensor nodes; sensor nodes start with the same initial energy level and are stationary and homogenous. Nodes inside the network and the base station are in the same transmission range of each other. Also, Nodes sense the environment periodically at a fixed rate and always have data to send. This section explains in details the functionality of DCCHP protocol. The next subsection describes the adopted radio model and the proposed protocol operation. Subsection 3.3 finally defines DCCHP protocol pseudo code.

Radio Energy Dissipation Model
In the adopted radio model the models used are the free space (d 2 power loss) and the multi path fading (d 4 power loss) channel models, according to how far the sensors are from each other. E elec = 50 nJ/bit (Electronics energy constant, consumed in functionality of the circuitry of the transmitter and receiver, many factors affect it as digital coding, modulation, filtering, and spreading of the signal) ε = 0.0013 pJ/bit/m 2 , ε = 10 pJ/bit/m 2 (Consumed in functionality of the transmit amplifier) Thus, for transmitting an l-bit message a distance d, the energy dissipated using the radio model [9]: Where, d o is: Amplifier energy, ε f s d 2 or ε mp d 4 , depend on the distance to the receiver and the acceptable bit-error rate. The energy exerted to receive an l-bit message is: Where, according to [14], E T x (l, d): transmission energy at the source node E Rx (l): received energy at the destination node E T x−elec , E Rx−elec : per-bit transmission and reception energy required to empower the transceiver electronics components inside sensor nodes.

Duty Cycling Centralized Hierarchical Protocol (DCCHP)
DCCHP protocol operates in three phases; in the first phase it runs the Duty Cycling Mechanism (DCM) when nodes prepare to send their current energy levels to the base station to start cluster formation. Nodes add sensed data to this packet to enable the base station to evaluate this data to decide whether to put the node to sleep or not; in the sleep mode nodes stop sensing data, do not participate in clusters, turn off their radio and enter a power saving mode while active nodes sense data periodically and participate in clusters to have their data sent to the base station. The base station takes this decision according to the importance of sensed data by the sensor; the importance of data will be user defined in real time applications as users will set the threshold between important and unimportant data according to the application used and the kind of data sensed; for example temperature data in agricultural applications differs in the threshold of importance from one product to another and from one environment to another. If the sensed data does not cross this predefined threshold then its data is more likely to be unimportant in the current round. After taking this temporary decision the base station then makes further operations to decide if the priority is to put the node to sleep or to use it as a cluster head. This improves the lifetime of the network by saving the energy expended in making unnecessary clusters which participate in the first transmission frame used for evaluation of cluster data adopted in LEACH-CS. Also it increases the accuracy of data by choosing the nodes of unimportant sensed data in particular to be put to sleeping mode rather than switching off a complete cluster for dominant unimportant sensed data inside it, as in the case of LEACH-CS. An example of a DCCHP network is shown in Figure 1. The base station receives a packet from every node in the network with its current energy level and sensed data at the beginning of each round. The DCM is run by the base station on the received information to decide the sleeping and the active nodes as described above.
Afterwards the set up phase of forming clusters begins by the base station; if the node is a candidate to be put to sleep but has a high energy level and is in a crowded place of nodes then it might be likely to be chosen as a cluster head rather than putting it to sleeping mode. Every node is given a weight according to its energy level and place in the network as will be described in the details of DCM, and according to the calculated weights nodes are ordered descendingly and 5% of the alive nodes are chosen to be cluster heads of the round. This percentage has been concluded by authors of [9] as the optimal number of cluster heads in single leveled clustering centralized protocols. The active nodes are grouped by the base station into clusters by assigning them to their appropriate cluster heads by choosing the minimum square distance between the nodes and the cluster heads. A time TDMA frame slot is sent by the cluster head to its cluster nodes. The last phase is the steady state phase where active nodes start sending data to their cluster heads sequentially according to their TDMA slots. The cluster head then aggregates the received data and sends it to the base station, and this steady state phase is repeated a number of frames in the same round (the number of frames is user defined).

Base Station Sensor Node
Cluster Sleeping Node Cluster Figure 1 An example of a DCCHP network.

Duty Cycling Mechanism (DCM)
• In previous protocols before the set-up phase, nodes send their energy levels to the base station but in DCCHP it sends a sample of sensed data along with the energy level.
• If this data is below a certain threshold this means that this data is not likely to be significant in the next round; this threshold is user defined according the application used and the kind of sensed data. According to this analysis, the base station decides which node to be categorized as a candidate to be switched to sleeping mode for the next round.
• The base station then orders nodes ascendingly according to their energy levels in a list named energy_list and gives nodes sequentially weights from 1 up to the highest node with a unit increment between a node in the list to the node directly below it.
• The base station then orders nodes in another list named distance_list descendingly according to their sum of square distances to other nodes and gives nodes sequentially weights from 1 up to the highest node with a unit increment between a node in the list to the node directly below it.
• The base station then applies equation (3) on corresponding nodes in each list and the calculated result is ordered in a list named optimal_list descendingly.
Where, i is the node identity • The highest weight 5% of nodes are chosen from the optimal_list in the set-up phase as cluster heads of the round even if they were candidates to be switched to sleeping mode.
• The base station then broadcasts cluster heads to active nodes and when nodes receive the ID of their cluster head they know they are in active mode this round, so they start sensing data periodically and send it to their cluster heads.
A Duty Cycle Flag (DCF) set to 1 is sent to nodes decided to be switched to sleeping mode where they do not sense data periodically and understand they have no roles the current round. In real time applications, all these actions are programmed in the microcontroller of the sensor node.

Implementation Details
The implementation of the protocol is divided into several levels; the node level, the base station level and the node-base station level. Messages of each level are defined separately with all relevant details. In the node level all transmissions between nodes and from nodes to the base station are implemented and actions according to messages between them. In base station level all transmissions from the base station to nodes are implemented, actions according to messages from nodes are taken and the set up phase is depicted. Whilst the last level defines specific operations similar between nodes and the base station. A wireless broadcast channel is declared to connect nodes to each other and to the base station. All these details are defined in the network level which is the concern of our protocol.
The following pseudo code in Tables I & II describe the functionality of DCCHP protocol:

EVALUATION AND RESULTS
The performance of DCCHP protocol has been evaluated by implementing it using OMNet++ discrete event simulator [15]. The simulations have been run on a network ranging from one hundred to one thousand nodes using the settings specified in the following Table. DCCHP protocol is compared to LEACH-CS in terms of network lifetime, first node dead in the network and the accuracy of choosing the number of sleeping nodes in the network. Network lifetime is identified in the protocol operation by the rounds' number performed by the network up until less than ten nodes are operating.

Symbol Definition S alive Set of alive nodes in the network L dist
List of ordered nodes by distance L energy List of ordered nodes by energy W dist Weights of nodes relative to distance initiated by 0 W energy Weights of nodes relative to energy initiated by 0 k The number of cluster heads,  Figure 2 shows the number of rounds the network operates before the network is dead with different scales of the network. The figure shows that DCCHP extends the network lifetime 50% more than LEACH-CS; this is because at the beginning of the round when nodes send data with their current energy level the DCCHP protocol switches to sleep mode all nodes that report data below the required threshold (except those that are appropriate for being cluster heads). Whilst LEACH-CS does not do this step and waits until cluster heads are chosen and clusters work their first data report. It then chooses clusters that report aggregated data below the defined threshold to switch off to sleep mode. In large clusters this reported data by each cluster may be dominated by the majority that may be higher than the threshold and thus nodes that have unimportant data are obliged to work in the cluster that was not chosen to switch off into sleeping mode. Also, this situation is vice versa when  Table 3 Parameters used in simulation of the protocol.

Number of nodes
100-1000 nodes Data packet and header size 512 bytes Sensor node initial energy 0.5 J Transmitter or Receiver energy exerted to power the transceiver electronics 50 n J/bit [13] Aggregation energy 5 nJ/bit/signal Field size 1000 × 1000 Threshold value 3 (user defined according to the application) the dominant nodes have data below the defined threshold and important data nodes in the cluster are forced to switch to sleep mode. The figure also shows that DCCHP increases the network lifetime by 60% more than LEACH-C which is obvious as in LEACH-C all nodes work in the active mode through the whole network lifetime. Figure 3 also shows that in most scenarios the first node to die in DCCHP is slightly at a lower number of rounds than LEACH-CS. That is because when more nodes are switched off to sleeping mode, the rest of the nodes (some of them may be chosen as cluster heads) may suffer from working in bigger clusters which drains their energy faster while it extends the overall network lifetime as explained in Figure 2. But as the network scales LEACH-CS curve crosses below the curve of DCCHP at about 900 nodes as it drains in the lifetime of first node to die as the network is divided into clusters in the beginning of each round as  if it were all active which requires clusters to have large numbers of nodes so the cluster heads' energy drains dramatically even if it was for one transmission only until unnecessary clusters are switched to sleeping mode. On the other hand, the clusters in DCCHP are formed after unnecessary nodes are selected to switch to sleeping mode and thus clusters may be slightly less in number in the contrary to smaller networks. Also, the figure shows that LEACH-C does not compete with both protocols in the number of rounds before the first node is dead as all nodes are drained in heavy work from the beginning of the network lifetime till the end. Figure 4 shows the difference in curves between the number of nodes chosen to be switched to sleeping mode through the whole lifetime in different rounds and the nodes that actually sense data below the defined threshold. In DCCHP the chosen nodes are actually the total number of nodes that send data below the defined threshold of data whilst in LEACH-CS the lower curve shows the chosen nodes that are actually switched to sleeping mode which is a very small number relative to the upper curve that shows the number of nodes that send data below the defined threshold but the data is dominated by the aggregated data sent by the cluster head which in some cases was higher than the threshold and thus it was obliged to work while it sends unimportant data.

ANALYTICAL STUDY
According to equations (1) and (2) and using Equations (3), (4) and (5) are equal in DCCHP, LEACH-CS and LEACH-C and from them the following equations are derived where Fis the number of frames in one round: By comparing equations (6) and (7) N asleep of DCCHP is all nodes that are obliged to go into the sleep mode except a very slight amount which is the number of cluster heads that are chosen from them, and since total cluster heads are already 5% of the total amount of nodes so it can be neglected, also according to Figure 2 N asleep of DCCHP is approximately about 95% more than that of LEACH-CS. These parameters are the dominant parameters in the third term of both equations while the other terms can be considered negligible relatively. Hence, the amount of energy exerted by the non cluster heads is apparent to be far much less than that of LEACH-CS by comparing the third term of both equations. While the first and second terms of both equations are relatively close. Finally, it is very clear by comparing equation (8) -where LEACH-C works in its full capacity of nodes-to equation (6) that equation (8) is much less in its second and third terms in exerting energy as nothing is subtracted from the second and third term of equation (8).

CONCLUSIONS
In this paper, a routing protocol named Duty Cycling Centralized Hierarchical Protocol (DCCHP) has been proposed for wireless sensor networks, it employs a new duty cycling mechanism DCM for choosing some nodes to be switched to sleep in the network if they deliver unimportant data in a certain epoch. It has been proved in the research by simulation that DCCHP extends the lifetime of the network 50% more than that of LEACH-CS and 60% more than that of LEACH-C, and that is by choosing all nodes that deliver unimportant data in a certain epoch of time to be switched to sleeping mode except those that are candidates for being cluster heads in the rounds if the proposed equations for choosing the cluster head nodes puts them in a high priority.
The results show that LEACH-CS had a great gap between nodes that ought to be switched to sleep mode and nodes actually in sleep mode, while this is not the case in DCCHP where the nodes chosen to be switched to sleep mode are all the nodes that ought to be put to sleep. Also, the difference in results of energy consumption between DCCHP, LEACH-CS and LEACH-C has been confirmed analytically. DCCHP is more recommended to applications that critically need the best use of network resources while change in instant data is not of very great impact on applications and data is likely to stay stable for a while such as agricultural applications where temperature, humidity and light intensity readings stay stable for a long period of time and collecting dead sensors may be of very high expense. Thus, we can conclude that DCCHP extends the network lifetime significantly while reducing data packets which decrease data collisions in the network. Whereas DCCHP needs to be modified to improve the lifetime of the first dead node in the network.
In the future work it is intended to extend DCCHP protocol by using other different techniques for duty cycling.