a sender-initiated mac: sender triggers communications by transmitting a data
DESCRIPTION
Design and Evaluation of a Versatile and Efficient Receiver-Initiated Link Layer for Low-Power Wireless Prabal Dutta, Stephen Dawson-Haggerty, Yin Chen, Chieh-Jan (Mike) Liang, and Andreas Terzis Sensys’10 at ETH Zurich. - PowerPoint PPT PresentationTRANSCRIPT
Design and Evaluation of a Versatile and Efficient Receiver-Initiated Link Layer for Low-Power
Wireless
Prabal Dutta, Stephen Dawson-Haggerty, Yin Chen,Chieh-Jan (Mike) Liang, and Andreas Terzis
Sensys’10 at ETH Zurich
2
A sender-initiated MAC:Sender triggers communications by transmitting a data
Receiver
Sender Listen D
DListen
3
Low-power listening (LPL) with a sender-initiated MAC
Preamble DSender
Receiver D
Tlisten Noise
Overhearing/noise adds significant unpredictability to node lifetime
4
A receiver-initiated MAC:Receiver triggers exchange by transmitting a probe
Receiver
Sender PListen D
P D
5
Low-power, receiver-initiated servicesoffer many benefits over sender-initiated ones
• Handle hidden terminals better than sender-initiated ones
• Support asynchronous communication w/o long-preambles
• Support extremely low duty cycles or high data rates
• Support many low-power services– Wakeup (“LPP”, Musaloiu-E. et al., IPSN’08)– Discovery (“Disco”, Dutta et al., Sensys’08)– Unicast (“RI-MAC”, Sun et al., Sensys’08)– Broadcast (“ADB”, Sun et al., Sensys’09) – Pollcast (“Pollcast”, Demirbas et al., INFOCOM’08) – Anycast (“Backcast”, Dutta et al., HotNets’08)
6
Low-power, receiver-initiated MACs face a number of drawbacks as well
• Probe (LPP) is more expensive than channel sample (LPL)Baseline power is higher
• Frequent probe transmissionsCould congest channel & increase latencyCould disrupt ongoing communicationsChannel usage scales with node density rather than
traffic
• Services use incompatible probe semanticsMakes concurrent use of services difficultSupporting multiple, incompatible probes increases
power
7
The probe incompatibility mess
• Probes use hardware acknowledgements• Probes do not use hardware
acknowledgements• Probes include only receiver-specific data• Probes include sender-specific data too• Probes include contention windows• Probes do not include contention windows
Pollcast
RI-MACLPP
Backcast
Is it possible to design a general-purpose,
yet efficient, receiver-initiated link layer?
8
Most consequential decision a low-power MAC makes:stay awake or go to sleep?
Preamble DTX
RX D
Tlisten Noise
TX
RX
P
P
DATA
DATA
Listen
Sender-Initiated: Channel Sampling
Receiver-Initiated: Channel Probing
P
9
10
Asynchronous network wakeup
P DNode 2
Node 3
Node 4
P DNode 1
5
2
3
4
1
Node 5
Listen
Listen P D Listen P D Listen
P D Listen
Listen
P D
P D
Listen P D
P
P
D
D
frame collisionPFN?PFP?
11
Wait, not so fast! Node 5 might receive a response
• Power capture: One response has a sufficiently higher power than the sum of the others…and it arrives first
• Delay capture: One response frame arrives some time before the remaining ones…and its power is higher than the sum of the others
• Message-in-Message capture: Like power capture, but the highest power frame arrives in the middle of another frame transmission and radio detects elevated energy…and the radio does continuous preamble detection
• These are a lot of caveats…
12
Solving the synchronization problem with Backcast
• A link-layer frame exchange in which:– A single radio PROBE frame transmission– Triggers zero or more identical ACK frames– Transmitted with tight timing tolerance– So there is minimum inter-symbol interference– And ACKs collide non-destructively at the receiver
P ATX
RXP A
P ATXYou sh
ould b
e skeptic
al that t
his id
ea mig
ht work
P. Dutta, R. Musaloiu-E., I. Stoica, A. Terzis, “Wireless ACK Collisions Not Considered Harmful”,HotNets-VII, October, 2008, Alberta, BC, Canada
13
Outline
• Introduction• Motivation• What is A-MAC?
– Protocol overview– Synchronization using Backcast– Contention using binary exponential backoff– Communications using multichannel transfers
• How is it used?• How well does it work?• How much does it cost?• What are its limitations?
14
A-MAC: An 802.15.4 receiver-initiated link layer
P ASender
Receiver P A
DATA
DATA
Max data packet
4.256 ms
ACK transmission time 352 µs
RXTX turnaround time: 192 µs
P
P
Listen
15
A-MAC’s contention mechanism
Receiver
Sender
Sender P AListen D P-CW
P AListen D P-CW
P A D P-CW D
BO
D
frame collision
Backcast
16
A-MAC’s parallel multichannel data transfersuse control, data (1), and data (2) channels
P ASender 1
Receiver 1 P A
DATA
DATA
P
P
Listen
P ASender 2
Receiver 2 P A
DATA
DATA
P
P
Listen
17
Outline
• Introduction• Motivation• What is A-MAC?• How is it used? [Lacking hardware support]
– Unicast– Broadcast– Pollcast– Wakeup
• How well does it work?• How much does it cost?• What are its limitations?
18
Unicast
P ANode 2
(Receiver)
Node 3(Sender)
P ANode 1(Sender)
Listen
DDST=0x8002SRC=0x0002
D P
P L
MAC=0x8002
P AListen D P-CW
MAC=0x8002
P AListen D P-CWMAC=0x8002
P A D P-CW D
BO
D
DST=0x8002SRC=0x0002ACK=0x0023FRM=0x0001
DST=0x0002SRC=0x0001SEQ=0x23
frame collision
Backcast
19
Broadcast
TX 1
RX 2
RX 3
RX 4
Listen P A Listen P A Listen
P A
P A
Backcast
auto-ack=onaddr-recog=off
D
D
P
P
D
D
P
P
P A D P
P A D P
DST=0x8002SRC=0x0002
DST=0x8002SRC=0x0002ACK=0x0023FRM=0x0001
DST=0x0002SRC=0x0001SEQ=0x23
offoff
onoff
Backcast
Backcast
20
Wakeup
P ANode 2
Node 3
Node 4
P ANode 1
Node 5
Listen
Listen P A Listen P A Listen
P A Listen
Listen
P A
P A
Listen P A
P
P
A
A
Backcast
DST=0xFFFFSRC=0x0002
21
Pollcast
Node 2(Receiver)
Node 3(Sender)
Node 1(Sender)
PredEvent
PredEvent
Pred
M. Demirbas, O. Soysal, and M. Hussain,“A Single-Hop Collaborative Feedback Primitive for Wireless Sensor Networks”,INFOCOM’08, April , 2008, Phoenix, AZ
Listen
MAC=0x8765
Listen
MAC=0x8765
Listen
P A
P A
P A
Backcast
DST=0xFFFFSRC=0x0002
PRED=elephantMAC=0x8765
EventDST=0x8765
P+Pred
P+Pred
P+PredDST=0xFFFFSRC=0x0002
PRED=elephant
A
A
A
22
Outline
• Introduction• Motivation• What is A-MAC?• How is it used?• How well does it work?
– Backcast– A-MAC
• How much does it cost?• What are its limitations?
23
Evaluating Backcast: equal-power, equal-path delay
Setup Methodology • Platform: Telos mote• Protocol: IEEE 802.15.4• Radio: Texas Instruments
CC2420• Experiment
– 8 responder nodes– Connect w/ splitter/attenuator– Turned on sequentially– Transmit 100 packets– 125 ms inter-packet interval– Log
• RSSI: received signal strength• LQI: chip correlation rate• ARR: ACK reception rate
24
As the number of colliding ACKsgoes from one to eight…
But, for two nodes, LQI exhibits outliers and a lower median
Median RSSI increaseslogarithmically
Median LQI remains nearly constant but is more left-tailedACK reception rate stays practically constant
Backcast scales to a large number of nodes
25
The effect of interference on idle listening:Sampling, Probing, and Backcast
26
Sampling
Channel 18 Channel 26
Probing
Backcast
Sampling
Probing
Backcast
Background noise/traffic/noise in an office environment
Idle listening cost skyrockets under heavy interference
27
A-MAC offers modest incast performance
28
R
S SS S
Collision Domain
A-MAC supports multiple parallel unicast flows
29
RS
RS
RS
CollisionDomain
A-MAC wakes up the network fasterand more efficiently than LPL (Flash) flooding
30
Faster Wakeup
Fewer Packets
A-MAC
LPL (Flash
)
A-MACLPL (Flash
)
A-MAC wakeup works well at low duty cycles
31“Wakeup Latency” is
normalized to the probe interval
Tprobe = 4,000 ms
Pavg = 63 µWIavg = 21 µA
N = 59
Supporting the Collection Tree Protocol (CTP),A-MAC beats LPL on nearly every figure of merit
32
R
S
S
SS
SS
S SN = 59Tdata = 60 sTprobe = 500 ms
33
Outline
• Introduction• Motivation• What is A-MAC?• How is it used?• How well does it work?• How much does it cost?• What are its limitations?
Energy cost of A-MAC primitives:probe, receive, transmit, and listen
34
With hardware support, probes would cost at least 40% less energy
0 1 2 34 5 6 78 9
0. Sleep1: Start Radio (41 µJ)2: Ld Prb (61 µJ)3: Ld Done (23 µJ)4: Prb Alarm (6 µJ)5: Start TX (56 µJ)6: ACK Timer (30 µJ)7: ACK T’out (26 µJ)8: Stop Radio (9 µJ)9: Stopped (13 µJ)
35
36
The cost of a Backcast can be less than 1 ms(for IEEE 802.15.4)
P ASender
Receiver P A
DATA
DATA
Max data packet
4.256 ms
ACK transmission time 352 µs
RXTX turnaround time: 192 µs
37
Outline
• Introduction• Motivation• What is A-MAC?• How is it used?• How well does it work?• How much does it cost?• What are its limitations?
– Backcast– A-MAC
38
Backcast Limitations
• Protocol support (802.15.4 supports)– Superposition semantically valid for modulation
scheme– Auto ACK with tight timing– ACK frames are identical
• Radio support (CC2420 supports)– Broadcast auto ACKs– Multicast auto ACKs– Multiple MAC addresses for interface– Auto ACKs based on SRC address filtering– Auto ACKs based on DST address filtering
• Other factors (Not necessarily an issue)– Propagation delay ΔRTT < ½ symbol time– ACK frames do not cancel at PHY layer– Security Easy to spoof
Backcast degrades when path delay differences exceeds approximately 500 ns (500 ft free space)
39
A-MAC single channel PDR degrades with high node density and high probe frequency
40
S
RS
S
CollisionDomain
S S
S S S S
S
SSSS
S S
S S
S
41
Conclusion
• Backcast provides a new synchronization primitive– Common abstraction underlying many protocols– Can be implemented using a DATA/ACK frame exchange– Works even with a 8, 12, 94 colliding ACK frames– Faster, more efficient, and more robust than LPL, LPP
• A-MAC augments Backcast to implement– Unicast– Broadcast– Network wakeup– Robust pollcast
• Results show– Higher packet delivery ratios– Lower duty cycles– Better throughput (and min/max fairness)– Faster network wakeup– Higher channel efficiency
Acknowledgements
42
43
Questions? Comments? Discussion?
Backup Slides
44
45
A-MAC’s synchronization primitive
P ASender
ReceiverP A
P ASender
AP
P AProbe transmission
Probe reception ACK reception
ACK transmission
46
The Query/Response exchange can be mapped to“acknowledged anycast” semantics
• A node– Broadcasts (or multicasts) a query packet– Waits to see whether the packet is ACK’ed– By at least one of its neighboring nodes– And stays awake if an ACK is received– But goes to sleep otherwise
• And the frame collision is like a multicast “ACK implosion”
Node 5 asks all of it neighbors, “should one wake up?”
To which, Nodes 2, 3, and 4 all respond, “Yes”
dst=broadcastsrc=<doesn’t matter>
ACK
5
2
3
4
1
(everyone sends back the same response)
47
Backcast using a link-layer DATA/ACK frame exchange
D AReceiver
Sender D A
• Many wireless standards use link-layer automatic ACKs– IEEE 802.11 a/b/g– IEEE 802.15.4
• The DATA/ACK frame turnaround time is tightly-controlled
• Creates conditions favorable for power and delay capture
• But what should the destination address be?– 802.11 a/b/g: DON’T ACK broadcast or multicast
frames– 802.15.4: Standard is fuzzy on ACK-ing broadcast
frames
• We play with the SRC and DST addresses to get around this
48
Broadcast
TX 1
RX 2
RX 3
RX 4
Listen P A Listen P A Listen
P A
P A
Backcast
auto-ack=onaddr-recog=off
D
D
P
P
D
D
P
P
P A D P
P A D P
DST=0x8002SRC=0x0002
DST=0x8002SRC=0x0002ACK=0x0023FRM=0x0001
DST=0x0002SRC=0x0001SEQ=0x23
offoff
onoff
Backcast
Backcast
49
Wakeup
P ANode 2
Node 3
Node 4
P ANode 1
Node 5
Listen
Listen P A Listen P A Listen
P A Listen
Listen
P A
P A
Listen P A
P
P
A
A
Backcast
DST=0xFFFFSRC=0x0002
50
Pollcast
Node 2(Receiver)
Node 3(Sender)
Node 1(Sender)
PredEvent
PredEvent
Pred
M. Demirbas, O. Soysal, and M. Hussain,“A Single-Hop Collaborative Feedback Primitive for Wireless Sensor Networks”,INFOCOM’08, April , 2008, Phoenix, AZ
Listen
MAC=0x8765
Listen
MAC=0x8765
Listen
P A
P A
P A
Backcast
DST=0xFFFFSRC=0x0002
PRED=elephantMAC=0x8765
EventDST=0x8765
P+Pred
P+Pred
P+PredDST=0xFFFFSRC=0x0002
PRED=elephant
A
A
A