Improving virtual hardware interfaces

  • Authors:
  • Mendel Rosenblum;Ben Pfaff

  • Affiliations:
  • Stanford University;Stanford University

  • Venue:
  • Improving virtual hardware interfaces
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Since the origin of virtual machine monitors in the 1960s, virtual hardware has often been designed with "impure" interfaces different from physical hardware interfaces. Paravirtualization, as this is now termed, is often used to simplify VMMs and boost VM performance. This thesis explores tradeoffs in a rarely seen form of paravirtual interface, where the virtual interface operates at a higher level of abstraction than the common hardware interface. We in particular examine the effects of providing a BSD socket-like interface to a VM instead of an Ethernet interface, and the effects of providing a file system interface instead of a block device interface. Our experiments show that higher-level ("extreme") paravirtualization has direct benefits for sharing, security, and modularity. We also show that our approach requires little or no change to existing VMMs and operating systems. Given the availability of processor cores, it has minimal performance cost: 3% or less in every case for our paravirtual network stack, and under 4% for file system macro-benchmarks. In special cases, we even demonstrate speed-ups. We further extend this high-level virtualization approach for virtual storage. Virtual disks have many attractive properties, such as a simple, powerful versioning model and an architecture that makes it easy to create and economically store large numbers of VMs. They also suffer from serious shortcomings: low-level isolation prevents shared access to storage, versioning takes place at the granularity of a whole virtual disk, and lack of structure obstructs searching or retrieving data. A higher-level virtual interface to storage aids sharing, but not their other shortcomings. Therefore, this thesis proposes the concept of a virtualization aware file system (VAFS) that combines the features of a virtual disk with those of a distributed file system. A VAFS extends a conventional distributed file system with versioning, access control, and disconnected operation features resembling those available from virtual disks. This gains the benefits of virtual disks, without compromising usability, security, or ease of management.