Virtual Machines Xen and Terra Rajan Palanivel. Xen and Terra : Papers Xen and the art of virtualization. -Univ. of Cambridge Terra: A VM based platform.

Slides:



Advertisements
Similar presentations
Virtualization Technology
Advertisements

XEN AND THE ART OF VIRTUALIZATION Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, lan Pratt, Andrew Warfield.
Embedded System Lab. Yoon Jun Kee Xen and the Art of Virtualization.
Bart Miller. Outline Definition and goals Paravirtualization System Architecture The Virtual Machine Interface Memory Management CPU Device I/O Network,
Xen , Linux Vserver , Planet Lab
G Robert Grimm New York University Disco.
Xen and the Art of Virtualization A paper from the University of Cambridge, presented by Charlie Schluting For CS533 at Portland State University.
Xen and the art of the virtualization Tao Yang CS708 19/04/07.
Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield.
G Robert Grimm New York University Xen and Nooks.
KVM/ARM: The Design and Implementation of the Linux ARM Hypervisor Fall 2014 Presented By: Probir Roy.
November 1, 2004Introduction to Computer Security ©2004 Matt Bishop Slide #29-1 Chapter 33: Virtual Machines Virtual Machine Structure Virtual Machine.
Virtualization for Cloud Computing
Virtual Machine Monitors CSE451 Andrew Whitaker. Hardware Virtualization Running multiple operating systems on a single physical machine Examples:  VMWare,
Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt & Andrew Warfield.
Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield.
Xen and the Art of Virtualization. Introduction  Challenges to build virtual machines Performance isolation  Scheduling priority  Memory demand  Network.
CSE598C Virtual Machines and Their Applications Operating System Support for Virtual Machines Coauthored by Samuel T. King, George W. Dunlap and Peter.
Tanenbaum 8.3 See references
Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina.
Microkernels, virtualization, exokernels Tutorial 1 – CSC469.
Jakub Szefer, Eric Keller, Ruby B. Lee Jennifer Rexford Princeton University CCS October, 2011 報告人:張逸文.
CS533 Concepts of Operating Systems Jonathan Walpole.
CS533 Concepts of Operating Systems Jonathan Walpole.
Virtualization The XEN Approach. Virtualization 2 CS5204 – Operating Systems XEN: paravirtualization References and Sources Paul Barham, et.al., “Xen.
Operating System Support for Virtual Machines Samuel T. King, George W. Dunlap,Peter M.Chen Presented By, Rajesh 1 References [1] Virtual Machines: Supporting.
Virtualization Concepts Presented by: Mariano Diaz.
Benefits: Increased server utilization Reduced IT TCO Improved IT agility.
Xen I/O Overview. Xen is a popular open-source x86 virtual machine monitor – full-virtualization – para-virtualization para-virtualization as a more efficient.
Three fundamental concepts in computer security: Reference Monitors: An access control concept that refers to an abstract machine that mediates all accesses.
Virtualization Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation is licensed.
Xen I/O Overview.
Virtual Machine Security Systems Presented by Long Song 08/01/2013 Xin Zhao, Kevin Borders, Atul Prakash.
Trusted Computing Or How I Learned to Stop Worrying and Love the MPAA.
Virtual Machine Monitors: Technology and Trends Jonathan Kaldor CS614 / F07.
Xen and The Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt & Andrew Warfield.
CS533 Concepts of Operating Systems Jonathan Walpole.
Nathanael Thompson and John Kelm
 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.
Introduction to virtualization
Operating Systems Security
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Full and Para Virtualization
Lecture 26 Virtual Machine Monitors. Virtual Machines Goal: run an guest OS over an host OS Who has done this? Why might it be useful? Examples: Vmware,
Protection of Processes Security and privacy of data is challenging currently. Protecting information – Not limited to hardware. – Depends on innovation.
OS Structures - Xen. Xen Key points Goal: extensibility akin to SPIN and Exokernel goals Main difference: support running several commodity operating.
CSE 451: Operating Systems Winter 2015 Module 25 Virtual Machine Monitors Mark Zbikowski Allen Center 476 © 2013 Gribble, Lazowska,
Cloud Computing – UNIT - II. VIRTUALIZATION Virtualization Hiding the reality The mantra of smart computing is to intelligently hide the reality Binary->
Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine and Mendel Rosenblum Presentation by Mark Smith.
Advanced Operating Systems (CS 202) Virtualization March 7, 2016.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Virtual Machines (part 2) CPS210 Spring Papers  Xen and the Art of Virtualization  Paul Barham  ReVirt: Enabling Intrusion Analysis through Virtual.
CS 695 Topics in Virtualization and Cloud Computing, Autumn 2012 CS 695 Topics in Virtualization and Cloud Computing More Introduction + Processor Virtualization.
Xen and the Art of Virtualization
Virtual Machine Monitors
Advanced Operating Systems (CS 202) Virtualization
Virtualization Technology
Xen and the Art of Virtualization
Why VT-d Direct memory access (DMA) is a method that allows an input/output (I/O) device to send or receive data directly to or from the main memory, bypassing.
L2- Virtualization Technology
Presented by Yoon-Soo Lee
Xen: The Art of Virtualization
TERRA Authored by: Garfinkel, Pfaff, Chow, Rosenblum, and Boneh
OS Virtualization.
Virtualization Techniques
Xen and the Art of Virtualization
CSE 451: Operating Systems Autumn Module 24 Virtual Machine Monitors
Xen and the Art of Virtualization
CSE 451: Operating Systems Autumn Module 24 Virtual Machine Monitors
System Virtualization
Presentation transcript:

Virtual Machines Xen and Terra Rajan Palanivel

Xen and Terra : Papers Xen and the art of virtualization. -Univ. of Cambridge Terra: A VM based platform for trusted computing. - Stanford Univ.

Virtual Machine and Advantages Multiplexing the real machine in to multiple “virtual” machines. General architecture consist of a software layer (Monitor) that exposes VMs and various “guest” OSs run on these VMs. Some Advantages: 1. Concurrent execution of different OS on the same hardware and hence different applications. 2. Resource Isolation. 3. Upgrade OS software to a different version without losing the ability to run older legacy OS and it’s applications.

Types of Monitor. Monitor runs on a higher privilege level than the guest OS. Sensitive/Privileged instructions. (Ex: MOV) Classified by the amount of guest OS instructions that are executed by monitor or by the real hardware. CSIM (Complete software Interpreter machine), Hybrid VM (HVM) and VMM. VMM : Requires that “Statistically dominant subset of the virtual processor instructions be executed on the real processor”. (Type 1 and Type 2) Xen –Type 1 VMM.

Type 1 and Type 2 VMMs Runs directly on hardware Good performance Type I VMM Hardware Virtual Machine Monitor Guest Operating System Guest Process Type II VMM Virtual Machine Monitor Guest Operating System Host Operating System Hardware Guest Process Uses existing host OS abstractions to implement services Poor performance

Full Virtualization Full Virtualization: No modification required for the guest OS (VMWare’s ESXServer). Drawbacks : (esp. on x86) 1. Sensitive Instructions fail without traps. 2. Need dynamic rewrite of OS kernel. 3. Shadow system structures (performance issue to sync virtual and shadow structures). 4. Guest OS may need both virtual and real resources. (Time: TCP timeouts and RTT, Machine address for super pages etc).

Xen: Para Virtualization Para Virtualization: Exposed hardware is similar but not identical to the real machine. OS modifications required. ABI not changed. (Guest apps run without changes). High performance. Xen Hypervisor.

Xen

Xen – CPU Xen Hypervisor runs in ring 0. Guest OS runs in a lower privilege level (ring 1). Privileged and sensitive instructions are paravirtualized by requiring them to be validated and executed by hypervisor. Guest OS protects itself from it’s other processes by running in a separate address space (and separate privilege level). Trap/Exception handlers are registered with Xen for validation. (Xen checks that the code segment of the handlers will not run in ring 0). Fast Exception handlers for system calls.

Xen – Memory Management Initial Memory allocation: 1. Static Allocation for each domain. 2. Dynamic expansion/contraction possible. Virtualizing memory is Complicated in x86: 1. x86-MMU handles TLB misses by searching through the page table in the hardware. (No Soft TLB support). 2. TLB flush on context switches. (No tagged TLB support).

Xen – Memory Management Virtual address translation: Page Tables: Allocated and managed by guest OSs but restricted to read only access. Updates validated and applied by Xen. (via hypercalls) Xen: Associates a type and reference count with each machine page frame. (PD, PT, LDT, GDT, RW). Xen exists in the 64 MB section on top of every address space (TLB flush prevented when entering/leaving Xen Hypervisor). Page fault Handling: (CR2 register) : Pre determined location.

Control /Data / Timers Hypercalls : synchronous calls from domain to Hypervisor. Domains do privileged operations via hypercalls. Events: asynchronous notifications delivered via events from Xen to domains. (For delivering h/w interrupts). Data transfer through Descriptor rings. (Producer – Consumer). Time and Timers: Real, Virtual and wall-clock.

Xen - Network Xen provides a Virtual Firewall-router (VFR). Each domain has one or more VIFs (virtual Interfaces) attached logically to VFR. VFR has rules of the form. Two I/O buffer descriptor rings. (Transmit and Receive). Trans: Domain updates the transmit descriptor ring. Xen copies the descriptor and the packet header. Header is inspected by VFR. Payload is not copied (Scatter-gather). Pages are pinned till completion. Recv: Xen multiplexes/firewalls using VFR and avoids copy by page flipping.

I/O Ring (Transmit or Receive)

Control and Management. Management software runs on a special guest OS (domain 0). List of parameters to manage include access control (for i/o devices), amount of physical memory per domain, VFR rules etc. Mgmt software uses control interfaces provided by Xen.

Xen – Relative Performance

Xen – Network Performance

Xen - Performance Multiple Apache processes in Linux vs. One Apache process in each guest OS

Terra: Goals Goal is to run applications with wide range of security requirements simultaneously. Multiple Closed platforms on general purpose hardware. Software stack is tailored from hardware interface up to meet the security requirements of it’s applications. Isolation and authentication.

Terra - TVMM Trusted VMM (TVMM). Facilitates Open and Closed box VMs. Open box VM runs regular commodity applications. Closed box VMs provide hardware memory protection. (Isolation) Cryptographic authentication (Attestation). TVMM acts as a trusted party to authenticate the software running in a VM to remote parties.

Terra – Architecture. Two VM abstractions (Open and close). Contents of closed box cannot be inspected or manipulated by the platform owner. Provides Isolation, Extensibility, Efficiency, Compatibility and Security. Extra features by Terra: Root Secure, Attestation and Trusted path.

Terra - Architecture

Terra – Attestation and VM Identity Attestation: Application in a closed box VM authenticates itself to remote parties. Authenticates who built the hardware and what layers of software are running on the machine. Building a certificate chain (H/w -> BIOS -> boot loader -> TVMM -> VM -> Apps). Terra uses a tamper resistant hardware (TPM). (Embedded private key)

Terra – Attestation Firmware Boot Loader TVMM ENDORSE API CALL SIGNED CERTIFICATE Hardware VM

Terra : Example Attestation TLS/SSL Session between Quicken and Remote bank server. Client sends the attestation certificate chain during TLS Handshake. 1. Lowest certificate (of h/w) in the chain is from a trusted authority. 2. All hashes in the chain are on the list of remote server’s list of authorized software. (trustable BIOS, boot loader, TVMM) 3. Topmost certificate (containing the hash of quicken) is on the list of authorized version. If all the checks are valid, then TLS is completed and session key exchanged.

Privacy Attestation process identifies the machine! (privacy concerns). Privacy CA (PCA): User’s machine send an attested cert request to PCA and PCA issues an anonymized cert for attestation. Other issues : DRM etc. – Media servers may release content only to platforms that would prevent copying, expire the media after certain time etc.

Terra – Device Driver Security. Drivers have the most security holes.. Hardware memory protection + chipset protection can prevent drivers from DMA ing to other address spaces. NGSCB architecture: 1. Runs in a curtained memory protected from DMA attacks and from untrusted OS. 2. Leverages device drivers of the untrusted OS (running in an open box VM) via an explicit interface in the untrusted Os kernel.

Q & A. QA