Wednesday, 1 October 2025

Desktop Virtualisation

Desktop Virtualization (DV)

Desktop Virtualization (DV) is a technique that creates an illusion of a desktop provided to the user. It delivers either a single application or an entire desktop environment to a remote client device.

  • Function: It's a software technology used to separate the desktop and its connected application software from the physical device used by the client.

  • Mechanism: It works similar to a client-server model, where applications are executed on a remote desktop with different operating systems, and a user interacts with the application via a remote display protocol.

  • Key Advantage: Unlike traditional desktop administration, which is often expensive and time-consuming, DV allows IT staff to alter, update, and organize the desktop elements independently of the hardware, leading to greater business quickness and improved response time.

Components for Desktop Virtualization (VDI Architecture)

The DV architecture often follows the Virtual Desktop Infrastructure (VDI) model and consists of several components working together for an end-to-end solution:

  1. Endpoint Devices: The physical hardware (like laptops, thin clients, or tablets) used by the user to access the remote desktop.

  2. Connection Broker: The software component that authenticates the user and connects them to the appropriate available virtual desktop/VM Host.

  3. VM Hosting: The remote servers (in the data center/cloud) where the virtual desktops (Virtual Machines) are hosted and executed.

Techniques Used for Desktop Virtualization

There are three typical techniques used to deliver a virtual desktop experience:

  1. Remote Desktop Services (): Traditionally from Microsoft, this allows multiple users to share a single server's OS instance, each getting a separate session-based desktop.

  2. Virtual Desktop Infrastructure (): This is where each user is provided with a dedicated virtual machine (VM) running its own operating system from the data center.

  3. Desktop-as-a-Service (): A cloud service model where a third-party provider hosts the entire VDI infrastructure and streams the desktop to the user over the internet.

1. Remote Desktop Services (RDS)

RDS, formerly known as Microsoft Terminal Server, is primarily used for providing services to users and is a cost-effective desktop virtualization option.

Key Characteristics:

  • It is customarily called terminal services.

  • It allows consumers to distantly access Windows applications and graphical desktops.

  • It is also known as Remote Desktop Session Host (RDSH).

  • Applications and desktop images are served via the Microsoft Remote Desktop Protocol (RDP).

  • Cost-Effectiveness: Since one instance of Windows Server OS can support many simultaneous users as the server hardware can handle, RDS is a more cost-effective choice than VDI.

Advantages of RDS:

  • Data recovery in tragedy (Disaster Recovery).

  • Operation from any place (Remote Access).

  • Economical (Cost-effective).

Disadvantages of RDS:

  • Requirement of powerful RDS server hardware.

  • Requirement of RDS monitoring tools.

  • Requirement of a reliable network.


2. Virtual Desktop Infrastructure (VDI)

VDI refers to the hosting of a desktop OS running in a Virtual Machine () on a server in the virtual data center (VDC).

Key Characteristics:

  • VDI allows a user to access a remote desktop environment from an endpoint device via a remote desktop delivery protocol.

  • The desktop image travels over the network to the end user's device, making it seem as if the user is interacting with a local machine.

  • Dedicated Resources: VDI gives each user their own dedicated VM running its own operating system.

  • Resource Management: A hypervisor layer manages the resource allocation (drivers, CPUs, memory, etc.) to multiple VMs and ensures they run side by side on the same server.

  • Windows 10 Delivery: A key benefit is its ability to deliver the standard Windows 10 desktop and operating system to the end user's devices. However, because VDI supports only one user per Windows 10 instance, it is generally less cost-effective than RDS.

Advantages of VDI:

  • Low price in buying desktop computers (Since users can use cheaper thin clients/endpoint devices). successful

  • Centralized client operating system management.

  • Reduction in the costs of desktop and electricity.

  • Enhanced security of data and protected remote access.

  • Lesser applications compatibility troubles.

  • Disadvantages of VDI

    • Printing normally involves third-party appends (extra steps or software).

    • Scanning is natively unsupported or difficult.

    • Bi-directional audio is natively unsupported (microphone/speakers issues).

    • Exhibit protocols are unsuitable for graphic design or other high-demand graphical applications.

    • Needs low-latency association between the virtual infrastructure and the customer (requires excellent network speed).

    • Needs enterprise class server hardware and storage area network for VMs permanently delivered to particular users.

    • Needs trained IT staff.

  • Sr. No.Remote Desktop Services ()Virtual Desktop Infrastructure ()
    1.Separate virtual machines are not provided to the user.Separate virtual machines are provided to the users (one VM per user).
    2.Multiple operating systems instances need not be managed (since all users share one server OS).Multiple operating systems instances need to be managed (one OS per VM).
    3.Various users share the same virtual machines and operating systems.Same resources need not be shared (users get dedicated VM resources).
    4.Full administration is not provided to the users because many instances of the same resources are shared.User gets full administration over resources.
    5.Less resource utilization of , memory elements, etc. (More efficient per-user).More resource utilization (Less efficient per-user due to dedicated ).
  • Cost Savings:

    • Allows IT budgets to shift from high Capital Expenditures () (buying new hardware) to predictable Operating Expenditures () (like a regular usage-based charge for DaaS).

    • Extends the life of older or less powerful end-user devices (thin clients, etc.) because the intensive processing is done remotely on the data center VMs.

  • Improved Productivity:

    • Makes it easier for employees to access enterprise computing resources.

    • Allows users to work anytime, anywhere, from any supported device with just an Internet connection.

  • Support for a Broad Variety of Device Types:

    • Supports remote desktop access from a wide range of devices, including laptops, thin clients, tablets, and even mobile phones.

    • Delivers a consistent desktop experience regardless of the operating system native to the end-user device.

  • Stronger Security:

    • The actual desktop image and data are separated and abstracted from the physical hardware used to access it.

    • The VM used to deliver the desktop is hosted in a data center, which is a tightly controlled environment managed by the IT department.

  • Agility and Scalability:

    • It is quick and easy to deploy new or serve new applications whenever needed.

    • It is just as easy to delete them when they are no longer required, making the infrastructure highly responsive to business needs.

  • Better End-user Experiences:

    • Users can enjoy a feature-rich experience without sacrificing necessary functionality they rely on, such as printing or access to USB ports (though these features may require additional configuration, as noted in previous sections).

Types of Virtualization


The provided text is a continuation of the Cloud Computing topic, focusing on Virtualization Types, Server Virtualization Benefits/Limitations, and Network Virtualization. This information is essential for understanding cloud infrastructure.

Here is a summary of the concepts from the image:

1. Types of Virtualization
The text highlights two main types of virtualization techniques beyond the base concept:

Para-Virtualization:

In this model, simulation overhead is reduced because the guest operating system (OS) is modified to communicate directly with the Hypervisor (the virtualization software).

This modification improves overall performance compared to Full Virtualization.

Full Virtualization:

This model fully emulates the underlying hardware. It is more complex than Para-Virtualization.

The guest operating system is unmodified and runs directly on top of the hypervisor.

The hypervisor intercepts and manages machine operations (like I/O) and returns the status codes, making it seem like the guest OS is running on physical hardware.

2. Benefits and Limitations of Server Virtualization
Benefits of Server Virtualization
Cost Reduction: Reduces hardware requirements, which leads to lower costs.

Isolation: Each virtual server can be rebooted independently without affecting the operation of other virtual servers on the same physical machine.

Consolidation: Supports live migration and server consolidation, maximizing hardware usage.

Disaster Recovery: Facilitates easier backup and recovery from disasters.

Simplified Maintenance: Makes it easier to install or set up software patches and updates.

Limitations of Server Virtualization
Availability and Resource Consumption: Potential issues with resource consumption and guaranteed availability due to overcommits (allocating more virtual resources than physical resources exist).

Upfront Costs: Significant initial costs related to the virtualization software and network setup.

Licensing: Complexity and cost associated with software licensing for the virtual environments.

Steep Learning Curve: IT staff requires specialized training and experience in virtualization management.

Security: Security can be a concern, especially if multiple virtual servers belonging to different tenants or functions share the same physical server.

3. Network Virtualization
Network Virtualization (NetV) is the core technology that builds the connectivity fabric for cloud storage and computing.

Concept: It's similar to Server Virtualization but applies to the network. Instead of dividing a physical server, network resources (bandwidth, channels, switches, etc.) are divided among multiple virtual networks.

Purpose: It is used in multi-tenant data centers where each tenant needs its own isolated virtual network.

How it Works (Tunneling): A common way to isolate virtual networks is by providing a special label within each data frame that identifies the virtual network it belongs to. This labeling and forwarding is called network tunneling.

Definition: The method of splitting up network resources into separate bandwidth channels that are isolated and independent of one another, which can then be assigned and reassigned to different services or servers.

Goal: To optimize the speed, reliability, and flexibility of the network.

Types of Network Virtualization

External Network Virtualization:
Combines multiple networks or parts of networks into a single virtual unit.

A key goal is to improve the efficiency of a large network/data center.

Its two main components are the Virtual Local Area Network (VLAN) and the network switch.

System administrators use these to configure systems that are physically attached to the same local network into many different virtual networks.

1. Internal Virtualization

Internal virtualization (also called network in a box) uses software containers to mimic or provide the functionality of a single physical machine.

  • It's a network virtualization confined to a single system.

  • It improves the overall efficiency of a single system by isolating the separate virtual environments and allowing them to communicate over a virtual network interface.

  • This type is commonly seen on workstation versions of VMware and similar platforms.


2. Basic Components of Virtual Networks

Virtual networks have three fundamental components:

  1. Network hardware: Includes network interface cards, virtual switches, and VLANs.

  2. Network storage devices: The devices where the data is actually stored.

  3. Network media: The physical cabling used, usually Ethernet or Fiber Channel.


3. Architecture of Network Virtualization

As illustrated in Fig. 3.5: Network Virtualization, multiple virtual networks run on a single physical network.

  • Process: Network virtualization comprises rationally grouping and segmenting physical network(s) into distinct rational units known as 'virtual network(s)' and forming them to act as one or multiple separate networks.

  • Resource Sharing: It allows multiple virtual networks to share the underlying physical network resources (routers, hubs, switches, etc.) within the Virtual Data Center (VDC).

  • VM Network: A virtual network exists entirely within a physical server where the Hypervisor runs the host machine, and each virtual machine is considered a guest machine.

  • Goal: It allows the construction of multiple virtual networks in the Data Center (DC) while ensuring all nodes belonging to a single working unit in an enterprise are aligned.


4. Benefits of Network Virtualization

  1. Reduced Hardware and Power Consumption: Network virtualization reduces the amount of physical network hardware required, leading to a corresponding decrease in power consumption in the office space.

  2. Automated Management: It allows for the easy and automatic administration of network security and protocols, ensuring they are consistently applied across the entire virtualized network infrastructure.

  3. Simplified Provisioning and Troubleshooting:

    • Network Provisioning (the delivery of new services to network users) is greatly simplified in a virtual environment.

    • Troubleshooting is also easier because the management and control of the entire virtual network are consolidated in a single physical location.

  4. Improved Scalability:

    • Network virtualization provides a quick and easily scalable solution.

    • It removes the IT infrastructure as a major barrier to business growth, allowing organizations to respond to market demands with agility.


Disadvantages of Network Virtualization

While powerful, Network Virtualization has several limitations that an organization must consider:

  1. Increased Upfront Costs: There is a significant initial cost associated with investing in virtualization software.

  2. Need to License Software: Organizations must deal with the complexity and cost of licensing the virtualization software.

  3. Steep Learning Curve: There may be a substantial learning curve if IT managers and staff are not already experienced in virtualization technology.

  4. Application Incompatibility: Not every application and server is guaranteed to work flawlessly in a virtualized environment. Compatibility issues can arise.

  5. Availability Issues: Availability (the ability to access the data) can be a critical issue if an organization faces network problems and cannot connect to its virtualized data, highlighting the dependency on network connectivity.

Virtual Data Center (VDC) for Cloud Storage

 

Benefits of Virtual Data Center (VDC) for Cloud Storage

The Virtual Data Center (VDC) architecture, which utilizes virtualization for centralized services and consolidation (as shown in Figure 3.4), provides the following ten major benefits that make cloud storage a superior solution to traditional physical storage:

  1. Reduction of Costs: Virtualization significantly cuts down management costs and eliminates expensive outlays for the purchase, maintenance, and replacement of dedicated physical IT hardware.

  2. Simplified Management: Virtual servers allow IT infrastructure management to be done remotely, easily, and in real-time, simplifying overall administration.

  3. Optimization of Resources: Virtualization maximizes the use of both hardware and virtual resources, making the system more flexible and performant.

  4. Pay-per-use Model: This model enables users to pay only for the resources they actually consume, which drastically reduces waste and saves money.

  5. Lower Consumption: Virtual hardware requires less power than physical hardware, reducing the data center's energy consumption, environmental impact, and feeding costs.

  6. Security of Facilities and Data: Cloud providers, relying on a specialized facility, can offer high-level security and advanced data protection, including compliance with disaster recovery and business continuity systems, which is often superior to on-premise security.

  7. High Efficiency: Virtual machines make the IT infrastructure more agile and improve operational efficiency.

  8. Integration with Managed Services: VDCs allow organizations to easily rely on an external provider to manage their IT services, enabling them to focus on their core business.

  9. The Latest Technology: Customers always get access to the newest, most cost-effective technology, as the VDC provider is responsible for continuous disposal and upgrade of the underlying physical equipment.

  10. Availability and Scalability: Virtual machines enable superior scalability (ability to handle growing workloads) and availability (ensuring access) of resources compared to physical equipment.

1. VDC Environment (Virtual Data Center)

A Virtual Data Center (VDC) is the evolution of the classic data center. It is the logical infrastructure that powers cloud services.

  • Core Elements: The classic data center consists of elements like host, storage, connectivity (network), applications, and DBMS (Database Management System).

  • Virtualization and Consolidation: In a VDC, these physical resources are pooled and provided as virtual resources using software.

  • Abstraction: This process of abstraction hides the complexity and limitation of physical resources from the user.

  • Benefit of VDC: By consolidating IT resources, organizations can optimize their infrastructure and reduce the total cost of owning an infrastructure.

  • Deployment: Virtual resources are created using software, enabling faster deployment compared to deploying physical resources.


2. Server Virtualization and Benefits

Server Virtualization is a technique that partitions a single physical server into a number of smaller, isolated virtual servers using specialized virtualization software (like a Hypervisor).

Server Virtualization Definition

  • It involves running multiple operating system instances on a single physical server at the same time.

  • It is used in cloud computing to create a virtual edition of a device, server, storage, network, or an operating system, where the structure splits the resources as one or more environments for execution.

  • It improves resource utilization by moving workloads from many underutilized servers onto a fewer number of powerful servers.

Uses of Server Virtualization

The practical applications of server virtualization include:

  1. To centralize the server administration.

  2. To improve the availability of server resources and services.

  3. Helps in disaster recovery by making it easier and faster to restore virtual machine images.

  4. Ease in development and testing by quickly provisioning new, isolated environments.

  5. Make efficient use of server resources by significantly increasing resource utilization and reducing the number of idle servers.

Server Virtualization Techniques

The key component in server virtualization is the Hypervisor.

  • Hypervisor: A hypervisor is a software layer between the operating system and the hardware.

    • It manages and keeps requests separate from multiple operating systems (Guests) running on the same physical machine (Host).

    • It is responsible for critical tasks like handling queues, dispatching, and returning hardware requests.

    • The OS that runs on top of the hypervisor is used to administer and manage the various virtual machines.

Cloud Storage Characteristics

 Cloud Storage Characteristics (NIST Model)

The essential characteristics of cloud computing, which directly apply to cloud storage, are defined by the National Institute of Standards and Technology (NIST):

  1. On-Demand Self-Service: Users can unilaterally provision (add) and de-provision (remove) storage capabilities, such as server time and network storage, automatically without requiring human interaction with the service provider.

  2. Broad Network Access: The storage services are available over the network and accessed through standard mechanisms (like web browsers or mobile apps) that enable use by heterogeneous client platforms (e.g., mobile phones, tablets, laptops).

  3. Resource Pooling: The provider's computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. The user generally doesn't know the exact location of the stored data but can often specify the region.

  4. Rapid Elasticity: Storage capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly commensurate with demand. To the consumer, the capabilities available for provisioning often appear to be unlimited. This allows users to scale up or down as needed.

  5. Measured Service (Pay-per-use): Resource usage is monitored, controlled, and reported, providing transparency for both the provider and the consumer. Storage is typically charged based on consumption, such as the amount of storage used, data transfer volume, and number of read/write operations.


Advantages of Cloud Storage

BenefitDescription
Accessibility and ConvenienceData can be accessed anytime, anywhere using any internet-connected device (laptop, smartphone, tablet). This facilitates remote work and learning.
Cost EfficiencyIt eliminates the Capital Expenditure (CAPEX) of buying and maintaining physical hardware (hard drives, servers). You pay a predictable Operational Expenditure (OPEX) based on usage (pay-as-you-go model).
Scalability and ElasticityStorage capacity can be increased or decreased almost instantaneously and virtually unlimited, matching the exact requirement of the user or organization without manual intervention.
Data Backup and Disaster RecoveryCloud providers replicate data across multiple redundant servers and data centers. This ensures high durability and makes data loss due to local hardware failure or disaster highly unlikely.
Easy CollaborationSharing files and collaborating on documents in real-time is simplified, as multiple users can access the same up-to-date files simultaneously.
Security (Provider Side)Major providers invest heavily in enterprise-grade security measures like encryption (data in transit and at rest), threat monitoring, and robust physical data center security.

Disadvantages of Cloud Storage
DrawbackDescription
Internet DependencyAccessing and syncing files requires a reliable internet connection. Poor or no connectivity means limited or no access to your data.
Security and Privacy Concerns (User Side)Entrusting sensitive data to a third-party vendor raises concerns. Users must rely on the provider's security measures and contract terms. Data breaches or unauthorized access are potential risks.
Limited Control and CustomizationThe user has less control over the underlying infrastructure, operating system, and data management policies compared to on-premises storage. The setup is dictated by the vendor.
Vendor Lock-inMigrating large volumes of data from one cloud provider to another can be complex, time-consuming, and costly, creating a reliance on the current vendor.
Evolving Costs (Long-Term)While initially cheap, costs can accumulate over time, especially for high usage (large storage capacity or frequent data retrieval/transfer, known as "egress" costs).
Downtime RiskAlthough rare, cloud service providers can experience service outages or technical issues, temporarily disrupting access to the stored data.

Cloud Storage, Monitoring and Management

Traditional data center architecture-

The architecture is made up of a few core systems that work together to keep everything running.

• Compute: This is the brain of the data center. It consists of racks of physical servers that provide the processing power to run applications and services. These servers are typically single-purpose and managed individually.

• Storage: This is where all the data lives. In a traditional setup, data is stored on dedicated storage devices and systems, often in the form of a Storage Area Network (SAN) or Network Attached Storage (NAS).

• SAN is a high-speed network that provides access to shared block-level storage.

• NAS is a file-level storage device that makes data available to network users.

• Network: The network is the nervous system, connecting all the servers and storage devices to each other and to the outside world. This is typically a three-tier architecture that uses a hierarchical design.

Three-Tier Network Architecture

This is the most common network model in traditional data centers. It's a layered approach that's easy to understand and manage, but can create bottlenecks.

• Access Layer: This is the lowest layer, where all the servers are physically connected. The switches in this layer, often called top-of-rack (ToR) switches, link to the servers within their specific racks.

• Aggregation (or Distribution) Layer: This layer aggregates traffic from the access layer switches and provides connectivity between them. It acts as a bridge and is responsible for policy-based routing and other network services.

• Core Layer: This is the backbone of the network. It provides high-speed, high-capacity connectivity to the outside world and interconnects all the aggregation layer switches. It's designed for speed and is a central point for all data flow.

Challenges of Traditional Architecture

Traditional data centers are reliable and secure, but they have some key drawbacks, especially when compared to modern cloud-based solutions.

• Scalability: Scaling up means buying and installing more physical hardware, which is a slow and expensive process. You have to physically add more servers, storage, and networking equipment.

• Cost: The initial investment is high due to the cost of hardware, power, cooling, and the physical space itself.

• Inefficiency: The hardware is often underutilized. Since resources are not easily shared or reallocated, a server might be sitting idle while another is at full capacity.

• Complexity: Managing a large number of separate, physical components requires a lot of manual effort and can be prone to errors.

What is a Virtualized Data Center? 🏢
A virtualized data center is a modern approach that uses software to create "virtual" versions of the hardware components (servers, storage, and networking) found in a traditional data center. Instead of running on a single, dedicated physical machine, many virtual machines (VMs) can run on a single piece of physical hardware. This is a game-changer because it allows you to use your resources much more efficiently.

Key Components and How They Work
Instead of the physical three-tier architecture of traditional data centers, a virtualized data center is organized around a centralized services model, which is managed through a software layer.
• Virtualization Layer (Hypervisor): This is the most crucial part. The hypervisor is a software that sits on top of the physical hardware. Its job is to separate the physical resources (CPU, RAM, storage) from the virtual machines. It allows you to create multiple isolated virtual machines on a single physical server, each with its own operating system and applications. Think of it like a landlord who divides a large building (the physical server) into many separate apartments (the VMs), each with its own utilities, and manages them all from one central office.
• Virtual Compute (Virtual Machines - VMs): These are the virtual servers created by the hypervisor. They have their own virtual CPUs, memory, and storage, and act just like a physical server. The main advantage is that you can create, move, and delete them in minutes using a central management tool, unlike a physical server which takes hours or days.
• Virtual Storage: This pools together the storage capacity from multiple physical storage devices into a single, large pool that can be centrally managed. It separates the storage logic from the physical hardware, allowing for more flexible and efficient allocation of storage to the VMs.
• Virtual Network: This is a software-defined network (SDN) that creates virtual switches, routers, and firewalls. It allows VMs to communicate with each other and with the outside world without needing to physically re-cable the network. Network policies and rules are defined in software, making them easy to change and manage centrally.

Centralized Services and Their Benefits
The core of a virtualized data center is its centralized, software-defined management. This changes the entire architecture from a hardware-centric to a software-centric model.
• Simplified Management: Instead of managing each physical server, storage device, and network switch individually, you manage them all from a single, centralized management console. This reduces manual effort and the risk of human error.
• Increased Efficiency and Cost Savings: Since you can run many virtual machines on a single physical server, you use your hardware much more efficiently. This means you need fewer physical servers, which saves money on hardware costs, power, and cooling. It also reduces the physical space required for the data center.
• Improved Scalability and Agility: It's much faster to scale up or down. If you need a new server for a project, you can simply spin up a new VM in minutes. When the project is over, you can delete it and free up the resources. This flexibility allows businesses to respond to changing needs much more quickly.
• Enhanced High Availability and Disaster Recovery: You can easily move a VM from a failing physical server to a healthy one. This process, called live migration, happens without any downtime. It also makes it much easier to back up and restore entire virtual environments.




Consolidated virtual data center architecture is a strategy to combine multiple, often older or underutilized, data centers into a single, highly efficient, and centrally managed virtualized data center. Instead of having servers scattered across different locations, you bring them all together into one powerful, virtualized environment. This process uses virtualization technology to drastically reduce the amount of physical hardware needed.

The Goal of Consolidation
Think of it like this: Imagine you have five separate small offices, each with its own small server room. In a consolidated approach, you would shut down four of those offices and move all their servers, data, and applications to one large, modern, and highly efficient server room.
The key here is that you don't just move the physical servers. Instead, you virtualize them. You take the applications and data from dozens of old, physical servers and run them as virtual machines (VMs) on just a few new, powerful physical servers. This significantly


Resource Pooling: Instead of dedicating resources to a specific task, you create a large, shared pool of compute, storage, and networking resources. Virtual machines can then dynamically pull resources from this pool as needed.


Centralized Management: A single software platform or console is used to manage and monitor all the virtual resources. This includes creating new VMs, allocating storage, configuring network settings, and monitoring performance across the entire data center.


Why Consolidate?
The decision to consolidate is driven by several key benefits:
• Cost Reduction: This is the biggest advantage. By reducing the number of physical servers, you save money on hardware, software licenses, power consumption, and cooling costs.
• Improved Efficiency: With fewer physical servers, resource utilization increases dramatically. Instead of having many servers running at 10-20% capacity, you have a few servers running at 70-80% capacity.
• Simplified Management: A centralized management system makes the data center easier to operate. Instead of managing a complex web of physical devices, you're managing a single, virtual environment from a single point.
• Better Security: With a smaller physical footprint and a centralized management system, it's easier to implement and enforce security policies, making your data center more secure.
• Scalability and Agility: When you need a new server, you can create a new VM in minutes from your central console. This is much faster and more flexible than ordering, installing, and configuring a new physical server.

Monday, 25 August 2025

Xen Architecture

 Xen Architecture
1. What is Xen?
Definition: Xen is an open-source type-1 hypervisor that allows multiple operating systems to run simultaneously on the same hardware.
Type-1 hypervisor means it runs directly on hardware (bare-metal), not on top of another OS.
Main purpose: Server virtualization — used in cloud platforms like AWS.

2. Xen Architecture
Think of Xen as a traffic controller between hardware and operating systems.
Main Components:
1. Xen Hypervisor
The core layer that runs directly on the CPU.
Handles CPU scheduling, memory management, and I/O requests.
Provides an abstraction layer between hardware and OS.
2. Domain 0 (Dom0)
The first virtual machine started by Xen.
Has special privileges to directly access hardware drivers.
Manages other virtual machines (DomU).
Runs a modified Linux OS with Xen management tools (xend, xl).
3. Domain U (DomU)
User domains — guest operating systems.
They do not have direct hardware access; they go through Dom0 for I/O.
Can be:
Paravirtualized (PV) — OS is modified to work with Xen.
Hardware Virtual Machine (HVM) — uses CPU virtualization features, unmodified OS.
4. Control Interfaces
Tools and APIs for creating, starting, stopping, and managing VMs.
Example: xl create myvm.cfg

Xen Architecture Diagram (Exam-friendly)
   +------------------------------+
   |        Guest OS (DomU)        |
   +------------------------------+
   |        Guest OS (DomU)        |
   +------------------------------+
   | Privileged OS (Dom0) + Tools  |
   +------------------------------+
   |        Xen Hypervisor         |
   +------------------------------+
   |          Hardware             |
   +------------------------------+

3. Guest Operating System in Xen
A Guest OS is any operating system running inside a Xen virtual machine (DomU or Dom0).
Types of Guest OS in Xen:
1. Paravirtualized (PV) Guest
OS is modified to work with Xen hypervisor calls.
Direct access to Xen APIs for better performance.
Example: Modified Linux kernel for Xen.
2. Full Virtualized / HVM Guest
OS is not modified.
Uses CPU features like Intel VT-x or AMD-V.
Xen emulates hardware so the OS thinks it’s running on a real machine.
Example: Windows running on Xen.

Guest OS Role
Executes applications.
Uses virtual hardware provided by Xen.
Sends I/O requests (disk, network) through Dom0.

✅ Key Points for MSBTE Exam:
Xen is Type-1 Hypervisor → runs directly on hardware.
Dom0: First booted VM, has direct hardware control, manages DomU.
DomU: Guest OS VMs, run in isolated environments.
Guest OS can be PV (modified) or HVM (unmodified).
Xen provides isolation, resource sharing, and security between VMs.

Virtual Machine

    
Virtual Machine
1. Virtual Machine (VM) 
Definition:
A Virtual Machine (VM) is a software-based emulation of a physical computer that runs an operating system and applications, just like a real computer.
Key points:
Created and managed by a hypervisor.
Runs on virtual hardware (virtual CPU, memory, disk, network).
Provides isolation between different VMs.
Example: Running Windows inside VMware on a Linux laptop.

2. Life Cycle of a VM
Think of it like the life stages of a living thing, but for a virtual computer.
1. Creation
     VM is defined with CPU, memory, storage, and network settings.
Operating system is installed or imported.
2. Power On / Start
VM is booted and the guest OS starts running.
3. Running
VM executes applications and performs tasks.
4. Suspend / Pause
VM state is saved in memory or disk, execution is halted temporarily.
5. Resume
VM continues execution from the suspended state.
6. Shutdown / Power Off
Guest OS is stopped, and VM resources are released.
7. Deletion
VM configuration and virtual disks are removed.

📍 Exam diagram idea:
[Create] → [Start] → [Running] → [Suspend] ↔ [Resume] → [Shutdown] → [Delete]
3. VM Migration — Concept and Techniques
Concept:
Moving a running or stopped VM from one physical host to another without affecting its execution significantly.
Why needed?
Load balancing between servers.
Hardware maintenance.
Energy saving.
Techniques:
1. Cold Migration
VM is powered off, then moved to another host.
Simple but causes downtime.
2. Live Migration
VM is moved while still running, with minimal downtime.
Memory and CPU state are transferred while VM is still active.
3. Storage Migration
Moving the VM’s virtual disk files to another storage location.

4. VM Consolidation 
Concept:
Combining workloads from multiple VMs onto fewer physical servers to save resources.
Purpose:
Reduce power consumption.
Lower hardware costs.
Improve resource utilization.
How it works:
Identify underutilized VMs.
Migrate them to fewer hosts.
Power off unused servers.
📍 Example:
If 5 servers are each running at 20% capacity, consolidate into 2 servers running at ~50%, and turn off 3 servers.

5. VM Management — Concepts
Concept:
The process of monitoring, controlling, and maintaining VMs for performance, security, and availability.
Tasks in VM Management:
1. Provisioning — Creating new VMs and allocating resources.
2. Monitoring — Tracking CPU, memory, network usage.
3. Backup & Recovery — Protecting VM data.
4. Security — Applying patches, controlling access.
5. Automation — Using scripts/tools to auto-scale or auto-heal.
✅ Exam Tips:
Always include definition + purpose + example in answers.
Diagrams for VM life cycle and migration types can fetch extra marks.
Keep answers in point form for clarity in MSBTE papers.

Thursday, 24 July 2025

Virtualization

 Unit 2  Virtualization

2.1 Introduction, Virtualization Reference Model,Characteristics of virtualized environment

2.2 Differentiate various types of Virtualization :Storage, Network , Desktop , Application server

2.3 Technology Examples

2.3.1 VMWare: Full Virtualization Reference Model

2.3.2 Xen: Architecture and Guest Operating SystemManagement

2.4 Definition and Life Cycle of Virtual Machine(VM),VM Migration: Concept and Techniques, VMConsolidation: Concepts, VM Management: Concepts

2.5 Advantages and Disadvantages of Virtualization

Here’s a clear explanation of the Virtualization Reference Model and the Characteristics of a Virtualized Environment, ideal for quick study or viva prep:


🔷 Virtualization Reference Model

  • Virtualization is a technique that allows a single physical instance (application/resource) to be shared among multiple organizations or customers (tenants).
  • "Virtual" means not physically real; it can include virtual versions of hardware, software, storage, networks, etc.
  • It involves creating virtual copies of servers, networks, OS, or resources that behave like real systems for users.
  • It works by assigning a logical name to a physical resource and offering a pointer to access it as needed.

 

INTRODUCTION TO VIRTUALIZATION

  • A rapidly growing technology transforming IT and computing methods.
  • Helps reduce hardware usage, save energy, cut costs, and allows multiple apps/OS on one server.

Purpose of Virtualization:

Virtualization provides an abstract environment to run applications using:

  • Abstraction: Hides complex resource details to simplify usage.
  • Replication: Enables creation of multiple instances for easier management.
  • Isolation: Separates client usage to improve security.

 

The Virtualization Reference Model defines how virtualization is structured in a computing environment. It includes key components:

🔸 1. Hardware

      The physical machine (server, CPU, memory, storage).

🔸 2. Host Operating System

(optional in some types like bare-metal hypervisors)

      Controls hardware directly and may run the virtualization layer on top.

🔸 3. Hypervisor (VMM - Virtual Machine Monitor)

      Core part of virtualization.

      Manages virtual machines and distributes hardware resources.

      Two types:

      Type 1 (Bare-metal) – Runs directly on hardware.

      Type 2 (Hosted) – Runs on a host OS.

🔸 4. Virtual Machines (VMs)

      Multiple isolated instances that act like real computers.

      Each VM has:

      Virtual CPU

      Virtual RAM

      Virtual Disk

      Virtual Network Interface

🔸 5. Guest Operating Systems

      OS installed on VMs (like Windows, Linux, etc.).

🔸 6. Applications

      User-level software running inside each VM.

📌 Need/Importance of Virtualization

  • Virtualization creates a virtual version of hardware, software, storage, or network devices.
  • It enables multiple OS and applications to run on the same physical machine.
  • A single physical resource is divided into multiple logical partitions, shared by multiple users.
  • It's a key component of cloud computing, especially for infrastructure-based services.
  • Offers secure, customizable, isolated execution environments—even for untrusted apps.
  • Benefits:
    • Better resource management
    • Secure remote access
    • Data loss prevention
    • Time & energy saving, cost reduction, and risk minimization

🔷 Major Needs of Virtualization

1.    Enhanced Performance

o   PCs have more power than needed.

o   Virtual machines can run efficiently using unused power.

2.    Limited Use of Hardware and Software Resources

o   Prevents under-utilization.

o   Allows 24×7 use of PCs and servers.

o   Improves IT infrastructure efficiency.

3.    Shortage of Space

o   Demand for computing leads to higher data center costs.

o   Virtualization enables server consolidation, reducing the need for physical expansion.

4.    Eco-Friendly Initiatives

o   Reduces power consumption.

o   Data centers consume lots of energy; virtualization minimizes waste.

5.    Administrative Costs (described later, possibly on next page)

o   Expected to refer to cost savings in maintenance, deployment, and scaling.

🌟 Characteristics of a Virtualized Environment

1.    Isolation

      Each VM is separated from others; one crash doesn’t affect others.

2.    Hardware Independence

      VMs can run on any hardware as long as the hypervisor supports it.

3.    Resource Sharing

      Multiple VMs share physical resources like CPU, memory, and storage.

4.    Portability

      VMs can be moved easily from one server to another.

5.    Snapshot and Backup

      You can take VM snapshots (full state backup) and restore anytime.

6.    Security

      Enhanced by isolation; vulnerabilities in one VM do not spread.

7.    Scalability

      Resources can be added or removed dynamically.

8.    Flexibility

      Allows running different OSes on a single hardware system.

🔧 Working of Virtualization

  • Enables sharing of virtual copies of physical resources or apps among users/organizations.
  • IT professionals use special software to create multiple virtual versions of one resource.
  • Each virtual version behaves like a unique physical resource with a logical name.
  • When a user requests access, the system provides a pointer to the physical resource.
  • Hypervisor: A software/firmware that manages VMs (virtual machines); acts like an operating system.
  • The host machine runs the virtual environment; the guest machine is the created VM.

Benefits of Virtualization

1.    Cost Savings – Reduces costs and is easy to maintain.

2.    Multiple OS Support – Run multiple OS on one platform.

3.    Less Dependence on Hardware – No need for heavy hardware.

4.    Server Consolidation – Useful for managing crashes and server loads.

5.    Reliability – Critical operations are supported via virtual servers.

6.    Quick Resource Availability – Faster than accessing physical resources.

7.    On-demand Resource Access – Cloud vendor provides resources in virtual form, reducing downtime.


🔄 Difference between Virtualization and Cloud Computing

Sr. No.

Virtualization

Cloud Computing

1

Creates multiple copies of hardware/software on the same machine

On-demand access to copies on the same machine

2

Simple to set up

Complicated setup process

3

Requires proper authentication before access

Can be accessed anywhere, anytime

4

More cost-efficient

Can be costlier

🔷 2.1.1 Virtualization Reference Model

The reference model includes three major components in a virtualized environment:

1. Guest

  • Interacts with the virtualization layer, not the physical system.
  • Contains virtual disk files, VM definition file, and applications.
  • Treated as separate by the system; each is managed like a distinct application.

2. Host

  • Represents the original physical environment.
  • Manages all physical resources (hardware, storage, network).
  • Shares resources with the guest via the virtualization layer.

3. Virtualization Layer

  • Sits between guest and host.
  • Creates a virtual environment for the guest.
  • Provides abstraction and software emulation to simulate hardware, storage, and networking.

🔽 Diagram Summary (Fig. 2.3)

Guest Virtual Image / Apps

    ↑

Virtualization Layer Virtual hardware, storage, networking

    ↑

Software Emulation

    ↑

Host Physical hardware, storage, networking

🔸 2.1.2 Characteristics of Virtualized Environment

🔹 What is it?

  • Virtualization refers to creating virtual versions of hardware, software, storage, or networks.
  • Involves the Guest, Host, and Virtualization Layer.

Key Characteristic:

1. Increased Security

  • Virtualization isolates guest programs, controlling their execution securely.
  • Enables safe and transparent execution of programs.
  • Guest operations are processed in the virtual machine and translated/applied to host systems.
  • Guest programs can be monitored, filtered, and isolated to prevent harmful operations.
  • Untrusted code can be tested in sandboxed environments (e.g., Cuckoo sandbox or JVM security policies).

2. Managed Execution

Virtualization enables advanced features like:

🔹 Sharing

  • Allows multiple separate computing environments to exist on the same host.
  • Helps reduce the number of physical servers less power consumption.

🔹 Aggregation

  • Opposite of sharing: multiple physical hosts act as a single virtual host.
  • Uses cluster management software to combine systems and manage them as one.

🔹 Emulation

  • Guest programs can run in an environment that mimics (emulates) required features.
  • Makes it possible to run programs needing features not present on the physical host.

🔹 Isolation

  • Each guest operates in a completely separate space.
  • Prevents interference, enhances security, and protects host from guest activity.

3. Portability

Virtual machines can run on different platforms depending on the virtualization type:

  • Hardware Virtualization:
    • Guest is in a virtual image that can run on different hardware without issues.
  • Programming-Level Virtualization (e.g., JVM, .NET):
    • Code (like .jar or .exe) can run without changes across compatible environments.

🛠️ Additional Feature: Performance Tuning

  • Fine-tunes guest program performance by adjusting how hardware resources are exposed.
  • Helps support Quality of Service (QoS) for efficient and optimized execution.

2.2 TYPES OF VIRTUALIZATION

  • Virtualization uses emulation techniques for various computing areas.
  • It includes creating virtual versions of:
    • Hardware devices
    • Storage devices
    • Network resources
  • Virtualization enables easier cloud computing implementation.
  • Major types of virtualization include:
    • Storage Virtualization
    • Hardware Virtualization
    • Operating System Virtualization
    • Network Virtualization
    • Desktop Virtualization
    • Application Virtualization
    • Server Virtualization

🔹 2.2.1 Hardware Virtualization

📌 Definition:

  • It means creating virtual physical hardware resources accessible by multiple users at the same time.

🧠 Key Points:

  • Creating VMs (Virtual Machines) over physical hardware is called hardware virtualization.
  • VMs are logically separated from the real hardware, allowing multiple OS on the same machine.
  • The software controlling VMs is called the Hypervisor.
    • It manages shared physical resources between cloud providers and users.
  • The Virtual Machine Manager (VMM):
    • Is the core component of hardware virtualization.
    • Manages memory, CPU, and program execution.
  • Provides an abstract execution environment for the guest OS.

🖥️ Hardware Virtualization Model:

  • Guest = OS
  • Host = Physical machine
  • Virtual Machine = Created using software emulation
  • Hypervisor = Controls everything between hardware and VM

🔷 Concept of Hypervisor / Virtual Machine Manager (VMM)

  • The Hypervisor is a software or firmware that creates and manages virtual machines (VMs) by abstracting the physical hardware.
  • It is the core component of hardware virtualization.

📌 Types of Hypervisor:

1. Type-1 Hypervisor (Bare-metal / Native)

  • Runs directly on hardware without any base operating system.
  • Controls hardware resources and manages guest OS.
  • Examples: VMware vSphere, KVM, Oracle VM, Citrix Hypervisor.

2. Type-2 Hypervisor (Hosted)

  • Runs within the host operating system.
  • Acts as a second layer above the OS.
  • Examples: Oracle VM VirtualBox, VMware Workstation Pro, Windows Virtual PC.

Hypervisor Benefits:

  • Multiple guest OS can run on a single physical machine.
  • Separates CPU, RAM, and other hardware for each VM.
  • VMs are isolated, so an attack on one doesn't affect others.
  • Diagram (Fig. 2.5) shows:
    • Type 1: Hypervisor directly on hardware.
    • Type 2: Hypervisor on top of host OS.

🔶 Full Virtualization

📌 Definition:

  • Allows a guest OS to run as if on real hardware, with no modifications needed.
  • The VMM completely emulates the underlying hardware.

🧠 Key Points:

  • Enables complete simulation of hardware.
  • Guest OS runs in isolation from the host.
  • Used for running unmodified OS or programs on virtual environments.
  • In full virtualization, apps run on the guest OS as they would on actual hardware.

🖥️ How it works:

  • The Guest OS runs on top of the hypervisor without knowing it’s virtualized.
  • It sends commands directly to simulated hardware.
  • Refer Fig. 2.6 for a visual explanation.

🔷 Advantages of Full Virtualization:

1.    Combines old and new systems for better hardware use and efficiency.

2.    Reduces cost of maintaining or upgrading old systems.

3.    Improves underperforming systems by maximizing hardware usage.

4.    Strong isolation and security for each virtual machine.


🔶 Limitations of Full Virtualization:

1.    Slightly slower due to heavy emulation overhead.

2.    Device driver issues: Hypervisor includes drivers that may be harder for users to install.


🔶 Para-Virtualization

📌 Definition:

  • A semi-transparent virtualization method where the guest OS is modified to work efficiently with the virtual machine.

Key Features:

  • Exposes a software interface to VMs that requires modification of the guest OS.
  • Allows performance-critical tasks to be executed directly on the host hardware, improving speed.
  • Easier for VMMs to manage as they pass hard-to-virtualize tasks to the host.

🔧 Requirements:

  • Guest OS must be modified, so it needs source code access.
  • Mostly used in open-source or academic environments.

🛠️ Example:

  • Xen Hypervisor supports para-virtualization for Linux-based systems.

Refer Fig. 2.7 to see the architecture of para-virtualization.

1.    pport – Can run multiple OSes on one server.

2.    Improved Efficiency – Boosts performance without adding much overhead from the host OS.


⚠️ Limitations of Para-virtualization

1.    Guest OS must be modified, which isn’t always possible.

2.    Needs extra maintenance and support in real-world (production) environments.


💻 Hardware Assisted Virtualization

  • A type of Full Virtualization using hardware support (instead of just software).
  • Hardware (CPU) includes special instructions to help virtualize the system efficiently.
  • Helps the guest OS run privileged instructions directly on hardware safely.
  • Common feature in modern processors is called Hypervisor support.

📌 If hardware support doesn’t exist:

  • Full Virtualization can still work using software like Dynamic Recompilation (host rewrites guest instructions to run them safely).

🔁 Hybrid Virtualization

  • Mix of Para-virtualization and Full Virtualization.
  • Uses para-virtualization for specific drivers (like I/O), and full virtualization for the rest.
  • Guest OS doesn't need full para-virtualization, just specific drivers.
  • Offers a balance of compatibility and performance.

🔧 Benefits of Hardware Virtualization

1.    Cost ReductionOne physical machine can run multiple virtual systems saves hardware cost.

2.    Better Resource UseHardware is used efficiently across multiple VMs.

3.    Backup & RecoveryEasy to backup virtual machines and restore them in case of failure.

💻 Software Virtualization

🔹 Definition:

  • Software virtualization abstracts software installation and provides access to virtual applications or OS.
  • It lets a server run multiple operating systems or applications in virtual environments.

🔹 Purpose:

  • To emulate the entire computer system, allowing different OSes or apps to run independently on one machine.
  • Common tools: VMware, VirtualBox.

🔸 Types of Software Virtualization:

1.    Operating System Virtualization:

o   Multiple OSes run on the same hardware.

o   They operate independently without interference.

2.    Application Virtualization:

o   Runs individual applications in virtual environments, separated from the main OS.

o   Example: Run Linux apps on Windows without changing machine setup.

o   Common in cloud computing for remote application access.

3.    Service Virtualization:

o   Used in testing.

o   Simulates parts of complex systems for testing when certain components are unavailable or incomplete.


Advantages of Software Virtualization:

1.    Cost Efficiency – Fewer physical servers lower hardware cost.

2.    Scalability – Easy to add/remove VMs as needed.

3.    Backup – Allows backup of the entire OS or apps.

4.    Flexibility – Run different OSes and apps based on organization needs.

5.    Efficient and Secure – Use one system to run many VMs securely; protected from viruses.

6.    Simple Management – Easy to manage and update apps or OS.


🖥️ Server Virtualization

🔹 Definition:

  • Divides one physical server into multiple virtual servers.
  • Boosts resource utilization and organizational productivity.
  • Users interact with the server in virtual form (not physical).

Server Virtualization

In server virtualization, a physical server is divided into multiple virtual servers, which work like independent devices.

Key Points:

  • Each virtual server behaves like a separate physical device.
  • A software (called a hypervisor) divides the physical server.
  • Each virtual server runs its own operating system independently.
  • Host = physical server
    Guests = virtual servers

Benefits of Server Virtualization:

1.    Cost Efficient – Reduces the need for buying physical servers.

2.    Improved Efficiency – Allows multiple tasks to run on a single server simultaneously.

3.    Increased Uptime – Easier to upgrade, share resources, and recover quickly.

4.    Independent Environment – Each user gets a secure, isolated virtual space.

Disadvantages of Server Virtualization:

1.    High implementation costs.

2.    Requires effort to manage and monitor environments.

3.    If the physical server fails, all virtual servers go down.

4.    Needs skilled IT staff.

5.    High upfront costs.

6.    Security risks.

7.    Resource availability issues.


Execution Virtualization

Refers to running virtual environments for executing programs, divided into:

1.    Process-level techniques – Run on top of an existing OS with full hardware access.

2.    System-level techniques – Run directly on hardware with minimal or no OS support.

These techniques help simulate different environments using:

  • Bare hardware
  • OS resources
  • Programming languages
  • Application libraries

🔧 Execution Virtualization

Execution virtualization supports running different types of programs or systems by abstracting the underlying hardware or software. It can work on:

  • An operating system
  • A binary specification
  • An application
  • An abstract machine model

Key Points:

  • Can be implemented directly on hardware or over OS/libraries.
  • Enables multitasking and coexistence of different execution environments.
  • Simplifies development by hiding hardware-level complexities.

🧱 Machine Reference Model

This model shows the layers of abstraction in a computing environment.

📊 Purpose:

  • Defines interfaces between abstraction layers.
  • Supports virtualization by allowing one layer to emulate or interact with another.

🧩 Layers (Bottom to Top):

1.    Hardware: Physical components (CPU, memory, etc.)

2.    ISA (Instruction Set Architecture):

o   Defines processor instructions, registers, memory.

o   Interface between hardware and OS.

o   Important for OS developers (System ISA) and app developers (User ISA).

3.    Operating System:

o   Manages hardware, system resources, and execution.

4.    ABI (Application Binary Interface):

o   Interface between OS and application/libraries.

o   Defines system calls, data types, alignment, calling conventions.

5.    Libraries

6.    API (Application Programming Interface):

o   Interface for applications to interact with libraries or OS.


🔁 Working Together:

  • API ABI ISA Hardware
  • High-level application instructions are converted into machine-level operations.
  • These layers allow:
    • Isolation
    • Modular development
    • Multitasking

🖼️ Diagram (Fig. 2.9):

Depicts two paths:

  • Left: Shows layered structure from application to hardware.
  • Right: Shows direct mappings like user ISA being used by applications directly.

Conclusion:

The Machine Reference Model:

  • Simplifies system implementation.
  • Allows virtualization by separating abstraction levels.
  • Supports multitasking and multiple execution environments.

🛡️ Privilege Levels and Execution Modes

Modern CPUs use privilege levels to control access to hardware and sensitive system functions.

Two Primary Privilege Levels:

1.    User Mode:

o   Limited access to memory and peripherals.

o   Used by applications and general user programs.

o   Cannot execute privileged instructions.

2.    Kernel Mode (Supervisor Mode):

o   Full access to memory, CPU instructions, and peripherals.

o   Used by the operating system.

o   Automatically entered when needed, e.g., for memory management or I/O tasks.


🔄 Instruction Types:

  • Non-Privileged Instructions:
    • Can be executed in user mode.
    • Do not impact shared resources.
    • Examples: arithmetic, logic operations.
  • Privileged Instructions:
    • Require kernel mode.
    • Involve sensitive operations:
      • Behavior-sensitive: Affect I/O or CPU registers.
      • Control-sensitive: Modify system states.

🔐 Security Rings (Fig. 2.10)

A ring-based architecture divides privilege into levels, from most to least privileged:

Ring

Privilege Level

Used By

0

Most Privileged

Kernel (Supervisor mode)

1

Less privileged

OS-level services

2

Even less privileged

OS-level services

3

Least Privileged

User applications (User mode)

  • Ring 0: Can execute all instructions.
  • Ring 3: Restricted to non-privileged instructions.
  • Modern systems: Usually implement only Ring 0 (Kernel) and Ring 3 (User).

📌 Key Points:

  • Privilege levels protect system integrity by controlling access.
  • Layered security ensures that user programs can’t directly harm system resources.
  • Systems switch between user mode and kernel mode as needed (e.g., during system calls).

🧠 Key Concepts Before OS Virtualization

  • Supervisor/Kernel Mode: Used by the OS or hypervisor to manage hardware-level operations securely.
  • User Mode: Has restricted access to system resources.
  • Hypervisor runs in supervisor mode because it needs to execute privileged instructions.
  • Original ISAs allowed some privileged instructions in user mode, causing virtualization issues.
  • Modern solutions like Intel VT and AMD Pacifica resolved this by marking such instructions as privileged.
  • This ensures multiple OSes can coexist securely under a single hypervisor.

🖥️ 2.2.5 Operating System Virtualization

📌 Definition:

OS virtualization allows multiple user-space instances (e.g., containers) to run on the same OS kernel concurrently.


Key Features:

  • No need for a hypervisor or virtual machine manager.
  • Multiple isolated environments run on a single OS kernel.
  • Resources like memory, file systems, and processes are isolated and independently managed.

⚙️ Role of Kernel:

  • Shares system resources across instances.
  • Prevents one instance from interfering with another.

🗂️ User Space Instance:

  • Has its own file system view, IP address, devices, and configuration.
  • Completely isolated from other instances.

🐧 Unix-based Systems & chroot:

  • OS-level virtualization evolved from the chroot mechanism in Unix.
  • chroot: Changes root directory for a process and its children isolates file system access.
  • Prevents access to any file system outside the new root.

🔒 Security & Isolation:

  • Achieved through namespace separation, IP isolation, and process isolation.
  • Helps run multiple execution containers for applications (e.g., Docker).

📚 Summary Table: Hardware vs OS Virtualization

Feature

Hardware Virtualization

OS Virtualization

Uses Hypervisor?

Yes

No

Kernel per Instance

Separate per VM

Shared kernel

Resource Isolation

High

Moderate to High (via namespaces)

Example Technology

VMware, Hyper-V

Docker, LXC

Overhead

Higher

Lower

🖥️ Advantages of OS-Level Virtualization

  • Minimal Overhead: No emulation or hardware-specific instructions needed.
  • No App/Hardware Modification: Applications run natively using OS system calls.
  • Efficient Server Consolidation: Multiple services can share the same OS and be isolated.
  • Shared Technology Stack: Operating system, frameworks, and components are reused.

📦 Examples of OS-Level Virtualization Technologies:

  • FreeBSD Jails
  • IBM LPAR (Logical Partition)
  • Solaris Zones & Containers
  • Parallels Virtuozzo Containers
  • OpenVZ
  • iCore Virtual Accounts
  • FreeVPS (Virtual Private Server)

🔧 Uses of OS Virtualization:

  • Virtual hosting environments.
  • Secure allocation of limited hardware resources.
  • Isolating services/applications into different containers.
  • Server hardware optimization.
  • Improved security through separation.

🪟 1. Windows Virtualization:

  • Enables virtualization on Windows OS.
  • Runs Windows-based virtual machines.
  • Each VM is independent but uses the Windows OS’s underlying resources.
  • Tools: VMware, etc.

🐧 2. Linux Virtualization:

  • Enables virtualization on Linux OS.
  • Supports running multiple VMs using Linux kernel's features.
  • Tools: Xen, KVM, VirtualBox, VMware.
  • Resources and processes can be shared and divided among VMs.

Advantages of OS Virtualization:

1.    Low Overhead – More efficient than full virtualization.

2.    Live Migration – Can move containers/instances without downtime.

3.    Dynamic Load Balancing – Containers can be moved across nodes or clusters.


🔜 Coming Up Next: Storage Virtualization (brief intro from image):

  • Combines multiple storage devices into logical volumes.
  • Helps improve efficiency, management, and security.

What is Storage Virtualization?

  • Definition: It is the grouping of physical storage devices into a single logical storage pool, which is then used by servers or hosts as if it were a single device.
  • Partitioning: This pool is divided into multiple logical storage forms and assigned to users or systems.
  • Functionality: These logical forms behave like real physical storage for the users or servers.

Purpose and Benefits

  • Data Security: Data is stored on the cloud, ensuring safety and protection.
  • Centralized Storage: Appears to users as a centralized system, hiding the complexity of physical storage.
  • Virtual Copies: Users interact with virtual copies of storage, not the actual hardware.
  • Vendor Flexibility: Can integrate devices from different vendors and networks.

Key Features and Uses

  • Abstract Physical Storage: Separates physical hardware management from users.
  • Logical Path Access: Users don’t need to know the physical location of data.
  • Efficiency: Helps manage a wide range of storage types under one system.
  • Network-based Virtualization: Often implemented using Storage Area Networks (SANs).
  • Backup & Recovery: Enables data backup and ensures recovery.

Characteristics of Storage Virtualization

  • Separation from Physical Constraints: Logical volumes are independent of physical hardware limitations.
  • Multi-vendor Integration: Combines storage from different vendors into one pool.
  • Automated Management: Optimizes and manages storage automatically (common in cloud storage).
  • Efficiency: Allows quick, reliable data storage and retrieval.
  • Backup Support: Simplifies creating and restoring backups.

Diagram Explanation (Fig. 2.11)

  • Shows multiple servers connected to a virtual storage layer.
  • This layer is divided into pools (A, B, C).
  • Each pool maps to physical storage disks beneath it, abstracting them from users.

🔹 Types of Storage Virtualization:

1.    Block Level Virtualization

o   Separates logical storage from physical storage at block level.

o   User/host accesses logical blocks, not physical ones.

o   Examples: IBM SVC, EMC VPLEX.

2.    File Level Virtualization

o   Separates file systems from physical storage.

o   Clients and admins access files/folders directly.

o   Examples: NAS solutions like NetApp.

3.    Object-Based Storage

o   Stores data as objects instead of files or blocks.

o   Examples: AWS S3, Ceph.


🔹 Methods of Storage Virtualization:

1.    Server-Based Virtualization

o   A management program is installed on the host server.

o   Leverages existing SAN without modification.

2.    Fabric-Based Virtualization

o   Implemented via network switches or appliance servers.

o   Devices like switches, routers, servers handle virtualization.

o   Reduces pressure on the SAN and servers.

3.    Storage Array-Based Virtualization

o   Done at the storage system level, using storage arrays.

o   Arrays can be HDDs or SSDs.


🔹 Benefits of Storage Virtualization:

1.    Enhanced Storage UtilizationAggregates multiple storage devices efficiently.

2.    Highly ScalableCan grow storage with demand.

3.    SavingsReduces hardware costs using existing infrastructure.

4.    Very High AvailabilitySupports redundancy and failover.

5.    Improved PerformanceDynamically balances workloads.

6.    Data Migration Made EasierSimplifies moving data between systems.

7.    Easy Retrieval and StorageQuick access to data.

8.    Easy and Simple Data MigrationFast and smooth movement of data.

9.    Easy and Secure StorageSecure protocols ensure data safety.


🔹 Introduction to Network Virtualization (Section 2.2.7):

  • Definition: Creation of virtual networks using hardware, software, and network functionality.
  • Purpose: Automates network tasks and improves management.
  • Function: Combines switches, routers, servers into a single virtual network.
  • Benefits:
    • Boosts productivity and efficiency
    • Enhances speed, reliability, security, and flexibility

🔷 Network Virtualization Overview

  • Definition: Network virtualization is the creation of virtual networks that combine hardware and software resources to simplify network infrastructure and automate management.
  • It allows multiple secure virtual connections over a single physical network.

🔹 Types of Network Virtualization

1.    External Network Virtualization

o   Aggregates multiple physical networks into one logical network.

o   Example: Virtual LAN (VLAN) – acts like devices are on the same broadcast domain.

2.    Internal Network Virtualization

o   Provides virtual network interfaces within a single system.

o   Enables virtual machines or guests to share or emulate network interfaces.


🔹 Implementation Options (Internal Virtualization)

  • Guest can use host’s network interface via NAT.
  • A virtual machine manager can emulate and install additional network devices.
  • A guest can have a private network isolated from others.

🔹 Popular Forms of Network Virtualization

1.    Virtual LAN (VLAN)

o   Based on IEEE 802.1Q standard.

o   Creates logical segments within a shared network.

o   Allows traffic separation, resource allocation, and better management.

2.    Virtual IP (VIP)

o   An IP not linked to a specific machine.

o   Used for redundancy and load-balancing.

o   Packets are sent to VIP and then redirected to the actual machine.

3.    Virtual Private Network (VPN)

o   Creates secure tunnels over public networks.

o   Protects confidential data and allows remote access.

o   Simulates a real network environment without hardware changes.


🔹 Benefits of Network Virtualization

1.    Enhanced Network Security

o   Isolates virtual networks to reduce unauthorized access and data breaches.

2.    Increased Flexibility and Scalability

o   Easily scale and adapt to changing network requirements.

3.    Improved Resource Management

o   Resources can be pooled and allocated efficiently, reducing the need for new hardware.

o   Enables quick resource reallocation for changing needs.

o   Lowers cost by improving utilization of existing infrastructure.

4.    Network Productivity and Capability

o   Enhances speed and reliability by enabling multiple users to run systems efficiently.

o   Supports high-performance applications with separate network channels.


🔷 Section 2.2.8: Desktop Virtualization

🔹 Definition

  • A technique that allows deployment of simulated desktop environments on hosted, centralized, or remote servers.
  • Users can access their desktop from any device, remotely.

🔹 Key Features

  • Remote Access: Users access desktops on any device, anywhere.
  • Centralized Management: Easier updates, security checks, and configurations.
  • Abstraction: Desktop environment is abstracted from physical device.
  • Client/Server Model: Uses centralized servers to provide access to desktop environments.
  • Similar to Hardware Virtualization: Access a desktop OS that runs on another host via network.

🔹 Examples of Desktop Virtualization Tools

  • Windows Remote Services, VNC, X Server
  • Cloud-based infrastructure:
    • Sun Virtual Desktop Infrastructure (VDI)
    • Parallels Virtual Desktop Infrastructure
    • Citrix XenDesktop

🔹 Benefits

  • Lower TCO (Total Cost of Ownership)
  • Better security and centralized control
  • Reduced energy and hardware costs
  • Less downtime

🔹 Limitations

  • Difficult to manage devices like printers.
  • Downtime risk if network fails.
  • Higher complexity and cost in large-scale (VDI) deployment.
  • Security concerns if poorly managed.

🔷 2.2.9 Application Server Virtualization

🔹 Definition

  • Application Server Virtualization (ASV) abstracts a group of application servers into a single virtual application server.
  • This is done using load balancing and high-availability strategies.

🔹 Also Known As

  • Advanced Load Balancing

🔹 Key Features

  • Distributes workloads across multiple servers or applications.
  • Manages the application as a single virtual instance.
  • Provides better network security:
    • Only one server is exposed to the public; others stay hidden behind reverse proxy or security layers.
  • Offers high availability for hosted services, improving performance and reliability.
  • Focuses on quality of service rather than emulating new environments.

🔷 2.3 Technology Examples

🔹 Xen

  • Open-source virtualization platform
  • Provides VMM (Virtual Machine Monitor) for running multiple virtual machines.

🔹 VMware

  • A cloud service provider offering tools for deployment, operation, and management of cloud infrastructure.
  • Known for agile and flexible cloud services.

🔷 2.3.1 VMware – Detailed Notes

🔹 Core Concepts

  • Based on full virtualization: Guest OS runs unmodified.
  • Uses:
    • Direct execution for non-sensitive instructions.
    • Binary translation for sensitive instructions.

🔹 Types of VMware Hypervisors:

  • Type-2: Runs on a desktop OS.
  • Type-1: Runs directly on the server hardware.

🔹 Capabilities & Tools

  • Specializes in virtualizing x86 architectures.
  • Offers tools for both desktop and server virtualization environments.

🔹 Hardware Virtualization Support

  • Introduced with Intel VT-x and AMD-V in 2006.
  • Before this, dynamic binary translation was used.
  • Allows running unmodified x86 OS in a virtual environment.

🔹 Memory Virtualization

  • Uses Memory Management Unit (MMU) virtualization.
  • Virtual MMU may need to be emulated if hardware MMU support is missing.
  • Performance may suffer, especially with TLB (Translation Lookaside Buffer) misses.

Final Summary Offering:

You’ve now shared 5 detailed pages covering:

  • Storage Virtualization
  • Network Virtualization
  • Desktop Virtualization
  • Application Server Virtualization
  • Technology Examples (Xen, VMware)

🔷 Advantages of VMware

1.    Security

o   Follows a zero-trust model.

o   Ensures robust security for applications and data.

2.    Efficiency and Performance

o   Optimizes CPU and memory usage.

o   Enables faster deployments, reduces downtime.

o   Improves overall data center efficiency.

3.    Flexibility and Scalability

o   Infrastructure can be scaled up/down as needed.

o   Supports rapid business changes with ease.

4.    Cost Savings

o   Consolidates servers fewer physical machines.

o   Saves on energy, hardware, and data center space.


🔷 Types of VMware

  • VMware offers solutions across:
    • End-user/Desktop Virtualization
    • Server Virtualization
    • Infrastructure Virtualization

🔷 End-user or Desktop Virtualization

  • Virtualizes operating systems and single-user apps.
  • Allows multiple OS and apps in an isolated environment on a host machine.
  • Examples:
    • VMware Workstation (Windows)
    • VMware Fusion (macOS)

🔹 Features

  • Access to USB, file sharing, and GUI of the host OS.
  • Supports multiple VMs running different OSes.

🔷 Diagram: Architecture of VMware Workstation (Fig 2.12)

Components:

  • User Applications
  • Guest Operating System within Virtual Machine Instance
  • VMware Workstation manages VMs from the Host Operating System
  • VMware Hypervisor (VMM):
    • Direct access to hardware (I/O, CPU, etc.)
    • Manages VM state (save/restore)

Note:
The VM environment is fully virtualized with access to host system resources like USB, network, etc., but isolated from the host OS.

🔷 Continued: VMware Desktop Virtualization

🔹 Key Services via Host Driver:

  • Privileged Mode: A virtual machine manager runs in privileged mode.
  • I/O Processing: VMware processes special I/O requests by passing them to the host OS via system calls.

🔹 Architecture Name:

  • Known as Hosted Virtual Machine Architecture.
  • Allows good performance and isolation within the host OS’s memory space.
  • Requires binary translation for instructions like I/O and memory access.

🔹 Instruction Management:

  • Managed by the Virtual Machine Manager (VMM):
    • Controls CPU and Memory Management Unit (MMU)
    • Alternates VM and host OS activities.

🔹 VM Image Handling:

  • VMware Workstation and Fusion support:
    • Creation of new images
    • Snapshots
    • Undo operations

🔹 Other VMware Desktop Tools:

  • VMware Player: Lightweight version of Workstation for Windows/Linux VM use.
  • VMware ACE: Policy-based VM deployment on end-user systems.
  • VMware ThinApp: Isolated application virtualization, avoids versioning conflicts.

🔷 Server Virtualization

🔹 Definition:

  • Most active segment of virtualization today.
  • Converts one physical server into many virtual servers.
  • Used by VMware, Microsoft, Citrix, etc.

🔹 Key Concept: Hypervisor (Virtual Machine Monitor - VMM)

  • Software layer that intercepts OS system calls to hardware.
  • Provides virtual CPU and memory for each guest OS.

🔹 History:

  • Term "hypervisor" originated with IBM CP-370.
  • VMware GSX Server was one of the first commercial server virtualization tools.

🔹 Features:

  • Replicates desktop virtualization model for server environments.
  • Adds remote management and scripting support.

🔹 Diagram: Fig. 2.13 – VMware Server Architecture

Components:

  • Host OS with VMware Driver
  • VMware Hypervisor (VMM) manages:
    • Hardware access
    • VM CPU/memory
    • Networking and state handling
  • VM Instances (multiple VMs run on a single host)
  • Web Server and Services interact with the VMs

🔷 Infrastructure Virtualization

🔹 Overview:

  • Purpose: Virtualization of web servers and overall IT infrastructure.
  • A daemon process called "serverd" manages VMware application processes.
  • Applications are connected to virtual machines (VMs) via the VMware driver in the host OS.
  • VMM (Virtual Machine Monitor) manages VM instances.

🔹 VMware Infrastructure (VI):

VMware Infrastructure is a comprehensive virtualization suite designed to:

  • Provide application availability, resource optimization, management, and automation.
  • Integrate and virtualize hardware resources across multiple systems.
  • Offer virtual resource pools to the datacenter.
  • Deliver features like:
    • High availability (HA)
    • Consolidated backup
    • Fine-grain resource allocation
    • Policy-driven management
    • Automation of operational tasks

🔹 Key Benefits:

  • Distributed architecture for:
    • Cost-effective service delivery
    • SLA (Service Level Agreement) fulfillment
    • Scalable IT operations

📊 Fig. 2.14 – Infrastructure Virtualization in VMware

🔸 Components:

1.    Management Layer:

o   VI Client, VI Web Access, VI SDK

o   Controlled by VirtualCenter Management Server

o   Services: DRS (Distributed Resource Scheduler), HA, Consolidated Backup

2.    Execution Layer:

o   Virtual machines (apps + OS)

o   Underlying platforms: Virtual SMP, ESX Servers, VMFS

3.    Physical Layer:

o   Enterprise servers, network, and storage infrastructure


🔷 Continued: Infrastructure Virtualization (VMware)

Key Components:

1.    VMware ESX Server

o   Core virtualization layer. Runs on physical servers to host VMs using hardware resources (CPU, memory, storage, network).

2.    VirtualCenter Management Server

o   Central point for managing/configuring virtual environments.

3.    VMware High Availability (HA)

o   Auto restarts VMs in case of server failure; ensures minimal downtime.

4.    VI Client (Virtual Infrastructure Client)

o   Connects from any Windows PC to manage VMs remotely.

5.    VI Web Access

o   Web-based VM access and management.

6.    VMware Virtual Machine File System (VMFS)

o   High-performance clustered file system for ESX Server VMs.

7.    VMware Virtual SMP

o   Supports multi-processor VM execution.

8.    VMware vMotion

o   Live migration of VMs between servers without downtime.

9.    VMware Backup

o   Centralized backup with low overhead on ESX servers.

10.   VMware SDK

o   Standard development interface for VMware integration.

11.                       DRS (Distributed Resource Scheduler)

o   Allocates and balances computing resources across VMs dynamically.


🔶 Section 2.3.2: Xen (Architecture and Guest Operating System Management)

🔹 Overview:

  • Xen is a Type-1 (BareMetal) hypervisor—runs directly on hardware, supports running multiple OSs on a single machine.
  • Open-source under GPL v2, maintained by the Xen Project community.
  • Developed originally at the University of Cambridge Computer Laboratory.

🔹 Uses of Xen:

  • Server Virtualization
  • Infrastructure as a Service (IaaS)
  • Desktop Virtualization
  • Security applications
  • Hardware appliances

🔹 Benefits of Xen:

  • Increased server utilization
  • Consolidated server infrastructure
  • Reduced costs
  • Flexibility with IA-32, x86-64, and ARM platforms

🔹 Xen Technologies:

  • Used in both desktop and server environments
  • Powers platforms like Xen Cloud Platform (XCP)
  • Supports paravirtualization and hardware-assisted virtualization
  • Delivers high performance for guest OSs using paravirtualization

🔶 Xen Virtualization (continued)

🔹 Performance Management:

  • Xen avoids performance loss by modifying guest OS instructions.
  • This is known as paravirtualization—not a fully transparent method (especially for x86 systems).
  • Offers high-performance execution, but guest OS needs to be aware it's virtualized.

Components of Xen Environment:

1.    Xen Hypervisor

o   Core of Xen virtualization; manages interaction between virtual machines and hardware.

o   Also known as the Virtual Machine Monitor (VMM).

o   Open-source and runs in the highest privilege mode.

2.    Dom0 (Domain Zero)

o   Special VM with privileged access; controls all other VMs (DomUs).

o   Hosts management tools and drivers.

o   Components include:

§  SUSE Linux Enterprise: GUI & CLI for management.

§  Xl toolstack (libxl): Manages domains.

§  QEMU: Emulates full systems for full or para-virtualized VMs.

3.    Xen-Based Virtual Machines (DomU / VM Guests)

o   Standard VMs managed by Dom0 and Xen.

o   Must include:

§  A bootable virtual disk (file, partition, or volume).

§  A configuration file.

§  Virtual network devices connected via Dom0.

4.    Management Tools, Commands, and Configuration Files

o   Used to manage and customize the virtualization environment.

o   Combination of CLI and GUI interfaces.


🧱 Xen Architecture:

  • Dom0: First domain started by the hypervisor. Handles hardware access and VM control.
  • DomU: Other virtual machines (VMs).
  • Xen treats all operating systems as domains.
  • Only Dom0 communicates with hardware directly.
  • Xen Hypervisor:
    • Sits at the lowest layer (under the OS).
    • Controls access to CPU, memory, I/O.
    • Manages isolation and execution of all domains.

🧠 Summary: Xen Architecture and Privilege Rings

🔹 Figure 2.15 Explanation – Architecture of Xen and Guest OS Management

The diagram shows the relationship between:

  • User Applications (Ring 3)
  • Guest OS (Domain U – Ring 1)
  • Dom0 Management Domain (Ring 1)
  • Xen Hypervisor (Ring 0)

This hierarchy is based on x86 privilege rings:

Ring

Privilege Level

Role

0

Highest

Xen Hypervisor

1

Mid

Guest OS (DomU), Dom0

2

Unused often

3

Lowest

User Applications


🔹 Key Concepts:

1.    Xen Hypervisor runs in Ring 0 (highest privilege):

o   Handles memory, CPU, and I/O management.

o   All sensitive hardware-level tasks are executed here.

2.    Dom0 (Management Domain):

o   First domain loaded.

o   Has special privileged access.

o   Manages VM lifecycle (create, configure, terminate).

o   Includes HTTP server and access to Xen hypervisor.

3.    Guest Domains (DomU):

o   Each runs in Ring 1, not Ring 0 (unlike traditional OS).

o   Can't access hardware directly.

o   Use hypercalls (special APIs) to request privileged services from Xen.

4.    User Applications (in DomU):

o   Run in Ring 3, just like in a normal OS.

o   Unmodified APIs (Application Binary Interface) are preserved.


🛡️ Privilege Rings (x86 Security Levels):

  • Ring 0: Kernel level (used by Xen Hypervisor).
  • Ring 3: Application level (used by user programs).
  • Xen avoids using Ring 0 for guest OSes to prevent kernel mode execution by untrusted code.

🧩 Hypercall: A mechanism like a system call, used by guest OS to interact with Xen Hypervisor safely.


✳️ Why This Matters for Virtualization:

  • Xen keeps the guest OS out of Ring 0, avoiding risks of direct hardware access.
  • It modifies some OS components (paravirtualization) to work effectively in this limited environment.
  • By using hypercalls, it ensures security while maintaining near-native performance.

🧠 Summary: Virtual Machines (VM)

🔹 What is a Virtual Machine (VM)?

  • A Virtual Machine is a software emulation of a physical machine that runs its own OS and applications, as if it were a completely independent computer.
  • It draws its resources (CPU, memory, storage) from the underlying physical host.

🔧 Think of it as a computer within a computer.


🔹 Key Points on Virtualization:

  • Virtualization allows running multiple isolated environments on a single physical machine.
  • Each VM runs its own OS on a virtualized environment.
  • The host machine provides resources to multiple guest VMs.
  • A hypervisor (or Virtual Machine Monitor, VMM) manages the VMs and ensures isolation and resource allocation.

🔹 Terms in VM:

Term

Meaning

Virtual Machine (VM)

A virtual version of a physical computer.

Virtualization

Creating virtual versions of systems/resources.

Host Machine

Physical computer hosting one or more VMs.

Emulation

Making one system behave like another.

Hypervisor

Software that manages and runs multiple VMs.

Guest OS

Operating system running inside a VM.


🔹 How Do Virtual Machines Work?

1.    VMs create virtual hardware on a physical machine.

2.    The host machine runs one or more VMs (also called guests).

3.    Each VM runs in its own isolated partition.

4.    The hypervisor manages resources and isolation between VMs.

5.    The hypervisor enables efficient sharing and flexible allocation of resources like:

o   CPU

o   Memory

o   Storage

o   Networking


🔹 Types of Virtual Machines:

1.    Process VM:

o   Also called application VM or managed runtime environment (MRE).

o   It runs a single application or process in a virtual environment.

o   Destroyed when the process exits.

o   Enables platform-independent execution of apps.

Example: Java Virtual Machine (JVM)

2.    (The second type — System VM — is likely on the next page.)


🔲 Fig. 2.16: Virtual Machine Architecture

A layered view of how VMs are organized:

mathematica

+-------------------+        +-------------------+

|   Application     |        |   Application     |

|   Guest OS-1      |        |   Guest OS-n      |

|      VM-1         |        |      VM-n         |

+-------------------+        +-------------------+

            \_____________________/

               Virtual Machine Monitor (Hypervisor)

                        |

                    Hardware

2. System VM (System Virtual Machine)

  • Simulates a complete operating system environment.
  • Allows multiple OS instances to run on a single physical machine.
  • The hypervisor manages the physical host’s resources across VMs.
  • This is typically what people refer to when they say “virtual machine.”

Benefits of Virtual Machines

1.    Scalability:

o   Cloud VMs scale with demand.

o   No need to invest in new physical servers.

2.    Portability:

o   VMs are packaged software units.

o   Easy to move across servers or cloud environments.

3.    Reduced Cost & Footprint:

o   Lower electricity, hardware, and maintenance costs.

4.    Faster Provisioning:

o   Duplicate VMs easily.

o   Spin up new environments quickly.

5.    Reliability:

o   One VM crash doesn’t affect others.

o   Isolated virtual environments.

6.    Better Security:

o   Multiple OSes can run safely on one host.

o   Isolated testing environments for vulnerabilities.


🌀 Section 2.4.1: Definition and Life Cycle of Virtual Machine (VM)

🔹 Definition of a VM

  • A VM is a software-based emulation of a physical machine.
  • Runs applications and OS like a real computer.
  • Created via virtualization to run multiple VMs on one server.

🧩 Characteristics of VMs:

Feature

Description

1. Isolation

Each VM runs independently with its own OS, CPU, RAM, and storage.

2. Scalability

VMs can be easily cloned, scaled, or removed based on demand.

3. Flexibility

Different OSes on the same hardware.

4. Cost-Efficiency

Share physical resources among multiple users to save costs.


🔄 Life Cycle of a Virtual Machine (in Cloud Computing)

1. Creation (Provisioning):

  • VM is created from a template or image (e.g., Linux, Windows).
  • Resources like CPU, RAM, storage are allocated.
  • Assigned IP address and network settings.

(More life cycle stages like starting, monitoring, pausing, and termination will likely follow on the next page.)

🔁 Life Cycle of a Virtual Machine (VM)

(Continued from Section 2.4.1)

2. Booting (Initialization)

  • The VM powers on and loads its operating system.
  • Configuration scripts may run to install apps and dependencies.

3. Running (Execution)

  • The VM becomes fully functional and runs applications.
  • It can be accessed remotely:
    • SSH for Linux
    • RDP for Windows
  • Users can manage and deploy workloads.

4. Monitoring and Scaling

  • Cloud providers continuously track VM performance.
  • Resources like CPU, RAM, and storage are adjusted dynamically:
    • Vertical scaling = adding more power to the same VM
    • Horizontal scaling = adding/removing VMs based on load
  • Autoscaling handles workload changes automatically.

5. Suspension (Pausing)

  • The VM can be paused to save resources.
  • The state is saved, and the VM can be resumed later.

6. Migration (Optional)

  • The VM may be moved to another server for:
    • Load balancing
    • Maintenance
    • Disaster recovery

7. Snapshot and Backup (Optional)

  • A snapshot or backup is created for restoring VM in case of failure or rollback.

8. Termination (Deletion)

  • The VM is shut down and resources are released.
  • Data may be deleted unless previously backed up.

🔄 Diagram: Fig. 2.17 – Life Cycle of VM

Includes stages:
Creation
Booting Running Monitoring Suspension Migration Snapshot Termination


🌐 2.4.2 VM Migration (Concept and Techniques)

🔹 Definition:

  • VM migration is the process of moving a VM from one physical server to another.
  • Happens without stopping the VM (usually).
  • Commonly used for:
    • Load balancing
    • Resource optimization
    • Cloud migration or maintenance

🔹 Key Points:

  • Helps optimize IT infrastructure in cloud environments.
  • Involves transferring applications or full VMs to cloud servers or other physical hosts.
  • Migration can be live (no downtime) or offline (requires a restart).

🔁 VM Migration (continued)

🔹 Definition Recap:

  • VM migration refers to moving a virtual machine from:
    • One physical server to another
    • Or from on-premises data centers to the cloud
  • It’s the relocation of a VM without (or with minimal) downtime.

Why is VM Migration Done?

1.    Load balancing – Distribute workload evenly to prevent server overload.

2.    Resource optimization – Move VMs to servers with better CPU, RAM, or disk resources.

3.    Power saving – Consolidate VMs on fewer servers and power off unused ones.

4.    Cloud migration – Move VMs to cloud infrastructure from local data centers.


🔄 Types of Migration:

1. Cold Migration

  • VM is shut down before migration.
  • Slower, causes downtime.
  • Suitable when uptime is not critical.

2. Live Migration

  • VM is moved while running, with minimal or no downtime.
  • Transfers:
    • CPU states
    • External device states
    • Memory & disk data
    • Network connections

💡 Concept of Live Migration:

🔁 Memory Data Migration

  • Transfer RAM (memory) state from source to destination VM.

💾 Storage Data Migration

  • Transfer disk data (persistent storage) from source to destination.

🔄 Live Migration Approaches:

1.    Pre-copy:

o   Memory is copied before VM is resumed on the target server.

o   Often used in traditional systems.

2.    Post-copy:

o   VM is resumed first, then memory and state data are copied.

o   Transfers minimal state at first.

3.    Hybrid:

o   Combines pre-copy and post-copy for optimized results.


📊 Diagram – Fig. 2.18:

Shows:

  • User using VM on source host
  • Memory Data Migration (pre-copy, post-copy, hybrid)
  • Storage Data Migration
  • Destination host receives and resumes VM with network continuity

🔄 Live Migration: Step-by-Step Process

Live migration allows moving a running VM between servers without downtime. Here's how OpenShift Virtualization achieves it:

Step 1: Preparation

  • The source node prepares the VM.
  • A scheduler selects the best destination node.
  • Both source and destination must access the same shared storage.

Step 2: Request

  • The source node sends a migration request to the destination.
  • The destination starts loading the VM and reserves resources.
  • A virtualization platform ensures both environments stay in sync.

Step 3: Transfer

  • The hypervisor copies the memory and VM state from source to destination.
  • A paused copy of the VM is created in both locations for failover protection.

Step 4: Finalize

  • Destination node verifies the VM is successfully transferred.
  • It becomes the primary VM; the source node can terminate the old one.

Step 5: Completion

  • Migration is done. VM runs from the destination node.
  • Operations continue without disruption.

🧊 Concept of Cold Migration

  • VM is shut down before migrating downtime occurs.
  • Configuration and memory are copied to the new host, then restarted.
  • Suitable for high-load VMs or when downtime is acceptable.

Benefits of VM Migration

1.    Improved Resource Utilization – Optimizes server loads.

2.    Increased Flexibility – Easily move VMs across platforms.

3.    Reduced Downtime – Live migration keeps services running.

4.    Simplified Management – Centralized VM control.


🛠 Tools and Technologies

1.    Hypervisors:

o   Examples: VMware vSphere, Microsoft Hyper-V

2.    SDN (Software-Defined Networking):

o   Allows dynamic, flexible networking to support live migration.

3.    Cloud Migration Services:

o   Tools from cloud providers to automate migration.

⚠️ Challenges in Cloud Migration

1.    Incompatible Infrastructure Between Clouds

o   Different OS/platforms make “lift-and-shift” difficult.

o   VMware Cloud offers hybrid solutions to eliminate compatibility issues.

2.    Lack of Support for Existing Security Policies

o   Enterprises often need stricter compliance than what public clouds offer.

o   VMware Cloud ensures compliance with mandates and regulations.

3.    Migrating Apps with Dependencies

o   42% of enterprises face issues due to interdependent infrastructure and apps.

o   VMware Cloud allows visualizing data flows to identify and migrate linked components.

4.    Cost of Refactoring/Rewriting Apps

o   Many apps require changes to work on the cloud.

o   VMware supports migration without major refactoring.

5.    Lack of Strategic Planning

o   Over 33% of enterprises lack a documented cloud strategy.

o   Planning helps avoid data flow disruption and network misconfiguration.

6.    Staff Efficiency

o   Cloud transformation has increased demand for skilled professionals.

o   VMware reduces risk by enabling teams to work in familiar environments.


🛠 VMware Cloud Migration Tools

VMware offers integrated solutions with major public cloud providers:

  • VMware Cloud on AWS: vSphere-based infrastructure on AWS.
  • Azure VMware Solution: Migrate/extend to Microsoft Azure.
  • Google Cloud VMware Engine: Extend VMware environments into GCP.
  • Oracle Cloud VMware Solution: High-performance Oracle Cloud migration.
  • IBM Cloud for VMware Solutions: IBM-powered VMware migration.
  • VMware Cloud Foundation: Centralized infrastructure & management.

🧮 2.4.3 – VM Consolidation (Concepts)

  • VM Consolidation = Reducing the number of active virtual machines.
  • It merges workloads onto fewer physical servers.
  • Benefits:
    • Improves resource utilization
    • Reduces energy usage
    • Lowers cloud costs

🔄 Comparison of Types of Virtualization

Type

Purpose

How it Works

Example Use

1. Storage Virtualization

Combines multiple physical storage devices into a single virtual storage unit

Logical storage pools are created for better management and scalability

SAN (Storage Area Network), cloud storage

2. Network Virtualization

Creates virtual networks that function independently of physical hardware

Uses virtual switches, routers, VLANs, SDN (Software-Defined Networking) to manage traffic

Isolating traffic for testing or multi-tenant use

3. Desktop Virtualization

Provides virtual desktops to users from a central server

VMs or remote sessions are accessed by users from thin clients or personal devices

VDI (Virtual Desktop Infrastructure) in offices

4. Application Server Virtualization

Allows applications to run on virtual servers, separate from hardware

Applications run in virtual environments on centralized servers

Running multiple apps on a single server securely

 

Quick Summary:

      Storage Virtualize disks/storage devices

      Network Virtualize network components

      Desktop Virtualize user desktops

      Application Server Virtualize servers for running apps

Types of Virtualization with Real-World Technology Examples

Virtualization Type

Technology Examples

1. Storage Virtualization

- VMware vSAN- IBM SAN Volume Controller- NetApp ONTAP- Dell EMC VPLEX

2. Network Virtualization

- VMware NSX- Cisco ACI (Application Centric Infrastructure)- OpenFlow- GNS3

3. Desktop Virtualization

- VMware Horizon- Citrix Virtual Apps and Desktops- Microsoft Remote Desktop Services (RDS)

4. Application Server Virtualization

- VMware vSphere- Microsoft Hyper-V- Oracle VM Server- Proxmox VE


🔁 Summary by Technology:

Type

Used For

Popular Tools

Storage

Centralized, flexible storage

VMware vSAN, NetApp, IBM SVC

Network

Virtual switches & routing

VMware NSX, Cisco ACI, Open vSwitch

Desktop

Remote desktops to users

Citrix, VMware Horizon, Microsoft RDS

App Server

Running multiple apps on VMs

vSphere, Hyper-V, Oracle VM

2.3.1 VMWare: Full Virtualization Reference Model

VMware Full Virtualization Reference Model

VMware uses full virtualization to allow multiple operating systems (guest OSes) to run on a single physical server, without modification to the OS.


🔷 Key Components of VMware Full Virtualization Model

┌───────────────────────────────┐

        User Applications         Inside each VM

 ├───────────────────────────────┤

      Guest Operating System      Runs like on real hardware

 ├───────────────────────────────┤

       Virtual Hardware (VM)      Virtual CPU, RAM, Disk, NIC

 ├───────────────────────────────┤

         VMware Hypervisor        Core software managing VMs

   (ESXi - Type 1 Hypervisor)  

 ├───────────────────────────────┤

       Physical Hardware          Real server: CPU, RAM, disk

 └───────────────────────────────┘


🔸 Detailed Layer Description:

Layer

Function

Physical Hardware

Real server infrastructure: CPU, memory, storage, network

VMware Hypervisor (ESXi)

Software layer that manages virtual machines, allocates resources, ensures isolation

Virtual Machine (VM)

A software container with its own virtual CPU, RAM, disk, etc.

Guest OS

Runs on the VM as if it were running on a real physical machine

Applications

Installed inside the guest OS, used by the end-user

🔄  How VMware Full Virtualization Works

      VMware ESXi creates a complete virtual environment.

      Each VM runs its own unmodified OS (like Windows, Linux).

      Guest OSes think they are using real hardware.

      The hypervisor translates hardware calls from the VM to the real hardware


Advantages of VMware Full Virtualization

1.    Isolation – Each VM is separate.

2.    No need to modify OS – Supports any standard OS.

3.    High security and performance

  1. Easy backup, restore, and cloning

Here's a clear differentiation of various types of virtualization: Storage, Network, Desktop, and Application Server Virtualization:

Type of Virtualization

Definition

Purpose

Examples

1. Storage Virtualization

Combines multiple physical storage devices into a single virtual storage unit.

Simplifies management, increases availability and performance.

SAN (Storage Area Network), NAS (Network Attached Storage), IBM SAN Volume Controller

2. Network Virtualization

Combines hardware and software network resources into a single software-based administrative entity.

Enables network optimization, scalability, and isolation.

VLANs (Virtual LANs), VPNs (Virtual Private Networks), SDN (Software Defined Networking)

3. Desktop Virtualization

Allows users to access their desktop environments remotely from any device.

Centralized control, enhances security, and supports BYOD (Bring Your Own Device).

VDI (Virtual Desktop Infrastructure), Citrix, VMware Horizon

4. Application Server Virtualization

Runs applications on virtual servers instead of dedicated hardware servers.

Reduces cost, improves efficiency, and allows quick deployment of applications.

VMware vSphere, Microsoft Hyper-V, Oracle VM


Summary:

  • Storage: Virtualizes storage devices for easier and efficient data management.
  • Network: Creates virtual networks for better traffic management and scalability.
  • Desktop: Hosts desktops on a server for remote access and centralized control.
  • Application Server: Runs applications on virtual machines instead of dedicated hardware.

Here are Technology Examples for each type of virtualization:

Type of Virtualization

Technology Examples

Vendors/Platforms

1. Storage Virtualization

- IBM SAN Volume Controller
- Dell EMC VPLEX
- NetApp ONTAP
- VMware vSAN

IBM, Dell EMC, NetApp, VMware

2. Network Virtualization

- VMware NSX
- Cisco ACI (Application Centric Infrastructure)
- Microsoft Hyper-V Network Virtualization
- Open vSwitch

VMware, Cisco, Microsoft, OpenStack

3. Desktop Virtualization

- VMware Horizon
- Citrix Virtual Apps and Desktops
- Microsoft Remote Desktop Services (RDS)
- Amazon WorkSpaces

VMware, Citrix, Microsoft, AWS

4. Application Server Virtualization

- VMware vSphere
- Microsoft Hyper-V
- Oracle VM Server
- Red Hat Virtualization

VMware, Microsoft, Oracle, Red Hat


Quick Overview:

  • Storage Combines disks Ex: VMware vSAN, IBM SVC
  • Network Virtual networks Ex: VMware NSX, Cisco ACI
  • Desktop Virtual desktops Ex: Citrix, VMware Horizon
  • App Server Virtual apps/OS Ex: vSphere, Hyper-V, Oracle VM

VMware: Full Virtualization Reference Model

Full Virtualization allows multiple operating systems to run unmodified on the same physical hardware. VMware uses a hypervisor to achieve this.


🔷 VMware Full Virtualization Architecture

+---------------------------+

|      Guest OS (xN)        | Multiple OS like Windows, Linux

+---------------------------+

|     Virtual Hardware      | Emulated CPU, memory, I/O

+---------------------------+

|        Hypervisor         | VMware ESXi / VMware Workstation

+---------------------------+

|     Physical Hardware     | CPU, RAM, Storage, Network

+---------------------------+


🔹 Key Components of VMware Full Virtualization:

Component

Description

Guest OS

The unmodified operating systems running on VMs.

Virtual Machine (VM)

Software container that mimics a real physical computer.

Hypervisor (VMware ESXi)

A software layer that manages VMs and allocates hardware.

Virtual Hardware

Simulated hardware devices like CPU, RAM, Disk, etc.

VMkernel

VMware's kernel for managing hardware and VM resources.


🔹 Features of VMware Full Virtualization

  • Runs unmodified OS (no kernel changes needed)
  • Hardware abstraction layer provided
  • Efficient resource isolation
  • Supports VM snapshots, cloning, and migration
  • Compatible with VMware vSphere, vCenter, etc.

🔹 VMware Products Supporting Full Virtualization

Product

Use Case

VMware ESXi

Enterprise-level hypervisor for servers

VMware Workstation

Desktop-level virtualization

VMware Fusion

Mac-based virtualization tool

VMware vSphere

Complete virtualization suite with management tools

 

Desktop Virtualisation

Desktop Virtualization ( DV ) Desktop Virtualization ( DV ) is a technique that creates an illusion of a desktop provided to the user. It d...