3 research outputs found
Software-Only System-Level Record and Replay in Wireless 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 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 a software-only approach for deterministic record and replay of WSN nodes. The approach records 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
TARDIS: Software-Only System-Level Record and Replay in Wireless Sensor Networks
ABSTRACT Wireless sensor networks (WSNs) are plagued by the possibility of bugs manifesting only at deployment. However, debugging deployed WSNs is challenging for several reasonsthe 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
TARDIS: Software-Only System-Level Record and Replay in Wireless 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 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