adca: an asynchronous duty cycle adjustment mac protocol for wireless sensor networks globecom 2008...

Post on 16-Dec-2015

228 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

ADCA: An Asynchronous Duty Cycle Adjustment MAC Protocol for Wireless Sensor Networks

GLOBECOM 2008

Yu-Chia Chang, Jehn-Ruey Jiang and Jang-Ping Sheu

CSIE DepartmentNational Central University

Outline

Introduction Related work ADCA MAC protocol Experiments and simulation results Conclusions

Introduction

Wireless sensor networks is composed of a large number of battery-operated sensor nodes

Energy conservation is one of the most important issues

RF transceiver is the biggest power consumer in a sensor node

Introduction (Cont.) Four modes of the radio transceiver:

transmitting receiving listening sleeping

The first three modes are also called active or wake modes

The power consumption of the four modes of MICAz mote is 52.5, 59.1, 59.1 and 1.278 mW

Introduction (cont.) What causes energy waste?

Collisions Control packet overhead Overhearing unnecessary traffic Long idle time

bursty traffic in sensor-net apps Idle listening consumes 50—100% of the power

for receiving (Stemm97, Kasten)

Dominant in sensor nets

Introduction (cont.)

Idle listening can be solved by sleep/wake protocols

When the duty cycle (i.e., active period) of the radio is reduced to 1 percent, the power consumption of the sensor node can be reduced by a factor of 50.

Introduction (cont.) Collision can be solved by RTS/CTS

(CSMA/CA ) (up to 36% improvement) Overhearing can be solved by RTS/CTS with

NAV (Network Allocation Vector) However, the overhead of RTS/CTS is

relatively large when used in in WSNs since WSN packets are usually very small.

In MICA Mote, the maximum data packet size is 41 bytes and the size of an RTS/CTS packet is 18 bytes.

Contention-based protocols CSMA — Carrier Sense Multiple Access

Ethernet (CSMA/CD) is not suitable for wireless (collision at receiver cannot be detected at sender)

MACA — Multiple Access w/ Collision Avoidance RTS/CTS for hidden terminal problem RTS/CTS/DATA

CSMA/CA

A B C

Hidden terminal: A is hidden from C’s CS

CSMA/CA Contention-based protocols (contd.)

MACAW — improved over MACA RTS/CTS/DATA/ACK Fast error recovery at link layer

IEEE 802.11 Distributed Coordination Function (DCF) Largely based on MACAW Called CSMA/CA

Hidden Terminal Problem

A and C want to send data to B1. A senses medium idle and sends data2. C senses medium idle and sends data3. Collision occurs at B

A B C

Data Data

Collision Avoidance w/ RTS/CTS

A and C want to send to B1. A sends RTS (Request To Send) to B2. B sends CTS (Clear To Send) to A

C “overhears” CTS from B3. C waits for duration of A’s transmission

A B C

1.RTS

2.CTS2.CTS

3.Data

Virtual Carrier Sense

Timing relationship

Introduction (cont.)

ADCA MAC protocol for WSNs Asynchronous sleep/wake protocol Duty cycle adjustment

Goals Energy efficiency Without degrading performance

Without lengthening transmission delay Without lowering throughput

Related work

Energy efficient MAC protocols

Preamble based scheme

Slot based scheme

Sleep/wake MAC protocols

Preamble-based

Slot-based

Duty cycle synchronization-based

Related work

preamble-based B-MAC, Wise-MAC, SyncWUF

slot-based P-MAC, TRAMA, Z-MAC, H-MAC

duty cycle synchronization-based S-MAC, T-MAC, U-MAC

B-MAC

Drawbacks Overhearing Bad performance at heavy traffic case Long transmission latency

Wise-MAC

Drawbacks Maintain neighbors’ time offset Transmission latency is increased

sender

receiver

Tcycle

Arrival

Tp

active Preamble DATA ACK

transmit

busy idle

WAITsender

receiver

Tcycle

Arrival

Tp

active Preamble DATA ACK

transmit

busy idle

WAIT

P-MAC - Pattern MAC

P-MAC [12] divides time axis into frames, each of which consists of two parts: the Pattern Repeat part and the Pattern Exchange part. Both parts contain many slots.

During the Pattern Exchange part, nodes advertise their intended sleep/wake patterns, which represent one slot by one bit (0 for sleeping mode and 1 for active mode) and can be dynamically adjusted based on traffic conditions.

And during the Pattern Repeat part, a node wakes up according to the advertised pattern. A node also wakes up at a time slot t, if one of its neighbors has advertised to be awake at the

time slot t and it has data for sending to the node.

S-MAC or Sensor-MAC

Medium Access Control with Coordinated, Adaptive Sleeping for Wireless Sensor Networks

[YHE03]

S-MAC: Periodic Listen & Sleep

Frame

Frame schedule Nodes are free to choose their listen/sleep schedule Requirement: neighboring nodes synchronize together Exchange schedules periodically (SYNC packet)

Synchronization period (SP)

Nodes communicate in receivers scheduled listen times

Listen Listen ListenSleep Sleep

C A B D

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

S-MAC: Coordinated Sleeping (1)Frame Schedule Maintenance1. Choosing a schedule

• Listen to the medium for at least SP• Nothing heard, choose a schedule• Broadcast a SYNC packet (should contend for medium)

2. Following a schedule• Receives a schedule before choosing/announcing• Follows the schedule• Re-broadcast a SYNC packet

3. Adopting multiple schedules• Receives a schedule after choosing/announcing• Follow both the schedules – suffer more energy loss• A node only re-broadcast SYNC for the first schedule heard

S-MAC: Coordinated Sleeping (2)

Neighbor Discovery chance of failing to discover an existing neighbor

corrupted SYNC packet, collisions, interference New sensor in the border of two schedules discover

only the first schedule, if schedules do not overlap Periodically, listen for the complete SP

frequency? - if a sensor has no neighbors S-MAC experimental values:

SP = 10 seconds Neighbor discovery period = 2 minutes, if at least 1 nbr

S-MAC: Coordinated Sleeping (3)Maintaining Synchronization Clock drifts – not a major concern (listen time = 0.5s,

which is 105 times longer than typical drift rates) Need to mitigate long term drifts – schedule updating

using SYNC packet (sender ID, its next scheduled sleep time – relative);

Listen is split into 2 parts – for SYNC and RTS/CTS

Once RTS/CTS is established, data sent in sleep intervalReceiver

Listen

Sleepfor SYNC for RTS for CTS

S-MAC: Coordinated Sleeping (4)

Adaptive Listening – Low-duty cycle to active mode

* Overhearing nodes – wakeup at the end of the current transmission (duration field in RTS/CTS)ListenR ListenON

RTSSender

Receiver CTS

Overhearing nodes (ON)

DATA

ACK

Sleep (based on RTS)

Sleep (based on CTS)

Wakes up even though it is not the correct listen-interval

S-MAC Summary

Latency and throughput are problems, but adaptive listening improves it significantly

Energy saving is significant compared to “non-sleeping” protocols

S-MAC Information

URL: http://www.isi.edu/scadds/ Released S-MAC source code (for TinyOS

0.6.1) Currently porting to nesC environment

(TinyOS 1.0)

T-MAC or Timeout-MAC

An Adaptive Energy-Efficient MAC Protocol for Wireless Sensor Networks

[vL03]

Drawbacks of S-MAC

Active (Listen) interval – long enough to handle the highest expected load If message rate is lower – energy is

still wasted in idle-listening

S-MAC fixed duty cycle – is NOT OPTIMAL

T-MAC: Preliminaries Adaptive duty cycle:

A node is in sleep mode if no activation event occurs for time TA

Active Active Active

Sleep Sleep

TA TATA

T-MAC: Choosing TA Requirement: a node should not sleep

while its neighbors are communicating, potential next receiver

TA > C+R+T C – contention interval length R – RTS packet length T – turn-around time (a short time between the

end of the RTS packet and the beginning of the CTS packet)

TA = 1.5 * (C+R+T);

T-MAC: Asymmetric Communication (1)

Early-Sleeping Problem – in convergecast (A to D)

C – may lose medium to B (RTS) or A (B’s CTS) C loses to B; D will hear CTS from C; C loses to A; D will hear nothing, since C is silent;

A

B

C

D

contend

contend

RTS CTS DATA ACK

RTS?

active sleep

TA

T-MAC: Asymmetric Communication (2)

Future RTS (FRTS) Let others know that it cannot access the medium; C –

sends FRTS – has duration field; receiver of FRTS – schedule timer;

FRTS might affect data; so, DATA postponed until FRTS is over; Prevent others from taking medium, send dummy DS packet;

A

B

C

D

contend

contend

RTS CTS DATA ACK

RTS

active

TA

DS

FRTS

active

TA = C+R+T+CTS_length

T-MAC: Asymmetric Communication (3)

Full-Buffer Priority – suitable for unidirectional flows Buffer – almost full – prefer sending than receiving Receive RTS, send its own RTS back instead of CTS Higher chance of transmitting its own message, lesser probability

of early-sleeping, limited form of flow control

A

B

C

D

contend

contend

RTS

CTS DATA ACK

active

TARTS

contend

S-MAC and T-MAC

U-MAC Similar to S-MAC Calculate utilization (U)

U = (Ttx + Trx) / (Ttx + Trx+Tidle) Duty cycle adjustment

If U> high traffic threshold duty cycle increase If U> low traffic threshold duty cycle decrease

Drawbacks High contention Preliminary parameter setting (un-adaptable)

Rule of thumb The experience or knowledge of the experiments

ADCA- Initial phase

Decide its start time of its sleep/wake schedule

Broadcast its schedule to the neighbors

The initial period last for a certain time to collect neighbors’ schedules

ADCA- Adjusting phase The cycle length of all the nodes is

the same

The schedule of ADCA is adjustable Contention period SYN period Extended period Sleeping period

The schedule of ADCA

ADCA Listen to the channel for the incoming

packets at the contention period

Broadcast the SYN packet at the SYN period

The extended period prolongs the active time immediately

Tune into sleeping period to save energy

The adjustment of ADCA The extended period adjustment The next contention period adjustment

ADCA

cycle period

Control periodContention period Extended period Sleep period

A2 : next contention period

A1 : extended period

adjustment point

observed active period

ADCA

cycle period

Control periodContention period Extended period Sleep period

A2 : next contention period

A1 : extended period

adjustment point

observed active period

The radio status

Bad situation Success reception but destining to other nodes Failed reception Channel unstable

The adjustment of ADCA The extended period compensates for

the bad receiving situations

The next contention period accommodates to the variable traffics

Time records Ti: idle listen Tb: channel busy Noh: number of overheard packets

The length of the extended period

Tbad = time of collision + channel unstable

dataohdata

bad TNT

TEP

)(

ratedata

sizepacketslotdata TcwT

2

The length of the next contention period

CCP is the length of the current contention period

: negative value (idle time) Decrease the length

: positive value (busy time) Increase the length

)1(rx

b

rx

i

TT

TTCCPCP

Simulation environments NS-2 simulator Two scenarios

All-to-one and end-to-end (n-to-n) Packet size

Data packet: 50 bytes Control packet: 10 bytes

Deploy 20, 30 and 40 nodes in 100 x 100 m2 area (average node degree is 4, 6 and 8)

Traffic (CBR) 1, 10, 20, 30, 40, 50 and 60 packets per second

Energy consumption Tx:Rx:Idle:Sleep = 52.5: 59.1: 59.1: 1.278 (mW)

=17.4: 19.7: 19.7: 0.426 (mA)

Energy consumption (all-to-one)

Energy consumption (n-to-n)

Energy consumption (n-to-n)

0

10

20

30

40

50

60

70

1 10 20 30 40 50 60

traffic (packets/s)

ener

gy con

sum

ptio

n (K

J) TMAC(4)

ADCA(4)

TMAC(6)

ADCA(6)

TMAC(8)

ADCA(8)

Transmission delay (all-to-one)

Transmission delay (n-to-n)

Hop Delay (n-to-n)

0

0.5

1

1.5

2

2.5

3

3.5

1 10 20 30 40 50 60

Traffic (packets/s)

time (s

econ

d)

TMAC(4)

ADCA(4)

TMAC(6)

ADCA(6)

TMAC(8)

ADCA(8)

Goodput (all-to-one)

Goodput (n-to-n)

Goodput (n-to-n)

0.6

0.65

0.7

0.75

0.8

0.85

0.9

0.95

1

1 10 20 30 40 50 60

Traffic (packets/s)

Goo

dput

TMAC(4)

ADCA(4)

TMAC(6)

ADCA(6)

TMAC(8)

ADCA(8)

Implementation

an indoor wireless sensor network testbed which consists of a number of Octopus II sensor nodes

Each Octopus II sensor node is equipped with a MSP430 microcontroller and a CC2420 radio module, which operates at 2.4 GHz and transmits at 250 Kbps.

Implementation And each node is also attached to a USB

interface that provides both power supply and a backchannel for programming and data collection.

Implementation

15

10 14 16 17

7 8 9 6 13

2 11 12

1 3 4 5

18 19

21

22 23

24

25 26

20

15

10 14 16 17

7 8 9 6 13

2 11 12

1 3 4 5

18 19

21

22 23

24

25 26

20

The average energy consumption for the all-to-one scenario

Average energy consumptions

0

10

20

30

40

50

60

70

80

1 5 10 15 20

Traffic loads (packets/cycle)

Ene

rgy

cons

umpt

ion

(KJ)

ADCA

ADCA(sim)

TMAC

TMAC(sim)

The average energy consumption for the end-to-end scenario

Average energy consumptions

0

10

20

30

40

50

60

70

80

1 5 10 15 20

Traffic loads (packets/cycle)

Ene

rgy

cons

umpt

ion

(KJ)

ADCA

ADCA(sim)

TMAC

TMAC(sim)

The average transmission delay for the all-to-one scenario

Average delay

00.30.60.91.21.51.82.12.42.7

33.3

1 5 10 15 20

Traffic loads (packets/cycle)

Del

ay tim

e (s

)

ADCA

ADCA(sim)

TMAC

TMAC(sim)

The average transmission delay for the end-to-end scenario

Average delay

0

0.3

0.6

0.9

1.2

1.5

1.8

1 5 10 15 20

Traffic loads (packets/cycle)

Del

ay tim

e (s

)

ADCA

ADCA(sim)

TMAC

TMAC(sim)

The average packet transmission success rate for the all-to-one scenario

Success rate

0.6

0.7

0.8

0.9

1

1 5 10 15 20

Traffic loads (packets/cycle)

Succ

ess

rate

(%

)

ADCA

ADCA(sim)

TMAC

TMAC(sim)

The average packet transmission success rate for the end-to-end scenario

Success rate

0.7

0.8

0.9

1

1 5 10 15 20

Traffic loads (packets/cycle)

Succ

ess

rate

(%

)

ADCA

ADCA(sim)

TMAC

TMAC(sim)

Conclusion Asynchronous Duty Cycle Adjustment

MAC protocol Two adjustments are presented to

compensate for bad situation and to adapt to the current traffic

The asynchronous scheme separates the competitors into different transmission period which reduce the affection of collision and overhearing

Improve utilization, lower energy consumption, lower transmission delay and increase success rate

top related