380 likes | 516 Views
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 2010 Presenter: SY. Outline. Introduction A-MAC primitive Implementation
E N D
Design and Evaluation of a Versatile and Efficient Receiver-Initiated Link Layer for Low-Power Wireless PrabalDutta, Stephen Dawson-Haggerty, Yin Chen, Chieh-Jan (Mike) Liang, and Andreas Terzis Sensys 2010 Presenter: SY
Outline • Introduction • A-MAC primitive • Implementation • Backcastevaluation • High level evaluation • Drawbacks • Conclusion
A sender-initiated MAC:Sender triggers communications by transmitting a data Sender Listen D Receiver D Listen
Low-power listening (LPL) with a sender-initiated MAC D Receiver Tlisten Preamble D Noise Sender Overhearing/noise adds significant unpredictability to node lifetime
A receiver-initiated MAC:Receiver triggers exchange by transmitting a probe Sender Listen P D Receiver P D
Receiver-initiated services -- benefits • 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)
Receiver-initiated services -- drawbacks • Probe (LPP) is more expensive than channel sample (LPL) • Baseline power is higher • Frequent probe transmissions • Could congest channel & increase latency • Could disrupt ongoing communications • Channel usage scales with node density rather than traffic • Services use incompatible probe semantics • Makes concurrent use of services difficult • Supporting multiple, incompatible probes increases power
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 Backcast LPP RI-MAC
Is it possible to design a general-purpose, yet efficient, receiver-initiated link layer?
Most consequential decision a low-power MAC makes:stay awake or go to sleep? Sender-Initiated: Channel Sampling D RX Tlisten Preamble D Noise TX Receiver-Initiated: Channel Probing Listen P DATA TX P P DATA RX
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 You should be skeptical that this idea might work P A TX P A RX P. Dutta, R. Musaloiu-E., I. Stoica, A. Terzis, “Wireless ACK Collisions Not Considered Harmful”, HotNets-VII, October, 2008, Alberta, BC, Canada P A TX
Outline • Introduction • A-MAC primitive • Implementation • Backcastevaluation • High level evaluation • Drawbacks • Conclusion
A-MAC: An 802.15.4 receiver-initiated link layer RXTX turnaround time: 192 µs Max data packet 4.256 ms Sender Listen P P A DATA Receiver P P A DATA ACK transmission time 352 µs
A-MAC’s contention mechanism Sender Listen P A D P-CW BO Receiver P A D P-CW D Sender Listen P A D P-CW D Backcast frame collision
A-MAC’s parallel multichannel data transfersuse control, data (1), and data (2) channels Sender 1 Listen P P A DATA Receiver 1 P P A DATA Sender 2 Listen P P A DATA Receiver 2 P P A DATA
Outline • Introduction • A-MAC primitive • Implementation • Unicast • Broadcast • Pollcast • Wakeup • Backcast evaluation • High layer evaluation • Conclusion
Unicast DST=0x0002 SRC=0x0001 SEQ=0x23 MAC=0x8002 MAC=0x8002 Node 1 (Sender) Listen P A D P Listen P A D P-CW BO Node 2 (Receiver) D P L P A D P-CW D P A DST=0x8002 SRC=0x0002 DST=0x8002 SRC=0x0002 ACK=0x0023 FRM=0x0001 MAC=0x8002 Node 3 (Sender) Listen P A D P-CW D Backcast frame collision
Broadcast DST=0x0002 SRC=0x0001 SEQ=0x23 auto-ack=on addr-recog=off off off on off D D D A A A Listen P P Listen P P Listen P P TX 1 D P A P RX 2 DST=0x8002 SRC=0x0002 DST=0x8002 SRC=0x0002 ACK=0x0023 FRM=0x0001 P P A D RX 3 Backcast P P A D RX 4 Backcast Backcast
Wakeup Listen P A Listen Node 1 A A P A Listen P Listen P Listen P A Node 2 DST=0xFFFF SRC=0x0002 P A Listen P A Node 3 P A Listen P A Node 4 P A Node 5 Backcast
Pollcast MAC=0x8765 Node 1 (Sender) A Event Pred Listen P A P+Pred Node 2 (Receiver) Event Pred P+Pred A Listen P A DST=0xFFFF SRC=0x0002 PRED=elephant MAC=0x8765 DST=0x8765 DST=0xFFFF SRC=0x0002 PRED=elephant MAC=0x8765 Node 3 (Sender) Event Pred Listen P+Pred A P A Backcast M. Demirbas, O. Soysal, and M. Hussain, “A Single-Hop Collaborative Feedback Primitive for Wireless Sensor Networks”, INFOCOM’08, April , 2008, Phoenix, AZ
Outline • Introduction • A-MAC primitive • Implementation • Backcastevaluation • High level evaluation • Drawbacks • Conclusion
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 Evaluating Backcast: equal-power, equal-path delay
As the number of colliding ACKsgoes from one to eight… Median RSSI increases logarithmically Median LQI remains nearly constant but is more left-tailed ACK reception rate stays practically constant But, for two nodes, LQI exhibits outliers and a lower median
Energy cost of A-MAC primitives:probe, receive, transmit, and listen
Outline • Introduction • A-MAC primitive • Implementation • Backcastevaluation • High level evaluation • Drawbacks • Conclusion
A-MAC offers modest unicast performance R S S S S Collision Domain
A-MAC supports multiple parallel unicast flows S R S R S R Collision Domain
A-MAC wakes up the network fasterand more efficiently than LPL (Flash) flooding Fewer Packets Faster Wakeup LPL (Flash) LPL (Flash) A-MAC A-MAC
A-MAC wakeup works well at low duty cycles Tprobe = 4,000 ms Pavg = 63 µW Iavg = 21 µA N = 59 “Wakeup Latency” is normalized to the probe interval
Supporting the Collection Tree Protocol (CTP),A-MAC beats LPL on nearly every figure of merit R S S S S S S N = 59 Tdata = 60 s Tprobe = 500 ms S S
The effect of interference on idle listening:Sampling, Probing, and Backcast Background noise/traffic/noise in an office environment Channel 18 Channel 26 Sampling Sampling Probing Probing Backcast Backcast
Outline • Introduction • A-MAC primitive • Implementation • Backcastevaluation • High level evaluation • Drawbacks • Conclusion
Primitive RXTX turnaround time: 192 µs Max data packet 4.256 ms Sender P A DATA Receiver P A DATA ACK transmission time 352 µs
Backcast degrades when path delay differences exceeds approximately 500 ns (500 ft free space)
A-MAC single channel PDR degrades with high node density and high probe frequency S S S S S S S S S S S S R S S S S S S S Collision Domain
Conclusion • Backcast provides a new synchronization primitive • 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