[ieee 2011 seventh international conference on mobile ad-hoc and sensor networks (msn) - beijing,...

7
Load Migrating for the Hot Spots in Wireless Sensor Networks using CTP Jing Zhao, Lei Wang, Wenlong Yue, Zhengquan Qin, Ming Zhu School of Software, Dalian University of Technology, China [email protected], [email protected], [email protected], [email protected], [email protected] Abstract—To suit the needs of data collection, routing protocols in WSN are normally required to form a collection tree where data flows from the source nodes to the sink nodes. These protocols, such as CTP and Multihop LQI, generally target at reducing the packet delivery cost without considering load balancing issues. We argue that load balancing is crucial for WSNs because load imbalance may cause certain nodes, which we call hot spots, to run out of energy faster than expected. The load imbalance may lead to holes and prominently degrade the performance of the network. In this paper, we propose BCTP (Balanced Collection Tree Protocol), which enhances CTP by enabling the network to migrate the load of the node under heavy traffic. BCTP uses the average transmission rate as the metric to measure a node’s long term traffic load. Once a node is found heavily loaded, BCTP adopts a stochastic routing strategy to balance the load. BCTP is evaluated by testbed experiments with 9 Telosb motes. Experiment result shows that BCTP can reduce the load of the hot spot by up to 61.9% in a densely deployed network. Index Terms—Wireless sensor Networks, Hot Spot, Stochastic Routing I. I NTRODUCTION Wireless sensor networks (WSNs) prove to be a powerful tool for prolonged surveillance of large scale phenomena [1]. A wireless sensor network is typically composed of large quantities of densely deployed low-cost wireless sensor nodes which are constrained both in computational ability and en- ergy. Due to the limited transmission range of the senor nodes, WSNs usually adopt a multi-hop many-to-one routing pattern to transmit the data collected from the phenomenon area to the sink node. To suit the needs of WSNs, a number of many- to-one routing protocols are proposed and of these protocols, CTP (Collection Tree Protocol) [2] is a commonly used and thoroughly tested one. CTP uses ETX [3] as its routing metric to avoid lossy links. ETX stands for the expected total number of transmissions required to successfully deliver a packet. The greater the ETX of a path is , the lossier the path is. However, ETX doesn’t address the problem of load balancing. Therefore, CTP is prone to the hot spot problem: certain nodes carry much heavier transmission load than other nodes. These nodes are likely to run out of battery faster than the ordinary nodes, which may create holes and undermine the performance of the whole system. We conducted several experiments of CTP on 9 nodes. Figure 1 shows the collection tree built by CTP in one of these experiments. The routing table of node 4 is shown in Table I. We can find that though the route 4 1 0 is not as good as 4 2 0, it is still usable. Other experiments yield similar results. This phenomenon implies that CTP by itself won’t provide load balancing service even if there is sufficient network redundancy. In the sensor networks deployed in the wild, there are also reports of similar problems [4]. Our Design of BCTP is based on this observation. 0 5 4 8 6 7 3 2 1 Fig. 1. A collection tree built by CTP. We can see from the figure that the tree is highly imbalanced. TABLE I ROUTING TABLE OF NODE 4 Neighbors Route ETX Link ETX 0 4.6 4.6 2 2 1 3 4.7 1.7 1 3.2 2.2 6 4.3 2.2 Balanced Collection Tree Protocol (BCTP), a protocol based on CTP, aims to solve the problem of hot spot in CTP. BCTP modifies CTP in two aspects: First, BCTP adds a transmission recorder component to measure a node’s load and to determine whether a node is a hot spot or not; Second, BCTP modifies the routing strategy of the hot spot’s children to migrate the load of the hot spot. To solve the problem of hot spots, we must first answer the following questions: how do we quantitatively define a hot spot? What metric should we use to measure the load of a sensor node? The motivation of solving the problem of hot spots is that we want to guarantee that all the nodes of the network can work unattended for a given period of time. Since wireless transmissions account for a large proportion of 2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks 978-0-7695-4610-0/11 $26.00 © 2011 IEEE DOI 10.1109/MSN.2011.42 167 2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks 978-0-7695-4610-0/11 $26.00 © 2011 IEEE DOI 10.1109/MSN.2011.42 167 2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks 978-0-7695-4610-0/11 $26.00 © 2011 IEEE DOI 10.1109/MSN.2011.42 167

Upload: ming

Post on 07-Mar-2017

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: [IEEE 2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks (MSN) - Beijing, TBD, China (2011.12.16-2011.12.18)] 2011 Seventh International Conference on Mobile

Load Migrating for the Hot Spots in WirelessSensor Networks using CTP

Jing Zhao, Lei Wang, Wenlong Yue, Zhengquan Qin, Ming ZhuSchool of Software, Dalian University of Technology, China

[email protected], [email protected], [email protected], [email protected], [email protected]

Abstract—To suit the needs of data collection, routing protocolsin WSN are normally required to form a collection tree wheredata flows from the source nodes to the sink nodes. Theseprotocols, such as CTP and Multihop LQI, generally targetat reducing the packet delivery cost without considering loadbalancing issues. We argue that load balancing is crucial forWSNs because load imbalance may cause certain nodes, whichwe call hot spots, to run out of energy faster than expected. Theload imbalance may lead to holes and prominently degrade theperformance of the network. In this paper, we propose BCTP(Balanced Collection Tree Protocol), which enhances CTP byenabling the network to migrate the load of the node underheavy traffic. BCTP uses the average transmission rate as themetric to measure a node’s long term traffic load. Once a node isfound heavily loaded, BCTP adopts a stochastic routing strategyto balance the load. BCTP is evaluated by testbed experimentswith 9 Telosb motes. Experiment result shows that BCTP canreduce the load of the hot spot by up to 61.9% in a denselydeployed network.

Index Terms—Wireless sensor Networks, Hot Spot, StochasticRouting

I. INTRODUCTION

Wireless sensor networks (WSNs) prove to be a powerful

tool for prolonged surveillance of large scale phenomena [1].

A wireless sensor network is typically composed of large

quantities of densely deployed low-cost wireless sensor nodes

which are constrained both in computational ability and en-

ergy. Due to the limited transmission range of the senor nodes,

WSNs usually adopt a multi-hop many-to-one routing pattern

to transmit the data collected from the phenomenon area to

the sink node. To suit the needs of WSNs, a number of many-

to-one routing protocols are proposed and of these protocols,

CTP (Collection Tree Protocol) [2] is a commonly used and

thoroughly tested one. CTP uses ETX [3] as its routing metric

to avoid lossy links. ETX stands for the expected total number

of transmissions required to successfully deliver a packet. The

greater the ETX of a path is , the lossier the path is. However,

ETX doesn’t address the problem of load balancing. Therefore,

CTP is prone to the hot spot problem: certain nodes carry much

heavier transmission load than other nodes. These nodes are

likely to run out of battery faster than the ordinary nodes,

which may create holes and undermine the performance of

the whole system.

We conducted several experiments of CTP on 9 nodes.

Figure 1 shows the collection tree built by CTP in one of these

experiments. The routing table of node 4 is shown in Table

I. We can find that though the route 4 → 1 → 0 is not as

good as 4 → 2 → 0, it is still usable. Other experiments yield

similar results. This phenomenon implies that CTP by itself

won’t provide load balancing service even if there is sufficient

network redundancy. In the sensor networks deployed in the

wild, there are also reports of similar problems [4]. Our Design

of BCTP is based on this observation.

0

5 4

8

6

73

21

Fig. 1. A collection tree built by CTP. We can see from the figure that thetree is highly imbalanced.

TABLE IROUTING TABLE OF NODE 4

Neighbors Route ETX Link ETX0 4.6 4.62 2 13 4.7 1.71 3.2 2.26 4.3 2.2

Balanced Collection Tree Protocol (BCTP), a protocol based

on CTP, aims to solve the problem of hot spot in CTP. BCTP

modifies CTP in two aspects: First, BCTP adds a transmission

recorder component to measure a node’s load and to determine

whether a node is a hot spot or not; Second, BCTP modifies

the routing strategy of the hot spot’s children to migrate the

load of the hot spot.

To solve the problem of hot spots, we must first answer

the following questions: how do we quantitatively define a

hot spot? What metric should we use to measure the load

of a sensor node? The motivation of solving the problem of

hot spots is that we want to guarantee that all the nodes of

the network can work unattended for a given period of time.

Since wireless transmissions account for a large proportion of

2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks

978-0-7695-4610-0/11 $26.00 © 2011 IEEE

DOI 10.1109/MSN.2011.42

167

2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks

978-0-7695-4610-0/11 $26.00 © 2011 IEEE

DOI 10.1109/MSN.2011.42

167

2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks

978-0-7695-4610-0/11 $26.00 © 2011 IEEE

DOI 10.1109/MSN.2011.42

167

Page 2: [IEEE 2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks (MSN) - Beijing, TBD, China (2011.12.16-2011.12.18)] 2011 Seventh International Conference on Mobile

the energy consumption [5], this goal lays an upper bound for

the overall transmissions of a sensor node during its lifetime.

Thus, the hot spots should be those whose transmissions

exceed the bound. However, we can’t use overall transmissions

directly as the metric to define hot spot for it will be too late to

make any change if a node’s transmissions already exceed the

bound. Instead, we use the average transmission rate, which is

measured by the number of transmissions per unit time, as the

metric to measure the load of a node and to set the threshold of

hot spot. This will achieve the following benefits. First, this

metric is directly connected with the overall transmissions.

Second, this metric allows a node to detect an overload node

at early stage by calculating its average transmission every

unit time, which is much shorter than the total lifetime.

The second phase of solving the problem is to migrate the

load of the hot spot. BCTP requires the children of a hot spot

to find a suitable alternate route. When a packet arrives, it

will choose a route opportunistically from the original route

and the alternate route. We use opportunistic routing to avoid

frequent changes of the topology and to keep the children from

becoming hot spot themselves. We will elaborate this part in

Section III. Besides, the selection of alternate route in BCTP

insures that no routing loops will occur and the alternate route

won’t traverse a hot spot itself. Last but not least, our scheme

only uses one bit of the option field of the original CTP control

message. It relies solely on the CTP beacon mechanism to

deliver necessary information and thus doesn’t introduce any

network overhead.

The contribution of this paper is as follows. First, we

introduce average transmission rate as the metric to measure a

node’s long term load. Second we design a localized scheme to

migrate the load of the hot spots. Third, we implement BCTP

in CTP and evaluate the performance of BCTP in a 9-node

testbed.

Section II describes related work. Section III describes the

design of BCTP. Section IV demonstrates the implementation

of BCTP and Section V evaluates BCTP through experiments.

Section VI concludes the paper.

II. RELATED WORK

A. Many to One Routing Protocols

Collection Tree Protocol (CTP) is a multi-hop protocol

which computes the route from non-sink nodes to a single or a

number of sinks in WSN. CTP Noe is a recent implementation

of CTP. It uses two distinctive techniques which are called

data path validation and adaptive beaconing. Data path vali-

dation can detect loops and validate the routing topology by

examining the received data packets while adaptive beaconing

adapts the rate of control messages dynamically. These two

techniques enable CTP Noe to detect a routing inconsistency

quickly using a low rate of control messages. CTP Noe is

thoroughly tested in 12 different testbeds and 6 different

link layers. Muhammad Hamad Alizai et al. proposed BRE

(Bursty Routing Extensions) [6] based on the observations

that routing protocols like CTP tend to use long term stable

route rather than unstable links. They argue that bursty links,

whose link quality changes dramatically over time, should be

exploited in routing. BRE uses a metric called STLE to detect

immediate good quality links and uses it as the parent. BRE

falls back to traditional routing if a single delivered packet is

not acknowledged.

These routing protocols, from CTP to BRE, put their

emphasis on reducing total transmissions. However, we argue

that balancing the transmissions of individual nodes is also

very important. The imbalance of network load may put some

nodes out of service faster than required and thus degrade the

performance of the entire network.

B. Rate Control Schemes

Rate control schemes, such as Fusion [7], CODA [8], ESRT

[9] and IFRC [10], also try to reduce the load of certain node

in the network. The main purpose of these protocols is to

eliminate congestion in the network. Fusion uses the queue

length to measure levels of congestion and when a congestion

is detected, it applies hop-by-hop backpressure to regulate the

data rate of the sources. CODA measures both the channel and

buffer to detect congestion. Other than open loop backpressure,

CODA also adopts an end-to-end acknowledgement strategy

to deal with consistent congestion. IFRC, which monitors the

queue length to detect incipient congestion, introduces a novel

low-overhead congestion sharing mechanism. It converges to

a fair and efficient rate allocation using an AIMD control law.

ESRT is quite different from the above schemes by using a

centric rate control mechanism. It computes the appropriate

rate for each node at the base station and broadcasts the rate

to every node in the network.

The rate control schemes are different from BCTP in two

aspects. First, they work in different time scales. The former

try to solve transient congestion while the latter tries to

solve long term load imbalance. Second, they use completely

different methods to reduce a node’s transmission load. Rate

control schemes usually reside on top of routing protocols and

rely on explicit rate control to reduce a node’s transmission

load. BCTP, on the other hand, tries to exploit the redundancy

of the network to migrate the transmission load of the hot spot.

C. Stochastic Routing

S. Keshav [11] compared the pros and cons of stochastic

and deterministic routing. He argues that stochastic routing

eliminates the problem of load oscillation but suffers from

varying delays, which may cause some connections out of

order. However, as most WSN applications are not connection

oriented, the ordering problem is not so important in the WSN

context. Alejandro Ribeiro et al. [12] provide a series of

theoretical study of stochastic routing in multi-hop wireless

networks. It establishes a model where packets are randomly

routed to neighboring nodes. In this model, the duty of routing

protocol is to search for a matrix of routing probabilities

according to a properly defined optimality criteria. The trans-

mission mitigation algorithm of BCTP is inspired by this

model.

168168168

Page 3: [IEEE 2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks (MSN) - Beijing, TBD, China (2011.12.16-2011.12.18)] 2011 Seventh International Conference on Mobile

D. Energy Aware Routing

The Energy Aware Routing (EAR) [13] proposed by Rahul

C. Shah et al. has much in common with our scheme. EAR

also maintains a set of good paths instead of a single optimal

path. It requires a node to choose one path from those paths

probabilistically. EAR introduces an energy metric which is

determined by both the cost to deliver a packet and the residual

power of the intermediate node. The probability assigned to

each path is determined by the energy metric of the path. Our

scheme is different from EAR in several aspects. First, EAR’s

routing decision is based on the residual energy of paths while

BCTP’s is based on the residual energy of individual nodes.

From our perspective, EAR ignores the energy differences of

the nodes on the same path. A path is abundant in residual

energy doesn’t mean all the nodes on the path is abundant

in residual energy. Second, EAR’s energy cost metric is

based on the assumption that the accurate residual energy and

transmission cost of energy can be obtained by sensor nodes.

However, this is not true for some sensor platforms.

Sequential Assignment Routing (SAR) [14] takes the energy

resources into consideration when it tries to set up a route.

The routing decision of SAR is mainly based on three factors:

residual energy, QoS of the paths and the priority level of

the packets. SAR forms trees rooted from the source nodes

to the destination nodes. These trees avoid nodes that are

low in energy. The problem of SAR is that it relies on the

global information of the whole network and can’t handle the

dynamic of networks.

E. Structured Networks with Load Migration Abilities

Some researchers try to solve the problem of hot spots by

modifying the architecture of WSNs. They add some special

nodes to the network and form multi-layered hierarchical

networks. These special nodes usually process special abilities

like mobility or multi-radio transmission ability. They can

carry the load that cannot be handled by the ordinary nodes.

Wan et al. [15] tries to solve the problem of hot pots

by placing some virtual sinks. These virtual sinks have two

kinds of radios: long ranged radios based on IEEE 802.11

to communicate with the physical sinks and short ranged

radios to communicate with the sensors. In addition, they

proposed Siphon, a set of distributed algorithms, to instruct

the network to use these virtual sinks efficiently. Siphon is

mainly composed of three parts: virtual sink discovery and

selection, congestion detection and traffic redirection. Virtual

sink discovery mainly exploit the routing protocols’ control

messages to locate the virtual sinks in the network. Congestion

discovery is either initiated by sensor nodes or physical sink

nodes. The former is mainly based on CODA’s congestion

discovery and the latter mainly exploits the smart monitoring

ability of physical sinks.

Another way to migrate the high traffic load of WSNs is

to introduce mobile nodes into the network. Shah et al. [16]

introduces data mules into the network. These data mules can

walk randomly or move along parallel straight lines in the

field. They can pick up data and drop them off to a wired

access point. This way the cost is shifted from the node to

the data mules. Ma and Yang [17] introduces a path planning

algorithm, which add some turning point to the parallel lines.

The path of the mobile data collector can be adjusted according

to the distribution of the network. Zhao and Yang [18] propose

a three-layer framework, which includes the sensor layer, the

cluster head layer and the mobile collector layer. The cluster

heads collect data from the sensor nodes and forward them to

mobile data collectors.

These multi-layer frameworks and BCTP try to solve the

same problem. However, these frameworks introduce “super

nodes” into the network and thus increase the complexity and

cost of the network. We believe the ordinary sensor nodes

possess enough transmission ability to solve the hot spot

problem by themselves.

III. DESIGN

A. Design Goals and Challenges

Our aim is to detect hot spots, the nodes that run out of

battery faster than expected due to heavy transmission load,

and to reduce the load of the hot spot using stochastic routing.

However, we don’t want to undermine the reliability and

stability of the original CTP or to introduce more overhead.

As a result, BCTP faces the following crucial challenges.

First, as BCTP aims to solve the hot spot problem, it should

first introduce a metric which can define a hot spot. Further,

a hot spot should be correctly detected at early stage to leave

enough time for the protocol to solve the problem. Thus, the

metric should be both correct and agile in reflecting a node’s

transmission load.

Second, after a hot spot is discovered, BCTP should exploit

the network’s transmission ability to reduce the hot spot’s

transmission load. The transmission migration scheme should

ensure the migrated load won’t burden the node which is

already overloaded. Besides, the load migration scheme should

do its best not to enlarge the number of hot spots.

Third, CTP, which reacts quickly to routing inconsistencies

but sends very few beacons, proves to be reliable and stable

in a number of experiments. These feathers should be retained

as much as possible. Hence, BCTP should only act as a

supplement of CTP, which deals with the special case that

a hot spot emerges. What’s more, as CTP’s rate of beacons is

highly relative to the frequency of network topology changes,

BCTP’s load migration scheme should change the network’s

topology as little as possible.

Based on the discussions above, the design of BCTP is

mainly composed of three parts: hot spot detection, load

migration and integration with original CTP.

B. Hot Spot Detection

The hot spot is detected by continuously monitoring the

transmission load which is measured by the average transmis-

sion rate. A node will consider itself overloaded if its average

transmission load is above a preset threshold.

169169169

Page 4: [IEEE 2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks (MSN) - Beijing, TBD, China (2011.12.16-2011.12.18)] 2011 Seventh International Conference on Mobile

1) The Average Transmission Rate Metric: By our defini-

tion, a hot spot is a node whose long term transmission load is

much higher than expected. We use the average transmission

rate to measure a node’s current load. After a node turns

on BCTP, it counts every transmission it issues. Every xsecond, BCTP calculate a node’s average transmission rate by

Tavg = Tt/Ct where Tavg denotes the average transmission

rate, Tt denotes a node’s total transmissions, CT denotes a

node’s total measurements. If x is too large, the metric can’t

agilely reflect the changes of a node’s load. If x is too small,

it will impose a heavy computation burden on a node. A

compromise scheme is that x should be smaller than the steady

beacon interval of CTP.

2) Threshold for Hot Spots: Threshold for hot spots is

highly application-specific, i.e. it’s related to the node’s bat-

tery, transmission energy cost and how long the node is

expected to work. This threshold reflects the energy constraint

on the number of transmissions i.e. the battery allows how

many transmissions to be made in a node’s life time. We expect

the threshold for the average transmission to be obtained in

the training period.

It should be noted that BCTP only deems a node as a hot

spot if its average transmission is above the threshold for

consecutive N measurements. This requirement is aimed to

avoid a frequent transition of a node’s status.The default value

of N is 5.

C. Transmission Load Migration

After a hot spot is detected in the network, the load

migration scheme will try to reduce the load of the hot spot.

This is done in two phrases: First the downstream node of the

hot spot will try to find an alternate route; if such route exists,

BCTP will allocate the routing probabilities to the original

route and the new found route.

1) Alternate Route Selection: The children of a hot spot is

required to find an alternate route. The alternate route should

satisfy the following requirements: (1) The alternate route

should be loop-free, which is a basic requirement of a routing

protocol; (2) the alternate route should not traverse another

hot spot or the migration scheme will be meaningless; (3) the

alternate route should avoid the extremely lossy links which

proves to be unstable.

To avoid loops, BCTP requires that node i can only choose

node j as its next hop if the following constraint is satisfied

ETX(j) < ETX(p) + 1,

where node p is node i’s parent. Since the ETX of a link is at

least one, this requirement ensures node j won’t transmit the

packet to node i’s current next hop p, let alone transmit the

packet back to node j.

To prevent the alternate route from traversing a hot spot

itself, BCTP requires all the children of a hot spot to broadcast

themselves as a hot spots.

2) Routing Probability Allocation: If the children of a

hot spot found a suitable next hop, it will forward packets

stochastically to the original next hop and the alternate next

hop. The reason we use stochastic routing is to prevent the

children themselves from becoming hot spots. There are some

considerations in designing the load migration scheme.

First, the alternate route is generally lossier than the original

route. Thus, the children of the hot spot have to conduct more

transmissions to deliver a packet through the alternate route.

The increased transmissions may cause the children to get

overloaded. To prevent this situation, the probability should

be allocated such that the anticipated average transmission rate

should not surpass the threshold.

Let Ttres denote the threshold for hot spots, Tavg denote the

node’s current average transmission rate, Ep denote the ETX

of the node’s original route, Ea denote the ETX of the alternate

route, P denote the number of packets expected to be delivered

in x seconds. All these variables can be easily obtained by a

node locally. Suppose α is the probability allocated for the

original route. The constraint on α is set by

(α× Ep + (1− α)× Ea)× P − Ea × P ≤ Ttres − Tavg,

which yields

α ≥ 1− Ttres − Tavg

(Ea − Ep)× P.

The left of the inequality indicates the expected additional

transmissions incurred by adopting a alternate route. The

right indicates the number of increased transmissions a node

tolerates. In the implementation of BCTP, we set α to the

minimum value. This inequality shows that the probability

allocated to the original route is related to three factors:

(1) the gap between the threshold and the node’s current

average transmission rate, (2) the ETX gap between the node’s

alternate route and its original route, (3) the number of packets

to deliver by the node. The higher α is, the more a node relies

on its original route. α is negatively related to the first factor

but positively related to the other factors. This agrees with the

intuition.

There are two extreme cases: α = 0 and α = 100. The

former means the node doesn’t rely on the original route at all

while the latter means the node doesn’t use the alternate route

at all. In the former case, the node doesn’t need to broadcast

itself as a hot spot as is described in Section III-C since it

doesn’t use the original route at all.

0

1 2

9654 7

3

8

Fig. 2. A situation that traffic is migrated from node 1 to node 3

Second, the migrated load may cause the nodes on the

alternate route to become overloaded. We tolerate this scene

170170170

Page 5: [IEEE 2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks (MSN) - Beijing, TBD, China (2011.12.16-2011.12.18)] 2011 Seventh International Conference on Mobile

as it is beneficial in some situations. As is shown in Figure

2, suppose node 1 is deemed under heavy load, node 6 will

choose node 2 as its alternate route. The migrated load in turn

causes node 2 to become heavily loaded, which will cause

node 8 to choose node 3 as its alternate route. The load is

virtually transferred from node 1 to node 3.

Third, if a hot spot declares it’s not overloaded as soon as

the load of the hot spot is reduced below the threshold, it’s

likely that it will soon get overloaded again as its children

get back to their original route. We don’t want a node status

to change too frequently. So a hot spot can only declare it is

not overloaded after its average transmission rate is below the

Ttres−M for consecutive N measurements.The default value

of M is 2.

D. Integration with CTP

As we have discussed above, we want to change the

behavior the original CTP as little as possible. So BCTP

completely acts as the original CTP when there is no hot spot

in the network. After a hot spot is declared, BCTP still tries to

maintain the original CTP tree as much as possible. A node

still broadcasts the original next hop as its parent and the

original route cost even if it is using the alternate route. The

node is somehow cheating the other nodes. However as long

as it doesn’t harm the stability and reliability of the protocol,

BCTP is fine with it.

As for control messages, BCTP relies on the beacon control

scheme of CTP. BCTP uses only 1 bit of the beacon message.

It is used to inform other nodes when a node become a hot

spot.

IV. IMPLEMENTATION

We implement BCTP in nesC for TinyOS 2.1.1. The orig-

inal CTP is mainly consisted of three parts: routing engine,

forwarding engine and link estimator. CTP uses the Four Bit

Link Estimator (4bitle) as its link estimator. To suit the needs

of CTP, we add the transmission monitor componen.Their

relationship is illustrated in Figure 3.

The transmission monitor component provides the

RecordTx interface to interact with other components. The

start command instructs the monitor to record transmissions

and periodically compute the average transmission rate of the

node. The stop command stops the monitor. The addTxcommand increases the monitor’s transmission counters.

The addPkt command increases the monitor’s packet

counter. The Packet counter is usually smaller than the

transmission counter as a node may retransmit a packet

several times to successfully deliver it. The getAvgTxand getAvgPkt command return the average transmission

rate and average packet delivery rate respectively. Similarly,

the getTx command and the getPkt command return

the transmissions of the last measure interval and the

delivered packets of the last measure interval respectively.

The getState command reports whether the node is a

hot spot. The isRecordOn command returns wether the

monitor has been turned on. If a normal node turns into a hot

spot or a hot spot returns to the normal state, it will notify

other components of the state change by the stateChangeevent. The parameter tells other components which state the

node is in.

interface RecordTx {command void start();command void stop();command void addTx();command void addPkt();command uint16_t getAvgTx();command uint16_t getAvgkt();command uint16_t getTx();command uint16_t getPkt();command bool getState();command bool isRecordOn();event void stateChange(state_t state);

}

The BCTP also modifies the routing engine part of CTP.

BCTP adds the constrained item to the routing table entry,

which indicates whether a neighbor is a hot spot. Every time

a node updates its routing table, it will check if its parent is a

hot spot. If its parent is a hot spot, the node will try to select

an alternative route and determine the probability assigned to

each route.

Forwarding Engine

Next HopRouting Engine

Link Estimator

Transmission Recorder

Fig. 3. The architecture of BCTP. Forwarding Engine, Routing Engine andLink estimator are the original components of CTP. We add a TransmissionRecorder component and modify the RoutingEngine component.

V. EVALUATION

We tested BCTP on 9 GF100 Motes, which is designed

according to Telosb specifications. A standard mote includes

a mini-USB port for programming and data transfer, an IEEE

802.15.4 radio TI CC2420, a low power MCU MSP430 F1611

with 10K RAM, an external fash chip up to 1MB. The

9 motes are densely deployed within an area of 2 square

meters. The CC2420 power is set to 2 to insure a multi-hop

communication. In our experiment, node 0 is selected as the

sink node. Figure 4 shows an example of the GF100 node. The

transmissions of the sink node are not studied as sink nodes

usually have external power supplies in WSN applications.

171171171

Page 6: [IEEE 2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks (MSN) - Beijing, TBD, China (2011.12.16-2011.12.18)] 2011 Seventh International Conference on Mobile

Fig. 4. GF100 Mote

We run both BCTP and CTP consecutively for 3 hours and

record the packets received at the base station. For BCTP, we

set the transmission measure interval x to 30 seconds, average

transmission threshold Ttres to 20 pkts per 30 seconds. Each

node is required to send a packet every 5 seconds.

A. Comparison with CTP

Figure 6 compares the overall transmissions of each node

between CTP and BCTP in three hours. It’s obvious that BCTP

is much more balanced than CTP. In BCTP, the highest load

of a node is 7755 while the highest load in CTP is 20498.

BCTP reports a reduction of 61.9% transmissions on the most

heavily loaded node. To quantitatively compare the fairness

of BCTP and CTP, we compute the fairness index of the

nodes’ transmissions in each experiment. Jain’s fairness index

is computed as follows:

f(y1, y2, ..., yn) =(

n∑i=1

yi)2

nn∑

i=1

y2i

, yi ≥ 0 and

n∑

i=1

yi > 0.

We can see from Figure 5 that the BCTP achieves a much

better fairness than CTP.

0

0.2

0.4

0.6

0.8

1

CTP BCTP

Fairness Index

protocol

Fairness

Fig. 5. This figure compares the fairness index of CTP and BCTP

What we don’t expect is that compared with CTP, BCTP

achieves a reduction of total transmissions by 29.1%. BCTP

allows some nodes to use lossier routes as their alternate

routes. Theoretically, there should be a slight increase of the

total transmissions of the network. To make sure that the

reduction of the total transmissions is not due to packet losses,

we compare the delivery ratio for each node in Figure 7. We

can see that BCTP and CTP achieve similar delivery ratio. So

why does the total transmissions of all nodes reduce?

To answer this question, we record how the average trans-

mission rate of each node changes in the first hour in Figure

8. In the first fifteen minutes, the protocol goes exactly as we

expected. Node 2 and Node 3 are deemed as hot spots and

their load decreases rapidly. This is at the cost of a increased

load in node 5. However, what happens after the first fifteen

minutes is quite beyond our expectation. The figure shows a

general decrease trend of transmissions for the whole network.

Other experiments we conduct report similar trends.

2000

4000

6000

8000

10000

12000

14000

16000

18000

20000

22000

0 1 2 3 4 5 6 7 8

Overall Transmissions

Node

BCTPCTP

Fig. 6. A comparison of the overall transmissions of each node in CTP andBCTP. BCTP achieve a more balanced network load than CTP.

0

0.2

0.4

0.6

0.8

1

0 1 2 3 4 5 6 7 8

Delivery Ratio

Node

BCTPCTP

Fig. 7. This figure describes the delivery ratio of each node in CTP andBCTP. We can see from the figure that the delivery ratio is similar in CTPthan BCTP.

An explanation to this phenomenon is that the original CTP

relies too heavily on its setup period to determine a node’s

routing table. In CTP, the link quality information can be

updated by both data messages and beacon messages. As a

node only receives data messages from its children and sends

data messages to its parents, data messages only guarantee that

a node is sensitive to the change of the link to its parent and

children. The problem is that a node solely relies on beacon

messages to update the link information of its other neighbors.

In the setup period of CTP, each node broadcasts its beacon

messages frequently and a node can get relatively accurate

link quality information of all its neighbors. However as the

beacon interval grows longer, the node is insensitive to the

changes of the links to other nodes and thus its routing table

172172172

Page 7: [IEEE 2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks (MSN) - Beijing, TBD, China (2011.12.16-2011.12.18)] 2011 Seventh International Conference on Mobile

is inaccurate. It may miss a route which is even better than

current one. In BCTP, however, when a hot spot is detected,

a node is required to find an alternate route. The chance is

that it will try several routes, and the data messages it send

will help to adjust the routing table. In the end it may find an

alternate route is even better than the original one.

0

5

10

15

20

25

30

0 10 20 30 40 50 60

Transmissions/30 secs

Time(minutes)

node 1node 2node 3node 4node 5node 6node 7node 8

Fig. 8. This figure displays how the nodes’ average transmission rateschange in the first hour. Each line of the figure represents a node’s averagetransmission rate.

B. Limits

In order to check how BCTP works in harsh conditions,

we set the RF power of CC2420 to 1 and repeat the above

experiments. Figure 9 shows how the average transmission

rate of each node changes in the first hour. We can see that

there are three nodes above the threshold and BCTP did little

to migrate the load of these nodes. We checked the routing

table of all the participated nodes and found that there are

no suitable alternate route for hot spots’ children. This is the

nodes in the network are less connected due to the RF power

constraints. As we have illustrated in pervious sections, only

under the circumstance that one or more alternate routes exist,

can BCTP migrate well the load of the hot spots.

0

5

10

15

20

25

30

35

40

45

50

0 10 20 30 40 50 60

Transmissions/30 secs

Time(minutes)

node 1node 2node 3node 4node 5node 6node 7node 8

Fig. 9. This figure displays how the nodes’ average transmission rates changein the first hour when the RF power is set to 1. The load of node 1, 3 and 6cannot be efficiently migrated.

VI. CONCLUSIONS AND FUTURE WORK

This paper describes the design and implementation of

BCTP, an enhanced version of the CTP protocol, which con-

siders both transmission cost and load balancing. Evaluations

in testbed show that BCTP can significantly decrease the

number of transmissions of the hot spots given that there are

sufficient redundant nodes in the network.

Currently we are still using the beacon scheme of CTP.

However, we feel that the beacon scheme of CTP is flawed in

terms that it cannot loyally reflect a node’s network conditions.

Besides, the threshold for hot spots is set manually in BCTP. In

the future, this threshold should be set automatically according

to the network’s traffic conditions.

VII. ACKNOWLEDGE

This work is partially supported by Natural Science Founda-

tion of China under Grant No. 61070181, the Fundamental Re-

search Funds for the Central Universities No. DUT10ZD110,

and Natural Science Foundation of Liaoning Province under

Grant No. 20102021.

REFERENCES

[1] Y. I.F.Akyildiz, W.Su and E.Cayirci, “Wireless sensor networks: asurvey,” in Computer networks, 2002.

[2] O. Gnawali, R. Fonseca, K. Jamieson, D. Moss, and P. Levis, “Collectiontree protocol,” in SenSys, 2009.

[3] D. S. Couto, D. Aguayo, J. Bicket, and R. Morris, “A high-throughputpath metric for multihop wireless routing,” in MobiCom, 2003.

[4] K. Liu, Q. Ma, X. Zhao, and Y. Liu, “Self-diagnosis for large scalewireless sensor networks,” in IEEE INFOCOM, 2011.

[5] L. Hoesel and P.J.M.Havinga, “A lightweight medium access proto-col(lmac)for wireless sensor networks:,” in SenSys, 2004.

[6] M. H. Alizai, O. Landsiedel, J. A. B. Link, S. Gotz, and K. Wehrle,“Bursty traffic over bursty links,” in SenSys, 2009.

[7] B. Hull, K. Jamieson, and H. Balakrishnan, “Mitigating congestion inwireless sensor networks,” in SynSys, 2004.

[8] C.-Y. Wan, S. B. Eisenman, and A. T. Campbell, “Coda: congestiondetection and avoidance in sensor networks,” in SynSys, 2003.

[9] I. F. A. Yogesh Sankarasubramaniam, Ozgur B. Akan, “Esrt: event-to-sink reliable transport in wireless sensor networks,” in ACM interna-tional symposium on Mobile ad hoc networking & computing, 2003.

[10] S. Rangwala, R. Gummadi, R. Govindan, and K. Psounis, “Interference-aware fair rate control in wireless sensor networks,” in SIGCOMM, 2006.

[11] S. Keshav, An Engineering Approach To Computer Networking.Addison-Wesley Professional, 1997.

[12] A. Ribeiro, G. B. Giannakis, Z.-Q. Luo, Nikolaos, and D. Sidiropoulos,“Modelling and optimization of stochastic routing for wireless multihopnetworks,” in IEEE INFOCOM, 2007.

[13] R. C. Shah and J. M. Rabaey, “Energy aware routing for low energy adhoc sensor networks,” in WCNC, 2002.

[14] K. Sohrabi and J. Pottie, “Protocols for self-organization of a wirelesssensor network,” in Personal Communications, 2000.

[15] C.-Y. Wan, S. B. Eisenman, A. T. Campbell, and J. Crowcroft, “Overloadtraffic management for sensor networks,” in ACM Transactions onSensor Networks, 2007.

[16] R. C. Shah, S. Roy, S. Jain, and W. Brunette, “Data mules: modelingand analysis of a three-tier architecture for sparse sensor networks,” inAd Hoc Networks, 2003.

[17] M. Ma and Y. Yang, “Sencar: an energy-efficient data gathering mech-anism for large-scale multihop sensor networks,” in IEEE Transactionson Parallel and Distributed Systems, 2007.

[18] M. Zhao and Y. Yang, “A framework for mobile data gathering withload balanced clustering and mimo uploading,” in INFOCOM, 2011.

[19] A. Woo, T. Tong, and D. Culler, “Taming the underlying challenges ofreliable multihop routing in sensor networks,” in SenSys, 2003.

[20] A. Ribeiro, N. D.Sidiropoulos, and Georgios.B.Giannakis, “Optimal dis-tributed stochastic routing algorithms for wireless multihop networks,”in IEEE TRANSACTIONS, 2008.

[21] S. Biswas and R. Morris, “Exor: Opportunistic multihop routing forwireless networks,” in SIGCOMM, 2005.

173173173