| |

I/O Virtualization

September 17, 2012, Storage Developer Conference, Santa Clara, CA—Sujoy Sen from Micron Technology postulated new architectures in the data center that are enabled by virtualizing I/O’s. These changes follow those from the previous steps in creating virtual machines and storage.

Servers have been on a constant road of evolution, have changed over time to improve performance. The areas of concern for servers include performance, cost, standards, computers, and I/O. We are now moving towards more “stateless” servers where everything is virtual and decoupled. Already, CPUs and storage are virtual, and the I/Os are following.

The benefits of decoupling the I/O system include improved I/O utilization, the ability to scale I/O separately from compute, and operational agility. The ways to decouple I/O include physical decoupling, where you just create a separate network for the I/O server, and shared decoupling where the I/Os are configured as a pool of resources for all of the servers.

Shared decoupling leads to greater utilization, higher levels of abstraction, and greater operational agility. This is not the same thing as fabric convergence and clustering. The technologies required include protocol encapsulation, such as native I/O protocols over PCIe. These protocols require more software and compute power for the encapsulation and are exported over Infiniband or Ethernet. One nice thing is that PCIe is the native interconnect to PCIe peripherals.

The requirements for virtual I/O include open, standards-based, compatible with existing system hardware and software, and zero overhead. The system configuration leverages the server performance to decouple the I/Os and is applicable to all I/O types.

Deployment in the data center creates a new class of appliances, the I/O box. This changes usage models and increases provisioning and maintenance flexibility through dynamic resource allocation. This decoupled I/O simplifies connectivity and enables higher-speed I/O. Another byproduct is simpler meshes, cabling, and switches as well as reduced latencies to the SSDs..

Although interconnect and storage are inherently intertwined, one question is to share PCIe SSDs or make them part of network storage. The system designer must match IOPs to storage capacity and performance requirements. Few applications need the full bandwidth, so these can share the SSDs. This configuration gives scalable performance and shared costs for the high performance storage.

Shared storage over decoupled I/O is not the same as a server cache. The data stay hot and now are tunable for size. These data migrate into primary store for capacity and to maintain snapshots for backups. The only real impediment is that PCIe has no network management capabilities, so is not scalable to large systems.

Similar Posts