1 MAC Layer Protocols for Sensor Networks Prasun Sinha Department of Computer Science and...

43
1 MAC Layer Protocols for Sensor Networks Prasun Sinha Department of Computer Science and Engineering Ohio State University April 25 th , 2007 some slides adapted from authors presentations found on the Internet

Transcript of 1 MAC Layer Protocols for Sensor Networks Prasun Sinha Department of Computer Science and...

1

MAC Layer Protocols for Sensor Networks

Prasun SinhaDepartment of Computer Science and EngineeringOhio State University

April 25th, 2007

(some slides adapted from authors presentations found on the Internet)

2

Introduction

Wireless sensor network Special ad hoc wireless network Large number of nodes w/ sensors & actuators Battery-powered nodes energy efficiency Unplanned deployment self-organization Node density & topology change robustness

Sensor-net applications• Nodes cooperate for a common task• In-network data processing

3

Some Applications of Sensor Networks

Data Collection Networks Sensing Movement of Glaciers Environment Monitoring Habitat Monitoring

Habitat Monitoring of Storm Petrels in Great Duck Island Microsoft’s Effort to put every sensor on the web

Event Triggered Networks Structural Monitoring

Golden Gate Bridge Precision Agriculture

Oregon and British Columbia Vineyards Condition based Maintenance

Hardware Manufacturing facilities Military Applications Environment Monitoring

Poisonous gas, pollutants etc. National Asset Protection

Coastline, Border Patrol, Roadways, Oil/gas pipelines, Secure facilities

4

Talk Outline

SMAC: http://www.isi.edu/~weiye/pub/smac_ton.pdf “Medium Access Control With Coordinated Adaptive Sleeping for Wireless

Sensor Networks”, Wei Ye, John Heidemann, and Deborah Estrin, Transactions on Networking, 2004, (also Infocom 2002)

BMAC: http://www.polastre.com/papers/sensys04-bmac.pdf “Versatile Low Power Media Access for Wireless Sensor Networks”, Joseph

Polastre, Jason Hill and David Culler, ACM SENSYS 2004

CMAC: http://www.cse.ohio-state.edu/~prasun/publications/conf/secon07-cmac.pdf “CMAC: An Energy Efficient MAC Layer Protocol Using Convergent Packet

Forwarding for Wireless Sensor Networks”, Sha Liu, Kai-Wei Fan and Prasun Sinha, IEEE SECON 2007

5

Medium Access Control in Sensor Nets Important attributes of MAC protocols

1. Collision avoidance

2. Energy efficiency

3. Scalability in node density

4. Latency

5. Fairness

6. Throughput

7. Bandwidth utilization

Primary

Secondary

6

Major sources of energy waste (cont.) Idle listening

Long idle time when no sensing event happens

• Collisions• Control overhead• Overhearing

We try to reduce energy consumption from all above sources

Combine benefits of TDMA + contention protocols

Energy Efficiency in MAC

Common to all wireless

networks

Dominant in sensor nets

7

Sensor-MAC (S-MAC) Design

Tradeoffs

Major components in S-MAC• Periodic listen and sleep• Collision avoidance• Overhearing avoidance• Massage passing

Latency

FairnessEnergy

8

Periodic Listen and Sleep

Problem: Idle listening consumes significant energy

Solution: Periodic listen and sleep

• Turn off radio when sleeping• Reduce duty cycle to ~ 10% (200ms on/2s

off)

sleeplisten listen sleep

Latency Energy

9

Periodic Listen and Sleep

Schedules can differ

• Prefer neighboring nodes have same schedule— easy broadcast & low control overhead

Border nodes: two schedules broadcast twice

Node 1

Node 2

sleeplisten listen sleep

sleeplisten listen sleep

Schedule 2

Schedule 1

10

Periodic Listen and Sleep

Schedule Synchronization Remember neighbors’ schedules

— to know when to send to them Each node broadcasts its schedule every few

periods of sleeping and listening Re-sync when receiving a schedule update Schedule packets also serve as beacons for new

nodes to join a neighborhood

11

Collision Avoidance

Problem: Multiple senders want to talk Options: Contention vs. TDMA Solution: Similar to IEEE 802.11 ad hoc

mode (DCF) Physical and virtual carrier sense Randomized backoff time RTS/CTS for hidden terminal problem RTS/CTS/DATA/ACK sequence

12

Overhearing Avoidance

Problem: Receive packets destined to others Solution: Sleep when neighbors talk

Basic idea from PAMAS (Singh, Raghavendra 1998) But we only use in-channel signaling

Who should sleep?• All immediate neighbors of sender and

receiver

How long to sleep?• The duration field in each packet informs

other nodes the sleep interval

13

Message Passing

Problem: Sensor net in-network processing requires entire message

Solution: Don’t interleave different messages Long message is fragmented & sent in burst RTS/CTS reserve medium for entire message Fragment-level error recovery — ACK

— extend Tx time and re-transmit immediately Other nodes sleep for whole message time

FairnessEnergy

Msg-level latency

14

Msg Passing vs. 802.11 fragmentation S-MAC message passing

RTS 21 ......

Data 19ACK 18CTS 20

Data 17ACK 16

Data 1ACK 0

RTS 3 ......

Data 3ACK 2CTS 2

Data 3ACK 2

Data 1ACK 0

Fragmentation in IEEE 802.11 • No indication of entire time — other nodes keep

listening• If ACK is not received, give up Tx — fairness

15

Implementation on Testbed NodesPlatform

Motes (UC Berkeley) 8-bit CPU at 4MHz,8KB flash, 512B RAM916MHz radio

TinyOS: event-driven

Compared MAC modules1. IEEE 802.11-like protocol w/o sleeping2. Message passing with overhearing

avoidance3. S-MAC (2 + periodic listen/sleep)

16

Experiments

Topology and measured energy consumption on source nodes

Source 1

Source 2

Sink 1

Sink 2

• Each source node sends 10 messages

— Each message has 400B in 10 fragments

• Measure total energy over time to send all messages

0 2 4 6 8 10

200

400

600

800

1000

1200

1400

1600

1800Average energy consumption in the source nodes

Message inter-arrival period (second)

En

erg

y co

nsu

mp

tion

(m

J)

802.11-like protocol Overhearing avoidanceS-MAC

17

S-MAC Conclusions

S-MAC offers significant energy efficiency over always-listening MAC protocols

S-MAC can function at 10% duty cycle

18

Talk Outline

SMAC: http://www.isi.edu/~weiye/pub/smac_ton.pdf “Medium Access Control With Coordinated Adaptive Sleeping for Wireless

Sensor Networks”, Wei Ye, John Heidemann, and Deborah Estrin, Transactions on Networking, 2004, (also Infocom 2002)

BMAC: http://www.polastre.com/papers/sensys04-bmac.pdf “Versatile Low Power Media Access for Wireless Sensor Networks”,

Joseph Polastre, Jason Hill and David Culler, ACM SENSYS 2004

CMAC: http://www.cse.ohio-state.edu/~prasun/publications/conf/secon07-cmac.pdf “CMAC: An Energy Efficient MAC Layer Protocol Using Convergent Packet

Forwarding for Wireless Sensor Networks”, Sha Liu, Kai-Wei Fan and Prasun Sinha, IEEE SECON 2007

19

BMAC Objectives

Information sharing with higher layers Control and reconfiguration of link protocol Tradeoffs in link protocols

20

B-MAC Design

Principles Reconfigurable MAC

protocol Flexible control Hooks for sub-primitives

Backoff/Timeouts Duty Cycle Acknowledgements

Feedback to higher protocols

Minimal implementation Minimal state

Primary Goals Low Power Operation Effective Collision Avoidance Simple/Predicable Operation Small Code Size Tolerant to Changing

RF/Networking Conditions Scalable to Large Number of

Nodes Implementation is on Mica2

motes with CC1000

21

B-MAC Link Protocol Interaction Reconfiguration and control of link layer protocol parameters

Acknowledgements, Backoff/Timeouts, Power Management,

Ability to choose tradeoffs – “knobs” Fairness, Latency, Energy Consumption, Reliability

Power consumption estimation through analytical and empirical models Feedback to network protocols Lifetime estimation

Mechanisms to achieve network protocols’ goals

22

Low Power Listening (LPL) Higher level communication scheduling

Energy Cost = RX + TX + Listen Start by minimizing the listen cost

Example of a typical low level protocol mechanism

Periodically wake up, sample channel, sleep

Properties Wakeup time fixed “Check Time” between wakeups variable Preamble length matches wakeup interval

Overhear all data packets in cell Duty cycle depends on number of neighbors

and cell traffic

RX

wak

eu

p

wak

eu

pw

ake

up

wak

eu

p

wak

eu

p

wak

eu

p

wak

eu

p

wak

eu

p

wak

eu

p

TX

sleep sleep sleep

sleepsleepsleep

Node 2

Node 1time

time

23

Effect of Neighborhood Size Neighborhood Size affects amount of

traffic in a cell Network protocols typically keep track of

neighborhood size Bigger Neighborhood More traffic

0 20 40 60 80 1000

20

40

60

80

100

120

140

160

180

200

Neighborhood size

Ch

an

ne

l A

cti

vity

Ch

ec

k I

nte

rva

l (m

s)

Expected Lifetime Contour

0.25

0.5

0.75

11.25

1.522.5

0 20 40 60 80 1000

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

Number of neighboring nodes

Eff

ec

tiv

e d

uty

cy

cle

(%

)

200ms check interval100ms check interval50ms check interval25ms check interval10ms check interval

Effect of neighborhood size on node duty cycle

24

B-MAC Performance Experimental Setup:

n nodes send as quickly as possible to saturate the channel

B-MAC never worse than traditional approach

Often much better Flexible configuration yields

efficient: Reliable transport (Acks) Hidden Terminal support

(RTS-CTS)

0 5 10 15 200

2000

4000

6000

8000

10000

12000

14000

16000

0 5 10 15 200

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Throughput of a congested channel

Number of nodes

Pe

rce

nta

ge

of

Ch

an

ne

l C

ap

ac

ity

B-MACB-MAC w/ ACKB-MAC w/ RTS-CTSS-MAC unicastS-MAC broadcastChannel Capacity

Th

rou

gh

pu

t (b

ps

)

Protocol ROM RAM

B-MAC 3046 166

B-MAC w/ ACK 3340 168

B-MAC w/ Duty Cycling 4092 170

B-MAC w/ DC & ACK 4386 172

S-MAC 6274 516

7

8

9

10

1

6

5

4

3

2

0

7

8

9

10

1

6

5

4

3

2

0

topology

25

Fragmentation Support S-MAC

RTS-CTS Fragmentation Support B-MAC w/app control

Network protocol sends initial data packet with number of fragments pending

Disable backoff & LPL for rest of fragments

Measure energy consumption at C(bottleneck node)

Minimizing power relieson controlling link layer primitives

0 50 100 150 200 2500

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

Fragment size (bytes)

En

erg

y p

er b

yte

(mJ/

byt

e)

Mean energy consumption per byte (100 second sample period)

B-MAC w/ no app controlB-MAC w/ app controlS-MACT-MAC (simulated)Optimal Schedule

0 50 100 150 200 2500

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

Fragment size (bytes)

En

erg

y p

er b

yte

(mJ/

byt

e)

Mean energy consumption per byte (10 second sample period)

B-MAC w/ no app controlB-MAC w/ app controlS-MACT-MAC (simulated)Optimal Schedule

A

B

C

E

D

10 packets every 10 seconds 10 packets every 100 seconds

26

BMAC Conclusions

Coordination with higher protocols is essential for long lived operation

Feedback allows protocols to make informed decisions

27

Talk Outline

SMAC: http://www.isi.edu/~weiye/pub/smac_ton.pdf “Medium Access Control With Coordinated Adaptive Sleeping for Wireless

Sensor Networks”, Wei Ye, John Heidemann, and Deborah Estrin, Transactions on Networking, 2004, (also Infocom 2002)

BMAC: http://www.polastre.com/papers/sensys04-bmac.pdf “Versatile Low Power Media Access for Wireless Sensor Networks”, Joseph

Polastre, Jason Hill and David Culler, ACM SENSYS 2004

CMAC: http://www.cse.ohio-state.edu/~prasun/publications/conf/secon07-cmac.pdf “CMAC: An Energy Efficient MAC Layer Protocol Using Convergent Packet

Forwarding for Wireless Sensor Networks”, Sha Liu, Kai-Wei Fan and Prasun Sinha, IEEE SECON 2007

28

Existing MAC Layer Approaches Synchronized Solutions

SMAC, TMAC, DMAC

Unsynchronized Solutions BMAC, GeRaF

29

Synchronized Approaches

Unnecessary power consumption on synchronization message exchanges Can be improved if synchronization is infrequent

Can not achieve very low duty cycles 10% level

30

Unsynchronized Approaches - BMAC Long Preamble Approach

Wasteful if the receiver wakes up early

Sender

Receiver

Sleep Long Preamble

Sleep Receiving Preamble

Packet

Packet

31

Our Approach - CMAC

Unsynchronized Duty Cycling Flow Initialization

Aggressive RTS Anycasting for Packet Forwarding

Flow Stabilization Convergent Packet Forwarding

32

CMAC: Aggressive RTS

Aggressive RTS

Sender

Receiver

Sleep RTS

Sleep RX

Packet

Packet Sleep

SleepRTS RTS RX

CTS

33

CMAC: Aggressive RTS(Double Channel Check)

The receiver only needs to check if the channel is busy after waking up

Check the channel twice to avoid missing activities Time between the two checks

Larger than inter-RTS separation Smaller than RTS duration

RTS RTS

Channel check

RTS RTS

Channel check

RTS RTS

Channel check

(a) (b)

(c) (shouldn’t happen)

34

CMAC: Anycasting Anycast Packet Forwarding

Exploits network density Nodes other than the target receiver may

wake up earlier can make some progress toward the sink

35

Contention Among Anycast Receivers Anycast to nodes which are

awake closer to the destination

More than one potential participants Nodes closer to the sink send CTS’s earlier

36

Contention Among Anycast Receivers

Anycast candidate prioritization

Canceled RTS

CTS

RTSSender

CTS slot

Canceled CTS

mini-slot

Node in R1

Node in R1

Node in R2

Node in R3

Canceled CTS

Canceled CTS

37

CMAC: Convergent Forwarding

Anycast has higher overhead than unicast Nodes stay awake for a short duration after

receiving a packet For how long?

Switch from anycast to unicast if Node is able to communicate with a node in R1 Cannot find a better next hop than current one

38

Active nodesSleeping nodes

Unicast linksAnycast links

Time 1 Time 2 Time 3

CMAC: Convergent Forwarding Illustration

39

Experiments

Testbed: Kansei Testbed 7 x 15 XSM nodes

Metrics Normalized Energy Consumption

Average energy consumption to deliver one packet Throughput: Number of packets received by sink Latency

Scenarios: Static Event Moving Event

40

Experimental Results: Static Scenario

Sink is at one corner of the network The node that is diagonally opposite to sink sends data

to the sink Vary data rates

41

Experimental Results: Moving Event

One node generates data at any point for the sink The node generating data (event) moves along one side

of the network that does not include the sink. Vary moving speeds

42

CMAC Conclusion

CMAC supports high throughput, low latency and consumes less energy than existing solutions.

CMAC’s performance difference from existing approaches increases with speed of the moving event.

43

Thanks for your attention!

For more information on my research please check my webpage at

http://www.cse.ohio-state.edu/~prasun