“virtualisation introduction” -network and services...

50
Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services Virtualisation 2013-2014 – First semester Assistant professor: Katja Gilly Departament: Physics and Computer Architectures

Upload: others

Post on 13-Aug-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Unit 1. “VIRTUALISATION INTRODUCTION”2966-Network and Services Virtualisation2013-2014 – First semesterAssistant professor: Katja GillyDepartament: Physics and Computer Architectures

Page 2: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Outline

• Introduction• History of Virtualisation• Virtualisation Architecture– System Virtualisation– Storage Virtualisation– GPU Virtualisation– Software Virtualisation– Hardware Support Virtualisation– Network Virtualisation

Page 3: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Outline

• Introduction• History of Virtualisation• Virtualisation Architecture– System Virtualisation– Storage Virtualisation– GPU Virtualisation– Software Virtualisation– Hardware Support Virtualisation– Network Virtualisation

Page 4: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Introduction

• What is virtualisation?– Virtualisation is a broad term (virtual memory, storage,

network, etc.)

– Basically allows one computer to do the job of multiple computers, by sharing the resources of a single hardware across multiple environments

Page 5: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Introduction

• What is virtualisation?

Operating System

App. A App. B App. C App. D

Hardware

Virtualisation Layer

VirtualContainer

App. A App. B

Hardware

VirtualContainer

App. CApp. D

Virtualised systemIt makes it possible to run

multiple Virtual Containers on a single physical platform

Page 6: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Introduction

• Why virtualise?– For multitasking operating systems; computers have

more processing power than one task needs– Consolidation: It allows a number of virtual servers to

be consolidated into a single physical machine–Migration: It is relatively easy to migrate virtual

machines from one physical computer to another– Cloning VMs is also easy– Power cost reduction– Portability: you can save the state of a VM onto a

USB flash drive – Greater degree of isolation than a process in an OS

Page 7: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Outline

• Introduction• History of Virtualisation• Virtualisation Architecture– System Virtualisation– Storage Virtualisation– GPU Virtualisation– Software Virtualisation– Hardware Support Virtualisation– Network Virtualisation

Page 8: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

1964 IBM CP-40

1972 IBM VM/370

1997 Virtual PC

1999 VMware

2003Xen

2005 Intel VT

2006 AMD VT

2007KVM-X86

2012Xen-ARMKVM-ARM

Time Sharing

Virtual Memory

Mainframe Virtualisation

DesktopVirtualisation

ServerVirtualisation

Cloud Computing

Traditional-virtualisationPara-virtualisation

HW-assist

MobileVirtualisation

Page 9: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

The first machine to fully support virtualisation was: • IBM’s VM, which began life as part of the System/360

project• Specialised, proprietary, high-end server and mainframe

systems• Very easy to migrate from having a collection of

minicomputers to having a single mainframe.• Each minicomputer would simply be replaced with a

virtual machine

Page 10: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

• By 1980/90 servers virtualisation adoption initiated a reduction– Inexpensive x86 hardware platforms– Windows/Linux adopted as server OSs

➔ 1 machine 1 OS several applications➔ Applications can affect each other➔ Big disadvantage: machine utilisation is very

low, most of the times it is below than 25%

Page 11: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

• x86 server deployments introduced new IT challenges:– Low server infrastructure utilisation (10-18%)– Increasing physical infrastructure costs (facilities, power,

cooling, etc)– Increasing IT management costs (configuration, deployment,

updates, etc)– Insufficient failover and disaster protection

The solution for all these problems was to virtualise x86 platforms

Page 12: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

X86Windows

XP

X86Windows

2003

X86Suse

X86Red Hat

12% Hardware Utilisation

15% Hardware Utilisation

18% Hardware Utilisation

10% Hardware Utilisation

App App App App App App App App

Page 13: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

Computing Infrastructure – Virtualisation

● It matches the benefits of high hardware utilisation with running several operating systems (applications) in separated virtualised environments

• Each application runs in its own operating system

• Each operating system does not know it is sharing the underlying hardware with others

X86 Multi-Core, Multi Processor

70% Hardware Utilisation

X86Windows

XP

App. A

X86Windows

2003

App. B

X86SuseLinux

App. C

X86Red Hat

Linux

App. D

Page 14: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

x86 virtualisation problems:IA-32 (Intel Architecture-32, also named i386) is the third generation of x86 architecture, first implemented in the Intel 80386 microprocessors in 1985.

• Its CPU was designed with virtualisation in mind

• According to Popek and Goldberg(*), the processor would be virtualisable if the set of control sensitive instructions is a subset of the set of privileged instructions.

• This means that any instruction that modifies the configuration of resources in the system must either be executed in privileged mode, or trap if it isn’t.

• Unfortunately, IA-32 instruction set includes 17 instruction set that does not have this property.

(*) Formal Requirements for Virtualizable Third Generation Architectures. Popek and Goldberg. Communications of ACM. 1974

Page 15: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

What are sensitive instructions?• In architecture field, the CPU designers separate instructions into

different categories.

– Privilege instruction: Those instructions are trapped if the machine is in user mode and are not trapped if the machine is in kernel mode.

ex: Instruction to modify page table base register

– Non-Privilege instruction: All other instructions

ex: Software interrupt, Normal arithmetic operation

• In virtualisation field, the hypervisor designers separate instructions into two categories.

– Sensitive instruction: Those instructions that interact with hardware, which include control-sensitive and behaviour-sensitive instructions.

ex: Instruction to modify page table base register, software interrupt,..

– Non-sensitive instruction: All other instructions

ex: Normal arithmetic operation, …

Page 16: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

Dynamic Translation

VirtualMachine

Hardware

Operating System

VirtualMachine…

Hypervisor

Hardware

VMVM

Hardware

VirtualMachine

VirtualMachine…

Virtualisation Logic

Hypervisor

1st Generation: Full virtualisation (Binary rewriting)● Software Based● VMware and

Microsoft

2nd Generation: Paravirtualisation● Cooperative

virtualisation● Modified guest● VMware, Xen

3rd Generation: Silicon-based (Hardware-assisted) virtualisation● Unmodified guest● VMware and Xen on

virtualisation-aware hardware platforms

Page 17: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

Full virtualisation • 1st Generation offering of x86/x64 server

virtualisation

• Dynamic binary translation– The emulation layer talks to an operating

system which talks to the computer hardware

– The guest OS doesn't see that it is used in an emulated environment

• All of the hardware is emulated including the CPU

• Two popular open source emulators are QEMU and Bochs

EmulatedHardware

Virtu

al M

ach

ine

Gu

est O

S

Device Drivers

Ap

p.

A

Ap

p.

B

Ap

p.

C

Hardware

Host OS

Device Drivers

Page 18: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

Full virtualisation: advantages • The emulation layer:

– Isolates VMs from the host OS and from each other

– Controls individual VM access to system resources, preventing an unstable VM from impacting system performance

• Total VM portability

– By emulating a consistent set of system hardware, VMs have the ability to transparently move between hosts with dissimilar hardware without any problems

• It is possible to run an operating system that was developed for another architecture on your own architecture

• A VM running on a Dell server can be relocated to a Hewlett-Packard server

EmulatedHardware

Virtu

al M

ach

ine

Gu

est O

S

Device Drivers

Ap

p.

A

Ap

p.

B

Ap

p.

C

Hardware

Host OS

Device Drivers

Page 19: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

Full virtualisation: drawbacks • Hardware emulation comes with a performance price

• In traditional x86 architectures, OS kernels expect to run privileged code in Ring 0

– However, because Ring 0 is controlled by the host OS, VMs are forced to execute at Ring 1/3, which requires the VMM to trap and emulate instructions

• Due to these performance limitations, paravirtualisation and hardware-assisted virtualisation were developed

Application Ring 3

OperatingSystem

Ring 0

Traditional x86 Architecture

Application Ring 3

Guest OS Ring 1 / 3

VirtualMachineMonitor

Ring 0

Full Virtualisation

Page 20: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

Para-virtualisation • The Guest OS is modified and thus run kernel-

level operations at Ring 1 (or 3)

– the guest is fully aware of how to process privileged instructions

– thus, privileged instruction translation by the VMM is no longer necessary

– The guest operating system uses a specialised API to talk to the VMM and, in this way, execute the privileged instructions

• The VMM is responsible for handling the virtualisation requests and putting them to the hardware

Virtual Machine Monitor

Virtu

al M

ach

ine

Gu

est O

S

Device Drivers

Ap

p.

A

Ap

p.

B

Ap

p.

C

Specialized API

Hardware

Hypervisor

Device Drivers

Page 21: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

Para-virtualisation • Today, VM guest operating systems are paravirtualised using two different approaches:

– Recompiling the OS kernel

• Paravirtualisation drivers and APIs must reside in the guest operating system kernel

• You do need a modified operating system that includes this specific API, requiring a compiling operating systems to be virtualisation aware

– Some vendors (such as Novell) have embraced paravirtualisation and have provided paravirtualised OS builds, while other vendors (such as Microsoft) have not

– Installing paravirtualised drivers

• In some operating systems it is not possible to use complete paravirtualisation, as it requires a specialised version of the operating system

• To ensure good performance in such environments, paravirtualisation can be applied for individual devices

• For example, the instructions generated by network boards or graphical interface cards can be modified before they leave the virtualised machine by using paravirtualised drivers

Page 22: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

Hardware-assisted virtualisation• The guest OS runs at ring 0

• The VMM uses processor extensions (such as Intel®-VT or AMD-V) to intercept and emulate privileged operations in the guest

• Hardware-assisted virtualisation removes many of the problems that make writing a VMM a challenge

• The VMM runs in a more privileged ring than 0, a virtual -1 ring is created

• Often called HVM

Virtual Machine Monitor

Virtu

al M

ach

ine

Gu

est O

S

Device Drivers

Ap

p.

A

Ap

p.

B

Ap

p.

C

Specialized API

Hardware

Hypervisor

Device Drivers

Page 23: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

Hardware-assisted virtualisation• The hypervisor/VMM runs at Ring -1

– super-privileged mode

VMX non-root VMX root

Page 24: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

History of Virtualisation

Hardware-assisted virtualisation• Advantages

– It allows to run unmodified OSs (so legacy OS can be run without problems)

• Drawbacks

– Speed and Flexibility

• An unmodified OS does not know it is running in a virtualised environment and so, it can’t take advantage of any of the virtualisation features– It can be resolved using paravirtualisation partially (hybrid

virtualisation approach)

Page 25: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Outline

• Introduction• History of Virtualisation• Virtualisation Architecture– System Virtualisation– Storage Virtualisation– GPU Virtualisation– Software Virtualisation– Hardware Support Virtualisation– Network Virtualisation

Page 26: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

System virtualisation

Purposes of the hypervisor• CPU Virtualisation– Handle all sensitive instructions by emulation

• Memory Virtualisation– Allocate guest physical memory– Translate guest virtual address to host virtual address

• I/O Virtualisation– Emulate I/O devices for guest– Ex: Keyboard, UART, Storage and Network

Page 27: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Hypervisor Case: KVM

CPU MMU I/OTimer InterruptHardware

CPU Virtualisation

MMUVirtualisation

I/OVirtualisation

VM 0 VM 1

Hypervisor

QEMU

Linux + KVM

1. CPU and memory virtualisations are handled in the Linux Kernel Space 2. I/O virtualisation is handled in the Linux User Space by QEMU3. It is a full virtualisation implementation

Page 28: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

LVM• LVM is a logical volume manager for the Linux kernel; it manages disk

drives and similar mass-storage devices

• Commonly used for the following purposes:

– Managing large hard disk farms by allowing disks to be added and replaced without downtimes and services disruption, in combination with hot swapping.

– On small systems (like a desktop at home), instead of having to estimate at installation time how big a partition might need to be in the future, LVM allows file systems to be easily resized later as needed.

– Performing consistent backups by taking snapshots of the logical volumes.

– Creating single logical volumes of multiple physical volumes or entire hard disks (somewhat similar to RAID 0, but more similar to JBOD), allowing for dynamic volume resizing.

• LVM can be considered as a thin software layer on top of the hard disks and partitions, which creates an abstraction of continuity and ease-of-use for managing hard drive replacement, repartitioning, and backup.

Software virtualisation

Page 29: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

LVM

• LVM is a logical volume manager for the Linux kernel; it manages disk drives and similar mass-storage devices.

Logical Volume Manager

Software virtualisation

Page 30: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

LVM: example

• Disk partition → physical volumes → volume group → logical volumes → file systems

Software virtualisation

Page 31: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

RAID• RAID (Redundant Array of Independent Disks) is a

storage technology that combines multiple disk drive components into a logical unit.

• Data is distributed across the drives in one of several ways called "RAID levels“, such as RAID0, RAID1, etc., depending on the level of redundancy and performance required.

Software virtualisation

Page 32: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Example: RAID0 and RAID1

Software virtualisation

mirroring without parity or striping

It provides improved performance and additional storage but no fault tolerance (block-level striping without parity or mirroring) .

Page 33: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

LVM and RAID for Virtualisation

• LVM provides a virtual storage systems which is flexible to partition and allocate logical volumes to virtual machines

• RAID not only improves storage performance but has fault tolerance capability

Software virtualisation

Page 34: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

• A Graphics Processing Units (GPUs) are high-performance many-core processors capable of very high computation and data throughput.

GPU virtualisation

Page 35: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

• While the Intel Core I7 980X (extreme edition) gives us around 110GFLOPS, GPUs such as AMD Radeon 6970 and NVidia C2090 offer more than 660GFLOPS.

Performance Comparison: GPU vs. CPU.

GPU virtualisation

Page 36: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

GPGPU (General Purpose GPU)• High performance of modern Graphics Processing Units may be utilised

not only for graphics related application but also for general computing. • Today’s GPUs are general-purpose parallel processors with support for

accessible programming interfaces and industry-standard languages such as C. 

• Developers who port their applications to GPUs often achieve speedups of orders of magnitude vs. optimised CPU implementations.

GPU virtualisation

Page 37: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

• GPU virtualisation allows multiple virtual machines to interact directly with a GPU and manages the GPU resources so multiple users can share common hardware, while improving user density.

GPU virtualisation

Page 38: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

• IT administrators have a lot to deal with in today’s corporate infrastructure. With the ever increasing prices of upgrading desktop computers, software virtualisation is becoming very appealing.

• It has following features:

Ease of Management

Security

Green

Portable

Software Virtualisation

Page 39: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

• Virtual desktop Infrastructure (VDI) is a desktop-centric service that hosts users desktop environments on remote servers, which are accessed over a network using a remote display protocol.

Software Virtualisation

Virtual Desktop Infrastructure (VDI)

Page 40: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

• eyeOS is a web desktop following the cloud computing concept that seeks to enable collaboration and communication among users. It is mainly written in PHP, XML, and JavaScript

Software Virtualisation

EyeOS: Web Desktop Virtualisation

Page 41: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Hardware Virtualisation

Intel VT-X

• New CPU Operating Mode– VMX Root Operation

– Non-Root Operation

• New Transitions– VM entry to Guest

– VM exit to VMM

• VM Control Structure– Configured by VMM software

Page 42: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Hardware VirtualisationARM virtualisation extension

• Secure world supports a single virtual machine

• New Non-secure level of privilege to hold Hypervisor

– Hypervisor mode applies to normal world

– Hyp Mode is used by the Hypervisor

– Guest OS given same kernel/user privilege structure as for a non virtualised environment

Page 43: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Hardware VirtualisationSingle-Root I/O Virtualisation

• PCI-SIG specifies multiple functional elements addressing performance and security aspects of I/O virtualisation

• PCIe devices will have multiple virtual functions (VF’s)

Page 44: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Hardware VirtualisationMulti-Root I/O Virtualisation

• Multiple hardware domains utilising same IO endpoints

• Virtual functions are dedicated to virtual machines

Page 45: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

• Software Defined Networking (SDN) is an approach to building computer networks that separates and abstracts elements of these systems

• SDN decouples the system that makes decisions about where traffic is sent (the control plane) from the underlying system that forwards traffic to the selected destination (the data plane)

Network Virtualisation

Page 46: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Software Defined Networking (SDN)• The inventors and vendors of these systems claim

that this technology simplifies networking and enables new applications, such as – network virtualisation in which the control plane is

separated from the data plane and implemented in a software application.

Network Virtualisation

Page 47: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Open vSwitch• Open vSwitch is a flexible, multi-layer software

network switch. Typically used in virtualisation environments as the network switching component in the hypervisor.

• Open vSwitch maintains the logical state of a virtual machine's network connection across physical hosts when a virtual machine is migrated, and it can be managed and monitored by standard protocols such as: OpenFlow, NetFlow, sFlow, SPAN, RSPAN.

Network Virtualisation

Page 48: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Open vSwitch

• When it comes to virtualisation, open vSwitch is attractive because it provides the ability for a single controller to manage your virtual network across all your servers. 

Network Virtualisation

Page 49: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

InfiniBand virtualisation

• InfiniBand is a switched fabric communications link used in high-performance computing and enterprise data centers.

• It has two key features : low latency and high bandwidth

• Virtualisation Using InfiniBand Brings Big Benefits to Data Centers

• When it comes to virtualisation, open vSwitch is attractive because it provides the ability for a single controller to manage your virtual network across all your servers. 

Network Virtualisation

Page 50: “VIRTUALISATION INTRODUCTION” -Network and Services ...ocw.umh.es/ingenieria-y-arquitectura/network_ and... · Unit 1. “VIRTUALISATION INTRODUCTION” 2966-Network and Services

Bibliography

• Books :– The definite guide to Xen Hypervisor. David Chisnall.

Prentice Hall

• Other resources :– Lecture slides of “Virtual Machine” course (5200) in

NCTU