Design and validation of computer protocols
Design and validation of computer protocols
Delayline: a wide-area network emulation tool
Computing Systems
Design, implementation, and evaluation of a software-based real-time Ethernet protocol
SIGCOMM '95 Proceedings of the conference on Applications, technologies, architectures, and protocols for computer communication
Dummynet: a simple approach to the evaluation of network protocols
ACM SIGCOMM Computer Communication Review
Automated packet trace analysis of TCP implementations
SIGCOMM '97 Proceedings of the ACM SIGCOMM '97 conference on Applications, technologies, architectures, and protocols for computer communication
Reliability Testing of Applications on Windows NT
DSN '00 Proceedings of the 2000 International Conference on Dependable Systems and Networks (formerly FTCS-30 and DCCA-8)
A Framework for Assessing Dependability in Distributed Systems with Lightweight Fault Injectors
IPDS '00 Proceedings of the 4th International Computer Performance and Dependability Symposium
DOCTOR: an integrated software fault injection environment for distributed real-time systems
IPDS '95 Proceedings of the International Computer Performance and Dependability Symposium on Computer Performance and Dependability Symposium
REAL: A Network Simulator
Checking system rules using system-specific, programmer-written compiler extensions
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
USTC'94 Proceedings of the USENIX Summer 1994 Technical Conference on USENIX Summer 1994 Technical Conference - Volume 1
MiNT-m: an autonomous mobile wireless experimentation platform
Proceedings of the 4th international conference on Mobile systems, applications and services
Automated and distributed protocol testing and debugging for wireless ad-hoc networks
Proceedings of the 9th ACM international symposium on Mobility management and wireless access
Hi-index | 0.00 |
The prevailing practice for testing protocol implementationsis direct code instrumentation to trigger specificstates in the code. This leaves very little scope forreuse of the test cases. In this paper, we present thedesign, implementation, and evaluation of VirtualWire,a network fault injection and analysis system designedto facilitate the process of testing network protocol implementations.VirtualWire injects user-specified networkfaults and matches network events against anticipatedresponses based on high-level specifications written in adeclarative scripting language. With VirtualWire, testingrequires no code instrumentation and fault specificationscan be reused across versions of a protocol implementation.We illustrate the effectiveness of VirtualWire withexamples drawn from testing Linux's TCP implementationand a real-time Ethernet protocol called Rether. Ineach case, 10 to 20 lines of script is sufficient to specifythe test scenario. VirtualWire is completely transparentto the protocols under test, and additional overhead inprotocol processing latency it introduces is below 10%of the normal.