Aggregation Time Control Algorithm for Time constrained Data Delivery in Wireless Sensor Networks Jae Young Choi, Jong Wook Lee, Kamrok Lee, Sunghyun Choi, Wook Hyun Kwon
Hong Seong Park
School of Electrical Engineering and Computer Science Seoul National University Seoul, Korea Email:
[email protected]
Department of Electrical and Computer Engineering Kangwon National University Chuncheon, KangwonDo, Korea Email:
[email protected]
Abstract— This paper proposes and evaluates a new aggregation algorithm in wireless sensor networks with time constraint. In the proposed algorithm, each aggregation node controls its aggregation time in order to aggregate and transfer data from child nodes within a given deadline of the sink node. The objective of the algorithm is to deliver the time constrained data within time bound while reducing the energy consumption resulted from the number of transmissions. Based on the aggregation tree, the proposed algorithm considers the number of the child nodes to determine the aggregation time. The performance of the proposed algorithm is evaluated using both the miss ratio and the aggregation gain.
I. I NTRODUCTION Wireless sensor networks (WSNs) are emerging technologies, which will be applicable to many areas such as military, environment, health, home and other commercial areas. One of the important features of the WSNs is that the WSNs are extremely energy-limited because of the requirement of unattended operation in remote or even potentially hostile locations. Since various sensor nodes often detect common phenomena, there is likely to be some redundancy in data. Therefore in-network processing of the received data can help conserve the limited energy resources. The effort to reduce the number of packet transmissions and to remove the redundancy with in-network processing is called data aggregation. Because the dominant energy consumer within a sensor node is the radio transceiver [8], the data aggregation techniques have been investigated recently as efficient approaches to achieve significant energy savings in the WSNs [5], [6]. However, the data aggregation has a tradeoff relationship with the delay because it generally takes time to wait for the data from child nodes. The time duration needed to gather the data from the child nodes is called as aggregation time. In addition, a tree structure rooted at the sink is generally constructed to transfer the measured sensor data to the sink, and it is called aggregation tree [3]. Since the WSNs mainly deal with the data of the real world, it is often necessary to transfer the data within the time constraint of the sink. For example, we can think about
the home application, e.g. when a user enters a room, the user should be recognized within a very short time. The faster such a task is accomplished, the better the system is considered. A sensitive pressure reading might have to periodically arrive at a monitor station on time [11]. Fire fighters monitor the temperature of the firestorm to recognize the firing point or to detect the explosion. The WSNs can be used to measure the drastic change of the water level to detect and alarm the flood. Including the above examples, there can be many applications which require the time constrained data delivery. To meet the time constraint of the data, it is needed to consider the time consumption to aggregate the data because generally it takes more time to collect and process the data than to transmit the data. There have been much research efforts on the aggregation. However, there is little existing aggregation researches which focus on the time constrained data delivery. [10] and [12] cover the transmission timing synchronization issue. But, they do not take the aggregation time and the time constraint into account. [2] considers the processing of the real time query in the specific region. However, it works only when all the sensor nodes are within the transmission range of the gateway. Therefore it is hard to be used in the multi hop sensor networks. Moreover, location information is required. There are several researches related to the real-time data delivery issues in the WSNs. RAP [7] and SPEED [4] cover the real time data delivery topic. However, they do not take into account the aggregation scheme which is one of the most important energy saving techniques in WSNs. The aggregation time of the sensor nodes can be determined according to the aggregation policy and the application requirements. To meet the time constraint, it is needed to adjust the aggregation time properly because the aggregation time can be affected by the deadline, i.e., the time constraint of the data delivery given from the sink. We propose an aggregation time control (ATC) algorithm, which adjusts the aggregation time of the node to achieve a better performance. This paper uses an aggregation gain and a miss ratio as performance measures. The aggregation gain is a measure of the benefits of
applying aggregation to the system in terms of communication traffic reduction [9]. The aggregation gain is proportional to the energy efficiency. High aggregation gain means that the large number of the data packet transmissions is reduced. It goes to the low energy consumption of the network because the radio transmission is the dominant energy consumption of sensor nodes. The miss ratio is the percentage of packets that do not meet the deadlines [7]. To support the soft realtime data delivery for the time constrained data, the proposed algorithm tries to reduce the miss ratio. In the ATC, the aggregation time is controlled to meet the given deadline of the sink while obtaining the energy efficiency. The ATC is designed to meet the deadline and to reduce the energy consumption without clock synchronization and location information. The clock synchronization and the localization increase communication overhead. The proposed algorithm can be adopted to the multi hop sensor networks. The ATC assigns more aggregation time to the nodes with more children. It gives more possibilities to aggregate the data. The simulation results shows that the ATC has the very small miss ratio with the slightly decreased aggregation gain. The remainder of this paper is organized as follows. Section 2 explains the architecture of the ATC algorithm. Section 3 provides the simulation results, demonstrating the benefits of the ATC algorithm. Finally, the paper concludes with Section 4. II. AGGREGATION T IME C ONTROL The structure of the aggregation tree in WSNs can be formed arbitrarily because of the obstacles, applications, or wireless channel environments. It is difficult to determine the aggregation time before the network starts. Therefore, it is necessary to determine the aggregation time continuously in the runtime. In addition, the aggregation time is determined to meet the time constraint of the sink. The proposed aggregation time control (ATC) algorithm is the adaptive solution to the network status and the time constraint. In addition, this paper assumes that all the non-leaf sensor nodes can play a role of aggregating the data, and they are referred to as aggregation nodes. It is assumed that all nodes can sense the phenomena and generate the data, and hence they are referred to as source nodes. In addition, the ATC handles one of the most general circumstances that all sensor nodes generate the time constrained data periodically. A. Basic Operation When the sink is interested in gathering information from the sensor field, it broadcasts a TREE REQUEST (TREQ) message to make an aggregation tree. All sensor nodes reply to the TREQ with TREE RESPONSE (TREP) messages carrying required information after the TREQ broadcasting is finished. The nodes which do not receive the TREP think of themselves as leaf nodes. The TREQ messages, besides communicating the application-level data, serve an additional purpose in the field: setting up routes for the subsequent TREP messages from the sensor nodes.
In order to apply the aggregation time control (ATC) algorithm, the TREQ and the TREP messages are extended with the additional data. The deadline T to update the data is included in every TREQ message. Similarly, the number N of the sensor nodes in the network is included by the sink in each TREQ. It is assumed that the sink node knows the number of the sensor nodes in the network in advance. As these messages move towards the leaf nodes, all nodes record the deadline and the number of the nodes. The initial aggregation time of each sensor node is calculated based on these parameters. In addition, TREQ contains the depth field and the nodes which receives TREQ increment the value of this field to count the maximum depth of the aggregation tree. The TREP conveys the maximum depth H and the number Nt of the descendants. The maximum depth field represents the height of the tree, i.e., the hop count from the sink to the deepest depth of the aggregation tree. The number of descendants field contains the number of nodes of which the depth is deeper than the the corresponding node. In other words, Nt is same as the number of nodes of which ancestors or parents are the corresponding node. This information is stored at every intermediate node. All nodes generate TREP and the nodes can know the H and Nt by choosing the biggest value of the depth and the number of descendants field of the TREP. The TREP messages are generated with a pre-defined period to adapt to the changes of the network status. When a source node senses the data, it forwards the data to its parent node with a sequence number. All aggregation nodes wait for the other data packets from the child nodes to make an aggregation. The aggregation timer is set as the aggregation time. The aggregation time is calculated considering the number of the child nodes. The ATC assigns more time to the nodes with more children. Hence the nodes with more children have more possibility to receive the data from children. The sensor nodes which are one hop neighbor of the sink are set to agent nodes. The agent nodes hear the TREQ message from the sink. The data aggregation time Ti of node i is incremented using Eq. 1. Ti = Tiprev +
X T i Ntj ) ag (Nt − NI Nt
(1)
j∈CHi
where Tiprev represents the previous aggregation time of node i. Initial value is −Tthresh , the threshold time value to stop aggregation time control. If Ti − Tiprev is smaller than the Tthresh , the current aggregation time is not changed. Nti is defined as the number of nodes that use node i to transfer the data to the sink. Ntag represents the number of the nodes that use the agent node to transfer the data to the sink. P CHj i represents the child node group of node i. (Nti − Nt ) j∈CHi
represents the number of child nodes of node i. NTag (Nti − t P Ntj ) means the basic increment of the nodes. NI plays j∈CHi
a role of refined controlling of the aggregation time as the ATC algorithm goes on. NI is used to diminish the aggregation time
increment. NI is increased whenever the nodes are notified the deadline miss. Before increasing Ti , the ATC algorithm waits until aggregation time waiting counter, Acnt , reaches aggregation time window size, Awnd . Acnt is used to count how many times the nodes wait before increasing the aggregation time. The Acnt value is increased by one whenever the aggregation timer expires and the aggregated data are transmitted. The equation 1 shows that the aggregation time Ti is increased continuously as time goes. This results in running out the deadline T . When the sink node finds that the time delay to transfer the data from source nodes to the sink, Tup , is greater than T , then the sink sends the TIME OVERFLOW (TOVF) messages to reduce the aggregation time. The TOVF encloses Ntag and the aggregation time pruning rate (R) field. The aggregation time pruning rate field contains the ratio of aggregation time overflow to the deadline T . The value of this field is set to R = 1 − (Tup − T )/T . The sensor nodes continuously check the difference of the current and previous aggregation time until the difference is smaller than the predefined threshold value. If so, as time goes, the aggregation time of the each node converges. In the viewpoint of the sink, the time constrained data will arrive within the deadline. B. Aggregation Time Control Architecture The ATC is composed of three function blocks as shown in Figure 1. The three components are TOVF processing routine, aggregation time decision routine, and aggregation function routine.
changed to AGG T IM E W AIT to wait for some time. The aggregation timer is scheduled to Ti . The TOVF processing routine is initiated when the TOVF message is received. The aggregation time is reduced as indicated by the received TOVF message using Eq. 2. The aggregation timer is rescheduled to Ti . Ast is set to AGG T IM E DEC, which means that the deadline is missed and the aggregation time should be decreased. Ti = R × Tiprev , 0 < R < 1
where R is the aggregation time pruning rate. The aggregation time is decreased as much as the deadline exceeded portion. If the Ast is AGG T IM E W AIT , the aggregation time waiting counter Acnt is increased by one. Then, Acnt is checked whether Acnt reaches Awnd or not. Awnd is the predefined value. If Acnt reaches Awnd , Ast is set to AGG T IM E IN C and the aggregation time is ready to be increased next time. If Acnt is smaller than Awnd , Ast is set to AGG T IM E W AIT and wait more time to increase the aggregation time. Then the aggregation timer is rescheduled. When the aggregation timer expires, the buffered data are aggregated into one packet and transferred to the parent. This process is repeated until the time difference between the Ti and the Tiprev is stabilized, i.e. smaller than Tthresh . Finally, the aggregation time of each aggregation node is determined to meet the time constraint. The state transition of the aggregation nodes can be shown as the state transition diagram shown in Fig. 2.
Ti ce On eased or r Ff inc TOV es m No wnd ti A
Aggregation Time Control TOVF processing routine
Aggregation time decision routine
Aggregation function routine
(2)
Wait
Increase Stable TOVF received No TOVF for Awnd times
Decrease
Stable
End
TOVF received
Fig. 1.
ATC architecture
When a sensor node is started, it initializes Ti , Tiprev , and Ntag to 0, −Tthresh and N , respectively. If the data are received from the child nodes, it first checks that there exist the buffered data which represent whether aggregation is on going or not. In such a case, the received data are buffered and wait for the expiration of the aggregation timer. After expiration, the aggregated result is sent to the parent. This is the aggregation function routine. If there is no buffered data, it goes to the aggregation time decision routine. The aggregation nodes check that the difference of current and previous aggregation time is greater than the threshold value Tthresh . If the difference is greater than Tthresh , the aggregation time control status Ast is checked to proceed to the next step. If the difference is smaller than Tthresh , the aggregation timer is rescheduled as the same time and stops the algorithm. Ast is used to represent the aggregation time control status of the nodes. It can have three values, namely, AGG T IM E IN C, AGG T IM E DEC, and AGG T IM E W AIT . If Ast is AGG T IM E IN C, Ti is increased using Eq. 1. Ast is
Fig. 2.
State transition diagram of the aggregation nodes
III. P ERFORMANCE E VALUATION The aggregation time control algorithm is implemented in ns-2 simulator [1]. The existing implementation of the IEEE 802.11 MAC protocol is used. The sensor working field is a square of 400m by 400m. All nodes are distributed randomly in the area. For all simulation scenarios, all nodes are the data generation sources. The sink resides at the lower left corner, the (0,0) position of the area. All sensor nodes generate and send the data packets with period of 2 seconds. All simulations are performed during 500 seconds. All the data packets P have Ntj ). the same size. Tthresh is set to the 0.7× 2NTag (Nti − t
j∈CHi
The sensor’s energy settings are similar to those used in Direct Diffusion (DD) [5]. Each sensor node has a radio range of 100m. Free space radio propagation model is used, and the network is assumed to be static. ATC is compared with two basic aggregation algorithms and Directed Diffusion (DD), well known sensor networking algorithm, to show the performance. The first basic aggregation
1
algorithm, referred to as Basic 1 in this paper, uses an equal distribution of the deadline among the nodes on the path.
0.8
(3)
This algorithm is simple to implement and is described in the related work on the aggregation [6]. In the second algorithm, which is referred to as Basic 2 in this paper, the aggregation nodes gather the data from their child nodes until the data are received from all child nodes. This algorithm does not consider the time constraint but focuses on maximizing the lifetime. It is expected that nearly maximum aggregation gain can be obtained in the given aggregation tree. This paper uses a miss ratio and an aggregation gain as performance measures. The miss ratio is defined as the ratio of the number of the delay bound missed data to the number of all the received data. Small miss ratio means better delivery for the time constrained data. The aggregation gain G can be a measure of the communication traffic reduction [9]. Let to be the number of transmissions to perform a given task. The number of transmissions to perform the same task when aggregation is applied is represented by ta . To calculate ta , the number of transmissions of all nodes are summed up. All nodes count the number of received packets and the sum of the values leads to to . The aggregation gain can be expressed as the following expression 4. The aggregation gain is proportional to the energy efficiency.
ATC Basic 1 Basic 2 DD
0.7
0.6 Miss ratio
T H
0.5
0.4
0.3
0.2
0.1
0
0.5
1
1.5
2
Time
Fig. 3.
Miss ratio vs. deadline
1
0.9
0.8
0.7
Aggregation gain
Ti =
0.9
0.6
0.5
0.4
0.3
ta G=1− to
(4)
0.2 ATC Basic 1 Basic 2 DD
0.1
At first, the aggregation tree for the proposed algorithm is constructed. TREQ is forwarded as broadcast and the nodes memorize the sender of the message as parent. An arbitrary aggregation tree in the field is established in this way. The deadline T and the aggregation time window size Awnd are set to 2 seconds and 3, respectively. 100 sensor nodes are deployed to get the figure 3 and 4. Our first objective is to check how many packets miss T to evaluate the performance of the ATC. Figure 3 shows the miss ratio as different deadlines. The aggregation time of each aggregation node is controlled not to miss the deadline T . The ATC algorithm outperforms the basic algorithms and DD at all cases of T . Thus, it is concluded that it is better to use the ATC algorithm to update the data within a predetermined time. The average of the miss ratio of the ATC is 3.7% and those of Basic 1 and Basic 2 are 28.8 % and 26.1 %, respectively. DD has the average 90.3 % of miss ratio. Figure 4 shows the aggregation gain of the ATC and the others. As the deadline T increases, the aggregation gain also increases. It is because there is much time to wait for gathering the data as the deadline is loosened. Generally, the ATC has lower aggregation gain than the basic algorithms. The average aggregation gain of the ATC is 47.1 %, and that of the basic 1 and 2 algorithms are 54.2 % and 80 %, respectively. Directed Diffusion has average 26.4 % of aggregation gain.
0
0.5
1
1.5
2
Time
Fig. 4.
Aggregation gain vs. deadline
The simulation results demonstrate that the ATC can achieve as much as 96 % decrease of the miss ratio compared with DD. Opportunistic aggregation of DD only fuses 26.4 % of the packets. The ATC incurs nearly 13 % decrease of the aggregation gain compared with the basic 1 algorithm. However, the miss ratio of the ATC is 87 % smaller than that of Basic 1. The basic 2 algorithm has the largest aggregation gain. The aggregation gain of the ATC is 47 % of the Basic 2. However, the ATC has 86 % smaller miss ratio than Basic 2. The ATC increases the possibility to meet the deadline T with slightly decreased energy efficiency. Thus, the ATC is proved to be helpful to meet the deadline with the slightly increased energy consumption for communication. Figure 5 shows the aggregation gains of the proposed algorithm and others with the varying number of the nodes. The deadline T is 2 seconds in the following simulation results. The ATC shows better aggregation gain than Directed Diffusion. However, the ATC has lower aggregation gain than basic algorithms. The average aggregation gain of the ATC is
57.8 % while the average aggregation gains of Basic 1, Basic 2, and DD are 65.2 %, 81.6 %, and 20.7 %, respectively.
can conclude that the ATC can meet the time constraint with slightly increased energy consumption. This can be supported by more simulation results but omitted due to space limitation.
1
IV. C ONCLUSION 0.9
0.8
Aggregation gain
0.7
0.6 ATC Basic 1 Basic 2 DD
0.5
0.4
0.3
0.2
0.1
0
50
100
150
200
Number of nodes
Fig. 5.
Aggregation gain vs. the number of nodes
Figure 6 compares the miss ratio of the ATC and the other algorithms including DD. It is shown that nearly all packets of DD exceed the deadline. Also, we can observe that the ATC achieves the very small miss ratio. The basic 1 and 2 algorithms have larger miss ratio than the ATC. The average miss ratio of the ATC is 3.6 % while the average miss ratios of Basic 1, Basic 2 and DD are 18.1 %, 21.7 %, and 82.9 %, respectively. 1
0.9
0.8 ATC Basic 1 Basic 2 DD
0.7
Miss ratio
0.6
0.5
0.4
0.3
0.2
0.1
0
50
100
150
200
Number of nodes
Fig. 6.
Miss ratio vs. the number of nodes
From Figures 5 and 6, it can be derived that the aggregation gain and the miss ratio have a tradeoff relationship. In comparison with DD, the ATC has nearly 3 times larger aggregation gain and 23 times smaller miss ratio. The aggregation gain of the ATC is 88.7 % of Basic 1. However, The miss ratio of the ATC is only about one fifths of Basic 1. The ATC has about 30 % smaller aggregation gain than Basic 2, but the miss ratio of Basic 2 is 6 times larger than that of the ATC. Therefore, we
In this paper, an aggregation time control (ATC) algorithm to meet the time constraint while reducing energy consumption is proposed. The ATC determines the aggregation time of each aggregation node trying to meet the deadline, T , of the sink. Also, the number of the child nodes is considered to determine the aggregation time. Simulation results show that the ATC achieves the smallest miss ratio. It means that the ATC has the capability to meet the time constraint. On the contrary, there is a loss of the aggregation gain in the ATC. However, the percentage of the loss of the aggregation gain is much smaller than that of the benefit of the miss ratio. From these results, it can be concluded that the ATC is a good solution to support energy efficiency while meeting the time constraint. The ATC can enlarge the application area of the WSNs to the time-bounded applications. Also it can be applicable to the general multi hop wireless sensor networks. R EFERENCES [1] The Network Simulator - ns-2. http://www.isi.edu/nsnam. [2] K. Akkaya, M. Younis, and M. Youssef. Efficient Aggregation of Delayconstrained Data in Wireless Sensor Networks. The 3rd ACS/IEEE International Conference on Computer Systems and Applications, pages 904 – 909, 2005. [3] M. Ding, X. Cheng, and G. Xue. Aggregation tree construction in sensor networks. IEEE 58th Vehicular Technology Conference, 4:2168 – 2172, October 2003. [4] T. He, J. Stankovic, C. Lu, and T. Abdelzaher. SPEED: a stateless protocol for real-time communication in sensor networks. Proceedings of 23rd International Conference on Distributed Computing Systems, pages 46 – 55, May 2003. [5] C. Intanagonwiwat, R. Govindan, D. Estrin, J. Heidemann, and F. Silva. Directed Diffusion for Wireless Sensor Networking. IEEE/ACM Transactions on Networking, 11(1), February 2003. [6] B. Krishanamachari, D. Estrin, and S. Wicker. The Impact of Data Aggregation in Wireless Sensor Networks . International Workshop of Distributed Event Based Systems (DEBS), July 2002. [7] C. Lu, B. Blum, T. Abdelzaher, J. Stankovic, and T. He. RAP: a real-time communication architecture for large-scale wireless sensor networks. Proceedings of Eighth IEEE Real-Time and Embedded Technology and Applications Symposium, pages 55 – 66, September 2002. [8] R. Min, M. Bhardwaj, S. H. Cho, N. Ickes, E. Shih, A. Sinha, A. Wang, and A. Chandrakasan. Energy-Centric Enabling Technologies for Wireless Sensor Networks. IEEE Wireless Communications, 9(4):28– 39, August 2002. [9] U. Roedig, A. Barroso, and C. Screenan. Determination of Aggregation Points in Wireless Sensor Networks. Proceedings of the 30th EUROMICRO conference (EUROMICRO2004), pages 503 – 510, 2004. [10] I. Solis and K. Obraczka. The impact of timing in data aggregation for sensor networks. IEEE International Conference on Communications, 6:3640 – 3645, June 2004. [11] J. Stankovic, T. Abdelzaher, C. Lu, L. Sha, and J. Hou. Realtime communication and coordination in embedded sensor network. Proceedings of the IEEE, 91:1002–1022, July 2003. [12] W. Yuan, S. Krishnamurthy, and S. Tripathi. Synchronization of multiple levels of data fusion in wireless sensor networks. IEEE Global Telecommunications Conference (GLOBECOM), 1:221– 225, December 2003.