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

Post on 13-Jan-2016

38 views 3 download

Tags:

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 of 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

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