Massachusetts Institute of Technology
Cabala : a speculative execution framework to make Linux services fault tolerant
Abstract
dc:description.abstractCabala is a speculative execution framework that enables server programs in Linux to be fault tolerant. The errors it targets are run-time errors that are due to program bugs, and which cause program exit; in particular, it provides resilience to errors triggered by requests. The Cabala framework is implemented as a user-space library, and enforces per-request checkpoint/rollback semantics to provide fault-tolerance. It provides facilities for checkpointing the state of the server program just before request processing starts, executing the processing in an isolated environment, detecting tolerated run-time errors before they cause program exit, and committing or discarding the modifications made during processing. Cabala addresses the fault tolerance needs of server programs in the context of supported errors. It enables the services provided by a server program to be highly available and ensures that a program which is correct and satisfies Cabala's requirements remains correct despite tolerated errors; it also ensures that the system's state remains consistent. In addition, Cabala is easy to use; the only changes required to the server program's source code are the inclusion of the Cabala library and the addition of three library function calls. Cabala was evaluated with two Linux server programs, the Apache2 web server and the DHCP4 DHCP server; it detected the tolerated errors and correctly recovered the server programs in both cases.
Degree
thesis:*- Department dc:contributor.department
- Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science.
- Grantor dc:publisher
- Massachusetts Institute of Technology
- Year dc:date.issued
- 2013
Author and committee
dc:creator, dc:contributor.*- Author dc:creator
-
- Joshi, Kavya (Kavya U.)
- Advisor dc:contributor.advisor
-
- Robert Morris.
Subjects
dc:subject × 1Rights
dc:rights- Statement dc:rights
-
- M.I.T. theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. See provided URL for inquiries about permission.
- Licence dc:rights.uri
- Language dc:language.iso
- eng
Identifiers
dc:identifier.*- Handle dc:identifier.uri
- http://hdl.handle.net/1721.1/85428
- OAI identifier oai:identifier
- oai:dspace.mit.edu:1721.1/85428