The term VDI (Virtual Desktop Infrastructure) was originally penned by VMware for the hosting of desktop operating systems on their virtualization platform, however this has now become an industry accepted term associated with solutions where users remotely access their desktops (virtual machines).
In a traditional user operating environment, the user's device runs an operating system such as Microsoft Vista, applications such as Microsoft Office, along with storing the user's files and associated data.
Virtual Desktop Infrastructure (VDI) takes the users operating environment (operating system, applications, files and data) and recreates them in an environment hosted on a remote system, typically a virtual machine. The user then accesses this environment remotely from their computer, with all the processing associated with the environment, taking place on the remote virtual machine.
It's important to make the distinction that whilst remote access to desktops has been available for some time with Microsoft Terminal Services and it's enhancements including Citrix Metaframe, Presentation Server and now XenApp. VDI is different in that the user accesses a dedicated machine (virtual machine) for their own use and not a shared desktop from a server, as is the case with Terminal Services type solutions.
VDI technologies are generally banded in the industry as 'Type 1' technology and 'Type 2' technology. 'Type 1' technology adheres to the definition of taking the users operating environment and running it from a remote host. Leading 'Type 1' solutions include Microsoft VDI, Citrix XenDesktop and VMware View.
'Type 2' technology keeps the virtualized environment local, that is, it is installed on the user's device on top of their existing operating system.
A hypervisor is a virtualization platform that enables multiple operating systems to run on a single physical computer. The multiple operating systems are known as guest operating systems and the physical computer on which they run is called the host computer.
The main function of the hypervisor is to provide isolated execution environments for each virtual machine and to manage access between the guest operating systems running as virtual machines and the underlying hardware resources on the physical computer.
Hypervisors come in several different flavours. they can be categorised by type, ie they run directly on the physical hardware or within (hosted by) an operating system. Hypervisors can also be categorized by design - that is whether they are monolithic or microkernel.
The 'Type 1' hypervisor runs directly on the underlying physical hardware of the host and functions as control program. This approach is commonly referred to as 'bare-metal' systems. Guest operating systems then run within multiple virtual machines positioned above the hypervisor layer.
As the Type 1 hypervisor runs directly on the bare metal instead of within an operating system environment, the hypervisor can provide greater performance, availability and security in comparison to other forms of hypervisor. Type 1 hypervisors include Microsoft Hyper-V, Citrix XenServer and VMware ESX Server.
Type 1 hypervisors can be broken down further into Monolithic and Microkernel varieties. The Monolithic hypervisor includes hypervisor-aware device drivers which allow the guest operating systems to communicate directly with the physical hardware. This provides performance advantages as the guest operating systems have no intermediary in between when communicating with the physical hardware of the host.
MicroKernel Hypervisors do not require hypervisor-aware device drivers because they use the device drivers installed with the operating system which is installed in the root partition also known as a parent partition. This parent partition and the installed operating system provide the execution environment needed for device drivers to access the underlying physical hardware of the host.
The only requirement therefore is to install device drivers for the operating system installed in the parent partition and not for individual partitions used for the guest operating systems.
There are also 'Type 2' Hypervisors which run within an operating system environment on the host computer. Guest operating systems then run within virtual machines above the hypervisor, typically referred to as hosted virtualization.
The 'connection broker' is the key component of any 'Type 1' VDI architecture and is responsible for facilitating user access to the virtual machines on a remote system through the integration with existing authentication services.
The 'connection broker' also monitors the connection state between the users and the remote virtual machines and can be configured to select particular remote virtual machines or make a selection from a 'desktop pool' of similar virtual machines.
The VDI provisioning server is used to create virtual machines from a master image. Using a master image allows multiple identical virtual machines to be created and if additional machines are required which are set up differently, then additional tailor
The provisioning server creates a master image of a physical disk of the pre-configured machine and virtualizes this into multiple virtual disk images.
Using a master image allows multiple identical virtual machines to be created and if additional machines are required which are set up differently, then additional tailor master images can be created for the provisioning server to use.
By using a master image to create replica images, it is possible to quickly upgrade the images used by the client devices simply by making changes to the master image, allowing for maintenance and application upgrades to be done quickly with minimal disruption to users.
In essence the provisioning server is creating a master image of a physical disk and virtualizing this into multiple virtual disk images.
As virtual machines run on a remote system, access to the virtual machines requires the use of a remote presentation protocol. The remote presentation protocol uses an agent installed on the user's device to communicate with the virtual machine, presenting the virtual machine as though it was actually running directly on the user's device.
Different 'Type 1' VDI solutions use different remote presentation protocols to present the virtual machines to the user. These protocols can include additional capability to provide features such as higher definition displays, enhanced audio and local resource redirection.
The licensing costs involved in both 'Type 1' and 'Type 2' solutions include the vendor specific licensing for using their products, on top of which common licensing is required where any Microsoft Windows operating system is used in a virtual machine. This common license is called the Vista Enterprise Centralized Desktop (VECD) license.
The VECD license grants the right to run a operating system such as Microsoft Vista in a virtualised environment but does not itself license the operating system, for which a separate license is required.
The VECD cost can be reduced if a Microsoft Software Assurance license is in place and/or the client devices are diskless, that is thin clients.