High Performance Network Virtualization with SR-IOV By Yaozu Dong et al. Published in HPCA 2010
Motivation Packet Received by the Network Device Interrupt handled by the OS TCP/IP Stack Processing Application Processing Interrupt handling and routing by the Hypervisor Packet Classification and delivery to guest Guest Packet receive TCP/IP Stack Processing Application Processing
Software I/O Virtualization Taken from Intel manual for SR- IOV
Xen high speed networking issues 1.Domain-0 CPU usage and scalability -Packet receipt and driver ops -Packet classification -Copy or remapping of packet memory 2.VMExits -Physical device interrupt -Interrupt ACK by domain-0 -Network packet remapping -Notification to guest domain
SRIOV Packet classification in h/w Multiple virtual functions – Individual TX and RX queue – Less config space than physical Physical driver in Domain-0 VF device driver in guest domain Communication between PF and VF
SR-IOV Taken from Intel manual for SR- IOV
Optimizations MSI virtualization at hypervisor Virtual EOI acceleration Adaptive Coalescing of interrupts IO TLB
Network devices: Some common terms APIC MSI RSS TSO Checksum Offload NAPI