Wireless sensor networks have a wide range of applications and are deployed in increasingly varied situations. Many deployments have focused on long term monitoring, which uses nodes that are delay-tolerant and depend on low-power sleep to minimize the energy consumption and extend operational lifetime. These nodes often have many software modules contending for system resources, making both software development and power management difficult. These challenges call for middleware layers that are different from those for real-time, dense networks. This middleware must be flexible to accommodate and control the vast variety of available hardware peripherals and software applications, as well as to provide simple methods to manage a node's energy consumption. It must also provide an easy-to-use interface for software modification and at the same time take advantage of the long idle periods typically experienced by delay-tolerant sensor nodes.The middleware we propose in this paper is designed for long-term use in delay-tolerant networks. Our middleware keeps a unique system time for more than one year, offering very long-term event scheduling. This middleware takes advantage of the low node utilization of long-term networks and executes software modules in sequence. This avoids complexities in context switching of multiple threads on a single threaded processor, and improves the simplicity of software implementation. Our middleware has a small code footprint of less than 3.5KB, as well as very low scheduling overheads of less than 40 μs to run scheduled applications. This structure also allows the system energy to be centrally managed by the middleware, which minimizes node power consumption and simplifies real world software development.
[1]
Margaret Martonosi,et al.
Implementing software on resource-constrained mobile sensors: experiences with Impala and ZebraNet
,
2004,
MobiSys '04.
[2]
Jeff Rose,et al.
MANTIS OS: An Embedded Multithreaded Operating System for Wireless Micro Sensor Platforms
,
2005,
Mob. Networks Appl..
[3]
Margaret Martonosi,et al.
Impala: a middleware system for managing autonomic, parallel sensor systems
,
2003,
PPoPP '03.
[4]
Deborah Estrin,et al.
An energy-efficient MAC protocol for wireless sensor networks
,
2002,
Proceedings.Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies.
[5]
Margaret Martonosi,et al.
Hardware design experiences in ZebraNet
,
2004,
SenSys '04.
[6]
Koen Langendoen,et al.
An adaptive energy-efficient MAC protocol for wireless sensor networks
,
2003,
SenSys '03.
[7]
Mani B. Srivastava,et al.
A dynamic operating system for sensor nodes
,
2005,
MobiSys '05.
[8]
Adam Dunkels,et al.
Contiki - a lightweight and flexible operating system for tiny networked sensors
,
2004,
29th Annual IEEE International Conference on Local Computer Networks.
[9]
Margaret Martonosi,et al.
Data compression algorithms for energy-constrained devices in delay tolerant networks
,
2006,
SenSys '06.
[10]
Philip Levis,et al.
Maté: a tiny virtual machine for sensor networks
,
2002,
ASPLOS X.
[11]
Robert Szewczyk,et al.
System architecture directions for networked sensors
,
2000,
ASPLOS IX.