Show simple item record

dc.identifier.urihttp://hdl.handle.net/11401/78196
dc.description.sponsorshipThis work is sponsored by the Stony Brook University Graduate School in compliance with the requirements for completion of degreeen_US
dc.formatMonograph
dc.format.mediumElectronic Resourceen_US
dc.language.isoen_US
dc.typeDissertation
dcterms.abstractBuggy drivers and hardware failures are two major threats to the reliability of modern virtualized systems. This dissertation proposes SIDE (streamlined isolated driver execution), which protects both a virtual machine monitor and the guest VMs running on top of it from buggy device drivers by isolating the execution of these drivers in a separate protection domain. To enable a guest VM to tolerate any hardware failure of the physical machine it runs on, this dissertation proposes Cuju, an industrial-strength virtualization-based fault tolerance system that allows an individual VM or a group of VMs to continue running despite any failure in the underlying hardware. SIDE protects an OS from buggy device drivers in a way that does not require any modifications to the drivers and that avoids changing the kernel code as much as possible. It exploits virtual memory hardware to set up a device driver execution environment that is compatible with existing device drivers and yet is fully isolated from the kernel. Driver fault is contained and the driver can be reloaded by SIDE without the need of rebooting the kernel. Augmented with a series of optimizations that reduce the number of protection domain crossings between an isolated device driver and the kernel, SIDE is able to run an unmodified device driver for a Gigabit Ethernet NIC while keeping the latency and throughput penalty under 1%. Cuju is based on an epoch-based execution model that holds off a VM's network and disk outputs within an epoch and lets them go only at the end of every epoch, and features a pipeline implementation that maximizes the overlap between consecutive epochs. The current Cuju implementation supports dirty page tracking, dirty page compression, disk I/O retry, bounded-latency execution, network packet handling that minimizes the TCP throughput penalty due to epoch-based execution, and VM execution on multiple virtual CPUs. In addition, Cuju also supports a "fate sharing" approach to supporting the same level of fault tolerance for a group of communicating VMs that form a single service, to reduce the latency penalty that would have arisen had each of these VMs been protected by the single-VM Cuju implementation. When the epoch is set to 10 msec, Cuju incurs a 17.4% performance overhead for a high-page-dirtying-rate VM kernel compilation. For a group of VMs running SPECweb 2009, their throughput under Cuju's protection is almost the same as that when they run without any fault tolerance protection.
dcterms.available2018-03-22T22:39:17Z
dcterms.contributorChiueh, Tzi-cker.en_US
dcterms.contributorZadok, Erezen_US
dcterms.contributorStoller, Scotten_US
dcterms.contributorCheng, Yueqiang.en_US
dcterms.creatorSun, Yifeng
dcterms.dateAccepted2018-03-22T22:39:17Z
dcterms.dateSubmitted2018-03-22T22:39:17Z
dcterms.descriptionDepartment of Computer Science.en_US
dcterms.extent149 pg.en_US
dcterms.formatApplication/PDFen_US
dcterms.formatMonograph
dcterms.identifierhttp://hdl.handle.net/11401/78196
dcterms.issued2017-08-01
dcterms.languageen_US
dcterms.provenanceMade available in DSpace on 2018-03-22T22:39:17Z (GMT). No. of bitstreams: 1 Sun_grad.sunysb_0771E_13255.pdf: 6290776 bytes, checksum: 39cd48c9f78a5de47fd2db7a52f922e2 (MD5) Previous issue date: 2017-08-01en
dcterms.subjectBounded Latency
dcterms.subjectComputer science
dcterms.subjectFault Tolerance
dcterms.subjectGroup Fault Tolerance
dcterms.subjectProtection
dcterms.subjectVirtualized Servers
dcterms.subjectVirtual Machines
dcterms.titleProtection Mechanisms for Virtual Machines on Virtualized Servers
dcterms.typeDissertation


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record