- Open Access
A scalable multi-sink gradient-based routing protocol for traffic load balancing
© Yoo et al; licensee Springer. 2011
- Received: 15 June 2010
- Accepted: 1 September 2011
- Published: 1 September 2011
Wireless sensor networks have been assumed to consist of a single sink and multiple sensor nodes which do not have mobility. In these networks, sensor nodes near the sink dissipate their energy so fast due to their many-to-one traffic pattern, and finally they die early. This uneven energy depletion phenomenon known as the hot spot problem becomes more serious as the number of sensor nodes (i.e., their scale) increases. Recently, multi-sink wireless sensor networks have been envisioned to solve the hot spot problem. Gradient routing protocols are known to be appropriate for the networks in that network traffic is evenly distributed to multiple sinks to prolong network lifetime and they are scalable. Each node maintains its gradient representing the direction toward a neighbor node to reach one of the sinks. In particular, existing protocols allow a sensor node to construct its gradient using the cumulative traffic load of a path for load balancing. However, they have a critical drawback that a sensor node cannot efficiently avoid using the path with the most overloaded node. Hence, this paper introduces a new Gradient routing protocol for LOad-BALancing (GLOBAL) with a new gradient model to maximize network lifetime.
The proposed gradient model considers both of the cumulative path load and the traffic load of the most overloaded node over the path in calculating each node's gradient value. Therefore, packets are forwarded over the least-loaded path, which avoids the most overloaded node. In addition, it is known that assigning a unique address to each sensor node causes much communication overhead. Since the overhead increases as the network scales, routing protocols using an address to indicate the receiver in forwarding a packet are not scalable. Thus, GLOBAL also includes an addressing-free data forwarding strategy. Through ns-2 simulation, we verify that GLOBAL achieves better performance than the shortest path routing and load-aware gradient routing ones.
- Wireless sensor networks (WSNs)
- load balancing
Traditionally, wireless sensor networks (WSNs) are composed of a large number of sensor nodes and a single sink. Since the distance from each sensor node to a sink (except one-hop neighbor nodes of the sink) is larger than the transmission range of sensor nodes, sensor nodes should transmit their data packet to the sink in a multi-hop manner. Therefore, sensor nodes near the sink tend to dissipate their energy faster than nodes located far away from the sink because they have to forward a large number of data. This uneven energy depletion, known as the hot spot problem , drastically reduces the lifetime of sensor networks. In addition, as the network scales in terms of the number of sensor nodes, the hot spot problem becomes more serious. Particularly, the WSN architecture with a single sink which creates a many-to-one traffic pattern is considered as the major cause of the hot spot problem .
In gradient-based routing protocols, the gradient is defined as the minimum cumulative link (or node) cost along the path, which will be used to transmit its data to the sink. Data from a sensor node flow toward only neighbor nodes having lower gradient. All the gradients of the network nodes create their gradient field whose lowest value the sink has in order to make data always flow toward the sink. The link (or node) cost can take different forms such as hop count, energy consumption, or physical distance, depending on routing design objectives.
Until now, several gradient-based protocols have been proposed to achieve such load balancing [6–11]. They can be categorized into two classes as shown in Figure 1: (a) protocols that exploit the traffic load information of a forwarder's 1-hop neighbor nodes, and (b) protocols that utilize the cumulative traffic load information of sensor nodes over a path from a sensor node to the sink. In the first class, the link cost is defined as the amount of energy consumption or the hop count when establishing the gradient field. Data packets are transmitted along the energy-efficient path to the sink or the path with the minimum end-to-end delivery latency from sensor nodes to the sink. Considering the remaining energy or the queue length of the forwarder's 1-hop neighbor nodes, the neighbor nodes with heavy traffic load or low residual energy are prevented from being selected as a next forwarder, based on their customized forwarding rules. In these protocols, however, sensor nodes cannot spread the traffic evenly since there is no way for them to get the information about heavily loaded region (i.e., hot spot regions near the sinks) several hops away from them .
In the second class, each sensor node constructs its gradient using the cumulative traffic load information a of the path potentially used for its data delivery. Then, data flow through the least-loaded path over the established gradient field. Unlike the first class protocols that utilize local information, they can spread the traffic to perform the load balance since they use the cumulative path load. However, they have some drawbacks that a sensor node cannot efficiently avoid using the path with the most overloaded node among its all possible paths since only the cumulative path load is not enough to identify the path including the most overloaded node . We focus on overcoming this drawback in this work.
Based on the above observation, this paper introduces a new gradient-based routing protocol for LOad-BALancing (GLOBAL) in large-scale WSNs with multiple sinks. Assuming that network lifetime is defined as the time elapsed from the deployment to the instant when one of sensor nodes becomes dead, the network lifetime is limited by the lifetime of the most over-loaded sensor node. Therefore, the routing protocol should be able to prevent sensor nodes from using a path including the most overloaded sensor node. In GLOBAL, in order to allow a sensor node to use the least-loaded path which also avoids the most overloaded sensor node, each sensor node calculates its gradient using the weighted average (WA) of the cumulative path load and traffic load of the most overloaded node over the path. The WA technique is a well-known method used to create a new metric as in . In WA, weights are selected heuristically to obtain overall performance improvements. GLOBAL also includes a heuristic method to determine our weight values.
Generally, an address is used to indicate the receiver in forwarding a packet. Hence, each sensor node should be assigned to its unique address prior to network operations. Such addressing can be made in manufacturing sensor nodes. Since duplicate addresses can exist in the network due to a lot of addressing errors in manufacturing sensor nodes, an automatic addressing protocol is needed to assign a unique address to each node in the network. However, this protocol has much communication overhead as well as much energy consumption. In particular, the overhead increases as the network scales. Hence, in gradient routing protocols, a gradient value is simply included in the packet and only neighbor nodes with smaller gradients participate in forwarding the packet. Due to the existence of multiple neighbor nodes with smaller gradients, redundant packet forwarding can occur. Although such redundancy improves reliability, it needs to be suppressed, depending on routing design objectives . GLOBAL, therefore, has an addressing-free data forwarding strategy without such overhead and redundancy.
The rest of the paper is organized as follows. We introduce related works on gradient-based routing protocols with load balance and their general operations in Section II. Section III presents the detailed description for the proposed GLOBAL protocol. Section IV presents the results of the performance evaluation of the proposed scheme and discusses the impact of different values of the simulation parameter on the performance of GLOBAL. Finally, we conclude this paper with future work in Section V.
A General operation of gradient-based routing protocols
In gradient-based routing protocols, no routes are set up prior to sending data. Nodes are assigned only gradients, which are equal to the minimum cumulative link (or node) cost to reach the sink. When a sensor node has some data packets to send, it broadcasts its data packet with its own gradient G. Only its neighbor nodes with gradients lower than G participate in rebroadcasting the packet. Gradients of sensor nodes create a gradient field whose lowest value the sink has so that the data packets always flow toward the sink.
A straightforward solution to setting up the gradient field would be found through flooding. Initially, each sensor node sets its gradient to infinity. After the sink broadcasts an ADV (advertisement) packet containing its own gradient 0, the packet propagates throughout the network. Upon receiving the ADV packet from node M, node N acquires a path with gradient G M + C N , where G M is node M's gradient and C N is the link cost from N to M. The node N then compares its current gradient G N and G M + C N . If the new gradient is smaller than the old one, it sets G N to G M + C N and broadcasts an ADV packet with an inclusion of its new gradient. Whenever a sensor node receives an ADV packet with gradient smaller than its current gradient, it updates its gradient accordingly and broadcasts a new ADV packet.
B Gradient-based routing protocols with load balancing
In this section, two classes of existing gradient-based routing protocols with load balancing which are mentioned in Section I are described in more detail. We briefly review representative protocols belonging to each class.
B.1 Using 1-hop neighboring information
Huang et al.  proposed the SGF protocol. Since SGF aims to route data along an energy-efficient path to the sink, energy consumption is used as link cost for establishing a gradient of each sensor node. Assuming that the transmission power of sensor nodes is adjustable, each sensor node (say node i) measures the actual channel gain δ ij based on its transmission power and received power of a control packet (i.e., ADV packet) sent by its neighbor node (say node j) and calculates the minimum transmission power required to send data from node i to node j, from δ ij .
In order to balance network traffic load, SGF introduces a new forwarding method that gives sensor nodes with more remaining energy more chance to forward their neighbor nodes' packets. Hence, node i transmits its data with its gradient, and then, when node j receives a packet from its neighboring node i, node j determines whether to forward the received packet, based on its residual energy as well as gradients of node i and itself. Some protocols are similar to SGF (see [7, 8]).
B.2 Using cumulative path load
Lie et al.  proposed the PWave protocol, which takes its inspiration from potential theories and principles in resistive electric networks. In PWave, a gradient field is constructed in a WSN and routing is determined by the gradients of nodes just like the way that an electric current flows in a resistive electric network. The sink's gradient is set to 0, and the others' gradients are assigned to minimize a certain global objective function. Data can only flow from each sensor node toward its neighbor nodes having lower gradients than it has. As stated in , by minimizing the global objective function, PWave yields a multi-path proportional routing scheme where the sensor node spreads its traffic across multiple paths inversely proportional to the cumulative path cost. The cumulative path cost is defined as the sum of link costs along the path.
The authors of PWave argued that the link cost can take different values according to different routing design objectives. If the link cost is set to 1, data flows are routed based on path hop counts. For another example, they suggested that if the link cost is set to the reciprocal sum of the residual energy of sensor nodes constructing a link, PWave can maximize network lifetime. We found that PWave can maximize the sum of the lifetime of sensor nodes from their mathematical derivation. However, assuming that network lifetime is the time elapsed from the deployment to the instant when one of sensor nodes becomes dead, it is essential to extend the lifetime of the most overloaded sensor node in the network, because the network lifetime is limited by the most overloaded sensor node. Similar approaches based on the cumulative path load are founded in [10, 11].
The proposed GLOBAL protocol is designed under the following assumptions.
Types of traffic: In our target applications, both periodic traffic and aperiodic event-driven traffic are generated from sensor nodes.
Position of sinks and sensor nodes: The sinks and sensor nodes are randomly placed, and all sinks and sensor nodes have no mobility.
Communication ranges: The fixed and homogeneous transmission range is set, and the carrier sensing, interference range is two times larger than the transmission range.
Security concern: As stated in , since the hardware of sensor nodes is not tamper-resistant, the attacker can control any sensor node through physical compromise and it can also acquire the secret keys to participate in legitimate inter-node communications. Even though some cryptographic protocols can be applied to inter-node communications, the attacker can still access the cryptographic keys through physical compromise in order to participate in the communications in a legitimate way. After getting control of a sensor node, the attacker can force some sensor nodes to perform malicious attacks (i.e., altering/dropping the messages which should be forwarded to the next-hop node). In this current version of GLOBAL, the countermeasure for such attacks are not included, since security issues are beyond the scope of this work.
The GLOBAL protocol consists of three phases: gradient field establishment, data forwarding, and gradient field maintenance phases. In the gradient field establishment phase, sinks flood an ADV packet. In receiving an ADV packet, a senor node calculates its gradient using the information specified in the received ADV packet. In the data forwarding phase, an address is useless to indicate the receiver in forwarding a packet. When a sensor node updates its gradient, it acquires the gradient value of its next-hop node. Hence, the gradient value can be used as the next-hop node identifier. In the gradient field maintenance phase, since the traffic load distribution of sensor nodes changes dynamically after sensor nodes start to transmit their data, each sensor node refreshes its gradient whenever it overhears a periodic data packet from its neighbor nodes. The periodic data packet includes the information required to calculate the gradient value. In the rest of this section, we first introduce the proposed cost & gradient models and then present the detailed description of each phase in the proposed GLOBAL protocol.
A The proposed cost & gradient models
A.1 The cost model
The link (or node) cost that is used to evaluate routes is a very important component of the gradient-based routing protocols. For load balancing, GLOBAL uses traffic load of sensor nodes as cost for gradient construction (Detailed mechanisms of gradient construction are given in the next subsection). Different from the value which is defined at the link level such as the amount of energy consumed in transmitting a packet and the geographical distance between sensor nodes, a traffic load is the cost defined at the node level.
As indicated in , the traffic load TL i in each sensor node (say node i) is defined as the sum of the traffic passing through node i and the traffic passing through node i's neighbor nodes due to the broadcast nature of radio channels. Although TL i can be calculated based on the actual amount of traffic, the amount of local energy dissipated in the radio communication can be utilized to obtain TL i since all the communication activities (transmission, reception, and overhearing) occurring at node i and node i's neighbor nodes result in decrease in node i's residual energy . In addition, let us assume that two sensor nodes (say nodes A and B) consume the same amount of energy per unit time and their energy expenditure only comes from the communication activities, but node B has the larger amount of residual energy than node A. In this case, although they consume the same amount of energy for the communication activities, node A eventually dies earlier than node B. Therefore, a traffic load of node B should be estimated lower than node A to make other nodes favor node B than node A as their forwarder. Based on the above observation, we use the residual energy depletion rate (REDR) as the metric that measures the traffic load of a given sensor node. In this work, we assume that all sensor nodes are battery powered and the amount of their energy consumed in executing activities (i.e., sensing) except for communication activities is identical to each other. Therefore, REDR is only affected by the energy consumption resulting from the communication activities. Hence, REDR can be substituted for traffic load.
To better reflect the current status of energy dissipation of sensor nodes, we give higher weight to the new by setting α to 0.3. Although sensor nodes do not have data to relay, they have to send packet periodically. Therefore, an initial value of REDR i is taken according to the amount of periodic data at the node i.
A.2 The gradient model
GLOBAL allows sensor nodes to set their gradients with two design goals as follows.
Sensor nodes should favor a path which is less loaded.
Sensor nodes should avoid a path including the most overloaded sensor node.
In Equations 5 and 6, β is a weighting factor of both parameters and ranges between 0 and 1. In Section IV.B, we will investigate the impact of β on the GLOBAL's performance using ns-2 simulation and introduce a new heuristic method to choose β, based on observations from simulation results.
B Gradient field establishment
hcnt: The number of hops (or links) that the ADV packet has traversed.
sum_redr: The sum of REDR values of sensor nodes that the ADV packet has traversed.
max_redr: The maximum REDR value among REDR values of sensor nodes that the ADV packet has traversed.
When a sensor node (say node i) initially receives an ADV packet, it firstly initializes all local variables to NULL and its local variables including its gradient are updated through the fields specified in the received ADV packet (see Algorithm 1). When node i receives an ADV packet for the first time, it increases the hcnt value appeared in the ADV packet by one in order to account for the new hop distance. s_hcnt keeps the increased value (i.e., hcnt + 1). Since node i initially does not have any path information, the newly acquired path will be used to transmit data as the shortest hop path. Hence, path_hcnt is set to the same value of s_hcnt. Both hop-count variables are used to avoid an excessive increase in the path length as followings. Then, after updating its REDR i through the procedure described in Section III.A.1, node i updates sum_redr L and max_redr L as shown in Algorithm 1. sum_redr L and max_redr L indicate the cumulative path load and traffic load of the most overloaded node over the path, respectively. Using Equation 7, node i calculates its gradient G i and maintains G i in its local memory.
Only if g is lower than G i and hcnt is smaller than s_hcnt + K, node i designates the newly discovered path as its new path. Then, it sets g to G i and rebroadcasts the ADV packet after updating fields in the ADV packet as mentioned before. Particularly, whenever node i receives a duplicate ADV packet, it updates the s_hcnt value if hcnt of the received packet is smaller than a current s_hcnt value - 1.
C Data forwarding with the proposed addressing-free forwarding strategy
GLOBAL includes an addressing-free data forwarding strategy. In GLOBAL, if a node (say node A) updates its gradient after receiving a packet, the node from which the packet is received should be designated as the node A's next-hop node. Instead of using an address for forwarding packets, GLOBAL uses the gradient value as the next-hop node identifier. Suppose that a node (say
Algorithm 1 Updating local variables at node i
s_hcnt : the shortest number of hops to reach a sink from node i.
path_hcnt : the number of hops of the current path which node i transmits data over.
sum_redr L : the sum of REDR of nodes (including node i) along the current path which node i transmits data over.
max_redr L : the maximum REDR value among REDR values of sensor nodes (including node i) along the current path which node i transmits data over.
G i : node i's gradient.
if (ADV is received for the first time) then
s_hcnt = hcnt + 1
path_hcnt = s_hcnt
update REDR i
sum_redr L = sum_redr + REDR i
if (REDR i > max_redr) then
max_redr L = REDR i
max_redr L = max_redr
update G i (= β · sum_redr L + (1 - β) · max_redr L )
else if (Duplicate reception of ADV, or overhearing of a data packet) then update REDR i
calculate g (= β · (sum_redr + REDR i ) + (1 - β) · max(max redr, REDR i ))
if (g < G i & hcnt < (s_hcnt + K)) then
G i = g
sum_redr L = sum_redr + REDR i
if (REDR i > max_redr) then
max_redr L = REDR i
max_redr L = max_redr
if hcnt < s_hcnt - 1 then
s_hcnt = hcnt + 1
node j) had been the next-hop node of a node (say node i), based on their previous gradient values. Note that the gradient of each node can be changed over time. Hence, after node i acquired node j's gradient as its next-hop identifier, node j should still maintain the gradient value of which it informed i even though node j has a new gradient value, so that node j can relay the packet forwarded from node i. In GLOBAL, each node broadcasts the packet with its current gradient Gnexthop and maintains that gradient value in local memory Ginformed. When a node updates its gradient after receiving the packet, it uses Gnexthop as the next-hop node identifer when sending next packets. A node receiving a packet decides to forward the packet only if Gnexthop of the received packet is equal to its local Ginformed value.
D Gradient field maintenance
The initial gradient field becomes inaccurate, since the traffic load distribution of sensor nodes varies dynamically after sensor nodes start to transmit their data. In addition, some sensor nodes may fail to receive an ADV message since wireless channel is vulnerable to data loss. Therefore, they cannot calculate their gradients. This requires the gradient field to be refreshed timely in order to avoid the uneven traffic load distribution as well as to enable sensor nodes to acquire their accurate gradients.
Most of gradient routing protocols rely on the periodic flooding of ADV packet to reconfigure gradient fields [4, 15]. However, since such a flooding incurs excessive packet overhead, the network becomes stressed, which is not scalable. Hence, GLOBAL has gradients to be updated during data transmissions without any dependency on flooding, which leads to little overhead. In our target application scenario, sensor nodes transmit data in a periodic manner. All periodic data packets include three fields specified in the ADV packet. Whenever a sensor node (say node i) overhears a data packet from its neighbor node except its current next-hop node (say node j), they process the data packet just as they process a duplicately received ADV packet. In order to prevent the node j for designating node i to its next-hop node, node j does not update its gradient when it receives a data packet from node i. As explained in Section III.C, each sensor node advertises its gradient value as the identifier of a next-hop node (instead of address) to its neighbor nodes and it can also acquire a new identifier when a gradient is updated. Hence, when node i receives a packet from node j, the packet should carry the gradient value of which node j informed node i previously in order to allow node i to find out whether the received packet has been sent from node j or not. Therefore, in GLOBAL, each node broadcasts its packet with the current Ginformed value. When a sensor node receives a packet from a neighbor node, it can find out whether the received packet has been sent from its next-hop node or not by checking whether Gnexthop is equal to Ginformed in the received packet. In particular, Gnexthop of a sensor node is set to NULL (as mentioned in Section III.B), because it cannot have the information on the current next-hop node until it receives an ADV message. Hence, a sensor node failing to receive an ADV message can acquire its gradient once it overhears a periodic data packet from its neighbor nodes.
After a senor node (say node i) decides its path, its traffic load through the path keeps changing over time. Hence, node i's gradient should be dynamically updated accordingly. Therefore, when node i overhears a data packet from its current next-hop node, it first checks the hop count of the path. If hcnt is not larger than s_hcnt + K, it updates its gradient in order to reflect the changes of traffic load over the path which it is currently using. Otherwise, node i sets its gradient to infinity and tries to find a new path whose hop count is not larger than s_hcnt + K. In addition, when node i fails to overhear a periodic packet from its current next-hop node (say node j), the Gnexthop value maintained in node i may become unequal to the Ginformed value maintained in node j. In this case, node i should not designate node j as its next-hop node. Thus, node i sets its gradient to infinity and tries to find a new path when it fails to receive node j's periodic packet. We assume that each node knows the transmission interval of periodic traffic.
A Simulation setup
In this section, we evaluate the performance of GLOBAL in grid networks d using the ns-2 simulator. To create grid networks, we constructed N × N square grids where a distance between adjacent nodes in each row and column is 20 m. Since the hot spot problem becomes more serious as the network scales, we tested different network scales (i.e., N = 20, 30, 40). Three sink nodes were positioned in the farthest locations among each other in the grid, and the others were configured as sensor nodes. Transmission, interference, and carrier sensing ranges were set to 35, 70, and 70 m, respectively. Each sensor node generated its periodic traffic as well as event-driven one. R% of nodes generated the event-driven traffic, and they were randomly re-selected every 10 s. We assumed that the event-driven traffic was also periodic for the simplicity of simulations, but it had shorter transmission interval. In addition, different R values (i.e., R = 5, 10, 15) were used to vary traffic rates.
We compared GLOBAL with two protocols, SPR (shortest-hop path routing) and CPL (cumulative path load). In SPR, each node transmits its data using the shortest path without any consideration of load balancing. On the other hand, in CPL, each node constructs its gradient based on the cumulative traffic load of a path. If β is set to 1, GLOBAL works in the same as CPL. Through performance comparisons of GLOBAL with CPL, we could observe the superiority of the proposed gradient model that allows each sensor node to calculate its gradient by considering both the cumulative path load and the most overloaded node over the path.
Simulation duration time
Data packet size
Tx interval of periodic traffic
Tx interval of event-driven traffic
CSMA/CA mode of IEEE 802.15.4
We define four performance metrics as follows.
Balance factor (BF): We measure the balance factor of traffic load of sensor nodes. BF is utilized to investigate how well the traffic load is balanced across sensor nodes . Let L i be the traffic load of a sensor node i. BF with the n number of nodes is defined as Equation 9. Under the configurations where traffic conditions applied to simulations of each routing protocol are different from each other, measuring their BF values looks unfair. In our simulations, we therefore investigated the evolution of BF till the lifetime of a network where SPL is used as its underlying routing protocol. SPL is the routing protocol showing the lowest network lifetime. Since the network lifetime of SPL varies depending on network scales, Figures 3 and 4 show different x-axis ranges accordingly.
Network lifetime: Network lifetime can be defined variously according to a type of applications . In GLOBAL, we define the network lifetime in two ways: (a) the time from network deployment to the instant when one of any sensor nodes dies, denoted by LT1, and (b) the time from network deployment to the instant when P percentage of sensor nodes die, denoted by LT%. In particular, the P values are varied in our simulations.
Packet delivery ratio (PDR): PDR is defined as the ratio of the total number of data packets received by sinks to the total number of data packets transmitted by sensor nodes.
Average end-to-end delay: The end-to-end delay is averaged over all surviving data packets from sensor nodes to sinks.
First, we investigate the impact of β on the performance of GLOBAL in the following section. We also design a heuristic method to choose β based on observations from simulation results. We introduce simulation results for each of the above-mentioned metrics, and the analysis of routing control overhead in the protocols is presented in Section IV.C
B The impact of β and a heuristic method to choose β
Based on the above observations, we introduce a heuristic method to choose β in order to maximize the network lifetime while minimizing the decrease in BF(all). In GLOBAL, , where s_hcnt is the shortest number of hops to reach a sink from a sensor node (see Algorithm 1) and net - diameter is the maximum number of hops from one end of the network to the other e . Through the proposed heuristic method, each sensor node is enabled to more favor paths excluding the most overloaded node as its shortest hop distance to a sink decreases. This makes the traffic load of sensor nodes around sinks effectively balanced while allowing sensor nodes far away from sinks to favor the least-loaded path.
C Performance results
First, for each network scale, we measured the BF(all) value of three compared protocols (GLOBAL, SPR, CPL). R was set to 5% in these simulations. Figure 3 shows the evolution of BF(all) for each network scale. At an early stage of the simulation, all the protocols have BF(all) of almost 1 because sensor nodes cannot generate enough traffic to make traffic load distribution unbalanced. For all network scales, similar results are observed.
The gain of GLOBAL and CPL for different network scales (w.r.t. BF(all))
400 nodes (%)
900 nodes (%)
1,600 nodes (%)
The gain of GLOBAL and CPL for different traffic rates (w.r.t. BF(all))
R= 5 (%)
R= 10 (%)
R= 15 (%)
Due to the characteristics of convergecast traffic to each sink, sensor nodes around sinks tend to be highly overloaded. Since the network lifetime is limited by the lifetime of the most overloaded node among them, it is important to evenly distribute the traffic load around sinks. Based on the reason, we also measured BF for 1-hop neighbor nodes of sinks (denoted by BF(1-hop)). In GLOBAL, in order to enable sensor nodes to avoid paths including the most overloaded node, the gradient field is constructed by weighting the cumulative path load as well as the traffic load of the most overloaded node. On the other hand, since CPL creates it gradient field, based on only the cumulative path load, it cannot efficiently avoid using paths containing the most overloaded node. Therefore, CPL produces lower BF(1-hop) than GLOBAL, as shown in Figure 4. In particular, due to the superiority of GLOBAL's heuristic method to choose the weighting factor, GLOBAL keeps BF(1-hop) almost close to 1 from 0 to 450 s without significant decrease in BF(all) in case where N is set to 20 (see Figure 4a). For all network scales, similar results are observed. In this scenario, GLOBAL outperforms SPR and CPL by 18.6 and 4.2%, regarding BF(1-hop) at time 450 s, respectively.
The gain of GLOBAL for different network scales (w.r.t. BF(1-hop))
400 nodes (%)
900 nodes (%)
1,600 nodes (%)
The gain of GLOBAL for different traffic rates (w.r.t. BF(1-hop))
R= 5 (%)
R= 10 (%)
C.2 Network lifetime
The gain of GLOBAL (w.r.t. LT 1)
The gain of GLOBAL (w.r.t. LT%)
P= 10 (%)
P= 20 (%)
P= 30 (%)
The gain of GLOBAL for different network scales (w.r.t. PDR)
400 nodes (%)
900 nodes (%)
1,600 nodes (%)
The gain of GLOBAL for different traffic rates (w.r.t. PDR)
R= 5 (%)
R= 10 (%)
R= 15 (%)
C.4 Average end-to-end delay
The gain of GLOBAL for different network scales (w.r.t. Average end-to-end delay)
400 nodes (%)
900 nodes (%)
1,600 nodes (%)
The gain of GLOBAL for different traffic rates (w.r.t. Average end-to-end delay)
R= 5 (%)
R= 10 (%)
R= 15 (%)
C.5 Analysis of routing overhead
Normalized routing load (NRL) is defined as the number of control packets transmitted per data packet delivered at the destination. NRL has been commonly used to evaluate the overhead of routing protocols. In the compared protocols, the ADV packet is the only control packet and sinks flood the ADV packet only once when a network is initialized. Therefore, they have almost the same NRL among each other. Unlike SPR, GLOBAL and CPL, however, require sensor nodes to piggyback control information on the periodic data packet. We therefore measured their byte-level control overhead, since NRL cannot reflect the control overhead caused by the piggybacking. In the compared protocols, the overhead is affected by three parameters: the size of information piggybacked on the periodic data packet, the period of the periodic data transmission, and the number of sensor nodes. Since we have fixed values for such parameters, their byte-level control over-head was measured numerically without simulations.
In GLOBAL, sensor nodes are allowed to piggyback the 5-byte information (i.e., hcnt, sum_redr, and max_redr) on their periodic data packet. On the other hand, CPL requires the 3-byte information (i.e., hcnt and sum_redr) to be piggybacked on the periodic data packet, and SPR does not require any piggybacking. Therefore, assuming that there are Nsensor sensor nodes and they transmit k periodic data packets per second, GLOBAL and CPL have the routing overhead of 5 · Nsensor · k bytes/s and 3 · Nsensor ·kbytes/s, respectively. In addition, the routing overhead caused by the ADV flooding is calculated to be LADV · Nsink · Nsensorbytes, where LADV is the length of the ADV message in bytes and Nsink is the number of sinks.
For the purpose of load balancing, the cumulative traffic load of a path is considered in existing gradient routing protocols. However, they have a critical drawback that a sensor node cannot efficiently avoid using the path with the most overloaded node. Only the information on cumulative path load is not enough to identify the path including the most overloaded node. Hence, we proposed a new gradient routing protocol (called GLOBAL). In GLOBAL, each sensor node determines its gradient by weighting the cumulative load of a path and the most overloaded node over the path through a weight factor β. Using ns-2 simulator, we explored the impact of β on the GLOBAL performance and found that there exists a trade-off between the even distribution of traffic load and network lifetime. Based on simulation results, we introduced a heuristic method to choose β in order to maximize network lifetime while minimizing deterioration in load-balancing performance. Through the proposed heuristic method, each sensor node is enabled to more favor paths excluding the most overloaded node as its shortest hop distance to a sink decreases. This makes the traffic load of sensor nodes around sinks effectively balanced while allowing sensor nodes far away from sinks to favor the least-loaded path. In addition, we also proposed an addressing-free forwarding strategy in order to avoid addressing overhead. Instead of using an address for forwarding packets, GLOBAL uses the gradient value as the next-hop node identifier.
Through ns-2 simulation, we conducted performance comparisons with other routing protocols in static grid networks: shortest path routing (SPR) and CPL, where CPL is a gradient routing using the cumulative path load only. We measured four metrics: balance factor, network lifetime, packet delivery ratio, and average end-to-end delay. GLOBAL always achieves better performances than the others in terms of the former three metrics. In particular, assuming that the network lifetime is defined as the time from network deployment to the instant when one of any sensor nodes dies, GLOBAL shows the performance improvements in the network lifetime by 42.1 and 14.1% at a 40 × 40 grid network, as compared to SPR and CPL, respectively. This implies that GLOBAL can achieve its main goal of extending the network lifetime. However, GLOBAL has a slightly higher average end-to-end delay than CPL, but the difference is negligible. In this work, GLOBAL did not take the mobility of sensor nodes and sinks into account. Its performance degradation in dynamic networks with node mobility is unavoidable. Hence, its robustness against the frequent change of network topology will be improved in our future work.
a The cumulative traffic load information of the path is simply called as cumulative path load.
b A simple battery life indicator based solely on the battery voltage cannot provide high-resolution measurement. Resolution refers to the smallest quantity of energy that a system can measure. However, more sophisticated devices can measure their battery level based on the average of the energy drained from the battery. As mentioned in , high-resolution battery measuring can be performed using either hardware support, as in systems like Quanto  and iCount , or using software monitoring, as in Pixie  and a resolution of 0.1 μ J can be achieved.
c Ye et al. proposed an efficient backoff-based gradient field establishment algorithm, which attempts to find the optimal costs of all nodes to the sink with the overhead of one packet per node. Although GLOBAL currently utilizes the naive flooding-based gradient field establishment algorithm, it can simply adopt the backoff-based one. The performance improvement issue in the gradient field establishment algorithm is out of scope of this paper.
d Assuming that sinks and sensor nodes have no mobility, the evaluation of performance in dynamic networks is beyond the scope of this work.
e net - diameter is a system parameter. The calculation of net - diameter is out of scope of this paper.
- Perillo M, Cheng Z, Heinzelman W: Strategies for Mitigating the Sensor Network Hot Spot Problem. Proceedings of MobiQuitous 2005.Google Scholar
- Puccinelli D, Haenggi M: Arbutus: Network-Layer Load Balancing for Wireless Sensor Networks. Proceedings of IEEE WCNC 2008.Google Scholar
- Slama I, Jouaber B, Zeghlache D: Energy Efficient Scheme for Large Scale Wireless Sensor Networks with Multiple Sinks. Proceedings of IEEE WCNC 2008.Google Scholar
- Ye F, Chen A, Lu S, Zhang L: A Saclable Solution to Minimum Cost Forwarding in Large Sensor Networlks. Proceedings of IEEE ICCCN 2001.Google Scholar
- Al-Karaki JN, Kamal AE: Routing techniques in wireless sensor networks: a survey. IEEE Wirel Commun 2004, 11(6):6-28. 10.1109/MWC.2004.1368893View ArticleGoogle Scholar
- Huang P, Chen H, Xing G, Tan Y: SGF: a state-free gradient-based forwarding protocol for wireless sensor networks. ACM Trans Sen Netw 2009, 5(2):1-25.View ArticleGoogle Scholar
- Basu A, Lin A, Ramanathan S: Routing Using Potentials: A Dynamic Traffic-Aware Routing Algorithm. Proceedings of ACM SIGCOMM 2003.Google Scholar
- Cheng RH, Peng SY, Huang C: A Gradient-Based Dtnamic Load Balance Data Forwarding Method for Multi-Sink Wireless Snesor Networks. Proceedings of IEEE APSCC 2008.Google Scholar
- Liu H, Zhang ZL, Srivastava J, Firoiu V: PWave: A Multi-Source Multi-Sink Anycast Routing Framework for Wireless Sensor Networks. Proceedings of IFIP Networking 2007.Google Scholar
- Shah RC, Rabaey JM: Energy Aware Routing for Low Energy Ad Hoc Sensor Networks. Proceedings of IEEE WCNC 2002.Google Scholar
- Suhonen J, kuorilehto M, Hannikainen M, Hamalainen TD: Cost-Aware Dynamic Routing Protocol for Wireless Sensor Networks--Design and Prototype Experiments. Proceedings of IEEE PIMRC 2006.Google Scholar
- Fyffe M, Sun M, Ma X: Traffic-Adapted Load Balancing in Sensor Networks Employing Geographic Routing. Proceedings of IEEE WCNC 2006.Google Scholar
- Singh S, Woo M, Raghavendra CS: Power-Aware Routing in Mobile Ad Hoc Networks. Proceedings of ACM/IEEE MobiCom 1998.Google Scholar
- Draves R, Padhye J, Zill B: Routing in Multi-Radio, Multi-Hop Wireless Mesh Networks. Proceedings of ACM/IEEE MobiCom 2004.Google Scholar
- Ye F, Zhoung G, Lu S, Zhang L: GRAdient broadcast: a robust data delivery protocol for large scale sensor networks. Wirel Netw 2005, 11(3):285-298. 10.1007/s11276-005-6612-9View ArticleGoogle Scholar
- Roosta T, Liao WC, Teng WC, Sastry S: Testbed Implementation of a Secure Flooding Time Synchronization Protocol. Proceedings of IEEE WCNC 2008.Google Scholar
- Wu K, Harms J: Load-Sensitive Routing for Mobile Ad Hoc Networks. Proceedings of IEEE ICCCN 2001.Google Scholar
- Kim D, Garcia-Luna-Aceves JJ, Obraczka K, Cano J-C, Manzoni P: Routing mechanisms for mobile ad hoc networks based on the energy drain rate. IEEE Trans Mob Comput 2003, 2(2):161-173. 10.1109/TMC.2003.1217236View ArticleGoogle Scholar
- Challen GW, Waterman J, Welsh M: Idea: Integrated Distributed Energy Awareness for Wireless Sensor Networks. Proceedings of ACM MobiSys 2010.Google Scholar
- Basu P, Redi J: Effect of Overhearing Transmissions on Energy Efficiency in Dense Sensor Networks. Proceedings of IEEE IPSN 2004.Google Scholar
- Dai H, Han R: A Node-Centric Load Balancing Algorithm for Wireless Sensor Networks. Proceedings of IEEE GLOBECOM 2003.Google Scholar
- Chen Y, Zhao Q: On the lifetime of wireless sensor networks. IEEE Commun Lett 2005, 9: 976-978. 10.1109/LCOMM.2005.11010View ArticleGoogle Scholar
- Fonseca R, Dutta P, Levis P, Stoica I: Quanto: Tracking Energy in Networked Embedded Systems. Proceedings of OSDI 2008.Google Scholar
- Dutta P, Feldmeier M, Paradiso J, culler D: Energy Metering for Free: Augmenting Switching Regulators for Real-Time Monitoring. Proceedings of IEEE IPSN 2008.Google Scholar
- Lorincz K, Chen B, Waterman J, Werner-Allen G, Welsh M: Resource Aware Programming in the Pixie os. Proceedings of ACM SenSys 2008.Google Scholar
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.