Protocol transformation for transiently powered wireless sensor networks

Transiently powered wireless sensor networks (TPWSNs) introduce intermittent computing problems that are not faced by traditional wireless sensor networks (WSNs). Nodes in a TPWSN may crash and later recover at an arbitrary time due to their power cells depleting and subsequently recharging to a point where the nodes can resume their tasks. During a crash, the node loses its state which will have to be later reacquired on restart. To reduce the overhead associated with recomputing a current consistent state, techniques such as checkpointing have been proposed. However, checkpointing is a process that imposes a considerable energy overhead on the network, making it an impractical approach. A large body of work has been done for WSNs but several of the protocols will not work for TPWSNs, which limits the usefulness of TPWSNs. In this paper, we propose a transformational approach that takes as input a non TPWSN-tolerant protocol and transforms it into a corresponding TPWSN-tolerant one. The approach is based on the identification and generation of persistent temporal paths. We first identify some impossibility results and we then prove the correctness of our framework. We show its viability by transforming a broadcast protocol that has poor performance in WSNs into one that has a high performance in TPWSNs, increasing message coverage from 12.9% to 92.0% of nodes in the worst case.

[1]  Brandon Lucia,et al.  Chain: tasks and channels for reliable intermittent programs , 2016, OOPSLA.

[2]  Junaid Haroon Siddiqui,et al.  Efficient intermittent computing with differential checkpointing , 2019, LCTES.

[3]  Brandon Lucia,et al.  Nonvolatile memory is a broken time machine , 2014, MSPC@PLDI.

[4]  Felix C. Freiling,et al.  The failure detector abstraction , 2011, CSUR.

[5]  Matthew Hicks,et al.  Intermittent Computation without Hardware Support or Programmer Intervention , 2016, OSDI.

[6]  Shlomi Dolev,et al.  Self Stabilization , 2004, J. Aerosp. Comput. Inf. Commun..

[7]  Abhiman Hande,et al.  Indoor solar energy harvesting for sensor network router nodes , 2007, Microprocess. Microsystems.

[8]  Kevin Fu,et al.  Mementos: system support for long-running computation on RFID-scale devices , 2011, ASPLOS XVI.

[9]  L. Larcher,et al.  A WSN system powered by vibrations to improve safety of machinery with trailer , 2012, 2012 IEEE Sensors.

[10]  Felix C. Freiling,et al.  From Crash-Stop to Permanent Omission: Automatic Transformation and Weakest Failure Detectors , 2007, DISC.

[11]  Arnab Raha,et al.  QUICKRECALL: A Low Overhead HW/SW Approach for Enabling Computations across Power Cycles in Transiently Powered Computers , 2014, 2014 27th International Conference on VLSI Design and 2014 13th International Conference on Embedded Systems.

[12]  Sandeep S. Kulkarni,et al.  Auditable Restoration of Distributed Programs , 2015, 2015 IEEE 34th Symposium on Reliable Distributed Systems (SRDS).

[13]  Sandeep S. Kulkarni,et al.  Collaborative Stabilization , 2016, 2016 IEEE 35th Symposium on Reliable Distributed Systems (SRDS).

[14]  Marcos K. Aguilera,et al.  Failure detection and consensus in the crash-recovery model , 2000, Distributed Computing.

[15]  Brandon Lucia,et al.  Alpaca: intermittent execution without checkpoints , 2017, Proc. ACM Program. Lang..

[16]  Yoshihiro Kawahara,et al.  Prototype implementation of ambient RF energy harvesting wireless sensor networks , 2010, 2010 IEEE Sensors.

[17]  Omid Mirzaei,et al.  Privacy Models in Wireless Sensor Networks: A Survey , 2016, J. Sensors.

[18]  Brandon Lucia,et al.  A simpler, safer programming and execution model for intermittent systems , 2015, PLDI.

[19]  Luca Mottola,et al.  HarvOS: Efficient Code Instrumentation for Transiently-Powered Embedded Sensing , 2017, 2017 16th ACM/IEEE International Conference on Information Processing in Sensor Networks (IPSN).

[20]  Brandon Lucia,et al.  Adaptive Dynamic Checkpointing for Safe Efficient Intermittent Computing , 2018, OSDI.

[21]  Sam Toueg,et al.  The weakest failure detector for solving consensus , 1992, PODC '92.

[22]  Ke Li,et al.  Qi-ferry: Energy-constrained wireless charging in wireless sensor networks , 2012, 2012 IEEE Wireless Communications and Networking Conference (WCNC).

[23]  Ellen W. Zegura,et al.  A message ferrying approach for data delivery in sparse mobile ad hoc networks , 2004, MobiHoc '04.

[24]  Philip Levis,et al.  CTP , 2013, ACM Trans. Sens. Networks.

[25]  Sandeep S. Kulkarni,et al.  Lazy Repair for Addition of Fault-Tolerance to Distributed Programs , 2016, 2016 IEEE International Parallel and Distributed Processing Symposium (IPDPS).

[26]  Arnab Raha,et al.  Energy-Aware Memory Mapping for Hybrid FRAM-SRAM MCUs in Intermittently-Powered IoT Devices , 2017, ACM Trans. Embed. Comput. Syst..

[27]  Brandon Lucia,et al.  A Reconfigurable Energy Storage Architecture for Energy-harvesting Devices , 2018, ASPLOS.

[28]  Arshad Jhumka,et al.  Neighborhood View Consistency in Wireless Sensor Networks , 2016, ACM Trans. Sens. Networks.

[29]  Luca Benini,et al.  Hibernus++: A Self-Calibrating and Adaptive System for Transiently-Powered Embedded Devices , 2016, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[30]  Sandeep S. Kulkarni,et al.  Bounded Auditable Restoration of Distributed Systems , 2017, IEEE Transactions on Computers.

[31]  Luca Benini,et al.  Hibernus: Sustaining Computation During Intermittent Supply for Energy-Harvesting Systems , 2015, IEEE Embedded Systems Letters.