benefits of the new xen paravirtualization mode

16
Benefits of the new Xen paravirtualization mode Roger Pau Monn´ e Brussels – February 2-3, 2013

Upload: others

Post on 11-Feb-2022

3 views

Category:

Documents


0 download

TRANSCRIPT

Benefits of the new Xen paravirtualization mode

Roger Pau Monne

Brussels – February 2-3, 2013

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

Xen Architecture

Xen Hypervisor

Hardware

device model(qemu)

toolstack

Control DomainNetBSD or Linux

HardwareDrivers

I/O Devices CPU Memory

Paravirtualized(PV)

Domain:NetBSD or Linux

Fully Virtualized

(HVM)Domain:Windows,FreeBSD...

netbackblkback

netfrontblkfront

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 2 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

Paravirtualization

I Virtualization technique developed in the late 90sI Designed by:

I XenoServer research project at Cambridge UniversityI IntelI Microsoft labs

I x86 instructions behave differently in kernel or user mode,options for virtualization were full software emulation orbinary translation.

I Design a new interface for virtualizationI Allow guests to collaborate in virtualizationI Provide new interfaces for virtualized guests that allow to

reduce the overhead of virtualization

I The result of this work is what we know today asparavirtualiztion

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 3 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

Paravirtualization

I All this changes lead to the following interfaces beingparavirtualized:

I Disk and network interfacesI Interrupts and timersI Boot directly in the mode the kernel wishes to run (32 or

64bits)I Page tablesI Privileged instructions

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 4 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

Paravirtualization

I The paravirtualization model works well on 32bit systems, butit has problems on 64bits

I AMD decided to remove segmentation limit in 64bits, that wasused by Xen to protect hypervisor memory

I The 64bit architecture only has two memory protection levelsI This is bad for the Xen architecture, three protection levels are

needed in order to provide isolation between the hypervisor,the guest kernel and the guest userspace.

I In 64bit PV guests every system call bounces up to Xen thatperforms the context switch to the guest kernel.

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 5 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

Paravirtualization

I Pros of paravirtualizationI Provides near to bare metal speedI Reduces overhead of virtualization

I Cons of paravirtualizationI Requires heavy modifications to the guest OS

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 6 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

Full virtualization

I With the introduction of hardware virtualization extensionsXen is able to run unmodified guests

I This requires emulated devices, which are handled by Qemu

I Makes use of nested page tables when available.

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 7 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

Full virtualization

I Pros of full virtualizationI Doesn’t require guest OS changes

I Cons of full virtualizationI Slow IO because of emulated devicesI Legacy bootI Need to run Qemu for each guest

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 8 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

The full virtualization spectrum

VS Software virtualization

VH Hardware virtualization

PV Paravirtualized

Poor performance

Room for improvement

Optimal performance

Disk

and

networ

k

Inte

rrupts

and

timer

s

Emula

ted

mot

herboa

rd

Privile

ged

inst

ruct

ions

and

page

table

s

HVM VS VS VS VH

HVM with PV drivers PV VS VS VH

PVHVM PV PV VS VH

PV PV PV PV PV

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 9 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

Guest support in BSD

I List of BSD systems and operation modes:

PV PVHVM HVM with PV drivers HVM

NetBSD YES NO NO YES

FreeBSD NO YES YES YES

OpenBSD NO NO NO YES

DragonflyBSD NO NO NO YES

I Main problems:I Only PV guests are allowed as control domains (Dom0)I Some providers will only allow PV guests, or charge extra for

HVM guests

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 10 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

Evolving Xen PV

I When PV was designed there were no virtualization extensionsin hardware

I Everything is done using PV interfaces

I Hardware virtualization can provide speed improvements andease of implementation

I Previous slides show how HVM mode evolved to use PVcomponents

I But what happens if PV evolves to use HVM components?

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 11 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

Evolving Xen PV

VS Software virtualization

VH Hardware virtualization

PV Paravirtualized

Poor performance

Room for improvement

Optimal performance

Disk

and

networ

k

Inte

rrupts

and

timer

s

Emula

ted

mot

herboa

rd

Privile

ged

inst

ruct

ions

and

page

table

s

HVM VS VS VS VH

HVM with PV drivers PV VS VS VH

PVHVM PV PV VS VH

PVH PV PV PV VH

PV PV PV PV PV

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 12 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

PVH

I Major features:I Runs in Ring 0I Uses PV entry point, skips BIOS emulationI Uses PV event channels, no APIC emulationI Native Page tablesI Native IDT

I Development done by Mukesh Rathor at Oracle

I Main focus is increasing performance in 64bit PV guests

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 13 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

PVH

I Benefits for the BSD world:I Uses PVHVM callbacks for eventsI Doesn’t use the PV MMUI Can be used as control domain (Dom0)

I The main benefit for BSD systems is that PVH is going tosimplify one of the most difficult aspects of PV, the MMU

I Since the MMU is virtualized by hardware, porting new OSesto run in the PVH mode is greatly simplified

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 14 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

Conclusions

I Xen offers different guest virtualization modes

I Until now, PV was the only allowed mode for control domains

I PVH can be used as control domain, and simplifies theporting efforts

I The MMU changes, that where OS dependant are no longernecessary

I Drivers code can be shared between different BSD systems

I Transition from PVHVM to PVH is simpler than PV

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 15 / 16

Xen Architecture Xen virtualization modes Current support in BSD New Xen virtualization mode Conclusions

Q&A

ThanksQuestions?

Brussels – February 2-3, 2013 Benefits of the new Xen paravirtualization mode 16 / 16