Symbolic execution and program testing
Communications of the ACM
TOSSIM: accurate and scalable simulation of entire TinyOS applications
Proceedings of the 1st international conference on Embedded networked sensor systems
The dynamic behavior of a data dissemination protocol for network programming at scale
SenSys '04 Proceedings of the 2nd international conference on Embedded networked sensor systems
Contiki - A Lightweight and Flexible Operating System for Tiny Networked Sensors
LCN '04 Proceedings of the 29th Annual IEEE International Conference on Local Computer Networks
Full TCP/IP for 8-bit architectures
Proceedings of the 1st international conference on Mobile systems, applications and services
Software composition and verification for sensor networks
Science of Computer Programming - Special issue on new software composition concepts
CUTE: a concolic unit testing engine for C
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Proceedings of the 3rd international conference on Embedded networked sensor systems
Sympathy for the sensor network debugger
Proceedings of the 3rd international conference on Embedded networked sensor systems
Marionette: using RPC for interactive development and debugging of wireless embedded networks
Proceedings of the 5th international conference on Information processing in sensor networks
Avrora: scalable sensor network simulation with precise timing
IPSN '05 Proceedings of the 4th international symposium on Information processing in sensor networks
S2DB: a novel simulation-based debugger for sensor network applications
EMSOFT '06 Proceedings of the 6th ACM & IEEE International conference on Embedded software
NodeMD: diagnosing node-level faults in remote wireless sensor systems
Proceedings of the 5th international conference on Mobile systems, applications and services
Fidelity and yield in a volcano monitoring sensor network
OSDI '06 Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation - Volume 7
Visibility: a new metric for protocol design
Proceedings of the 5th international conference on Embedded networked sensor systems
LUSTER: wireless sensor network for environmental research
Proceedings of the 5th international conference on Embedded networked sensor systems
Clairvoyant: a comprehensive source-level debugger for wireless sensor networks
Proceedings of the 5th international conference on Embedded networked sensor systems
Efficient memory safety for TinyOS
Proceedings of the 5th international conference on Embedded networked sensor systems
Deriving State Machines from TinyOS Programs Using Symbolic Execution
IPSN '08 Proceedings of the 7th international conference on Information processing in sensor networks
Model Checking Medium Access Control for Sensor Networks
ISOLA '06 Proceedings of the Second International Symposium on Leveraging Applications of Formal Methods, Verification and Validation
The hitchhiker's guide to successful wireless sensor network deployments
Proceedings of the 6th ACM conference on Embedded network sensor systems
Proceedings of the 6th ACM conference on Embedded network sensor systems
Dustminer: troubleshooting interactive complexity bugs in sensor networks
Proceedings of the 6th ACM conference on Embedded network sensor systems
Passive diagnosis for wireless sensor networks
Proceedings of the 6th ACM conference on Embedded network sensor systems
KleeNet: automatic bug hunting in sensor network applications
Proceedings of the 6th ACM conference on Embedded network sensor systems
Theoretical Computer Science
CrystalBall: predicting and preventing inconsistencies in deployed distributed systems
NSDI'09 Proceedings of the 6th USENIX symposium on Networked systems design and implementation
Surviving sensor network software faults
Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles
Proceedings of the 7th ACM Conference on Embedded Networked Sensor Systems
Macrodebugging: global views of distributed program execution
Proceedings of the 7th ACM Conference on Embedded Networked Sensor Systems
JPF-SE: a symbolic execution extension to Java PathFinder
TACAS'07 Proceedings of the 13th international conference on Tools and algorithms for the construction and analysis of systems
KLEE: unassisted and automatic generation of high-coverage tests for complex systems programs
OSDI'08 Proceedings of the 8th USENIX conference on Operating systems design and implementation
Murphy loves potatoes: experiences from a pilot sensor network deployment in precision agriculture
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
T-check: bug finding for sensor networks
Proceedings of the 9th ACM/IEEE International Conference on Information Processing in Sensor Networks
Fault prediction in distributed systems gone wild
Proceedings of the 4th International Workshop on Large Scale Distributed Systems and Middleware
Integrating symbolic execution with sensornet simulation for efficient bug finding
Proceedings of the 8th ACM Conference on Embedded Networked Sensor Systems
Intelligible TinyOS sensor systems: explanations for embedded software
CONTEXT'11 Proceedings of the 7th international and interdisciplinary conference on Modeling and using context
A NICE way to test openflow applications
NSDI'12 Proceedings of the 9th USENIX conference on Networked Systems Design and Implementation
Proceedings of the 34th International Conference on Software Engineering
Scaling symbolic execution using ranged analysis
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Detecting problematic message sequences and frequencies in distributed systems
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
MDiag: Mobility-assisted diagnosis for wireless sensor networks
Journal of Network and Computer Applications
An evolutionary framework for routing protocol analysis in wireless sensor networks
EvoApplications'13 Proceedings of the 16th European conference on Applications of Evolutionary Computation
Testing of precision agricultural networks for adversary-induced problems
Proceedings of the 15th annual conference on Genetic and evolutionary computation
Diagnostic Tools for Wireless Sensor Networks: A Comparative Survey
Journal of Network and Systems Management
Minerva: distributed tracing and debugging in wireless sensor networks
Proceedings of the 11th ACM Conference on Embedded Networked Sensor Systems
Troubleshooting interactive complexity bugs in wireless sensor networks using data mining techniques
ACM Transactions on Sensor Networks (TOSN)
FIE on firmware: finding vulnerabilities in embedded systems using symbolic execution
SEC'13 Proceedings of the 22nd USENIX conference on Security
Hi-index | 0.00 |
Complex interactions and the distributed nature of wireless sensor networks make automated testing and debugging before deployment a necessity. A main challenge is to detect bugs that occur due to non-deterministic events, such as node reboots or packet duplicates. Often, these events have the potential to drive a sensor network and its applications into corner-case situations, exhibiting bugs that are hard to detect using existing testing and debugging techniques. In this paper, we present KleeNet, a debugging environment that effectively discovers such bugs before deployment. KleeNet executes unmodified sensor network applications on symbolic input and automatically injects non-deterministic failures. As a result, KleeNet generates distributed execution paths at high-coverage, including low-probability corner-case situations. As a case study, we integrated KleeNet into the Contiki OS and show its effectiveness by detecting four insidious bugs in the μIP TCP/IP protocol stack. One of these bugs is critical and lead to refusal of further connections.