TARDIS: software-only system-level record and replay in wireless sensor networks

  title={TARDIS: software-only system-level record and replay in wireless sensor networks},
  author={Matthew Tan Creti and Vinaitheerthan Sundaram and Saurabh Bagchi and Patrick Th. Eugster},
  journal={Proceedings of the 14th International Conference on Information Processing in Sensor Networks},
Wireless sensor networks (WSNs) are plagued by the possibility of bugs manifesting only at deployment. However, debugging deployed WSNs is challenging for several reasons---the remote location of deployed sensor nodes, the non-determinism of execution that can make it difficult to replicate a buggy run, and the limited hardware resources available on a node. In particular, existing solutions to record and replay debugging in WSNs fail to capture the complete code execution, thus negating the… 

Non-Intrusive Distributed Tracing of Wireless IoT Devices with the FlockLab 2 Testbed

A tracing system for validating time-critical software running on multiple distributed wireless devices that does not require code instrumentation, is non-intrusive and is designed to trace the distributed state of an entire network is presented.

A testbed for fine-grained tracing of time sensitive behavior in wireless sensor networks

This paper introduces TRACELAB, a new testbed architecture that allows for fine-grained tracing of time sensitive behavior of low-power wireless embedded systems, and builds on the idea of GPIO tracing by including short GPIO instructions into node applications.

Testbed Assisted Control Flow Tracing for Wireless Embedded Systems

A method that can reconstruct the entire control flow of a program based on recorded state changes (time and state) of I/O pins is developed and an algorithm is presented that safely reduces the number of recorded events while still being able to uniquely determine the executed program path.

Auditability: An Approach to Ease Debugging of Reliable Distributed Systems

  • Sara AlhajailiA. Jhumka
  • Computer Science
    2019 IEEE 24th Pacific Rim International Symposium on Dependable Computing (PRDC)
  • 2019
It is shown that auditability is at least as difficult as the problem of fair exchange, which is the first formal work towards the design of reliable systems through audibility.

Reverb: Speculative Debugging for Web Applications

Reverb is described, a powerful new debugger that makes data flows explicit and queryable, and enables speculative bug fix analysis and wide-area debugging for applications whose server-side components use event-driven architectures.

Enabling Inspection of Wireless Embedded Systems

A new testbed architecture is proposed, new time synchronization protocols are presented, and a new algorithm is described that can be used to automatically place instrumentation code into existing programs for control flow.

Execution reconstruction: harnessing failure reoccurrences for failure reproduction

Execution Reconstruction is proposed, a technique that strikes a better balance between efficiency, effectiveness and accuracy for reproducing production failures and reproduces fully replayable executions that can power a variety of debugging and reliabilty use cases.

CSS JavaScript code Web page Reverb JavaScript engine Reverb JavaScript engine JavaScript code Log of deterministic reads and writes Log of nondeterministic events Web browser Node server

Reverb is a powerful new debugger that makes data flows explicit and queryable, allowing a developer to quickly identify the reads and writes to JavaScript state that affected a particular variable’s value.

HALucinator: Firmware Re-hosting Through Abstraction Layer Emulation

This work introduces extensions to existing library matching techniques that are needed to identify library functions in binary firmware, to reduce collisions, and for inferring additional function names, and demonstrates the practicality of HLE for security analysis.

Energy efficiency in data collection wireless sensor networks

This dissertation proposes a new routing strategy that extends traditional cost-based routing protocols and improves the energy consumption of WSN nodes depending on their external sensors, while maintaining high reliability in WSN data collection applications.



Dependence-based multi-level tracing and replay for wireless sensor networks debugging

Preliminary experimental results show that the test programs, which do not fit the program memory after straightforward instrumentation, can be successfully accommodated in memory using the new method such that the injected errors can be found.

T-check: bug finding for sensor networks

T-Check is a tool that uses random walks and explicit state model checking to find safety and liveness errors in sensor network applications running on TinyOS, and has been used to find previously unknown bugs in TinyOS.

Minerva: distributed tracing and debugging in wireless sensor networks

Minerva, a testbed architecture for distributed debugging of wireless sensor networks, with a flexible debug board installed at each node, provides non-intrusive, network-wide debugging of sensor network applications at a low cost.

Lightweight message tracing for debugging wireless sensor networks

  • V. SundaramP. Eugster
  • Computer Science
    2013 43rd Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN)
  • 2013
This work proposes a message tracing solution which addresses key challenges in WSNs - besides stringent resource constraints, these include out-of-order message arrivals and message losses - while being streamlined for the common case of successful in- order message transmission.

Achieving Repeatability of Asynchronous Events in Wireless Sensor Networks with EnviroLog

The design and implement of EnviroLog is designed and implemented, a distributed service that improves repeatability of experimental testing of sensor networks via asynchronous event recording and replay and validated through a set of microbenchmarks, using the latest XSM platforms.

Efficient diagnostic tracing for wireless sensor networks

This paper proposes an efficient intra-procedural and inter-Procedural control-flow tracing algorithm that generates the traces of all interleaving concurrent events, and argues for the accuracy of the approach through case studies, and illustrates its low overhead through measurements and simulations.

Prius: generic hybrid trace compression for wireless sensor networks

Prius is proposed, a novel hybrid (offline/online) trace compression technique that enables application of established trace compression algorithms for WSNs and achieves high compression rates and significant energy savings.

Replay debugging for distributed applications

We have developed a new replay debugging tool, liblog, for distributed C/C++ applications. It logs the execution of deployed application processes and replays them deterministically, faithfully

Using deterministic replay for debugging of distributed real-time systems

  • H. ThaneH. Hansson
  • Computer Science
    Proceedings 12th Euromicro Conference on Real-Time Systems. Euromicro RTS 2000
  • 2000
By the online recording of significant system events, and then deterministically replaying them off-line, a novel software-based approach is presented for the cyclic debugging of distributed real-time systems that can inspect areal-time system in great detail, while still preserving its real- time behaviour.

FlashBox: a system for logging non-deterministic events in deployed embedded systems

This work proposes FlashBox - a system that acts as a black box for embedded systems, recording non-deterministic events (interrupts), an extension to a compiler, enabling recording capabilities at various granularities, with decreasing cost of flash memories, providing a low cost logging mechanism.