Menü
c't Magazin

IDF: Server-Hostadapter mit Single-Root-I/O-Virtualisierung (Update)

vorlesen Drucken Kommentare lesen 11 Beiträge

Ein PCIe-Adapter, mehrere Betriebssysteme: SR-IOV

(Bild: Intel)

Virtuelle Maschinen (VMs) kommen insbesondere als Server immer häufiger zum Einsatz, weil sie viele Vorteile bieten. Die Anbindung von Ein-/Ausgabegeräten (I/O) ist dabei aber bisher oft unbefriedigend gelöst. Je nach Konfiguration, Virtualisierungssoftware, Gast- und Host-Betriebssystem sowie Einsatzbereich hapert es an Performance, Sicherheit, Stabilität oder Kompatibilität. Solche Probleme versuchen einerseits die Hersteller von Virtualisierungssoftware und Hypervisoren (Citrix, Parallels, Red Hat, VMware) zu lösen, andererseits arbeiten die Prozessor- und Chipsatzhersteller AMD (IOMMU) und Intel (VT-d, VT-c) sowie die Produzenten von Netzwerk- und Storage-Adaptern (etwa Neterion) zusammen mit der PCI-Industrievereinigung PCI-SIG seit einigen Jahren an Hardware-Standards für die I/O-Virtualisierung (PCI-SIG IOV).

Auf dem IDF demonstrieren nun sowohl Dell als auch LSI den Einsatz von Single-Root I/O Virtualization (SR-IOV). Kommt ein SR-IOV-tauglicher PCI Express-Hostadapter auf einem VT-d-tauglichen Mainboard zum Einsatz, so können mehrere Betriebssysteme aus ihren jeweiligen VMs mit nativen Treibern direkt darauf zugreifen. VT-d soll dabei Sicherheit und Stabilität gewährleisten, indem es die virtuellen PCIe-Kanäle voneinander abschottet (DMA- und Intrerrupt-Remapping/x2APIC, Address Translation Services/ATS).

Der Hypervisor steuert den Zugriff auf die Virtual Functions.

(Bild: Intel)

Per VT-c – wie es Intel etwa im PCIe-2.0-10-GBit/s-(10GbE-)Ethernet-Adapter 82599 implementiert – können VMs entweder über Device Queues (VMDq) oder direkt (VMDc) auf den PCIe-Chip zugreifen. Dank SR-IOV (PDF-Datei) präsentiert sich der Adapter schließlich als "multiple Persönlichkeit", sodass ihn mehrere Betriebssysteme gleichzeitig mit eigenen Treibern einbinden können. Kompliziert von Intel und der PCI SIG ausgedrückt, stellt er seine Physical Function (PF) in Form mehrerer Virtual Functions (VFs) den einzelnen VMs zur Verfügung, die dann jeweils Virtual Function Device Drivers (VFDDs) laden. Der Hypervisor muss aber dennoch den Zugriff auf den physischen Chip regeln – dazu lädt er einen Master Driver, der auf die PF zugreift.

Dell setzt die 10GbE-Chips von Intel im PowerEdge-Server R710 ein; ein Netzwerkchip bietet hier 128 Virtual Functions an. Für den R710 bietet Dell auch gleich einen passenden Citrix-Xen-Hypervisor an.

LSI verspricht von einem nicht näher bezeichneten MegaRAID-Hostadapter, dass sich dank SR-IOV auch bei billigeren Konfigurationen mit Direct Attached Storage (DAS) – eine andere Bezeichnung für "eingebaute Festplatten" – für die VMs ähnliche Funktionen wie beim Einsatz eines Storage Area Networks (SAN) realisieren lassen.

(Update:) Auch andere PCIe-Chips und -Karten wie der 1-GBit/s-Ethernet-Controller Intel 82576, die 10-GbE-Adapter Cisco UCS M81KR und Qlogic QLE3142-SR-CK oder der PCIe-Bridge-IP-Core Denali Databahn unterstützen SR-IOV.

Zum IDF Fall 2009 siehe auch:

(ciw)