Cloud Computing
Sandeep Bhowmik
Chapter 7
Resource Virtualization
Cambridge University Press
Chapter 7 Resource Virtualization
What Is Virtualization
• Virtualization refers to the representation of physical computing
resources in simulated form made through software.
• This special layer of software (installed over active physical
machines) is referred as layer of virtualization.
• Virtualization decouples the physical computing resources from
direct access of users.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 2
Chapter 7 Resource Virtualization
What Is Virtualization
• Users’ interaction with computer in traditional and virtualized
computing environment -
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 3
Chapter 7 Resource Virtualization
Virtualizing Physical Computing Resources
• Any kind of computing resources can be virtualized.
• Processor
• Memory
• Storage
• Network devices (like switch, router etc.)
• Communication links
• Peripheral devices (like keyboard, mouse, printer etc.)
• Virtualization decouples the physical computing resources from
direct access of users.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 4
Chapter 7 Resource Virtualization
What Is Virtualization
• A virtualized component can be operational when a physical
resource empowers it from backend.
• The layer of virtualization transforms the physical computing
devices into virtual form and presents them before user.
• The simulated devices produced through virtualization may or
may not resemble the actual physical components in
• Quality
• Architecture
• Quantity
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 5
Chapter 7 Resource Virtualization
What Is Virtualization
Virtualized computing environment comprising of processor,
memory and storage disk.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 6
Chapter 7 Resource Virtualization
What Is Virtualization
• The software for virtualization consists of a set of control
programs.
• It offers all the physical computing resources in custom made
simulated (virtual) form.
• Virtual computers can be built using virtual computing
resources produced by virtualization.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 7
Chapter 7 Resource Virtualization
Understanding Abstraction
• The theory of virtualization is rooted around the idea of
providing logical access to physical resources.
• Virtualization creates a layer of abstraction and masks physical
resources from external access.
• Abstraction is the process of hiding the complex and non-
essential characteristics of a system.
• Virtualization can be defined as the abstraction of different
computing resources like processor, memory, storage, network.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 8
Chapter 7 Resource Virtualization
Machine or Server Level Virtualization
• It is the concept of creating virtual machine (that is, virtual
computer) on actual physical machine.
• The parent system on which the virtual machines run is called
the host system.
• The virtual machines are themselves referred as guest systems.
• Virtualized physical server can host multiple virtual machines,
each one having different OS.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 9
Chapter 7 Resource Virtualization
Machine or Server Level Virtualization
Conventional computing system vs. virtualized computing system.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 10
Chapter 7 Resource Virtualization
Machine or Server Level Virtualization
• Comparison between non-virtualized and virtualized machine
environment.
Non-Virtualized Machine Environment Virtualized Machine Environment
Multiple OS can run
At a moment, one single OS can
simultaneously on one physical
run on a physical machine.
machine.
Virtual Machines isolates
Application and hardware system
applications from the underlying
remain tightly coupled.
hardware.
Resource utilization improves as
Resources utilization rate is low
multiple VMs share same set of
in most of the times.
physical resources.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 11
Chapter 7 Resource Virtualization
Machine or Server Level Virtualization
• Comparison between non-virtualized and virtualized machine
environment (contd.).
Non-Virtualized Machine Environment Virtualized Machine Environment
Increases cost of business due to
Cost effective if planned properly.
low resource utilization.
Provides lot of flexibility to system
Inflexible approach.
designers.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 12
Chapter 7 Resource Virtualization
The Layer of Virtualization
• Virtual machines are created over the virtualization layer.
• This layer provides the system resources’ access to the virtual
machines.
• This software layer is referred as the Hypervisor or Virtual
Machine Monitor (VMM).
• The hypervisor abstracts the underlying software and/or
hardware environments and represents virtual system resources
to its users.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 13
Chapter 7 Resource Virtualization
Machine Virtualization Techniques
• There are two different techniques of server or machine
virtualization -
• Hosted approach
• Bare metal approach.
• The techniques differ depending on the type of hypervisor used.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 14
Chapter 7 Resource Virtualization
Hosted Approach
• In this approach, an operating system is first installed on the
physical machine to activate it.
• This OS installed over the host machine is referred as host
operating system.
• The hypervisor is then installed over this host OS.
• This type of hypervisor is referred to as Type 2 hypervisor or
Hosted hypervisor.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 15
Chapter 7 Resource Virtualization
Hosted Approach
A model of hosted machine virtualization approach.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 16
Chapter 7 Resource Virtualization
Hosted Approach
• Benefits
• In this approach the host OS supplies the hardware drivers for
the underlying physical resources.
• This eases the installation and configuration of the hypervisor. It
makes the type-2 hypervisors compatible for a wide variety of
hardware platform.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 17
Chapter 7 Resource Virtualization
Hosted Approach
• Drawbacks
• A hosted hypervisor does not have direct access to the hardware
resources. This may degrade the performance of the virtual
machines.
• Since the underlying host OS controls the scheduling of jobs, it
becomes unrealistic to run a real-time OS inside a VM using
hosted virtualization.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 18
Chapter 7 Resource Virtualization
Hosted Approach
• Example
• Hosted Approach
• Microsoft Virtual PC
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 19
Chapter 7 Resource Virtualization
Bare Metal Approach: Removal of the host OS
• In this approach of machine virtualization, the hypervisor is
directly installed over the physical machine.
• Since, the hypervisor is the first layer over hardware resources
hence, the technique is referred as bare metal approach.
• Here the VMM or the hypervisor communicates directly with
system hardware.
• The hypervisor acts as low-level virtual machine monitor and
also called Type 1 Hypervisor or Native Hypervisor.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 20
Chapter 7 Resource Virtualization
Bare Metal Approach: Removal of the host OS
A model for the bare metal approach of machine virtualization.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 21
Chapter 7 Resource Virtualization
Bare Metal Approach: Removal of the host OS
• Benefits
• Since the bare metal hypervisor can directly access the
hardware resources, in most of the cases it provides better
performance.
• Administrators get more control over the host environment.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 22
Chapter 7 Resource Virtualization
Bare Metal Approach: Removal of the host OS
• Drawbacks
• As any hypervisor usually have limited set of device drivers
built into it, so, bare metal hypervisors have limited hardware
support and can’t run on a wide variety of hardware platform.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 23
Chapter 7 Resource Virtualization
Bare Metal Approach: Removal of the host OS
• Example
• VMware’s ESX
• VMware’s ESXi Servers
• Microsoft Hyper-V
• Open source solution Xen
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 24
Chapter 7 Resource Virtualization
Hypervisor Based Virtualization Approaches
• Hypervisor based virtualization techniques can be divided into
three categories –
• Full virtualization,
• Paravirtualization,
• Hardware assisted virtualization
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 25
Chapter 7 Resource Virtualization
Full Virtualization
• In full virtualization, the hypervisor fully simulates or emulates
the underlying hardware.
• The guest operating systems assume that they are running on
actual physical resources.
• This enables the unmodified versions of available operating
systems (like Windows, Linux) to run as guest OS over
hypervisor.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 26
Chapter 7 Resource Virtualization
Full Virtualization
A model of full virtualization
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 27
Chapter 7 Resource Virtualization
Full Virtualization
• The guest OS remains completely isolated from physical
resource layer by the hypervisor.
• This provides flexibility, as almost all the available operating
systems can work as guest OS.
• Full virtualization solution –
• VMWare ESXi Server
• Microsoft Virtual Server
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 28
Chapter 7 Resource Virtualization
Paravirtualization or OS-assisted Virtualization
• “Para” is an English affix of Greek origin that means "beside"
or "alongside.”
• A portion of the virtualization management task is transferred
(from the hypervisor) towards the guest operating systems.
• Guest operating systems need special modification for this
capability inclusion.
• This modification is called porting.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 29
Chapter 7 Resource Virtualization
Paravirtualization or OS-assisted Virtualization
A model of paravirtualization
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 30
Chapter 7 Resource Virtualization
Paravirtualization or OS-assisted Virtualization
• Paravirtualization requires hypervisor specific modifications of
guest operating systems.
• The unmodified versions of available operating systems (like
Windows, Linux) can’t be used in paravirtualization.
• Since it involves modifications of the OS, paravirtualization is
referred to as OS-assisted Virtualization also.
• Example of paravirtualization hypervisor is the open source Xen
project.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 31
Chapter 7 Resource Virtualization
Paravirtualization or OS-assisted Virtualization
• Advantages
• Paravirtualization allows calls from guest OS to directly
communicate with hypervisor.
• In paravirtualization the system is not restricted by the device
drivers provided by the virtualization software layer.
• Paravirtualization reduces the load of host machine and can run
more number of VMs over a host machine in comparison to full
virtualization.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 32
Chapter 7 Resource Virtualization
Paravirtualization or OS-assisted Virtualization
• Limitations
• Unmodified versions of available operating systems (like
Windows, Linux) are not compatible with paravirtualization
hypervisors.
• Security is compromised in this approach, as the guest OS has a
comparatively more control of the underlying hardware.
Paravirtualization can provide enhanced virtualization
performance at the cost of security.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 33
Chapter 7 Resource Virtualization
Hardware Assisted Virtualization
• Inspired by software enabled virtualization, hardware vendors
later started manufacturing devices tailored to support
virtualization.
• Intel and AMD started this by including new virtualization
features in their processors.
• They allows some privileged CPU calls from the guest OS to be
directly handled by the CPU.
• Hypervisors like Xen, Microsoft’s Hyper-V or VMWare ESXi
Server can take advantage of the hardware assisted
virtualization.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 34
Chapter 7 Resource Virtualization
A side-by-side Comparison
• Comparison between non-virtualized and virtualized machine
environment.
Paravirtualization or Hardware Assisted
Full Virtualization
OS Assisted Virtualization Virtualization
Guest OS has no role Guest OS plays role in Guest OS has no role in
in virtualization. virtualization. virtualization.
Guest OS remains Guest OS has to be Guest OS remains
unaware about the aware about the unaware about the
virtualization. virtualization. virtualization.
Normal version of Modified version of Normal version of
available OS can be available OS is available OS can be
used as guest OS. required. used as guest OS.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 35
Chapter 7 Resource Virtualization
A side-by-side Comparison
• Comparison between non-virtualized and virtualized machine
environment.
Paravirtualization or Hardware Assisted
Full Virtualization
OS Assisted Virtualization Virtualization
Provides good options Provides lesser options Provides good options
for guest OS. for guest OS. for guest OS.
Guest OS is not Guest OS is tailored to Guest OS is not
hypervisor specific. be hypervisor specific. hypervisor specific.
No special feature is No special feature is Requires explicit
required in the host required in the host features in the host
CPU. CPU. CPU.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 36
Chapter 7 Resource Virtualization
A side-by-side Comparison
• Comparison between non-virtualized and virtualized machine
environment.
Paravirtualization or Hardware Assisted
Full Virtualization
OS Assisted Virtualization Virtualization
Hardware does not
Hardware does not play Hardware plays role in
play role in
role in virtualization. virtualization.
virtualization.
Specialized hardware
Hypervisor takes care Guest OS, along with
device along with
of all the virtualization hypervisor takes care of
hypervisor takes care of
tasks. the virtualization tasks.
virtualization tasks.
Virtualization overhead Virtualization overhead Virtualization overhead
of hypervisor is more. of hypervisor is less. of hypervisor is less.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 37
Chapter 7 Resource Virtualization
A side-by-side Comparison
• Comparison between non-virtualized and virtualized machine
environment.
Paravirtualization or Hardware Assisted
Full Virtualization
OS Assisted Virtualization Virtualization
Virtualization
Virtualization Virtualization
performance is little
performance is better. performance is better.
slow.
Provide high level of Security is
Security is
security as all compromised as calls
compromised as guest
virtualization controls from guest OS can
OS has some control in
remain with the directly access the
virtualization.
hypervisor. hardware.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 38
Chapter 7 Resource Virtualization
Advantages of Virtualization
• Better utilization of existing resources
• Reduction in hardware cost
• Reduction in computing infrastructure costs
• Improved fault tolerance or Zero downtime maintenance
• Simplified system administration
• Simplified capacity expansion
• Simplified system installation
• Support for legacy systems and applications
• Simplified system-level development
• Simplified system and application testing
• Security
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 39
Chapter 7 Resource Virtualization
Advantages of Virtualization
• The benefits of virtualization directly propagates into cloud
computing and have empowered it.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 40
Chapter 7 Resource Virtualization
Downsides of Virtualization
• Every technology has its own shortcomings and virtualization is
no exception.
• The area of concerns are -
• Single point of failure problem
• Lower performance issue
• Difficulty in root cause analysis
• However, the positive effects of virtualization outweigh the
negatives by far.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 41
Chapter 7 Resource Virtualization
Virtualization Security Threats
• The traditional threats of any computing system are all
applicable to virtual computing system also.
• Additional security threats to virtualized system include -
• The single point host
• Threats to hypervisor
• Complex configuration
• Privilege escalation
• Inactive virtual machines
• Consolidation of different trust zones
• However, Any virtualization threats can be mitigated by
maintaining security recommendations while designing a
computing system.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 42
Chapter 7 Resource Virtualization
Virtualization Security Recommendations
• Hardening virtual machines
• Hardening the hypervisor
• Hardening the host operating system
• Restrictive physical access to the host
• Implementation of single primary function per VM
• Use of secured communications
• Use of separate NIC for sensitive VM
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 43
Chapter 7 Resource Virtualization
Virtualization and Cloud Computing
• Resource pooling is one important feature of cloud computing.
• But consumers of cloud services are given access to virtualized
pool of resources.
• This way all resources at cloud data center are virtualized and it
is referred as data center virtualization.
• Data center virtualization is one foundation of cloud computing.
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 44
Chapter 7 Resource Virtualization
Virtualization and Cloud Computing
• Virtualization is considered as a major step in the direction of
cloud computing.
• Virtualization is the key enabler of most of the fundamental
attributes of cloud computing, like
• Shared service
• Elasticity
• Service orientation
• Metered usage
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press 45
Chapter 7 Resource Virtualization
Thank You
Cloud Computing; Sandeep Bhowmik @ Cambridge University Press