Challenges System Architectures for Unified Power Management in � Power management is critical for wireless sensor networks � Limited energy source Wireless Sensor Networks � Lifetime from months to years � Gap between algorithms and systems � Significant advance in power management algorithms & protocols � Significant challenges to integrate them in real systems Chenyang Lu � Minimum support for power management in OS Department of Computer Science and Engineering � Need unified system architectures for flexible power management! 6 Outline Outline � � MLA: Media Access Control Layer Architecture MLA: Media Access Control Layer Architecture � Unified radio power management architecture � Component architecture for MAC protocols � � ICEM: Integrated Concurrency and Energy Management ICEM: TinyOS device driver architecture � Integrated and automatic power management for all I/O devices � Integrated power management for all I/O devices 7 8 Problem Current Solution � � Conflicting application requirements Design a new MAC protocol as a monolithic stack � Energy S-MAC � � Latency � BMAC Backoff Control Send/Receive Interfaces Sleep Scheduling Interfaces Interfaces � Throughput � ZMAC � Radio is a major consumer of energy � XMAC � Need different MAC protocols to meet different requirements Sleep Scheduling Protocol � WiseMAC T-MAC � Send/Receive Clear Logic Channel SCP � Radio Assessment State Funnel-MAC Machine � Backoff Controller Crankshaft � � 802.15.4 � DRAND Habitat Monitoring Tracking Structural Health Health Care � …………… 9 10 1
Problem with Current Solution Problem with Current Solution Backoff Control Backoff Control Send/Receive Interfaces Sleep Scheduling Interfaces Interfaces Send/Receive Interfaces Sleep Scheduling Interfaces Interfaces Sleep Scheduling Protocol Duty Cycling Protocol Backoff Controller Radio Clear State Send/Receive Clear Send/Receive Channel Machine Logic Channel Logic Assessment Radio Assessment State Machine Backoff Controller No separation between power management & All features jumbled into one big core radio functionality monolithic implementation 11 12 Problem: Monolithic Radio Stack MLA: MAC Layer Architecture � Hard to develop new MAC protocols Separation of sleep sleeping from radio core [IPSN‘07] � � • No clear separation of concerns Components for sleep scheduling protocols [SenSys’07] • Need intimate knowledge of entire stack Reusable � ease development and maintenance of new protocols � Hard to maintain multiple MAC stacks as OS evolves Platform independent � Reduces porting effort � � Protocols not reusable across radio platforms � Sleep Scheduling Timers Radio Core 13 14 MLA: MAC Layer Architecture B-MAC: An Example Protocol � Components implement common features of MAC protocols Sender: � Hardware-independent: portable across platforms � Hardware-dependent: portable interfaces, platform specific Preamble Data implementations � Simplifies porting to a new platform Receiver: Sleep � Re-implement hardware-dependent components (once per platform) � Hardware independent components stay the same Data Sleep � Support diverse MAC protocols � CSMA (contention-based), TDMA (scheduling-based), Hybrid Check the Check the Check the � Comparable efficiency to monolithic implementations Channel Channel Channel and receive 15 16 2
B-MAC B-MAC Sender sends preambles equal to CCA check period Sender: Sender: Receiver performs Receiver performs Preamble Data Preamble Data periodic CCA check periodic CCA check Receiver: Sleep Receiver: Sleep Data Data Sleep Sleep Check the Check the Check the Check the Check the Check the Channel Channel Channel Channel Channel and receive Channel and receive 17 18 B-MAC B-MAC: What Does It Need? Sender sends preambles equal to CCA check � Method of turning the radio on and off period Sender: � Method of checking the channel for radio activity (CCA) Receiver receives Receiver performs Data Preamble � Periodic Timer to listen for radio activity data if channel periodic CCA check � A way of sending / receiving preambles busy when performing Receiver: Sleep check � A way of sending / receiving data Data Sleep Sleep Data Check the Check the Sleep Check the Channel Channel Channel and receive Check the Check the Check the Channel Channel and receive Channel 19 20 Breakdown of B-MAC Breakdown of B-MAC � � What does it need? What does it need? Method of turning the radio on and off Method of turning the radio on and off � � � Method of checking the channel for radio activity (CCA) � Method of checking the channel for radio activity (CCA) � Periodic Timer to listen for radio activity Channel Poller Radio Core Timers Radio Core 21 22 3
Breakdown of B-MAC Breakdown of B-MAC � � What does it need? What does it need? � Method of turning the radio on and off � Method of turning the radio on and off � Method of checking the channel for radio activity (CCA) � Method of checking the channel for radio activity (CCA) Periodic Timer to listen for radio activity Periodic Timer to listen for radio activity � � A way of sending preambles and data A way of sending preambles and data � � A way of receiving data and filtering out preambles � Bmac Sender Bmac Sender Bmac Preamble Filter Preamble Sender Channel Poller Preamble Sender Channel Poller LPL Listener Timers Radio Core Timers Radio Core 23 24 Component Library Component Library CSMA Protocols TDMA Protocols Hardware Independent Hardware Dependent Hardware Independent Hardware Dependent Preamble Sender Radio Core Preamble Sender Radio Core LPL Listener Local Time LPL Listener Local Time Channel Poller Alarm Channel Poller Alarm Slot Handlers (TDMA/CSMA) Slot Handlers (TDMA/CSMA) Time Synchronization Low Level Dispatcher Time Synchronization Asynchronous I/O Adapter Low Level Dispatcher Asynchronous I/O Adapter 25 26 Component Library Evaluation � All evaluations performed on TelosB motes in TinyOS 2.0.1 Hybrid Protocols � Implemented 5 MAC protocols Hardware Independent Hardware Dependent � B-MAC, X-MAC, SCP-Wustl, Pure TDMA, SS-TDMA � Measure Preamble Sender Radio Core � Reusability of components among protocols LPL Listener Local Time � Memory footprint compared to monolithic implementations Channel Poller Alarm � Throughput Slot Handlers � Latency (TDMA/CSMA) � Energy Consumption Time Synchronization Low Level Dispatcher Asynchronous I/O Adapter 27 28 4
Code Reuse Reusability of Components B-MAC X-MAC SCP-Wustl Pure-TDMA SS-TDMA 1600 Channel Poller Lines of code LPL Listener 1200 Preamble Sender Time Synchronization Protocol-Specific 800 TDMA Slot Handler Reused CSMA Slot Handler 400 Low Level Dispatcher Async I/O Adapter Alarm 0 Local Time B-MAC X-MAC SCP- Pure SS- Wustl TDMA TDMA Radio Core Other Components 3 3 4 2 2 MAC Protocol Reused Components 6 6 8 7 8 29 30 Memory Footprint (TelosB) Throughput ROM Overhead RAM Overhead 100 20 0 0 0 10 0 0 150 0 0 750 X-MAC (MLA) X-MAC (Monolithic 10 Monolithic Monolithic 10 0 0 0 50 0 B-MAC (MLA) MLA MLA B-MAC (Monolithic 50 0 0 250 0 0 1 B-MAC X-MAC B-MAC X-MAC 1 2 3 4 5 6 7 8 9 10 Num ber of sending node 31 32 MLA: Summary Outline � MLA: Component-based, Low-Power MAC � MLA: Media Access Control Layer Architecture � Unified radio power management architecture architecture for wireless sensor networks � ICEM: Integrated Concurrency and Energy Management � Increases Flexibility � Integrated power management for all I/O devices � Simplifies development � Decentralized Architecture for Structural Health Monitoring Reduces porting effort � � Wireless Clinical Monitoring � Provides evidence contrary to the existing philosophy that radio stacks must be monolithic to be efficient 33 34 5
Recommend
More recommend