Die Neuerungen von Linux 3.6

Seite 2: Virtualisierung, Netzwerk, Treiber

Inhaltsverzeichnis

KVM erhielt einige Änderungen, um den mit der Interrupt-Verarbeitung verbundenen Arbeitsaufwand zu reduzieren und so die Performance zu steigern (1, 2, 3). Zum Kernel stießen ferner die IOMMU Groups, die Verbesserungen zur Isolation von PCI- und PCIe-Geräten bringen und dazu auf I/O-Virtualisierungstechniken wie AMD-Vi oder Intels VT-d zurückgreifen.

Auf die IOMMU-Gruppierfunktion baut das ebenfalls integrierte Userspace-Treiber-Framework Userspace-Treiber-Framework VFIO (Virtual Function I/O) auf (1, 2, 3); es ist vornehmlich für KVM gedacht, um PCI- und PCIe-Geräte an Gäste durchzureichen, damit diese die Geräte mit geringen Latenzen, hohem Datendurchsatz und ohne Gefahr für den Host ansprechen können. Details zu VFIO erläutern die zugehörige Dokumentation und ein Artikel bei LWN.net. Erweiterungen zur Nutzung von VFIO mit Hilfe von Qemu sind noch in Entwicklung.

Durch "TCP small queues" (TSQ) nutzt Linux 3.6 pro Netzwerksocket standardmäßig nur mehr 128 KByte kleine Puffer. Ähnlich wie einige andere jüngst vorgenommene Kernel-Änderungen soll auch diese zur Vermeidung von "Bufferbloat" beitragen; der Begriff umschreibt Probleme wie hohe Netzwerklatenzen und Verbindungsabbrüche, die durch zu umfangreiches Puffern zu übertragender Daten entstehen. Die kleineren Zwischenspeicher pro Socket sollen den Durchsatz laut verschiedenen Messungen des zuständigen Entwicklers nicht beeinträchtigen; Administratoren können den Wert allerdings bei Bedarf über die Datei /proc/sys/net/ipv4/tcp_limit_output_bytes zur Laufzeit anpassen.

In den Kernel ist zudem Client-Unterstützung für "TCP Fast Open" (TFO) eingeflossen (u. a. 1, 2, 3, 4, 5); die Server-seitige Unterstützung soll bei Linux 3.7 folgen. TFO ist eine experimentelle, von der Internet Assigned Numbers Authority (IANA) noch nicht abgesegnete TCP-Erweiterung von Google, die den Overhead beim Verbindungsaufbau senken soll; das soll unter anderem HTTP-Verbindungen beschleunigen.

Die Kernel-Entwickler haben eine Reihe von Erweiterungen und Korrekturen für Linux 3.6 aufgenommen, die die Unterstützung für im Juli vorgestellte MacBooks wie das MacBook Pro Retina verbessern. Noch sind aber nicht alle für diese Notebooks wichtigen Erweiterungen in Linux eingeflossen; bei einigen Modellen zeigt auch Linux 3.6 weiterhin Schwierigkeiten bei der Handhabung der Grafikhardware.

Der Radeon-Grafiktreiber aktiviert nun die schnellsten Transfermodi von PCIe 2.0, sofern die Hardware diese beherrscht. Die Audio-Treiber unterstützten Intels Prozessoren der Haswell-Generation sowie die zugehörigen Platform Controller Hubs (PCHs) der Lynx-Point-Reihe, die Intel offenbar im nächsten Jahr einführen will. (1, 2). Zum Input-Subsystem stieß ein Treiber für das "ThinkPad USB Keyboard with Trackpoint" von Lenovo.

Der für einige Ethernet-Chips von Broadcom zuständige Treiber bnx2x unterstützt nun das in IEEE 802.3az spezifizierte Energy-Efficient Ethernet (EEE). Anwender können EEE-Parameter mit Hilfe der kürzlich veröffentlichten Version 3.5 von Ethtool auslesen und setzen.