OSDI '04 Abstract
Pp. 7790 of the Proceedings
Configuration Debugging as Search: Finding the Needle in the Haystack
Andrew Whitaker, Richard S. Cox, and Steven D. Gribble, University of Washington
This work addresses the problem of diagnosing configuration errors
that cause a system to function incorrectly. For example, a change to
the local firewall policy could cause a network-based application to
malfunction. Our approach is based on searching across time for the
instant the system transitioned into a failed state. Based on this
information, a troubleshooter or administrator can deduce the cause of
failure by comparing system state before and after the failure.
We present the Chronus tool, which automates the task of searching for
a failure-inducing state change. Chronus takes as input a
user-provided software probe, which differentiates between working and
non-working states. Chronus performs ``time travel'' by booting a
virtual machine off the system's disk state as it existed at some
point in the past. By using binary search, Chronus can find the fault
point with effort that grows logarithmically with log size. We
demonstrate that Chronus can diagnose a range of common configuration
errors for both client-side and server-side applications, and that the
performance overhead of the tool is not prohibitive.
- View the full text of this paper in HTML and
Until December 2005, you will need your USENIX membership identification in order to access the full papers. The Proceedings are published as a collective work, © 2004 by the USENIX Association. All Rights Reserved. Rights to individual papers remain with the author or the author's employer. Permission is granted for the noncommercial reproduction of the complete work for educational or research purposes. USENIX acknowledges all trademarks within this paper.
- If you need the latest Adobe Acrobat Reader, you can download it from Adobe's site.