170 likes | 363 Views
An Energy-Efficient MAC Protocol for Wireless Sensor Networks. Tijs van Dam. Quick recap. MAC protocol determines next node to use the medium Evaluate MAC protocols based on energy usage Use realistic communication patterns for evaluation. Classic CSMA.
E N D
An Energy-Efficient MAC Protocol for Wireless Sensor Networks Tijs van Dam
Quick recap • MAC protocol determines next node to use the medium • Evaluate MAC protocols based on energy usage • Use realistic communication patterns for evaluation
Classic CSMA • If air is clear, send; if receiving, wait • How do we know when to receive? • Listen always! • Listening costs 200x more energy than sleeping • Not energy-efficient
S-MAC protocol • Fixed active/sleep duty cycle • Synchronization of active times • Not optimal for fluctuating message load • time (events) • location (important nodes)
T-MAC protocol • Make duty cycle dynamic • End active time with time-out • All messages at start of frame
T-MAC Protocol (2) • RTS/CTS/DATA/ACK exchange • Synchronization not critical • No increasing backoff: fixed contention interval • Overhearing avoidance
Early sleeping problem A B C D Ready-To-Send
Early sleeping problem A B C D • B overhears CTS ! Clear-To-Send
Early sleeping problem A B C D ? Data • B must remain silent • A times out and goes to sleep
Early sleeping problem A B C D Ready-To-Send • When B can send, A is sleeping • B must wait until next frame (problem!)
Early sleeping problem • A node goes to sleep while another node still has a message for it • Occurs mostly in asymmetric communication: • uni-directional flow (nodes-to-sink) • edge of active area • Throughput decreases dramatically
Solutions • After overhearing a CTS, quickly send a Future-Request-To-Send • Target node will be awake • Short pause between CTS and DATA • When receiving an RTS, ignore and send own RTS • only when running out of buffers • only after two tries • Solutions increase throughput with 100%
Simulation setup • 10 x 10 grid network • Patterns: local unicast, nodes-to-sink • Active areas simulate real-world events • Realistic nodes • energy • radio properties • DAS2 cluster • 32 – 64 cpus • 2 mins / simulation, > 40,000 msgs
30000 25000 S-MAC 20000 15000 10000 T-MAC 5000 2500 Simulation results Nodes-to-sink pattern, msglength = 20 4.5 CSMA 4 3.5 3 2.5 energy [ mA / node ] 2 1.5 1 0.5 0 0 0.05 0.1 0.15 0.2 0.25 0.3 load [ msg / node / s]
Simulation results (2) Event-based local unicast, msglength=20 4.5 CSMA 4 3.5 S-MAC 3 2.5 energy used [avg. mA / node] 2 1.5 1 0.5 T-MAC 0 0 1 2 3 4 5 6 7 8 peak load [msg / node / s]
Real implementation • Implemented T-MAC on EYES nodes • FRTS and priority not implemented (yet) • Seems to work well, no data loss yet • When idle, radio is off 97.5% of the time
Conclusions • T-MAC reduces energy. A lot. • Simple implementation • Simple idea can lead to dramatic improvements • Paper submitted for SENSYS’03 • Infrared demo