System Software for Sensor Networks IST Co-operating Objects Workshop Brussels, June 23 rd 24 th, 2005 Dr. Pedro José Marrón pedro.marron@informatik.uni-stuttgart.de University of Stuttgart, Group 1/30
Outline Motivation What are sensor networks? Example applications Selected system software for sensor networks Operating systems: TinyOS Data mangement systems: TinyDB Adaptive system software The TinyCubus project Conclusion 2/30
Outline Motivation What are sensor networks? Example applications Selected system software for sensor networks Operating systems: TinyOS Data mangement systems: TinyDB Adaptive system software The TinyCubus project Conclusion 3/30
What are Sensor Networks? Definition: Collections of small devices that: Are equipped with sensors Communicate Ad-Hoc with each other Exchange and process data Have limited resources Are mostly static Source: UC Berkeley Source: Crossbow Technologies Inc. 4/30
How does the Future Look Like? Definition: Collections of small devices that: Are equipped with sensors and actuators Communicate Ad-Hoc and using infrastructure Process data and interact with services Have limited resources Are static and mobile Source: UC Berkeley Source: Crossbow Technologies Inc. 5/30
Hardware Platforms BTNode Moteiv Telos Smartdust Crossbox MICAs Teco Particle Teco Node 6/30
Sensor Network Applications Habitat Monitoring Applications Great Duck Island (GDI) System Hogthorb Sow heat period monitoring Environment Observation and Forecasting Systems ALERT National Weather Service Floodnet River monitoring in UK Health Applications Care in the Community UK UbiCare UK Military Applications WINS Surveillance and exploration Odyssey Underwater surveillance 7/30
Sensor Network Applications Intelligent Building Monitoring Structure Health Monitoring System US, Canada Sustainable Bridges EU Project Intelligent Traffic Systems Safe Traffic Sweden Vehicular Networks (CarTalk 2000) EU Project Smart Room Environments Aware Home Georgia Institute of Technology Sense-R-Us University of Stuttgart... and many more 8/30
Sensor Network Applications Intelligent Building Monitoring Structure Health Monitoring System US, Canada Sustainable Bridges EU Intelligent Traffic Systems/Vehicular Networks Safe Traffic Sweden Vehicular Networks (CarTalk 2000) Smart Room Environments Aware Home Georgia Tech EU Sense-R-Us University of Stuttgart... and many more 9/30
Sustainable Bridges Goal: Cost-effective monitoring of bridges to detect structural defects Simple and complex data: temperature, vibration Noise detection and localization Data sampling: 40 KHz! Time synch.: 60 µs Sensor lifetime: 3 years! Hybrid network topology Static sensor nodes 10/30
Vehicular Networks Cartalk Goal: Development of a cooperative driver assistance system Provide an Ad-Hoc warning system for: Traffic jams Accidents Lane/highway merging Standard query interface: Avg speed/temperature, road conditions Location, position 11/30
Sense-R-Us Goal: Smart environment used to store and query context information Types of nodes Red = Rooms Blue = People Yellow = Gateways Types of queries Location Meetings Meeting duration 12/30
Application Differences Property Sust. Bridges VANETs Sense-R-Us Data Model Specific Generic Generic Query Model Push-based Pull-based Pull/Push Prog. Paradigm Pub/Sub Query-based Query-based Topology hybrid ad-hoc hybrid Dist. Transparency Energy Mobility Real-time Time Synch. Reconfiguration Not important Medium Very important 13/30
Application Differences Property Sust. Bridges VANETs Sense-R-Us Data Model Specific Generic Generic Query Model Push-based Pull-based Pull/Push Prog. Paradigm Pub/Sub Query-based Query-based Topology hybrid ad-hoc hybrid How can we deal with this complexity? Dist. Transparency Energy Mobility Real-time Time Synch. Reconfiguration Not important Medium Very important 13/30
Outline Motivation What are sensor networks? Example applications Selected system software for sensor networks Operating systems: TinyOS Data mangement systems: TinyDB Adaptive system software The TinyCubus project Conclusion 14/30
Available System Software Most solutions are custom-made Ethernut Sensoria Contiki MantisOS... TinyOS is the most common research system software used It is becoming the standard for sensor networks 15/30
The TinyOS Project Goal: Development of an operating system for sensor networks Philosophy: Provide a minimal framework for sensor networks Allow abstractions to emerge Methodology: Event-driven architecture CAD-like programming model and language (nesc) Based on the specification of components Component interface: provides, uses, signals and handles 16/30
TinyOS Program Example Messaging component: Handles the event: TX_packet_done Sends signal: msg_send_done Uses interface: TX_packet Provides interface: send_msg Keeps internal state 17/30
The TinyDB System Goal: Development of an acquisitional query processor layer for sensor networks Philosophy: Efficient data acquisition is our business Only continuous queries are important Methodology: Implementation as a component of TinyOS Definition of an acquisitional query language (ACQL) In-network query processing and classification of query types Reduce communication overhead Reduce energy consumption 18/30
Acquisitional Query Language Data model: Entire sensor network is a single table Columns contain all the attributes in the network Rows specify the individual sensor data Query model: All queries create a continuous data stream Query language is SQL-based with new language features Traditional SQL with aggregation operators Event processing capabilities Creation of storage points Specification of lifetime queries 19/30
Advantages of TinyDB Nice database abstraction on top of a generic operating system for sensor networks Powerful programming abstraction New functionality can be added to TinyDB Aggregation functions are extensible Non-database abstractions like events are provided as part of the operating system Actuators integrated in the operating system Growing community of users, developers and commercial support (Intel, Xbow, etc.) 20/30
Limitations of TinyDB No possibility to reconfigure the application or incorporate new code at run-time Requirements of the application must be known at compile time Applications are responsible for providing most services Applications have no control over optimization parameters 21/30
Outline Motivation What are sensor networks? Example applications Selected system software for sensor networks Operating systems: TinyOS Data mangement systems: TinyDB Adaptive system software The TinyCubus project Conclusion 22/30
Adaptive Approaches Almost all algorithms found in sensor networks attempt at some form of adaptation Data Acquisition methods can be active or passive Data Dissemination tries to minimize route maintenance Data Storage tries to optimize space or localization Data Retrieval and Processing try to optimize routes, sampling rate, operator use Adaptation/Optimization based on: Application knowledge Semantic knowledge System parameters 23/30
The Case for Adaptive Systems Adaptation is equivalent to optimization Adaptation/Optimization is intrinsic to sensor network processing System software should provide support for adaptation Avoid duplication of efforts Allow for flexible applications System software should not restrict the application Provide control over optimization parameters System software should be configurable Allowing for reconfigurations on the fly, especially in mobile environments 24/30
The TinyCubus Project Goal: Development of a generic reconfigurable system software for sensor networks Philosophy: Flexibility and adaptation are the key issues Methodology: Implementation on top of TinyOS Definition of generic frameworks to allow for flexibility and adaptation Provision of a set of standard components System components Data management and querying components 25/30
TinyCubus Architecture A 0 A 1 A m Tiny Configuration Engine O2 Opt. Param. Application Components TinyCubus Operating System/Hardware O1 Topology Manager A 3 A 2 A 1 App. Req. S 1 S 2 S 3 Sys. Param. User Defined Components System Components Tiny Data Mgmt. Framework Data Mgmt. Components TinyOS Tiny Cross Layer Framework State Repository Hardware Abstraction Layer S 0 S 1... S n 26/30
Outline Motivation What are sensor networks? Example applications Selected system software for sensor networks Operating systems: TinyOS Data mangement systems: TinyDB Adaptive system software The TinyCubus project Conclusion 27/30
Current Steps Research issue identification as part of the Embedded Wisents Consortium Coordination Action, 6th Framework, IST, Priority 2, September 1 st 2004 August 31 st 2006 12 partner from the Netherlands, Denmark, Sweden, Italy, Switzerland, France, England, Spain, Germany Work on studies regarding: Applications and application scenarios Paradigms for algorithms and interactions Vertical functions System architectures and programming models Research roadmap preparation 28/30
What are we looking for? Industrial collaboration! For the following fields: Sensor network applications Adaptation and adaptive algorithms Cross-layer issues for sensor networks Security in sensor networks In order to develop our understanding of specific needs In order to evaluate current solutions which are the result of current (ongoing) research 29/30
Thank You for Your Attention Dr. Pedro José Marrón University of Stuttgart, Group Universitätsstr. 38 D-70569 Stuttgart Germany Phone: +49-711-7816-223 Fax: +49-711-7816-424 pedro.marron@informatik.uni-stuttgart.de 30/30