Sr-Iov; Introduction - Red Hat ENTERPRISE LINUX 5 - VIRTUALIZATION GUIDE Manual

Hide thumbs Also See for ENTERPRISE LINUX 5 - VIRTUALIZATION GUIDE:
Table of Contents

Advertisement

Chapter 14.

SR-IOV

14.1. Introduction

The PCI-SIG (PCI Special Interest Group) developed the Single Root I/O Virtualization (SR-IOV)
specification. The SR-IOV specification is a standard for a type of PCI passthrough which natively
shares a single device to multiple guests. SR-IOV does not require hypervisor involvement in data
transfer and management by providing an independent memory space, interrupts, and DMA streams
for virtualized guests.
SR-IOV enables a Single Root Function (for example, a single Ethernet port), to appear as multiple,
separate, physical devices. PCI devices A physical device with SR-IOV capabilities can be configured
to appear in the PCI configuration space as multiple functions, each device has its own configuration
space complete with Base Address Registers (BARs).
SR-IOV uses two new PCI functions:
• Physical Functions (PFs) are full PCIe devices that include the SR-IOV capabilities. Physical
Functions are discovered, managed, and configured as normal PCI devices. Physical Functions
configure and manage the SR-IOV functionality by assigning Virtual Functions.
• Virtual Functions (VFs) are simple PCIe functions that only process I/O. Each Virtual Function is
derived from a Physical Function. The number of Virtual Functions a device may have is limited
by the device hardware. A single Ethernet port, the Physical Device, may map to many Virtual
Functions that can be shared to virtualized guests.
The hypervisor can map one or more Virtual Functions to a virtualized guest. The Virtual Function's
configuration space is mapped to the configuration space presented to the virtualized guest by the
hypervisor.
Each Virtual Function can only be mapped once as Virtual Functions require real hardware. A
virtualized guest can have multiple Virtual Functions. A Virtual Function appears as a network card in
the same way as a normal network card would appear to an operating system.
The SR-IOV drivers are implemented in the kernel. The core implementation is contained in the PCI
subsystem, but there must also be driver support for both the Physical Function (PF) and Virtual
Function (VF) devices. With an SR-IOV capable device one can allocate VFs from a PF. The VFs
appear as PCI devices which are backed on the physical PCI device by resources (queues, and
register sets).
Advantages of SR-IOV
SR-IOV devices can share a single physical port with multiple virtualized guests.
Virtual Functions have near-native performance and provide better performance than para-virtualized
drivers and emulated access. Virtual Functions provide data protection between virtualized guests on
the same physical server as the data is managed and controlled by the hardware.
These features allow for increased virtualized guest density on hosts within a data center.
203

Advertisement

Table of Contents
loading

Table of Contents