An Adaptive Link Layer for Range Diversity in Multi-radio Mobile Sensor Networks

advertisement
An Adaptive Link Layer for
Range Diversity in
Multi-radio Mobile Sensor
Networks
Jeremy Gummeson
Deepak Ganesan
Mark D. Corner
Prashant Shenoy
UMass Computer Science Department
Mobile Sensor Networks
 Mobile entities equipped with sensors, radios
 Exchange data with peer mobile nodes, infrastructure
basestation
 High-power long-range Radio maximizes communication
opportunities, but expensive at short-range
 Mobility Patterns difficult to predict
 Tracking applications require small form factor
UMass Computer Science Department
2
A Spectrum of Radio Choices
 Existing radios optimized for short or long range:
• Long Range, Low bit rate, Low Energy Efficiency
• Short Range, High bit rate, Higher Energy Efficiency
 Designer chooses efficiency or range
Common Small Form Factor Radios
Radio
Bandwidth
Energy/bit
Range
CC2420
250 kbps
208nJ/bit
80m
802.11b
11Mbps
120nJ/bit
100m
XE1205
38.1kbps
5276nJ/bit
800m
Xtend
9.6kbps
380.2uJ/bit
2-3km
UMass Computer Science Department
3
Approach
 Design a node with heterogeneous radios to exploit short range
efficiency and long range connectivity
 Use unified link layer to manage radios and react to channel and
mobility dynamics
UMass Computer Science Department
4
Contributions
Our System makes the following contributions to Mobile MultiRadio Sensors Research:
1. Arthropod: A low-power, multi-radio sensor platform
2. A machine-learning Algorithm that uses link-layer
statistics to select between radio interfaces
3. A multi-radio switching protocol that provides robust
transitions and manages radio state
UMass Computer Science Department
5
Outline





Motivation
System Design
Implementation
Results
Conclusions
UMass Computer Science Department
6
Arthropod: A Multi-Radio Sensor Platform

Hardware platform consists of: MSP430 MCU, CC2420 radio, and
XE1205 radio:
• Expansion board provides existing platform Tinynode with
CC2420 radio
• Board connects CC2420 to unused SPI bus and GPIO pins.
Existing TinyOS-2.x drivers modified for use with new
hardware
Application
Unified Link Layer
Hardware Prototype
UMass Computer Science Department
CC2420 MAC
XE1205 MAC
CC2420 Radio
XE1205 Radio
System Block Diagram
7
Utilizing Multiple Radios
 Problem: Need to determine energy-optimal radio at given
time
 Approach: Unified link-layer presents multiple radios as
one entity
 Two subcomponents:
• Q-Learning Algorithm: Observe MAC retransmissions,
learn/choose optimal radio interface
• Switching Protocol: Manage radio power states, coordinate
handoffs
Send
Receive
Switching
Protocol
Q-Learning
Algorithm
CC2420
MAC
XE1205
MAC
UMass Computer Science Department
decision
CC2420
MAC
XE1205
MAC
8
Q-Learning




Goal: Choose action a, arrive in state with maximal Q value
In multi-radio context, Q represents learned energy needed to send
packet on given interface at particular power-level
a represents decision to send packet using particular interface/power
combination
After transmission, receive reward r, where i represents retransmissions:
r[i] = -(i*PacketSize*ByteTime*TxPower + AckTimeOut*RxPower) +
RxPower*AckRTT + PacketSize*ByteTime*TxPower


r used to update Q using simple rule with fixed parameters
Periodically explore alternate interface/power-levels by choosing random
action a; allows transitions when conditions improve
UMass Computer Science Department
9
Multi-Radio Switching Protocol


Q-Learning finds optimal interface/power level, need handoff between radios
non-trivial problem: radio transitions occur during periods of high loss

Need to handle:
•
•

State synchronization problems between sender and receiver
Graceful disconnections
Solution:
•
•
Embed control flags that negotiate handoffs
Handoff state temporarily powers both radio receivers; Minimize time spent
during handoff to minimize overhead
UMass Computer Science Department
10
Switching Protocol Description

Sending node drives state transitions at receiver:
1. Asserting EXPLORE flag in sent packet causes both radio interfaces to
become active until timeout
2. Consecutive packets may be sent on either interface; continuously
asserting EXPLORE will keep both interfaces active
3. Alternatively, the next packet may be sent with HIGH_ON or LOW_ON flag
asserted to commit receiver to one particular interface
4. Two consecutive timeouts force receiver into Low Power Listen (LPL) on
long range interface; may proactively enter LPL by asserting END_BLOCK
EXPLORE
|| Timeout
Low On
EXPLORE
Handoff
LOW_ON
High On
HIGH_ON
|| Timeout
Idle
UMass Computer Science Department
11
Evaluation Methodology
1. Trace-driven simulations using real datasets:
Environment
Mobility Pattern
Example Scenario
urban-indoor
Continuous w/
obstruction
People moving in a
building
urban-outdoor
Continuous; Partial Line
of Sight
Moving vehicle
urban-outdoor
Nomadic
Bus w/ stops
foliage
Nomadic
Animals visiting habitat
2. Results from software implementation:
• Show performance of link layer software implementation
• Validate simulated link layer performance for indoor
continuous dataset
UMass Computer Science Department
12
Trace Driven Simulation Results
Per Packet Energy Consumption
Fraction of Lost Packets
 Multi-Radio approach improves per packet energy consumption while only
marginally increasing packet loss
UMass Computer Science Department
13
Multi-Radio Power Control Results
 Additional simulation looks at power control across radios:
• Data set uses max/min Tx power settings on each radio
Summary of results for each power level
Cumulative Energy Consumption for Single and
Multi-power level strategies
Radio/power
level
% packets
lost
Energy
Consumed
XE1205
@0dBm
4.24
.659mJ/Tx
Success
XE1205
@15dBm
0
.925 mJ/Tx
Success
CC2420
@-25dBm
37.01
1.1mJ/Tx
Success
CC2420
@0dBm
35.45
1.2 mJ/Tx
Success
Q-Learning
3.53
.430 mJ/Tx
Success
 Unified Link Layer successfully tracks energy-minimal radio/power setting
UMass Computer Science Department
14
Implementation Loss Rates and Energy/Packet


TinyOS-2.x software implementation for Arthropod shows algorithm running
online; measures performance of radio switching protocol
Recreate mobility pattern of indoor continuous trace; implementation results
compared to single radio performance from indoor continuous
Summary of Implementation Results
Trace Type
XE1205
Utilization
CC2420
Utilization
Packets Lost
Energy
Consumed
Multi-Radio
Implementation
28.97%
71.03%
3.95%
.48mJ / Tx
Success
XE1205@15dBm
100%
0
.6%
1.0mJ / Tx
Success
CC2420@0dBm
O%
100%
43.0%
1.6mJ / Tx
Success
 Multi-Radio implementation loses more packets, consumes substantially less energy
UMass Computer Science Department
15
Breakdown of Receiver Energy Costs
Energy Spent during different Rx States
 Multi-Radio approach uses significantly less power than an XE1205 only
implementation; Loss rate comparable to the CC2420
UMass Computer Science Department
16
Conclusions


Showed hardware implementation of multi-radio sensor node
Arthropod
Designed and tested a unified link layer for multi-radio hardware:
•
•

Uses learning algorithm and MAC statistics to select radio interace
Implemented switching protocol to handoff between radios
Evaluated link-layer via trace driven simulation and algorithm
running online:
•
Considerably more energy efficient for different mobility patterns,
while only marginally increasing losses
UMass Computer Science Department
17
Related Work
Existing Multi-Radio Systems:
Separate Radio Roles:
•
•
Wake-On-Wireless: low-power, low-bandwidth radio wakes up high-power,
high-band-width radio (Agarwal, 2007)
DieselNet Throwboxes: Long-range radio maximizes utility of short-range,
high-bandwidth radio in a mobile scenario (Banerjee, 2007)
Dynamic Radio Selection:
•
•
Mobile Access Router: Use heterogeneous radios to maximize bandwidth
and minimize stalled transfers; neglects energy (Rodriguez, 2004)
Coolspots: Use Bluetooth for communication when available, otherwise
uses 802.11 (Pering, 2006)
Mesh Networking:
•
MR-LQSR: Use Multiple Radios per mesh node, makes channel assignment
more effective (Draves, 2004)
UMass Computer Science Department
18
Thank You
Questions?
UMass Computer Science Department
19
Sender State Machine




States represent sender’s view of the receiver
Intermediate handoff state used to activate alt. radio
Transition out of IDLE requires wakeup packet
Receiver -> Both radios active during handoff
UMass Computer Science Department
20
Receiver State Machine




Used to manage radio receiver power states
Flags used to coordinate handoff between radios
Two Consecutive Timeouts result in transition to IDLE state
May proactively switch to IDLE state at end of block
transfer
UMass Computer Science Department
21
Research Contributions
 A prototype low-power multi-radio hardware
system
 Develop low-overhead techniques for
dynamically switching between radio interfaces
 Evaluation methodologies for showing energy
performance benefits of multi-radio systems
UMass Computer Science Department
22
Current Strategies
Communication is Expensive!
Active Power
Consumption (mW)
Sleep Mode Power
Consumption (mW)
CC2420 Radio
59.1 (Rx)
.02
XE1205 Radio
65.4 (Rx)
.03
MSP430 MCU
3
.015
 Use communication resources intelligently:
• Minimize radio time spent in active mode
• Send data when channel conditions are “good”
UMass Computer Science Department
23
Q-Learning

Q-Learning is a reinforcement-learning technique used for decisionmaking by agents in an unknown environment:
• A Matrix Q contains the accumulated reward by an agent in a given
state
• The agent has several choices of action and chooses the action a such
that the Q-value of the arrival state is maximized.
• After Taking action a, the agent receives a reward r and adjusts Q
with an update rule defined by parameters α and γ
• The agent will also periodically take a random action, ε, which allows
unexplored state to be reached
Formal definition of Q-Learning
UMass Computer Science Department
24
More Q-Learning
 In the context of a multi-radio system:
•
•
•
•
•
Each state S is an individual radio/power-level combination
An action a corresponds to sending a packet over a given radio
interface.
Reward r corresponds to the negative energy used for sending the
packet. The amount of energy used is defined by a combination of
radio hardware characteristics and channel dynamics.
Q represents cumulative energy consumption across multiple
transmission attempts. α and γ are used to control how quickly Q is
updated as well as limiting the reward value r for staying in a given
state.
ε defines when the alternate radio interface should be explored. In a
multi-radio scenario, it does not make sense to take a random action
UMass Computer Science Department
25
Defining reward value r
The success of the Q-Learning algorithm depends heavily on r:
r is defined as energy required to send a packet. Energy is calculated
via MAC layer statistics
• The following equation shows how a reward is calculated, where i is
the number of packet retransmissions:
r[i] = -(i*PacketSize*ByteTime*TxPower + AckTimeOut*RxPower) +
RxPower*AckRTT + PacketSize*ByteTime*TxPower
• A radio-agnostic quantity, energy, allows head-to-head comparison of
performance across radios. Maximizing Q is synonymous with
minimizing energy
• Congestion backoffs also contribute to power consumption, but not in
practice
•
UMass Computer Science Department
26
Download