0% found this document useful (0 votes)
20 views

Virtualization

The document discusses the concept of virtualization including defining virtualization, describing how it works through multiplexing, aggregation, emulation and more. It also covers memory, device and I/O virtualization as well as network functions virtualization and virtual machine monitors/hypervisors.

Uploaded by

tayyabazim
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Virtualization

The document discusses the concept of virtualization including defining virtualization, describing how it works through multiplexing, aggregation, emulation and more. It also covers memory, device and I/O virtualization as well as network functions virtualization and virtual machine monitors/hypervisors.

Uploaded by

tayyabazim
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

20/01/2024

Virtualization
Concepts

What is Virtualization

 Virtualization abstracts the underlying resources and


simplifies their use, isolates users from one another,
and supports replication, which, in turn, increases
the elasticity of the system.

 Virtualization is a critical aspect of cloud computing,


equally important to the providers and consumers of
cloud services, and plays an important role in:
 Performance and reliability because it allows
applications to migrate from one platform to another.
 The development and management of services offered
by a provider.
 Performance isolation.

1
20/01/2024

What is Virtualization

 Virtualization simulates the interface to a physical object by any one of


four means:
 1. Multiplexing. Create multiple virtual objects from one
instance of a physical object. For example, a processor is
multiplexed among a number of processes or threads.
 2. Aggregation. Create one virtual object from multiple
physical objects. For example, a number of physical disks
are aggregated into a RAID disk.
 3. Emulation. Construct a virtual object from a different
type of physical object. For example, a physical disk
emulates a random access memory.
 4. Multiplexing and emulation. Examples: Virtual memory
with paging multiplexes real memory and disk, and a
Virtual address emulates a real address; TCP emulates a
reliable bit pipe and multiplexes a physical communication
channel and a processor.

What is Virtualization

BefOl"e VlrtuallzaUon: After Vlrtuallzatlon:


• SingMos '"'ave pamacNne • ""dw ..,.. Inde~ of opM"ltrng
• SoEn-",and Nmw- tighllycoup&ed ¥1,"" and .ppIk.tion ..

• R"nnlfIQ"",hJPIOe .. ppIIc;.tiofu on ........ madW.


."_,,.,.. .. OI)n#Iia
.,..,~
•vnu.1rnxhinM can t. prorit,loMCi to any

• CAn INnagoI' OS and apP\carion aa .. ~


"nit by enops ..... ing tlwm Into vinlJ&l
"""',_

2
20/01/2024

Virtualization Concept

Virtual Resources
IXlSubstitutes for real resources: same interfaces/functions, different attributes.
IXlOften of part of the underlying resource, but may span multiple resources.

Virtualization - a substitution process


IXlCreates virtual resources from real resources.
IXlPrimarily accomplished with software and/or firmware.

IXlSeparates presentation of resources to users from actual resources


IXlAggregates pools of resources for allocation to users as virtual resources
5

Virtualization how

 Virtualization… How?
 By adding a layer
between execution
stack layers.
 Types of Virtualization

3
20/01/2024

Virtualization how

 Hardware-level Applications
virtualization
 VMM* is placed between the
hardware and the OS.
 Could provide a different ISA.
 e.g. Emulators.
 Tasks:
 Maps virtual resources to real
ones.
 Translate virtual instructions to
real one
 * VMM = Virtual Machine
Monitor

Virtualization how

 System-level AppI.icaliODS
virtualization
 placed between the OS
and other OS e.g. VMware
Wks and UML
 Enable several OS to run
on single hardware.
 Terminology
 Host OS
 Guest OS
 Guest OS and VM run in
Application privilege ring.

4
20/01/2024

Virtualization how

 Application- Applications
level
virtualization
 VM is placed between the OS and
the applications.
 e.g. Java Virtual Machine (JVM)
Provide same interface to all
 Application, irrespective of OS.
 Provide Application Sand-boxing.
 Tasks:
 Translate Application byte code
to
 OS-specific executable.

Memory virtualization

 Beyond CPU virtualization, This involves sharing the


physical system memory and dynamically allocating it to
virtual machines.
 The operating system keeps mappings of virtual page
numbers to physical page numbers stored in page
tables.
 All modern x86 CPUs include a memory management
VM1 VM2
unit (MMU) and a translation look-aside buffer (TLB) to
optimize virtual memory performance.
Process I Process 2 Process 1 Process 2
~Vlrtual
Memory

10

5
20/01/2024

Device and I/O Virtualization

 The final component  The hypervisor


required beyond CPU virtualizes the
and memory physical hardware and
virtualization is device
presents each virtual
and I/O virtualization.
machine with a
 This involves managing standardized set of
the routing of I/O virtual devices as
requests between virtual seen in Figure
devices and the shared
physical hardware

11

Network Functions
Virtualization
 Network functions virtualization (NFV) (also known as virtual network
function (VNF)) offers a new way to design, deploy and manage networking
services.
 NFV decouples the network functions, such as network address translation
(NAT), firewalling, intrusion detection, domain name service (DNS), and
caching, to name a few, from proprietary hardware appliances so they can
run in software.
 It’s designed to consolidate and deliver the networking components needed
to support a fully virtualized infrastructure – including virtual servers,
storage, and even other networks.
 It utilizes standard IT virtualization technologies that run on high-volume
service, switch and storage hardware to virtualize network functions.
 It is applicable to any data plane processing or control plane function in
both wired and wireless network infrastructures
12

6
20/01/2024

Network Functions
Virtualization
True Network Virtualization

Logical Topology

UidoNat aduhoo dlagramprow:lgd by Midckulll


13

Virtual machine monitors/


Hypervisors
 A virtual machine monitor (VMM), also called a hypervisor,
is the software that securely partitions the resources of a
computer system into one or more virtual machines.
 A guest operating system is an operating system that runs
under the control of a VMM rather than directly on the
hardware.
 The VMM runs in kernel mode, whereas a guest OS runs in
user mode.
 Sometimes the hardware supports a third mode of
execution for the guest OS.
 VMMs allow several operating systems to run concurrently
on a single hardware platform; at the same time, VMMs
enforce isolation among these systems, thus enhancing
security.
14

7
20/01/2024

Virtual machine monitors/


Hypervisors
 A VMM controls how the guest operating system uses the hardware resources.
The events occurring in one VM do not affect any other VM running under the
same VMM.

 At the same time, the VMM enables:


 Multiple services to share the same platform.
 The movement of a server from one platform to another, the so-called live migration.
 System modification while maintaining backward compatibility with the original
system.

 When a guest OS attempts to execute a privileged instruction, the VMM traps the
operation and enforces the correctness and safety of the operation.

 The VMM guarantees the isolation of the individual VMs, and thus ensures
security and encapsulation, a major concern in cloud computing.
15

Virtual machine monitors/


Hypervisors
 At the same time, the VMM monitors system performance and takes corrective
action to avoid performance degradation; for example, the VMM may swap out a
VM(copies all pages of that VM from real memory to disk and makes the real
memory frames available for paging by other VMs) to avoid thrashing.

 A VMM virtualizes the CPU and memory. For example, the VMM traps interrupts
and dispatches them to the individual guest operating systems.

 If a guest OS disables interrupts, the VMM buffers such interrupts until the guest
OS enables them.

 The VMM maintains a shadow page table for each guest OS and replicates any
modification made by the guest OS in its own shadow page table.

 This shadow page table points to the actual page frame and is used by the
hardware component called the memory management unit (MMU) for dynamic
address translation. 16

8
20/01/2024

Type 1 hypervisors

 Type 1 hypervisor is installed directly on bare-


metal hardware, it doesn't require an additional OS, it is
the OS, even it is a light or minimal OS
 Examples:
 HyperOne, Xen, PikeOS, OKL4, Vmware ESX
 Advantages:
 System is thin, the hypervisor has direct access to the HW
 higher density hardware.
 Disadvantages:
 HW should support virtualization technology,
 costlier and Really bad console interface.

17

Type 1 hypervisors

Type 1 hypervisor

Operating system 1 Operating system 2

Hypervisor

Hardware

Figure 2. AType 1 01' bare-metal hypervisor sits directly 011 the host
hardware,

18

9
20/01/2024

Type2 Hypervisors

 Type 2 hypervisor
 Type 2 is more of an application installed on an operating
system and not directly on the bare-metal.
 EX. VirtualBox and Vmware Workstation
 Advantages:
 Run on a greater array of HW because the underlying Host OS
is controlling HW access,
 Easy user interface, Data can be secured on the desktop
 Disadvantages:
 Decreased security, Loss of Centralized Management, Lower
VM Density,
 Cannot support as many VMs are the first type.

19

Type2 Hypervisors

Type 2 hypervisor

-
Operating system 2 (guest)

Operating system 1 (host)


Hypervisor •
Hardware

Ftgure 1, A Type 2 hypervtsor l'UllS as an application on a host


operanng system,

20

10
20/01/2024

Virtual Machines

 A virtual machine (VM) is an isolated environment that


appears to be a whole computer but actually only has
access to a portion of the computer resources

 Each VM appears to be running on the bare hardware,


giving the appearance of multiple instances of the same
computer, though all are supported by a single physical
system

21

Key Concepts: Process vs.


System
·Thereare two kinds of virtual machines: process and system.
Process virtual machine can support an individual process .
• System virtual machine can run a complete as plus environment.

W32I W32
Java JIIVa
App Aw
Native Netive
:.a:;e l\;:e f-:-:--+-7-:-:--1 App App \\rindows

VM VM VMM

Linux Linux

x86 186

Process VM System VM

E.g. running an x86 E.g. running an instance of Linux its (and


application on a PowerPc applications) on Windows

22

11
20/01/2024

VM Taxonomy

Process VMs System VMs

different II ~di".:~ent
same/SA /SA same/s~ ~

Multi IA-32 EL IBM VM/370 VirtualPC for Mac


programmed
Systems
HP VMware Wks Transmeta
Java VM
Dynamo

23

Challenges of virtualization

 Performance degradation -
 As it interposes and abstraction layer between guest &
host.
 Inefficiency and degraded user experience
 Some of specific features of the host is unexposed.
 Security holes and new threats
 Case 1 – emulating a host in a completely transparent
manner.
 Case 2 - H/w virtualization , malicious programs can
preload themselves before the OS and act as a thin VMM.

24

12
20/01/2024

Major Vendors of Hypervisor

~KVM OpenVZ

EMU Microsoft
Hyper-V

. AenServer
CiTRlX'V

Container -
LC~:''..·...,,-; r"
'._./
~
"';; // (.O.(J)~i)(tllf
,.,j\_.,\,:::~~\.:)

Technology

26

13
20/01/2024

Docker containers

 PACKAGE YOUR APPLICATION INTO A STANDARDIZED UNIT


FOR SOFTWARE DEVELOPMENT
 Docker containers wrap a piece of software in a
complete filesystem that contains everything needed to
run: code, runtime, system tools, system libraries –
anything that can be installed on a server.
 This guarantees that the software will always run the
same, regardless of its environment.

27

Docker containers

 LIGHTWEIGHT
 Containers running on a single machine share the same
operating system kernel; they start instantly and use less RAM.
 Images are constructed from layered file systems and share
common files, making disk usage and image downloads much
more efficient.
 OPEN
 Docker containers are based on open standards, enabling
containers to run on all major Linux distributions and on
Microsoft Windows -- and on top of any infrastructure.
 SECURE BY DEFAULT
 Containers isolate applications from one another and the
underlying infrastructure, while providing an added layer of
protection for the application.
28

14
20/01/2024

Docker containers

 ACCELERATE DEVELOPERS
 Stop wasting hours setting up developer environments,
spinning up new instances, and making copies of production
code to run locally. With Docker, you simply take copies of
your live environment and run them on any new endpoint
running a Docker engine.
 EMPOWER CREATIVITY
 The isolation capabilities of Docker containers free developers
from constraints: they can use the best language and tools for
their application services without worrying about causing
internal tooling conflicts.
 DISTRIBUTE & SHARE CONTENT
 Store, distribute, and manage Docker images in Docker Hub
with your team. Image updates, changes, and history are
automatically shared across your organization.

29

COMPARING CONTAINERS AND


VIRTUAL MACHINES
Containers and virtual machines have similar resource isolation and allocation
benefits -- but a different architectural approach allows containers to be
more portable and efficient.

VIRTUAL MACHINES CONTAINERS


 Virtual machines include the  Containers include the application
application, the necessary binaries
and all of its dependencies --but
and libraries, and an entire guest
share the kernel with other
operating system -- all of which can
containers, running as isolated
amount to tens of GBs.
processes in user space on the host
operating system.
 Docker containers are not tied to
any specific infrastructure: they run
on any computer, on any
infrastructure, and in any cloud.
30

15
20/01/2024

COMPARING CONTAINERS AND


VIRTUAL MACHINES

VIRTUAL MACHINES CONTAINERS

31

OPEN Container initiative

 The Open Container Initiative (OCI) is a lightweight, open


governance structure (project), formed under the auspices
of the Linux Foundation, for the express purpose of
creating open industry standards around container formats
and runtime.
 The OCI was launched on June 22nd 2015.
 This entire workflow should support the UX that users have
come to expect from container engines like Docker and rkt:
primarily, the ability to run an image with no additional
arguments:

 docker run example.com/org/app:v1.0.0


 rkt run example.com/org/app,version=v1.0.0

32

16
20/01/2024

OPEN Container initiative

Ye!r:~. "APCERA Opprenda I'" aqua ~at&t .,,'0110.


CISCO

,,~~~

EMc'
!®:c_ln-" Oeore

facebook FUJITSU gOUlman


acns Google
OATERA


e ,_
_.- oocter

~!. --- -
Infoblox.' @ OJoyent liII
IUSMATIC

,
tiiIIKyup

Pivotal
~
MESOSPHERE

;:;OLYVERSE
DMIaosoft

'I J)OffWOlX ....


RANCHfR
Nl)1;6.N'K

",edhat
~

aQIIIlr.JIoo

resm.io
! ~U5E Osysdig 8 'ock
~
IE Verizonlabs -.:I,rtuozzovmware- l!>- m:::I:;::-
33

17

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy