TARDIS: Software-Only System-Level Record and Replay in Wireless Sensor Networks

AutorTancreti, Matthew; Sundaram, Vinaitheerthan; Bagchi, Saurabh; Eugster, Patrick
ArtConference Proceedings
AbstraktWireless 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 possibility of a faithful replay and causing a large class of bugs to go unnoticed. In short, record and replay logs a trace of predefined events while a deployed application is executing, enabling replaying of events later using debugging tools. Existing recording methods fail due to the many sources of non-determinism and the scarcity of resources on nodes. In this paper we introduce Trace And Replay Debugging In Sensornets (Tardis), a software-only approach for deterministic record and replay of WSN nodes. Tardis is able to record all sources of non-determinism, based on the observation that such information is compressible using a combination of techniques specialized for respective sources. Despite their domain-specific nature, the techniques presented are applicable to the broader class of resource-constrained embedded systems. We empirically demonstrate the viability of our approach and its effectiveness in diagnosing a newly discovered bug in a widely used routing protocol.
SerieIPSN '15
InProceedings of the 14th International Conference on Information Processing in Sensor Networks, p.286-297