pw-mac: a predictive-wakeup mac protocol for wireless ...ltang/presentations/pw-mac-slides.pdf ·...
TRANSCRIPT
PW-MAC: A Predictive-Wakeup MAC
Protocol for Wireless Sensor Networks
Lei Tang, Yanjun Sun, Omer Gurewitz, and
David B. Johnson
Presentation at IEEE INFOCOM 2011, April 2011
PW-MAC objectives
2
Minimize energy consumption both at senders
and at receivers while maintaining:
• High packet delivery ratio
• Low delivery latency
Related work: duty cycling
Duty-Cycling MAC protocols:
– Synchronous: e.g., S-MAC, DW-MAC.
– Asynchronous: e.g., B-MAC, PW-MAC, EM-MAC.3
Duty cycle: The percent of time a node is active.
Related work: synchronous protocols
Problems of synchronous protocols:
– Global time synchronization.
– Contention is packed to DATA period.
4
SYNC DATA SLEEP
RTS RTS DATA
Cycle
Related work: asynchronous protocols
Asynchronous
– Nodes wake up asynchronously.
– No global time synchronization.
How does sender rendezvous with receiver?
– Sender-initiated or receiver-initiated.
5Picture from http://www.fleetcouriers.com/blog/
Related work: B-MAC (sender-initiated)
6
S
Send Receive Node awake
Preamble Data
DataR
Time
Problem:
1. Sender has large duty cycle.
2. High channel contention.
wakeup interval
Related work: X-MAC (sender-initiated)
Preamble is replaced by repeating data packets.
Receiver sends an ACK so the sender can stop.
7
S
RDATA
DATADATA DATA
A
A
wakeup interval
Problem:
1. Sender has large duty cycle.
2. High channel contention.
Time
Related work: WiseMAC (sender-initiated)
8
S
shortened preamble P.
P. Data
DataR
Time
Problem:
1. Fixed wakeup interval can cause collisions.
2. Use a fixed clock drift ratio.
fixed wakeup interval fixed wakeup interval
Other problem of these protocols
No efficient retransmission mechanism large duty
cycle and high wireless contention.
9
S1
R
packetpacket packet
S2 packetpacket packet
packet
packet
collidecollide collide collide
Time
S
RSend wake-up beacon
DATA
Wake up to wait for receiver
B
B DATA
Send DATA
Send ACK
A
A
Problem: sender still has large duty cycle
due to idle listening and overhearing.
Related work: RI-MAC (receiver-initiated)
Time
10
Overview of PW-MAC
11
DATA DATASender S1
DATA DATAReceiver R1
High energy efficiency at both senders and receivers.
High packet delivery performance through reducing
collisions and efficient packet retransmission.
DATA DATASender S2
DATA DATAReceiver R2
Time
Predictive Wake-up mechanism of PW-MAC
12
pseudorandom time
R1 wake-up
B B B
pseudorandom
time
R1 wake-up R1 wake-up
time
Next wakeup time = now+ pseudorandom(0.5 interval,
1.5 interval)
pseudorandom time
R2 wake-up
B B
R2 wake-up
timeR2:
R1:
Predictive Wake-up mechanism of PW-MAC
13
Why pseudorandom wakeup?
• Enable sender to predict receiver reduce energy consumption
• Spread traffic to different times mitigate wireless contention
pseudorandom time
R wake-up
B B B
pseudorandom
time
R wake-up R wake-up
timeR:
Predictive Wake-up mechanism of PW-MAC
14
Prediction state obtained by a node S to predict a
node R’s wakeups includes:
• Pseudorandom number generator parameters and
current seed of R.
• The time difference between S and R.
pseudorandom time
R wake-up
B B B
pseudorandom
time
R wake-up R wake-up
timeR:
PW-MAC packet transmission
15
S
R
wake up at predicted time
pseudorandom time
DATAB A
B DATA A
B
Through prediction, sender and receiver wake
up at the same time high energy efficiency.
DATA is
generated
time
The problem of packet retransmission
16
S2
R2
DATA
Existing work: stay awake and repeat the packets.
DATA
DATA DATA
S1
R1
DATA
DATA
DATA
Large duty cycle and high channel contention.
time
DATA
DATA
DATA
PW-MAC: prediction-based retransmission
17
go to sleep
DATAB A
B DATA AS
R DATAB
B DATA
retransmit at the next
predicted receiver wake-up time
failure
Retransmit packets with high energy
efficiency and low wireless contention.
time
Outline
1. PW-MAC
1.1 Predictive Wake-up MAC (PW-MAC)
1.2 Prediction-based retransmission
1.3 On-demand prediction error control
18
Prediction error on a pair of MICAz motes
19
Small clock drift ratio
Prediction error on another pair of MICAz motes
20
Much larger clock drift ratio
PW-MAC: on-demand prediction error control
21
DATAB A
B DATA AS
R
Wakeup advance time
Prediction error: the difference between
predicted and actual wakeup time.
time
Use a wakeup advance time to compensate
prediction error.
PW-MAC: on-demand prediction error control
22
DATAB A
B DATA AS
R
Detect prediction error
Request current
prediction state
Update
prediction state
Send prediction state
time
Ensure prediction error to be
within sender wakeup window
23
PW-MAC effectively controls the prediction error
to be ≤ wake-up-advance time
Low cost: average 1 update per 1400 seconds
Advantages:
Effective
Low cost: average 1 update per 1800 seconds
PW-MAC: on-demand prediction error control
24
DATAB A
B DATA AS
R
Detect prediction error
Request current
prediction state
Update
prediction state
Send prediction state
time
Hidden terminal experiment
25
Two MICAz senders are hidden to each other
With WiseMAC, two senders’ repeated
retransmissions cause persistent collisions.
Experiment of wake-up schedule conflicts
26
Two receivers have the same first wake-up time.
S1
S2
R1
R2
Pseudorandom wakeup scheduling of PW-MAC
avoids persistent wakeup collisions.
Multihop network performance
27
A testbed of 15 MICAz motes.
Up to 3 multihop traffic flows.
Sender duty cycle
28
PW-MAC has the smallest duty cycle
Packet delivery latency
29
PW-MAC achieved lowest latency
Packet delivery ratio (PDR)
30
Packet Delivery Ratio (PDR)
PW-MAC achieved 100% PDR
Conclusions
Predictive-wakeup mechanism:
– High energy efficiency at both senders and
receivers.
– Low channel contention.
Prediction-based retransmission mechanism.
On-demand prediction error control.
PW-MAC outperformed other tested single-channel
protocols on a testbed of MICAz motes.
31