Adaptive Routing for Multihop IEEE 802.15.6 Wireless ... - IEEE Xplore

2 downloads 0 Views 162KB Size Report
Kingdom of Bahrain. E-mail: [email protected]. Abstract—Wireless Body Area Networks (BANs) have the ability of gathering and sending on-body ...
Adaptive Routing for Multihop IEEE 802.15.6 Wireless Body Area Networks Antonio M. Ortiz*, Nedal Ababneh*‡, Nicholas Timmons* and Jim Morrison* *WiSAR Lab, School of Engineering, Letterkenny Institute of Technology Port Road, Letterkenny, Ireland E-mail: {antonio, nick, jim}@wisar.org ‡Dept. of Computer Engineering, College of Information Technology, University of Bahrain Kingdom of Bahrain E-mail: [email protected]

Abstract—Wireless Body Area Networks (BANs) have the ability of gathering and sending on-body measurements to a terminal. Autonomous nodes are deployed on the body to monitor vital signs and environmental parameters. The IEEE 802.15.6 standard mainly specifies physical and medium access for BANs. Routing is discussed as part of the link layer and multihop is not fully considered. Several studies state that multihop for BANs improves the network performance by reducing energy consumption and, thus, extending network lifetime. This work presents the Adaptive Multihop tree-based Routing (AMR) protocol that is extensively evaluated in a real testbed deployment. Fuzzy logic is proposed to evaluate several node and network parameters in order to improve network performance in terms of throughput and energy consumption. Experimental results show that the effective parameter combination when using fuzzy logic is able to extend network lifetime by balancing out energy consumption throughout network nodes.

Keywords: Body Area Networks, Routing, Multihop, Fuzzy Logic, Real Testbed. I. I NTRODUCTION Body Area Networks (BANs) are composed of miniaturized sensor nodes that are used to stream vital signs from frontend sensor nodes and send them through short-range links to a central node (i.e., sink), which can process received data or forward it to a specialist through the Internet [1]. Each sensor is capable of sampling, processing and communicating one or more vital signs such as heart rate, blood pressure, electrocardiogram and blood oxygen levels as well as environmental data such as light, location and temperature. BANs are particularly useful for monitoring elderly people, postoperative care in hospitals or treatment of the chronically ill aged persons at home. Other uses for BANs range from video games to military applications and, in general, any application that necessitates continuous monitoring of human’s physiological activities and actions. BAN’s physical and medium access layers are covered in the recently standardized IEEE 802.15.6 [2]. Given the relatively small area over which the nodes are deployed, a star architecture, where nodes are directly connected to a central coordinator, is typically assumed for BANs. However, the star solution is not adequate, specially for BANs operating

in dynamic and time-varying environments [3]. The main alternatives to star are multihop architectures such as tree, mesh or cluster, where nodes have a choice to communicate data directly to the sink or through other relay nodes in multihop fashion. This can provide robustness to adverse environmental conditions as well as it reduces the power needed to transmit data packets. Numerous routing protocols for traditional Wireless Sensor Networks (WSNs) have been previously proposed in the literature [4] with special attention to energy efficiency [5]. These studies mainly focus on how to allocate limited energy, radio bandwidth and other resources to maximize each node’s contribution in the network. However, these protocol cannot be directly implemented in BANs due to their unique characteristics. Recently, several protocols have been proposed in the area of routing in BANs [6], mostly validated through simulation or theoretical analysis. These protocols deal with limitations and unique characteristics of BANs such as short communication range, irregular traffic patterns and limited energy. Nodes composing BAN are usually battery powered, thus energy consumption is a hard constraint in this kind of networks. To deal with this limitation, physical devices, medium access and routing protocols as well as applications should consider energy saving in order to extend network lifetime as longer as possible. If the sensor nodes consume their energy more evenly, the connectivity between them and the sink can be maintained for a longer time, thus postponing network partition due to node failure. Most of the existing energy-aware routing protocols select a static optimal path to the sink to scarcely minimize energy consumption. This causes an unbalanced distribution of residual energy among sensor nodes due to the energy available at the nodes on the optimal path being quickly drained off. This unbalanced energy consumption is definitely undesirable for the long-term network operation, since it reduces the network lifetime and causes network disconnection [7]. In this paper, we propose an Adaptive Multihop Routing protocol, termed AMR, a simple but, yet, efficient approach to provide multihop tree-based routing in BANs. Fuzzy logic is used to combine three different routing metrics: hop-count, Received Signal Strength Indicator (RSSI) and residual energy.

Algorithm 1 AMR tree constuction ⊲Adaptive Multihop Routing (AMR) tree construction protocol for BAN

1 U ← {vs }, E ′ ← ∅ 2 Select the lowest cost edge e = {i, j} ∈ E such that i ∈ U and j ∈ V \U 3 E ′ ← E ′ ∪ {e}, U ← U ∪ {j} 4 if U = V then finish 5 else go to line 2 6 output: M = (V, E ′ )

We implemented our proposal in real motes (i.e., TelosB based [8]), results confirm the efficiency of our solution in terms of energy consumption, throughput and routing overhead. The rest of this paper is organized as follows. Section II details the proposed multihop routing protocol. Experimental setup and result analysis are presented in Sec. III. Finally, Sec. IV concludes this paper. II. P ROTOCOL D ESCRIPTION In this section, the design and implementation of AMR is detailed. A. Network Model and Routing Tree Construction A BAN can be modeled as undirected graph G = (V, E), called a connectivity graph, where V is the set of vertices representing the nodes in the network and E is the set of edges that represents the communication network topology, an edge (vi , vj ) ∈ E iff vi ,vj are within each other communication range. The sink node is defined as vs . The resulting multihop routing tree constructed by AMR, M = (V, E ′ ) is a Spanning Tree such that all vertices in G are included, E ′ ∈ E, represents the subset of edges that are included in the tree depending on the metric used. The operation of the protocol follows the Prim’s approach for Spanning Tree construction [9], as illustrated in Alg. 1. After adding the sink node to the tree, edges are iteratively selected in breadth first search based on the adopted parent selection (i.e., routing) metric until all nodes have been added. In order to implement ARM to be executed by network nodes, the following messages are used: • HELLO: this message triggers the discovery process. Upon receiving this message, nodes start the parent selection process. • JOIN: when selecting a parent node, say node b, a node, say node a, sends a JOIN request to the candidate parent b. The node b will send back an ACCEPT message to node a. • ACCEPT: parent-child associations are acknowledged in order to ensure child nodes successful association and routing tables are updated. • LEAVE: a node having selected a parent may have to change it due to low residual energy. Nodes will consider the residual energy, and time to die will be estimated. If this time to die is lower than a prefixed threshold (i.e., the energy needed to finish the current round), nodes having a parent without enough residual energy to finish

the current round, will send a DEL message (i.e., leave request) and will select as parent any other node with enough residual energy to finish the current round. • DATA: after selecting and associating to a parent, nodes can start sending data packets that include body measurements. The operation of AMR can be divided into two phases, considering nodes inside and outside the sink coverage. First, the sink node broadcasts a HELLO message, and nodes receiving this message send a JOIN message to the sink in order to associate themselves. The sink node will acknowledge these nodes by sending (unicast) an ACCEPT message. Upon receiving the ACCEPT message, nodes update their routing tables and broadcast a HELLO message. Nodes outside the sink coverage will eventually receive a HELLO message and wait for time twait to receive HELLO messages from other neighbor nodes. After twait , nodes select their parents based on the selected metric. When a parent is selected, a JOIN message is sent, and if no ACCEPT is received from the selected parent, the JOIN message is resent. After receiving the ACCEPT from the selected parent, nodes send a HELLO message and are ready to send/relay DATA packets. In case of a parent node p not having enough residual energy to finish the current round, if it has any child c already associated to p, c sends a LEAVE message to p and selects another parent node with enough residual energy. B. Routing Metrics ARM can adapt to several metrics, allowing the selection of the most convenient one based on the application needs and network requirements. In this work, we study the network performance using hop-count (i.e., Shortest Path Tree, SPT), RSSI and battery level. We further use fuzzy logic to combine the three metrics similarly to our previous work in [10]. Shortest Path Tree (SPT): in a tree-based network, the SPT is represented by that tree in which all nodes have the lowest number of hops (i.e., hop-count) to the sink node. This metric is directly related to end-to-end delay, but node overload in relaying nodes supporting a high number of child nodes may cause data loss and network connectivity failures. Received Signal Strength Indicator (RSSI): the use of high RSSI links ensures the correct communication between nodes in the network, since it ensures data delivery in one-hop communications. Selecting the best RSSI link at each hop, the network ensures that data coming from all nodes is correctly delivered to the sink node. Residual Energy (Battery): in resource constrained BANs, the residual battery energy should be considered in order to maximize battery and node lifetime. Energy consumption must be balanced across the network to ensure graceful degradation and maximum network lifetime. Fuzzy Logic: it is a decision approach that enables the efficient combination of different parameters that can be used as a single metric [11]. It uses human language to define parameter values and their relationships. A Fuzzy Logic System (FLS) is a nonlinear mapping of an input data vector into a scalar output. A typical FLS, widely used in fuzzy logic controllers

near near near medium medium medium far far far

R ESIDUAL E NERGY low medium high bad bad median bad median good median good good bad bad bad bad median median median median good bad bad bad bad median median median median median

RSSI poor average good poor average good poor average good

label1

membership degree

N UMBER OF HOPS

X0

label3

label2

X1

X2

X3

X4

Figure 1: Membership function example used to define input and output fuzzy sets.

Table I: Fuzzy rule set.

is composed of fuzzifier, fuzzy rules, inference engine and defuzzifier. The operation of a FLS can be summarized as follows: crisp data are fuzzified and converted into fuzzy values. These fuzzy values are evaluated by the inference engine by considering a set of rules that relates input and output variables. The output value obtained in the previous step is then defuzzified, providing a numerical value that can be used as a metric by the external system. The computational requirements of a FLS are usually lower than conventional mathematical operation such as arithmetic operations [12]. This fact makes fuzzy logic suitable to be executed in the resource constrained nodes that compose BANs, providing an efficient method for parameter evaluation. The variables considered in this work are as follows: • Number of hops: represents how many times a packet has to be forwarded to reach the destination node. It is directly related to end to end delay and energy consumption. • Residual energy: since nodes are usually battery powered, this parameter must be considered in order to preserve available energy and to extend lifetime as longer as possible. • RSSI: the quality of the received signal is crucial to ensure correct data reception, so nodes with higher RSSI will be preferred. These parameters are the most representative for the problem addressed herein, and their combination through fuzzy logic (i.e., output) will provide a numerical value that will be used as a metric by the network discovery and tree construction protocol. Other parameters such as node degree, number of children, node priority, etc., have not been included due to they are not relevant for our application, but could be easily included in the system if necessary. Input parameters are characterized into a set of linguistic values: Number of hops ⊂ {near, medium, far}, Residual Energy ⊂ {low, medium, high}, RSSI ⊂ {poor, average, good} , and Output ⊂ {bad, median, good}. Linguistic input values are related to output values following the rules defined in Table I, that represents rules such as: IF Number of hops is medium AND Residual energy is high AND RSSI is good THEN Output is good. An illustrative example of the membership functions for the input and output parameters used in our FLS is given in Fig. 1. For example, considering number of hops, label1 corresponds to near, label2 to medium and label3 to f ar. The values X0 to X4 have been adjusted according to each input variable, for

example, for residual energy, X0 = 0%, X1 = 25%, X2 = 50%, X3 = 75%, and X4 = 100%, considering 100% when node batteries are fully charged. III. E XPERIMENTAL E VALUATION In order to analyze the performance of the AMR protocol, we have deployed an experimental testbed composed of 14 TelosB based nodes. The experiments have been executed in rounds. For each round, AMR is executed, and each node sends 100 DATA packets (1 packet per second). DATA packet size is 32 bytes and CSMA/CA has been used in the link layer to avoid collisions. We have analyzed the performance for the 4 different metrics detailed in Sec. II: fuzzy logic, hop-count (i.e., SPT), RSSI and battery. Varying sink location (node #0 and node #13 in Fig. 2), we are interested in evaluating network lifetime, Packet Delivery Ratio (PDR), nodes residual energy and number of transmissions per delivered data packet. A. Results and Discussion Results are presented for the experiments detailed above. Figure 3 shows the network lifetime for the four proposed metrics, and for the two sink locations. Nodes are considered dead after consuming 2 J energy. When the sink is located at the waist, fuzzy logic obtains the longest network lifetime. This is because the parameter combination carried out by fuzzy logic enables network load balancing, distributing network load among all network nodes. On the other hand, battery metric obtains the shortest network lifetime due to many nodes selecting the highest remaining energy node as parent and, consequently, this node quickly runs out of energy. In the case of the sink located at the ankle, longer paths must be created, overloading nodes closer to the sink and these nodes deplete their batteries more quickly. Even so, fuzzy logic is able to better balance the network load, achieving longer network lifetime than the other metrics. Figure 4 shows per node Packet Delivery Ratio (PDR). It is worth to note that when the sink is located at the waist, the PDR is remarkably higher. This is because shorter paths are needed and less retransmissions must be done, so reducing the risk of collisions and data loss. Considering the different metrics, fuzzy logic obtains a better overall behavior in terms of PDR than SPT, RSSI and battery, due to the created data paths when using fuzzy logic metric are more robust. Results for battery metric show the worst results in terms of PDR, since longer paths or low quality links are used in this case,

%"

%"

&"

$"

$"

'"

#"

)"

*"

%"

'"

#"

'"

#"

)"

*" +"

&"

$" ("

)"

!"

&"

$" ("

*" +"

%"

'"

#"

)"

!"

&"

$" ("

*" +"

%"

'"

#"

("

!"

&"

("

)"

*" +"

!"

+"

!"

!*"

!!"

!*"

!!"

!*"

!!"

!*"

!!"

!*"

!!"

!#"

!$"

!#"

!$"

!#"

!$"

!#"

!$"

!#"

!$"

!

!

(a)

!

(b)

!

(c)

!

(d)

(e)

#!!!" +!!" *!!" )!!" (!!" '!!" &!!" %!!" $!!" #!!" !"

($ !"#$%&'(%)*+%,-',"./'

!"#$%&'()*+",-"(./0(

Figure 2: Example of BAN routing tree construction based on (b) fuzzy logic, (c) SPT, (d) RSSI and (e) battery. Sink (i.e., node #0) is located at the waist, solid lines indicates communication links, and (a) presents node positions on the body and original communication graph. When considering sink at the waist, node #0 and node #13 have been swapped.

!"'%$ !"'$ !"&%$ !"&$ !"#%$ !"#$ ($

,-../01234"

567"

8559"

53?@";A"B;3CA"

53?@";A";?@D="

)$

*$

+$

%$

,$

-.//012345$

&$

'$

(!$ (($ ()$ (*$

678$

966:$

;?0$

(a) Sink at waist

Figure 3: Network lifetime for each metric. Nodes are considered dead after consuming 2 J energy, and network lifetime is measured as the time until the first node to die.

($ !"#$%&'(%)*+%,-',"./'

so optimizing path energy consumption, but not ensuring data delivery. Thanks to the experimental testbed used, we have been able to precisely measure nodes energy consumption when considering different metrics. Figure 5 illustrates the normalized residual energy for all metrics. Fuzzy logic obtains the best overall results by maintaining a higher value of residual energy for most of the network nodes, confirming the achieved load balance. On the other hand, other metrics such as hopcount and RSSI do nothing to balance out network load, thus relaying nodes will drain their battery energy faster than other nodes in the network causing network partition. For example, when the sink node is located at ankle, most of the network traffic has to be relayed by nodes 10 and 11, fuzzy logic and battery metrics are able to balance out the network load and keep both nodes with around the same residual energy level, while SPT and RSSI exhaust node 10, making it to rapidly decrease its residual energy level.

#$ 0/(%'12'

:;/"

!"'%$ !"'$ !"&%$ !"&$ !"#%$ !"#$ ($

)$

*$

+$

%$

,$

#$

&$

'$

(!$ (($ ()$ (*$

0/(%'12' -.//012345$

678$

966:$

;?0$

(b) Sink at ankle

Figure 4: Per node Packet Delivery Ratio (PDR) after 10 rounds, each node sends 100 packets per round.

Routing overhead is directly related to energy consumption. Figure 6 shows the average number of transmissions per delivered data packet after 10 rounds for all metrics. SPT obtains the lowest number of transmissions per delivered packet, as packets are forwarded through shortest paths.

!"#$%&'()*+#),'*-%&+).)#/0+

)""#

IV. C ONCLUSIONS

("#

The standard IEEE 802.15.6 defines physical and link layers for BAN, however, multihop routing is not fully discussed. This paper proposes AMR, an Adaptive network discovery and Multihop Routing tree construction protocol for BANs. AMR is a distributed Spanning Tree-based approach that takes into account several metrics in selecting routing paths to the sink, namely: number of hops, RSSI and battery level. To this end, fuzzy logic is used for efficient metrics combination. The protocol has been evaluated using a 14 TelosB based node testbed and its performance has been compared to other well known metrics such as SPT, RSSI and battery. Experimental evaluation has shown the efficiency of AMR in terms of network lifetime, load balancing and number of transmissions per delivered packet.

'"# &"# %"# $"# !"# )#

*#

+#

!#

$#

%#

&#

'#

(#

)"#

))# )*#

)+#

!"*)+12+ ,-../01234#

567#

8559#

:;/#

!"#$%&'()*+#),'*-%&+).)#/0+

(a) Sink at waist )""# ("# '"#

ACKNOWLEDGEMENT

&"#

The work described in this paper is carried out under the auspices of Enterprise Ireland Applied Research Enhancement (ARE).

%"# $"# !"# )#

*#

+#

!#

$#

%#

&#

'#

(#

)"#

))# )*#

)+#

R EFERENCES

!"*)+12+ ,-../01234#

567#

8559#

:;/#

(b) Sink at ankle

!"#$%&'()'*+',%&'-%./0%&%-'-121',134%2'

Figure 5: Residual energy distribution of nodes after 10 rounds execution. (" '#$" '" &#$" &" %#$" %" !#$" !" )*++,-./01"

234" 20"

5226"

789:;,"

20