You are on page 1of 8

Designing Efficient Routing Protocol for Heterogeneous Sensor Networks

Xiaojiang Du, Fengjing Lin Department of Computer Science North Dakota State University {Xiaojiang.Du, Fengjing.Lin}@ndsu.edu
Abstract
Most existing routing protocols consider homogeneous sensor networks, i.e., all sensor nodes have the same capabilities in terms of communication, computation, energy supply, etc. However, a homogeneous ad hoc network suffers from poor performance and scalability. Recent research has demonstrated its performance bottleneck both theoretically and through simulation experiments and testbed measurement. Furthermore, nodes in certain sensor networks are heterogeneous. In this paper, we propose to improve network performance by deploying heterogeneous sensor nodes. We design a novel routing protocol - Heterogeneous Sensor Routing (HSR) for heterogeneous sensor networks. The performance of HSR is evaluated through extensive simulation experiments. Our results show that HSR performs better than two popular routing protocols Directed Diffusion and Mesh. The primary functionality of wireless sensor networks is to sense the environment and transmit the acquired information to base stations for further processing. Thus, data dissemination (routing) is a fundamental and very important operation for sensor networks. Scalable and efficient data dissemination is challenging and critical for the successful operation of large-scale sensor networks. Potentially multiple, mobile base stations and mobile targets pose additional challenge to routing. The many-to-one communication pattern is dominant in sensor networks, and special multi-hop wireless routing protocols between sensor nodes and the sink are needed. Several routing protocols have been proposed for sensor networks, such as Directed Diffusion [1], TTDD [2], LEACH [3], Mesh [7], and so on. Most existing routing protocols consider homogeneous sensor networks, i.e., all sensor nodes have the same capabilities in terms of communication, computation, energy supply, etc. However, a homogeneous ad hoc network suffers from poor scalability. Recent research has demonstrated its performance bottleneck both theoretically (Gupta and Kumar [4] showed that the per node throughput in a homogeneous ad hoc network is 1 ( n log n ) , where n is the number of nodes), and through simulation experiments and testbed measurement [14]. Furthermore, nodes in some sensor networks are heterogeneous. For example, in a smart home environment, sensors may be powered by AA batteries, AAA batteries or even button batteries. In this paper, we propose to form heterogeneous sensor networks by deploying a small number of powerful High-end sensors (H-sensors) with large number of Low-end sensors (L-sensors). We design an efficient routing protocol for heterogeneous sensor networks. Our simulation studies show that network performance can be significantly improved by heterogeneous sensor networks.

1. Introduction
Recent advances in microprocessor and wireless communication technologies have enabled the deployment of large scale sensor networks where many low-power, low-cost small sensors are distributed over a vast field to obtain fine-grained, high-precision sensing data. These sensor nodes are typically powered by batteries and communicate through wireless channels, and are usually scattered densely and statically. Sensor networks can be used in many application areas such as military surveillance, environmental monitoring and target tracking. In sensor networks, a source is defined as a sensor node detecting a target and generating data to report the conditions of the target; a sink is defined as an end user or a base station that collects data from the sources. For a large sensor network, multi-hop data forwarding is typically used to reach a distant destination.

2. Related Works
Most existing works consider homogeneous sensor networks. However, a homogeneous sensor network suffers from poor performance and scalability. Moreover, in many applications, sensors are heterogeneous in terms of resources they possess. In this paper, we propose to improve network performance by deploying heterogeneous nodes in sensor networks. We consider a heterogeneous sensor network (HSN) with two types of nodes: a small number of powerful High-end sensors (H-sensors) and a large number of Low-end sensors (L-sensors). Cluster is formed around each H-sensor, which serves as the cluster head. L-sensors do the basic sensing as well as the relaying of packets since multi-hop communication is used within each cluster. H-sensors conduct data fusion within each cluster, and transmit the aggregated data to the sink via multi-hop (of H-sensors) communication. H-sensors may also participate in sensing. Since L-sensors communicate over short range, their hardware requirements are simple. On the other hand, H-sensors perform long range transmissions to other H-sensors, perform data aggregation, and coordinate MAC and routing within the clusters. Hence H-sensors have more complex hardware than L-sensors. Several existing works have considered heterogeneous sensor networks. In [6], Mhatre et al studied the optimum node density and node energies to guarantee a lifetime, while ensuring connectivity and coverage in heterogeneous sensor networks. The authors assume that each cluster head can directly communicate with the sink. However, this assumption is either invalid for large sensor networks, or too costly because of the very long transmission range of the cluster heads. We do not make such assumption. In our model cluster heads send data to the sink via multi-hop communications. We propose a novel routing protocol Heterogeneous Sensor Routing (HSR) for heterogeneous sensor networks. The HSR routing protocol is designed based on the following assumptions: Each sensor node is static and aware of its own location. Sensor nodes can use location services such as [11] to estimate their locations, and no GPS receiver is required at each node. For simplicity, we consider there is only one sink in the network. Our routing protocol applies to sensor networks with multiple sinks. Initially, the sink floods its location to all cluster heads. In this paper, we only consider fixed sink, and we focus on studying the performance improvement via deploying heterogeneous sensor nodes. The HSR routing protocol is essentially a clustering-based algorithm. Several clustering-based

routing protocols have been proposed for sensor networks, such as LEACH [3], TTDD [2], etc. The major differences between HSR and these clusteringbased protocols are: (1) In HSR, physically more powerful H-sensors are the cluster heads, while other protocols need an algorithm to elect cluster heads. (2) In HSR, cluster heads and cluster structure are fixed, while in [2, 3] different nodes are selected as cluster heads at different time and frequent re-clustering introduces large overhead.

3. Heterogeneous Sensor Routing Protocol


In this Section, we present the Heterogeneous Sensor Routing protocol.

3.1 The Cluster Formation


Both L-sensors and H-sensors are assumed to be uniformly and randomly distributed in the network. During the initialization phase, all H-sensors broadcast Hello messages to nearby nodes with a random delay. The random delay is to avoid the collision of Hello messages from two neighbor H-sensors. The Hello message includes the ID and location of the H-sensor. The transmission range of the broadcast is large enough so that most L-sensors can receive Hello messages from several H-sensors. Then each L-sensor chooses the Hsensor whose Hello message has the best signal strength as the cluster head. Each L-sensor also records other Hsensors from which it receives the Hello messages, and these H-sensors will serve as backup cluster heads in case the primary cluster head fails. If a L-sensor does not hear any Hello message during the initialization phase (e.g., T seconds after deployment), the node will broadcast an Explore message. When a neighbor L-sensor receives the Explore message, it will response an Ack message with a random delay if it has found a cluster head. The Ack message includes the location and ID of the senders cluster head. A neighbor L-sensor will not send Ack message again if it hear an Ack response from another neighbor. This mechanism reduces the number of response messages and hence the consumed energy. Then the L-sensors can select a cluster head based on the Ack messages. This ensures all L-sensors have a cluster head. The sensor network is divided into multiple clusters, where each H-sensor serves as the cluster head. If the network is a two-dimension plane, each L-sensor will select the closest H-sensor as the cluster head (except when there is an obstacle in between), and this leads to the formation of Voronoi diagram where the

cluster heads are the nuclei of the Voronoi cells. An example of the cluster formation is shown in Figure 1. The above cluster formation approach works not only for sensor field being a two-dimension plane, but also for different geographic terrain. Since during the cluster formation, nodes select cluster heads based on signal strength, instead of distance. In the following, we will present the routing schemes within a cluster and from cluster heads to the sink.

3.3 Inter-Cluster Routing


In this section, we discuss how to send packets from cluster heads to the sink. Cluster heads know the location of the sink, and communicate with the sink via multi-hop transmission. If enough number of H-sensors (cluster heads) are uniformly and randomly deployed in the network, then with high probability a cluster head can directly communicate with a neighbor cluster head. After cluster formation in the network, each cluster head will exchange location information with neighbor cluster heads. When a cluster head wants to send data packets to the sink, it draws a straight line L between itself and the sink. Line L intersects with several Voronoi cells (clusters), and these cells are denoted as C0 , C1 ,..., Ck , which are referred to as Relay Cells. The packet is forwarded from the source cluster head to the sink via the cluster heads in the Relay Cells. The InterCluster routing protocol is presented in the following. The cluster head that sends data to sink is referred to as source node R. 1. Based on the location of source and sink, the source node determines the Relay Cells C0 , C1 ,..., Ck , starting from the cell with source node R. R records the relay cells in a cell_list field, which is stored in the header of the packet. The header contains the following fields: session_id, source_id, sink_id and cell_list. session_id plus source_id uniquely determines a data transmission session. 2. First the packet is sent from source node R to the cluster head R1 in cell C1 . Contention-based mechanism is used in MAC layer, e.g., CSMA/CA or IEEE 802.11. First, a RTS (Request To Send) is broadcast to neighbor cluster heads, and there is a next_cell field in the RTS packet. The next_cell refers to the next cell to receive the packet. For the RTS from node R, the next_cell is C1 . Based on the next_cell field, only the cluster head in cell C1 will response to this RTS packet. 3. After node R1 receives the packet, R1 set the next_cell as C2 according the cell_list field, and proceeds the similar way as above, and sends the data packet to the cluster head R2 in cell C2 . To guarantee the delivery, each relay node is responsible for confirming that its successor has successfully received the packet. This may be implemented by the transmitter monitoring the packet just sent out to next node and overhearing if that node has passed it on within a time period. Of course, if link level acknowledgement is supported by the MAC layer

Figure 1: Clusters in a HSN

3.2 Intra-Cluster Routing


In this section, we discuss how to send packets from a L-sensor to its cluster head. Since the location of the cluster head is known from the Hello message, a greedy geographic routing protocol can be used for intra-cluster routing. A L-sensor sends the data packet to the neighbor that has the shortest distance to the cluster head, and the next node performs the similar thing, until the data packet arrives at the cluster head. Since the number of nodes in a cluster is not large, and usually nodes are not far away from the cluster head, the greedy geographic routing should be able to route data packets to cluster head with high probability. The chance of having a void during greedy geographic routing (i.e. all the neighbors have longer distance to the cluster head than the node itself) is small. In case such thing happens, several recover schemes can be used to solve the problem, e.g., route a packet around the faces of a planar subgraph extracted from the original network [10, 13], or use limited flooding to circumvent the routing void [8].

protocol (for instance, 802.11 has such function), the above passive acknowledgement scheme is unnecessary. The transmitted data packet has to be kept in the buffer before its receipt has been confirmed. The acknowledgement scheme reduces the impact of node failure and channel error. 4. If R1 does not get any acknowledgement within a time period, R1 will re-transmit the packet to R2 once. And if the retransmission fails, R1 will use a backup path. 5. A backup path is set up as follows. The current cluster head (say R1 ) draws a straight line L between itself and the sink S, and line L intersects with several cells Cl' ,..., Ck' 1 , Ck . If the next cell is the cell with the failed cluster head, R1 will use a detoured path to avoid the cell. Otherwise, the set of new cells Cl' ,..., Ck' 1 , Ck will be the new Relay Cells. And the packet is forwarded to the sink according to the above steps. 6. This process continuous until the packet reaches the sink. An example of inter-cluster routing is shown in Figure 2, where cluster head in cell C0 wants to send data packets to the sink, which is the square at the topright corner. A straight line from the source cluster head to the sink is used to determine the original Relay Cells: cells C0 , C1 , C2 , C3 . If the cluster head in cell C2 is not available, the cluster head in cell C1 will use a backup ' path C2 , C3 to connect the sink.

3.4 More Protocol Details


Heterogeneous sensor networks have many advantages over homogeneous sensor networks. We list some of them in the following. Robust to Cluster Head Failures. The cluster head failure can be detected by L-sensors in the cluster. If a L-sensor l does not overhear any transmission from the cluster head after a certain time when it sends a packet to the cluster head, node l will assume the cluster head has failed. Recall that each L-sensor records several Hsensors as backup cluster heads during initialization. Then l can send the data packets to one of the backup cluster heads. Efficient Sink Query. A multicast tree can be constructed for all the cluster heads, with the root being the sink. When the sink wants to distribute query over the network, the query is distributed in two steps. In the first step, the sink sends the query to all cluster heads via the multicast tree. In the second step, each cluster head broadcasts the query to the L-sensors in its cluster. The two-step approach is much more efficient than flooding the query in the network, which causes large overhead. Data Aggregation. Since various sensor nodes often detect common phenomena, there is likely to be some redundancy in the data generated from several neighbor sensors. Data aggregation (in-network processing) combines data from different sources together, eliminates redundancy, minimizes the number of transmissions and thus saves energy for sensor networks. Data aggregation has been put forward as an essential paradigm for routing in sensor networks [3, 6]. For our HSR routing protocol, all the L-sensors send their data to the cluster head. Thus it is natural to let the cluster head perform data aggregation. Different applications are interested in different aggregation functions of sensing data. Some typical aggregation functions are: Max, Min, Count, Sum, Average, etc. Lets consider an example of computing the average temperature in the field. Each sensor measures the temperature in its nearby area, and sends the data to the cluster head. When a cluster head H1 receives all the data from sensors in the cluster, H1 can compute the average temperature T1 in its cluster. Then H1 sends T1 to another cluster head H2. Cluster head H2 collects the temperature data from all the sensors in its cluster, and H2 can compute the average temperature T2 in its cluster. H2 only sends the two aggregated data T1 and T2 to the next cluster head. And other cluster heads

Figure 2. An Example of Inter-Cluster Routing

perform the similar operations. If a cluster head already sent the average temperature of its cluster (via another routing path), it will not send its average data again. Ideally, the sink could selectively query several clusters, such that all the clusters will be covered by the routes from these clusters to sink, and with a small number of overlapping of the clusters. Thus the average data can be computed more efficiently. For other aggregation functions, like Max, Min, the in-network processing at cluster heads can also significantly reduce the amount of data needs to be transmitted, and thus save lots of energy for sensor networks. Increasing Throughput. Heterogeneous sensor nodes can increase network throughput. In [12], Duarte-Melo and Liu showed that the maximum per node throughput in a many-to-one wireless network is upper bounded by W/n, where W is the transmission capacity of the nodes that directly communicate with the sink, and n is the total number of sensor nodes. In HSR, only cluster heads communicate with the sink. Cluster heads are powerful high-end sensors and have much larger transmission capacity (W) than the transmission capacity (W) of L-sensors. Thus, heterogeneous sensor nodes can increase network throughput.

data packet per second. Each data packet is 32 bytes. The transmission range of a H-sensor and a L-sensor is 100m and 20m respectively. For the following simulation tests, unless we are varying the parameter in a test, the default settings are: The probability of Lsensor failure is 0.1; the probability of H-sensor failure is 0.05; the channel error rate is 0.1.

4.1 Performance under Different Node Density


First we compare the delivery ratio and energy consumption under different sensor node density. The delivery ratio is defined as the ratio of the number of data packets successfully received by a sink node to the total number of data packets sent by source nodes. For the fixed 300m x 300m routing area, the total number of sensors varies from 100 to 600 with an increment of 100. (The number of H-sensor remains 25 in HSR.) The delivery ratios under different routing schemes are plotted in Figure 3, where DD denotes Directed Diffusion. Figure 3 shows that the delivery ratio of HSR is higher than both Mesh and Directed Diffusion.

4. Performance Evaluation
We evaluate the effectiveness and efficiency of the Heterogeneous Sensor Routing (HSR) through experiments. We compare HSR with the following two routing schemes. 1. A popular sensor network routing protocol Directed Diffusion [1]. 2. Mesh [7]. The basic idea is to let each data packet carry a credit, which specifies the amount of extra cost allowed beyond the source nodes minimum cost to the sink node. Multiple copies of a data packet can go along different paths that interweave and form a mesh. In our test, we set the extra credit to be 0.5. I.e., all the paths with hop number less than 1.5 times the lowest hop count will be used to forward data. We implemented the HSR routing protocol in QualNet. For comparison, Directed Diffusion and Mesh were also implemented in QualNet. The MAC protocol is IEEE 802.11 DCF. The default simulation testbed has 4 sinks and 300 sensor nodes randomly distributed in a 300m x 300m area. For HSR, there are 25 H-sensors and 275 L-sensors. For Directed Diffusion and Mesh, all the 300 nodes are L-sensors. Each simulation run lasts for 600 seconds, and each result is averaged over five random network topologies. 50 source nodes are selected for each simulation run. A source generates one

Figure 3. Delivery Ratio Vs Node Density In HSR, L-sensors send data packets to their cluster heads, which are only a few hops away, thus the chance of packet lost is small. Then the cluster heads forward the packets to the sink. Since cluster heads are more powerful nodes with large transmission range, the hop count to the sink is small, and the packet forwarding is less affected by node or link failures. In Mesh, when node density is low, the source may not find multiple paths to the sink, and the hop count (via L-sensors) is larger than HSR. Any node or link failure in the path can cause the packet lost, and the delivery ratio is not high. In Directed Diffusion, the hop count (via Lsensors) from source to sink is large, and the chance of broken route is large, so the delivery ratio is not high

either. The delivery ratios under all the three routing protocols increase as the node density increases. When node density is high, there are more nodes available for data forwarding, and this increases the delivery ratio. The total energy consumptions of the three protocols under different node density are reported in Figure 4. The energy consumption of HSR is lower than both Directed Diffusion and Mesh. Although in HSR the transmissions among cluster heads consume more energy than the transmissions among L-sensors, HSR does not have route discovery phase that consumes lots of energy. In addition, the average number of transmissions in HSR is much smaller than in Directed Diffusion and Mesh. Mesh uses route discovery to find multiple paths to the sink, and discovering route consumes lots of energy. Also in Mesh, several copies of one data packet are sent via different paths to the sink, which means more nodes are involved in one data delivery, thus consumes more energy. The number of nodes participating in Mesh routing increase as node density increases, thus the total energy consumption of Mesh increases faster than Directed Diffusion and HSR as node density increases. In Directed Diffusion, route discovery introduces large routing overhead and consume lots of energy, thats why Directed Diffusion has higher energy consumption than HSR.

small number of cluster-head hops in HSR, thus the delivery ratio under HSR remains high even when the source-sink distance is large. For Mesh and Directed Diffusion, the packet is forwarded by L-sensors, and large source-sink distance means much more hops and larger chance of node or link failures, thus lower delivery ratio. The energy consumptions for different source-sink distances are shown in Figure 6. The total energy consumed by the three schemes increases as distance increases. However, the increase of Directed Diffusion is much faster than Mesh and HSR. As the source-sink distance increases, much more nodes are involved in route discovery of Directed Diffusion, thus more energy is consumed. Similarly, in Mesh there are more nodes forwarding packets when source-sink distance increases. While in HSR, large source-sink distance only means one or two more cluster heads are involved in packet forwarding, so the energy consumption increases slowly.

Figure 5. Delivery Ratio Vs Path Length

Figure 4. Energy Consumption Vs Node Density

4.2 Different Source-Sink Distances


Figure 5 reports the delivery ratio for different sourcesink distances (in terms of L-sensor hop count). All the delivery ratios decrease when source-sink distance increases. Because the longer the route, the larger chance of broken path (Recall that node and channel are subject to failure). For any source-sink distance, the delivery ratio of HSR is the highest among the three schemes. The large source-sink distance only causes a

Figure 6. Energy Consumption Vs Path Length

4.3 The Delay Performance


The average end-to-end packet delays under the three schemes are plotted in Figure 7. The delay of HSR is smaller than both Mesh and Directed Diffusion. In HSR, the number of transmissions is small, and there is no route discovery phase in HSR, so the end-to-end delay in HSR is small. On the other hand, Mesh and Directed Diffusion have larger hop count and incur route discovery delay, thus they have larger delay than HSR.

starts saturation when the traffic load is heavy, and the throughput actually decreases when traffic load is larger than 250 kbits/sec. In Mesh and Directed Diffusion, Lsensors are used to forward packets, and L-sensors have limited communication and computation capabilities. When network traffic is heavy, congestion happens and packets are dropped in the network, thus cause the throughput decreases. In HSR, packets are delivered mainly by cluster heads, which have larger bandwidth than L-sensors. There is no congestion and few packets are drops in HSR, thus the throughput in HSR is very high.

5. Conclusions
Most existing work considers homogeneous sensor networks. However, a homogeneous ad hoc network suffers from poor performance and scalability. In this paper, we propose to improve network performance by using heterogeneous sensor nodes. A heterogeneous sensor network is formed by deploying a small number of powerful high-end sensors and a large number of low-end sensors. Clusters are formed in the sensor network and H-sensors are the cluster heads. L-sensors send data to their cluster heads, and cluster heads send the data to the sink via multi-hop transmissions over cluster heads. We designed a novel routing protocol Heterogeneous Sensor Routing (HSR) for heterogeneous sensor networks. Long-range transmissions are performed by powerful cluster heads, and L-sensors only send packets to the nearby cluster heads. HSR saves significant amount of energy for sensor nodes and hence increases network lifetime. HSR also increases network throughput. Extensive simulations demonstrate that HSR performs better than two popular sensor network routing protocols Directed Diffusion and Mesh.

Figure 7. Average Delay Vs Path Length

References:
[1] C. Intanagonwiwat, R. Govindan and D. Estrin, Directed Diffusion: A Scalable and Robust Communication Paradigm for Sensor Networks, ACM MOBICOM00, Boston, MA, Aug. 2000. [2] F. Ye, H. Luo, J. Cheng, S. Lu and L. Zhang, A Two tier Data Dissemination Model for Large-scale Wireless Sensor Networks, ACM MOBICOM02, Atlanta, GA, Sept. 2002. [3] W. Heinzelman, et al, Energy-Efficient Communication Protocols for Wireless Microsensor Networks, Proc. Hawaiians Int'l Conf. on Systems Science, January 2000. [4] P. Gupta and P. R. Kumar, The Capacity of Wireless Networks, IEEE Transactions on Information Theory, vol. IT-46, no. 2, pp. 388-404, March 2000.

Figure 8. Throughput Comparison

4.4 Throughput under Different Traffic Load


To evaluate the effectiveness of HSR routing protocol, we measure the throughput of HSR under different traffic load, and compare the performance with Mesh and Directed Diffusion. The throughput comparison is presented in Figure 8. In the simulation, we vary the traffic load from 50 kbits/sec to 300 kbits/sec. Figure 8 shows under Mesh and Directed Diffusion, the network

[5] D. Tian and N. Georganas, Energy Efficient Routing with Guaranteed Delivery in Wireless Sensor Networks, IEEE WCNC 2003. [6] V. Mhatre, et al, A Minimum Cost Heterogeneous Sensor Network with a Lifetime Constraint, accepted for publication in IEEE Transaction on Mobile Computing, January 2004. [7] F.Ye, S. Lu, and L.Zhang. Gradient Broadcast: A Robust, Long lived Sensor Network. Http://irl.cs.ucla.edu/papers /grab-techreports.ps, 2001. [8] I. Stojmenovic and X. Lin. Loop-free hybrid single-path flooding routing algorithms with guaranteed delivery for wireless networks. IEEE Transactions on Parallel and Distributed Systems, 12(10):1023-1032, 2001. [9] Wei Ye, John Heidemann, Deborah Estrin, An EnergyEfficient MAC Protocol for Wireless Sensor Networks, INFOCOM 2002. [10] B. Karp and H. T. Kung. Gpsr: greedy perimeter stateless routing for wireless networks. In Proceedings of the 6th annual

international conference on Mobile computing and networking, pages 243-254, 2000. [11] A. Savvides, C. Han, and M. Strivastava. Dynamic finegrained localization in ad-hoc networks of sensors. In Proc. of ACM MOBICOM01, pg 166179. ACM Press, 2001. [12] J. Duarte-Melo and M. Liu, Data-gathering wireless sensor networks: organization and capacity, Computer Networks, Vol 43, Issue 4, pp. 519-537, November 2003. [13] F. Kuhn, R. Wattenhofer, and A. Zollinger, Worst-Case Optimal and Average-Case Efficient Geometric Ad-Hoc Routing. In Proc. 4th ACM Int. Symposium on Mobile AdHoc Networking and Computing (MobiHoc), 2003. [14] K. Xu, X. Hong, M. Gerla, An Ad Hoc Network with Mobile Backbones, IEEE ICC 2002, New York, NY, Apr. 2002. .

You might also like