Programming storage-centric sensor networks with Squirrel

We present Squirrel, a stream-oriented programming framework for storage-centric sensor networks. The storage-centric paradigm---where storage operations prevail over communication activity---applies to scenarios such as batch data collection, delay-tolerant mobile applications, and disconnected operations in static networks. Squirrel simplifies developing such applications by decoupling data processing from storage, and by transparently handling the latter. We achieve this through: i) a modular programming abstraction, and ii) a lightweight run-time layer that efficiently allocates data to different storage areas, based on size vs. energy tradeoffs. We demonstrate Squirrel's effectiveness based on three real-world applications, each representing a different storage-centric scenario. The results show that---while relieving programmers from a significant burden---Squirrel achieves efficient utilization of storage areas, enabling energy savings independently of the storage technology.

[1]  Margaret Martonosi,et al.  Data compression algorithms for energy-constrained devices in delay tolerant networks , 2006, SenSys '06.

[2]  Peter Desnoyers,et al.  Capsule: an energy-optimized object storage system for memory-constrained sensor devices , 2006, SenSys '06.

[3]  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.

[4]  Peter Desnoyers,et al.  Ultra-low power data storage for sensor networks , 2006, 2006 5th International Conference on Information Processing in Sensor Networks.

[5]  Suman Nath,et al.  FlashDB: Dynamic Self-tuning Database for NAND Flash , 2007, 2007 6th International Symposium on Information Processing in Sensor Networks.

[6]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach (McGraw-Hill Series in Computer Science) , 2004 .

[7]  M. Welsh,et al.  The Regiment Macroprogramming System , 2007, 2007 6th International Symposium on Information Processing in Sensor Networks.

[8]  Suman Nath,et al.  Energy efficient sensor data logging with amnesic flash storage , 2009, 2009 International Conference on Information Processing in Sensor Networks.

[9]  Dong Kun Noh,et al.  SolarStore: enhancing data reliability in solar-powered storage-centric sensor networks , 2009, MobiSys '09.

[10]  Viktor K. Prasanna,et al.  The Abstract Task Graph: a methodology for architecture-independent programming of networked sensor systems , 2005, EESR '05.

[11]  Luca Mottola,et al.  Programming wireless sensor networks , 2011, ACM Comput. Surv..

[12]  Adam Dunkels,et al.  Enabling large-scale storage in sensor networks with the Coffee file system , 2009, 2009 International Conference on Information Processing in Sensor Networks.

[13]  Mohamed Medhat Gaber,et al.  Learning from Data Streams: Processing Techniques in Sensor Networks , 2007 .

[14]  Matt Welsh,et al.  Fidelity and yield in a volcano monitoring sensor network , 2006, OSDI '06.

[15]  Tarek F. Abdelzaher,et al.  EnviroStore: A Cooperative Storage System for Disconnected Operation in Sensor Networks , 2007, IEEE INFOCOM 2007 - 26th IEEE International Conference on Computer Communications.

[16]  Jennifer Widom,et al.  Models and issues in data stream systems , 2002, PODS.

[17]  Mohamed Medhat Gaber,et al.  Data Stream Processing in Sensor Networks , 2007 .

[18]  Jochen Schiller,et al.  Sensor Networking in Aquatic Environments - Experiences and New Challenges , 2007 .

[19]  Lili Wang,et al.  Design, implementation, and evaluation of EnviroMic: A storage-centric audio sensor network , 2009, TOSN.

[20]  Pedro José Marrón,et al.  COOJA/MSPSim: interoperability testing for wireless sensor networks , 2009, SimuTools.

[21]  Matt Welsh,et al.  Resource aware programming in the Pixie OS , 2008, SenSys '08.

[22]  Amy L. Murphy,et al.  Monitoring heritage buildings with wireless sensor networks: The Torre Aquila deployment , 2009, 2009 International Conference on Information Processing in Sensor Networks.

[23]  Daniel J. Abadi,et al.  An Integration Framework for Sensor Networks and Data Stream Management Systems , 2004, VLDB.

[24]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[25]  Luc Moreau,et al.  Resource aware programming , 2005, TOPL.

[26]  Matt Welsh,et al.  Flask: staged functional programming for sensor networks , 2008, ICFP.

[27]  Michael Neufeld,et al.  ELF: an efficient log-structured flash file system for micro sensor nodes , 2004, SenSys '04.

[28]  David E. Culler,et al.  Procrastination Might Lead to a Longer and More Useful Life , 2007, HotNets.

[29]  Kirk Martinez,et al.  Environmental Sensor Networks , 2005 .

[30]  Daniel Kroening,et al.  SATABS: SAT-Based Predicate Abstraction for ANSI-C , 2005, TACAS.

[31]  Waylon Brunette,et al.  Data MULEs: modeling a three-tier architecture for sparse sensor networks , 2003, Proceedings of the First IEEE International Workshop on Sensor Network Protocols and Applications, 2003..

[32]  Yong Wang,et al.  Energy-efficient computing for wildlife tracking: design tradeoffs and early experiences with ZebraNet , 2002, ASPLOS X.

[33]  Pedro José Marrón,et al.  Removing the memory limitations of sensor networks with flash-based virtual memory , 2007, EuroSys '07.

[34]  David E. Culler,et al.  Telos: enabling ultra-low power wireless research , 2005, IPSN 2005. Fourth International Symposium on Information Processing in Sensor Networks, 2005..

[35]  Koen Langendoen,et al.  Murphy loves potatoes: experiences from a pilot sensor network deployment in precision agriculture , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[36]  Mark D. Corner,et al.  Eon: a language and runtime system for perpetual systems , 2007, SenSys '07.

[37]  Anne-Marie Kermarrec,et al.  Gossiping in distributed systems , 2007, OPSR.

[38]  Margaret Martonosi,et al.  Dali: a communication-centric data abstraction layer for energy-constrained devices in mobile sensor networks , 2007, MobiSys '07.

[39]  Glenford J. Myers,et al.  Structured Design , 1974, IBM Syst. J..

[40]  John A. Stankovic,et al.  t-kernel: providing reliable OS support to wireless sensor networks , 2006, SenSys '06.

[41]  Tarek F. Abdelzaher,et al.  SATIRE: a software architecture for smart AtTIRE , 2006, MobiSys '06.