Data Center

An overview of Server Input-Output Virtualization (IOV)

IOV or Server Input – Output Virtualization is a technology that enables the Input/Output Interface components like NIC/HBA to be removed from physical servers and consolidated using a separate device. Let us look at the need, definition and advantages of IOV/ Input-Output Virtualization, in this article.

With the increasing popularity of Server Virtualization, the following considerations have become important in a Data Center:

* While the hypervisors virtualize every thing in a server including the creation of software emulated virtualized Input/Output components, the I/O Virtualization is done at the software level which might result in a significant overhead to the Server CPU.

* Since multiple VM’s (Virtual Machines) run in each server, there comes a point where the existing I/O Components are not sufficient and hence newer ones are added. But the total number of new IO interfaces that can be added are limited, in any server.

* Some critical applications might require the allocation of specific I/O ports to individual VM’s. But with a large number of VM’s in a server, scaling the IO Components for this scenario might be difficult.

What is IOV / Input – Output Virtualization?

Input – Output Virtualization seperates the physical I/O interfaces from multiple servers and consolidates these interfaces using a separate I/O Appliance.

I/O refers to Input/Output components and interfaces which enable a CPU to communicate with other systems outside the server. There are two common I/O interfaces – The Network Interface Card (NIC) used for networking and Host Bus Adapter (HBA) used for storage.

A minimum number of high bandwidth links go from the Server to the I/O Virtualization (IOV) appliance. Some IOV vendors extend the PCI express bus to the IOV Device but others provide high speed (10 GE) Ethernet or Infiniband links. In the IOV appliance, multiple NIC and HBA adapters are placed and connected with Networking/ Storage systems respectively.

Even though Each Server / Each VM is allocated with certain number of NIC/HBA adapters in the same IOV appliance, they can be completely isolated from each other.

What are the advantages of Input – Output Virtualization (IOV)?

  • Servers become more compact due to the removal of multiple I/O components from it.
  • Most of the servers have many unused I/O components but now, the I/O requirements for servers can be right sized.
  • Since I/O components are shared across many servers, total number of I/O components comes down and so does the amount of associated cables, power, etc.
  • Virtual server modules are created in each server and the server thinks that it is connecting to physical I/O modules. So, there is no change in management software.
  • New I/O interfaces can be allocated (connected/ disconnected) dynamically, whenever required.
  • PCI-SIG group has defined a standard for IOV and if multiple vendors follow the same, the coordination between different components would be simplified.

Well, since individual vendors implement their own I/O Virtualization solutions, more often than not the IOV solution requires modified adapters, modifications in virtualization software, a separate IOV management software, hardware drivers, etc.

You could stay updated with the latest computer networking/ enterprise IT technologies by subscribing to this blog with your email address that says, ‘Get email updates when new articles are published’