Developing Energy Aware Distributed Aggregation Tree Technique for Wireless Sensor Networks

Wireless sensor network WSN consists of small sensor nodes with limited resources, which are sensing, gathering and transmitting data to base station. Sensors of various types are deployed ubiquitously and widely in varied environments for instance, wildlife reserves, battlefields, mobile networks and office building. Sensor nodes are having restricted and non replenishable power resources and this is regarded as one of the main of their critical limits. All applied techniques and protocols on sensor nodes must take into consideration their power limitation. Data aggregation techniques are used by sensor nodes in order to minimize the power consumption by organizing the communication among sensor nodes and eliminating the redundant of sensed data. This paper proposed lightweight modification on data aggregation technique named Energy Aware Distributed Aggregation Tree EADAT. The main principle of this development is using the available information in sensor nodes to pass the role of parent node among sensor nodes in each cluster. The process of passing parent node role is based on nominating the sensor nodes which have higher power on regular bases. A model based on tree network architecture is designed for validation purpose and is used with NS2 simulator to test the proposed development. EADAT and EADAT with proposed development are applied on the designed model and the results were promising.


Introduction
Wireless sensor networks (WSNs) are used by numerous applications such as military, health and weather. Typically, large numbers of sensor nodes are involved in WSN that are communicate among themselves in addition to their connection to an external node which is named sink or a base-station [1] [2]. The distribution of sensors could be random such as in battlefield or placed in predetermined locations like in remote monitoring systems. The communication in WSN is established basing on the coordination among sensors themselves to form a single hop or multi-hop network which a hierarchy organized with several clusters and cluster heads. Periodically, the sensors observe the data, process it and send it to the sink node or base station. The reading rates of data and the sensors number of which participating in reading data usually depends on the application.
Sensing data and transmitting it to the base station are regarded as the main purposes of using sensor nodes.
Usually the sensor nodes are distributed inlarge area making sending the data to the base station directly in efficient and this attributed to the distance between them. The sensor node consumes energy on sending data packet more than any other operation. Therefore, there is a need to employ a technique that manages data transmission from sensor nodes to the base station. This technique includes routing protocols and data gathering mechanisms in order to prolong network lifetime. Data gathering is a mechanism that systematically collects the sensed data by several sensors to be forwarded to the base station for processing. Transmitting the data directly from all sensors to the base station is inefficient because sensor nodes have limited power. In addition to, Gathering data from neighboring sensors is often includes redundant data. Further, in large sensor networks the amount of sensed data is usually enormous and need managing to facilitate processing them in base station. Iraqi Journal for computers and Informatics (IJCI) The main objective of data aggregation technique is collecting data from sensor nodes and processing them with the minimum of energy consumption. Reducing consumed energy is achieved by managing the communications between sensor nodes efficiently and removing the redundant data to improve the network life cycle [3] [4]. The remaining of this paper is organized as follows: data aggregation techniques in WSN is detailed in section II. Section III presents an overview of EADAT algorithm. Proposed development of data aggregation algorithm is described in section IV. Simulation model is explained in section V. Conclusion is presented in section VI.

Data Aggregation Techniques in WSN
Wireless sensor nodes have limited power resource so any technique designed to be applied in such nodes must consider this limitation. The essential task of aggregation approaches is gathering data from sensor nodes. The main goal of aggregation algorithms is prolong the lifetime of network by aggregate data in a power efficient manner and without gathering redundant data. Figure 1 shows the procedure of aggregation approach in WSN.
Many data aggregation techniques have been proposed which may classified based on the network architecture as following [5] [6].

Centralized Based Aggregation
In centralized architecture, there is one central node that collects the sensed data by other sensor nodes in WSN. Hence, this architecture is very simple as only one node will be responsible on gathering data from other sensor nodes. The central node named as central processor fusion node and its task is collecting the data from all sensor nodes and fusing the final reports. This architecture is characterized with its ability of detecting erroneous report of information. Although, this architecture is the simplest and can easily detects errors in gathered data, the workload is focused at only one point and sensor changes are inflexible [7] [8] Figure 2 describes centralized architecture in WSN.

Decentralized Based Aggregation
The decentralized architecture is opposite of centralized architecture because there is no single centralized node that gathers the data from all other sensor nodes. Figure 3 shows the connections among sensor nodes. These connections facilitate performing data fusion processing at each node based on sensed data and the observations of neighboring nodes. The decentralized architecture featured with its scalability and tolerant to the modifying in number of sensing nodes or dynamic changes in their location in WSN [

Cluster Based Data Aggregation
This architecture based on dividing wireless sensor network into clusters where each cluster has a cluster head. Cluster head is a sensor which gathers the observed data by other sensor nodes. The main goal of this architecture is prolong the lifetime of WSN by dividing the network into a number of clusters. The sensed data to cluster head CH (local aggregator) rather than to the base station by which it consumes less energy. Usually CH is nearer to sensor node than base station. Figure 4 explains this architecture. In each cluster, the CH aggregates data from all the connected sensor nodes then sends the processed data to the base station. Hence, this scheme supports saving the energy of the sensors. The clustering process in this architecture has significant issue, which is classifying the sensor nodes properly. Successful clustering process needs to determine the number of clusters that should be formed in WSN; the number of nodes that should be involved in a single cluster and the used cluster procedure in cluster-head [9] [10].
There are many cluster based architecture protocols such as Low Energy Adaptive Clustering Hierarchy (LEACH) [11], and Hybrid Energy Efficient Distributed Clustering Approach (HEED) [12].

Chain Based Data Aggregation
In chain architecture, sensors are located in a linear chain so each sensor sends the observed data to the closer neighbor in structured line. When a sensor node receives data packet from its neighbor, it sends received packet along with its gathered data to the other neighbor located in the other side. This process is repeated until all the gathered data are forwarded to the base station [13] [14] [15]. Figure  5 shows chain architecture. Power Efficient Gathering in Sensor Information System (PEGASIS) [16] is an example of chain based architecture.

Tree Based Data Aggregation
In this architecture, an aggregation tree is constructed to perform the aggregation task as shown in figure 6. The constructed tree could be a minimum spanning tree, where leaves represent source nodes and root represents sink node. Each node forwards its data packet to its parent node. Hence, the aggregation is done in parent nodes when data packets start flowing from leaves nodes toward the sink. One of tree-based networks advantage is its ability to construct a power efficient data-aggregation tree [7]. Example of this architecture is Energy Aware Distributed Aggregation Tree EADAT [17].

Grid Based Aggregation
This architecture based on dividing the network into several grids where each grid includes regular sensors and aggregator. The aggregator receives the data packets directly from the sensors in the same grid and forwards it to the sink node. Signal strength is sent by each sensor to its neighbors. After getting data packets from all the neighbors, the neighbor with highest signal strength becomes the data aggregator. The performance of aggregation scheme is better and more properly when events are highly localized [3]. Figure 7 shows grid based architecture.

Overview of EADAT Algorithm
There are several proposed and applied data aggregation algorithms. Many researchers have made great effort in studying, analyzing and comparing these algorithms such as in [7] [9] [3] and [18]. This section presents EADAT. EADAT has been proposed for cluster based architecture, which is the most common architecture in WSN [19]. EADAT is tree based architecture and the non-leaf tree sensor node is selected based on its residual power. Where the sensor with higher power have higher chance to become a non-leaf tree node in order to prolong the network lifetime. In this protocol, the sink broadcasts a control message to leaf sensor nodes and it supposes the role of the root node in the aggregation tree. When leaf sensor nodes receive the control message firstly, a sensor v sets a timer Tv to an initial value denoted by Tv 0, where Tv 0= . Tv is used to count down when the channel is idle. The sensor v uses the information in control message to select the node with the higher residual power and shorter path to be its parent (sink). The sensor node v increases its hop count by one and broadcasts the control message when the timer times out. A sensor node u marks itself as a non-leaf node if it receives a message indicating that node v is its parent node. The aggregation tree which is rooted at the sink is generated after each node has opportunity to broadcast at least once [17].
The sink s broadcasts msg, which includes the following fields: (IDs, -, ∞, statuss, 0). ID is the sensor"s ID, -is its parent in the aggregation tree, ∞ is its residual power, status is itos status in the tree (undefined state, leaf node, non-leaf node, or danger state when non-leaf node does not have enough power to serve as the active node), and 0 is the path length (number of hops from the sink).

A sensor v listening to the channel.
3. When sensor v receives a msg for first time, it set its timer to Tv 0 and if the channel is idle the Tv will count down 4. If sensor v receives any msg and Tv> 0, sensor v will reset Tv to Tv0. 5. When Tv times out, sensor v broadcasts msg (IDv, parentv, powerv, statusv, hopCntv), where hopCntv = 1+hopCntparentv. 6. If a node u receives a message from v indicating that parent v = u, u will mark itself a non-leaf tree node 7. Otherwise, u is a leaf node. 8. This process continues until each sensor broadcasts once. Completing this process will result in an aggregation tree or a reversed multicast tree, which has one root known as sink [20].

Proposed Modification of Data Aggregation Algorithm
This proposal presents a development on EADAT algorithm. One of the main limitation in EADAT is forming the tree only once at the beginning of setting the WSN. Parent or sink nodes are not updated through the network life. However, the parent nodes are the nodes with higher power; they lose their energy quicker than leaf nodes. This attributed to the number of transmitting operation that parent node performs as this operation consumes more energy than others do. After performing, a number of reading and transmitting data packets the energy of parent nodes will be reduced and getting less than the energy of its leaf node(s). Passing the role of parent node among the sensor nodes in each branch periodically will overcome this issue and prolong the life of WSN. To maintain the parent node with higher energy in branch this requires reforming the branch in tree regularly. The proposed development of aggregation algorithm for WSN is explained in the following: 1. A sensor v listens to the channel and receives many broadcasts with msg (ID, parent, power, status, hopCnt) 2. Sensor v records all received broadcasted msg 3. When Tv times out, sensor v broadcasts msg (IDv, parentv, powerv, statusv, hopCntv), to announce that it chooses a parent. The parent is chosen based on the higher residual power and shorter path to the sink. 4. Tree is formed and the sensors start their workin reading data and transmitting it to the sinknode. 5. During this process, each sensor calculates thenext time to reform the branch that it was included in. The information that was recorded previously from received broadcasted msg is used in in this process. Calculating the next time to reform the branch a. The sensor r count the number of sensor nodes in its branch by listening to broadcasts msg (IDv, parentv, powerv, statusv, hopCntv), that parentv is same as r parent.
b. Each round of transmitting data from sensor nodes to branch parent, the sensor r reduces its parent power by Sn*energy to send one data packet.
c. If r power > parent power, broadcast msg(ID, -, power, status, 0). Steps from one to four represent the EADAT algorithm.
Step five describes the development process to reform the tree. The proposed development aims to increase the lifetime of WSN through organizing the consuming of sensor node energy. This aim can be achieved by using effective developing of aggregation algorithm, which does not need for complex operations nor saving extra information. The proposed development achieves these requirements. Passing the role of parent node among branch sensor nodes saves power and prolongs the lifetime of WSN.

Simulation Model
NS2 simulator is used to perform the suggested development on the EADAT algorithm as it supports wireless sensor network [21]. To validate the proposal, tree architecture model is designed to apply the experiments. Table 1 and 2 shows the used simulation parameters and the implemented scenario includes (10,20,30,40,50,60,70,80,90, and 100) sensor nodes randomly located within an 800mx800m space. 700 seconds of simulation time is specified for each simulation execution. The initial power of sensor nodes are varied (750, 1000,1500) Joule. More than 20 runs with different locations of nodes are implemented and the results represent the average of them. The experiments show that applying the proposed development on EADAT algorithm keeps the parent nodes with higher power always. When the parent node gradually consumes its power, one of the leaf nodes will become with higher power and then announce itself as a parent node instead. Figure 8 shows the number of alive nodes during the lifetime of the WSN. The performance of EADAT with development is better than without it as the number of alive nodes during the progress of network live is decreasing slower than EADAT.   Figure 9 shows average remaining of energy in alive sensor nodes. There is no big difference between the EADAT with the proposal and without it. When applying the EADAT with development, the average power of sensor nodes is less than without it, this attributed to the consumed energy in passing parent node role. Although the average power of sensor nodes with proposal is less than without it, the performance of network is better. Maintaining the whole number of sensor nodes alive during the lifetime of the network will result in more accurate results as all sensors in branch are involved in collecting data.

Conclusion
Sensor nodes are deployed by various applications since they can be used in harsh environment such as military surveillance and remote monitoring systems. Sensors are small devices with limited power resources that must taking into account when using them. This paper presents a lightweight modification that applied smoothly on EADAT. The modification aims to improve the lifetime of WSN by passing the role of parent node among the sensor nodes that are involved in tree.
The proposal used the available information that EADAT technique used so it does not need to save or quire extra information about the sensor nodes.
In EADAT, a node that has higher power announces itself as a parent node for a specific branch while some or all leaf sensor nodes in that branch can estimate when their power will be higher than parent node power. Accordingly, the role of parent node will be passed in that branch by repeating the process of choosing the proper parent node, which EADAT based on. NS2 simulator is used and the results show enhancement in the lifetime of WSN as the life of each sensor node is increased when using the development. Although, the proposal repeats the process of selecting parent node for each branch in tree on a regular basis, the sensor nodes can work for longer time. Thus, the period that all sensor nodes in WSN are a live will increase.