a sender-initiated mac: sender triggers communications by transmitting a data

50
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

Upload: celina

Post on 13-Jan-2016

41 views

Category:

Documents


3 download

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 Presentation

TRANSCRIPT

Page 1: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 2: A sender-initiated MAC: Sender triggers communications by transmitting a data

2

A sender-initiated MAC:Sender triggers communications by transmitting a data

Receiver

Sender Listen D

DListen

Page 3: A sender-initiated MAC: Sender triggers communications by transmitting a data

3

Low-power listening (LPL) with a sender-initiated MAC

Preamble DSender

Receiver D

Tlisten Noise

Overhearing/noise adds significant unpredictability to node lifetime

Page 4: A sender-initiated MAC: Sender triggers communications by transmitting a data

4

A receiver-initiated MAC:Receiver triggers exchange by transmitting a probe

Receiver

Sender PListen D

P D

Page 5: A sender-initiated MAC: Sender triggers communications by transmitting a data

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)

Page 6: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 7: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 8: A sender-initiated MAC: Sender triggers communications by transmitting a data

Is it possible to design a general-purpose,

yet efficient, receiver-initiated link layer?

8

Page 9: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 10: A sender-initiated MAC: Sender triggers communications by transmitting a data

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?

Page 11: A sender-initiated MAC: Sender triggers communications by transmitting a data

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…

Page 12: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 13: A sender-initiated MAC: Sender triggers communications by transmitting a data

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?

Page 14: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 15: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 16: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 17: A sender-initiated MAC: Sender triggers communications by transmitting a data

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?

Page 18: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 19: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 20: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 21: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 22: A sender-initiated MAC: Sender triggers communications by transmitting a data

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?

Page 23: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 24: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 25: A sender-initiated MAC: Sender triggers communications by transmitting a data

Backcast scales to a large number of nodes

25

Page 26: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 27: A sender-initiated MAC: Sender triggers communications by transmitting a data

Idle listening cost skyrockets under heavy interference

27

Page 28: A sender-initiated MAC: Sender triggers communications by transmitting a data

A-MAC offers modest incast performance

28

R

S SS S

Collision Domain

Page 29: A sender-initiated MAC: Sender triggers communications by transmitting a data

A-MAC supports multiple parallel unicast flows

29

RS

RS

RS

CollisionDomain

Page 30: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

)

Page 31: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 32: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 33: A sender-initiated MAC: Sender triggers communications by transmitting a data

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?

Page 34: A sender-initiated MAC: Sender triggers communications by transmitting a data

Energy cost of A-MAC primitives:probe, receive, transmit, and listen

34

Page 35: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 36: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 37: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 38: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 39: A sender-initiated MAC: Sender triggers communications by transmitting a data

Backcast degrades when path delay differences exceeds approximately 500 ns (500 ft free space)

39

Page 40: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 41: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 42: A sender-initiated MAC: Sender triggers communications by transmitting a data

Acknowledgements

42

Page 43: A sender-initiated MAC: Sender triggers communications by transmitting a data

43

Questions? Comments? Discussion?

Page 44: A sender-initiated MAC: Sender triggers communications by transmitting a data

Backup Slides

44

Page 45: A sender-initiated MAC: Sender triggers communications by transmitting a data

45

A-MAC’s synchronization primitive

P ASender

ReceiverP A

P ASender

AP

P AProbe transmission

Probe reception ACK reception

ACK transmission

Page 46: A sender-initiated MAC: Sender triggers communications by transmitting a data

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)

Page 47: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 48: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 49: A sender-initiated MAC: Sender triggers communications by transmitting a data

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

Page 50: A sender-initiated MAC: Sender triggers communications by transmitting a data

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