PW-MAC: A Predictive-Wakeup MAC Protocol for Wireless Sensor Networks Lei Tang, Yanjun Sun, Omer Gurewitz, and David B. Johnson Presentation at IEEE INFOCOM 2011, April 2011
PW-MAC objectives Minimize energy consumption both at senders and at receivers while maintaining: • High packet delivery ratio • Low delivery latency 2
Related work: duty cycling Duty cycle: The percent of time a node is active. Duty-Cycling MAC protocols: – Synchronous: e.g., S-MAC, DW-MAC. – Asynchronous: e.g., B-MAC, PW-MAC, EM-MAC. 3
Related work: synchronous protocols Problems of synchronous protocols: – Global time synchronization. – Contention is packed to DATA period. Cycle SYNC DATA SLEEP RTS RTS DATA 4
Related work: asynchronous protocols Asynchronous – Nodes wake up asynchronously. – No global time synchronization. How does sender rendezvous with receiver? – Sender-initiated or receiver-initiated. 5 Picture from http://www.fleetcouriers.com/blog/
Related work: B-MAC (sender-initiated) Problem: 1. Sender has large duty cycle. 2. High channel contention. S Time Preamble Data Data R wakeup interval Send Receive Node awake 6
Related work: X-MAC (sender-initiated) Problem: 1. Sender has large duty cycle. 2. High channel contention. S Time DATA DATA DATA A DATA A R wakeup interval Preamble is replaced by repeating data packets. Receiver sends an ACK so the sender can stop. 7
Related work: WiseMAC (sender-initiated) Problem: 1. Fixed wakeup interval can cause collisions. 2. Use a fixed clock drift ratio. shortened preamble P . S Time P. Data Data R fixed wakeup interval fixed wakeup interval 8
Other problem of these protocols No efficient retransmission mechanism large duty cycle and high wireless contention. S1 Time packet packet packet packet R collide collide collide collide S2 packet packet packet packet 9
Related work: RI-MAC (receiver-initiated) Problem: sender still has large duty cycle due to idle listening and overhearing. Wake up to wait for receiver Send DATA S Time B DATA A B DATA A R Send wake-up beacon Send ACK 10
Overview of PW-MAC High energy efficiency at both senders and receivers. High packet delivery performance through reducing collisions and efficient packet retransmission. Sender S1 DATA DATA Time Receiver R1 DATA DATA Sender S2 DATA DATA Receiver R2 DATA DATA 11
Predictive Wake-up mechanism of PW-MAC pseudorandom time pseudorandom time R1: B B B time R1 wake-up R1 wake-up R1 wake-up pseudorandom time R2: B B time R2 wake-up R2 wake-up Next wakeup time = now+ pseudorandom(0.5 interval, 1.5 interval) 12
Predictive Wake-up mechanism of PW-MAC pseudorandom time pseudorandom time R: B B B time R wake-up R wake-up R wake-up Why pseudorandom wakeup? • Enable sender to predict receiver reduce energy consumption • Spread traffic to different times mitigate wireless contention 13
Predictive Wake-up mechanism of PW-MAC pseudorandom time pseudorandom time R: B B B time R wake-up R wake-up R wake-up Prediction state obtained by a node S to predict a node R ’s wakeups includes: • Pseudorandom number generator parameters and current seed of R . • The time difference between S and R . 14
PW-MAC packet transmission Through prediction, sender and receiver wake up at the same time high energy efficiency. DATA is wake up at predicted time generated S B DATA A time pseudorandom time R B B DATA A 15
The problem of packet retransmission Existing work: stay awake and repeat the packets. Large duty cycle and high channel contention. S1 DATA DATA DATA DATA R1 DATA R2 DATA time S2 DATA DATA DATA DATA 16
PW-MAC: prediction-based retransmission Retransmit packets with high energy efficiency and low wireless contention. retransmit at the next predicted receiver wake-up time go to sleep S time B DATA B DATA A R B DATA B DATA A failure 17
Outline 1. PW-MAC 1.1 Predictive Wake-up MAC (PW-MAC) 1.2 Prediction-based retransmission 1.3 On-demand prediction error control 18
Prediction error on a pair of MICAz motes Small clock drift ratio 19
Prediction error on another pair of MICAz motes Much larger clock drift ratio 20
PW-MAC: on-demand prediction error control Prediction error: the difference between predicted and actual wakeup time. Use a wakeup advance time to compensate prediction error. Wakeup advance time time S B DATA A R B DATA A 21
PW-MAC: on-demand prediction error control Ensure prediction error to be within sender wakeup window Detect prediction error Request current Update prediction state prediction state time S B DATA A R B DATA A Send prediction state 22
PW-MAC effectively controls the prediction error to be ≤ wake -up-advance time Low cost: average 1 update per 1400 seconds 23
PW-MAC: on-demand prediction error control Advantages: Effective Low cost: average 1 update per 1800 seconds Detect prediction error Request current Update prediction state prediction state time S B DATA A R B DATA A Send prediction state 24
Hidden terminal experiment T wo MICAz senders are hidden to each other With WiseMAC , two senders’ repeated retransmissions cause persistent collisions. 25
Experiment of wake-up schedule conflicts S1 R1 S2 R2 T wo receivers have the same first wake-up time. Pseudorandom wakeup scheduling of PW-MAC avoids persistent wakeup collisions. 26
Multihop network performance A testbed of 15 MICAz motes. Up to 3 multihop traffic flows. 27
Sender duty cycle PW-MAC has the smallest duty cycle 28
Packet delivery latency PW-MAC achieved lowest latency 29
Packet delivery ratio (PDR) Packet Delivery Ratio (PDR) PW-MAC achieved 100% PDR 30
Conclusions Predictive-wakeup mechanism: – High energy efficiency at both senders and receivers. – Low channel contention. Prediction-based retransmission mechanism. On-demand prediction error control. PW-MAC outperformed other tested single-channel protocols on a testbed of MICAz motes. 31
Recommend
More recommend