Kernel-Log – Was 2.6.39 bringt (1): Netzwerk-Treiber und -Infrastruktur

Die neue Ipset-Unterstützung vereinfacht den Betrieb einer Firewall, denn mit ihr muss man lediglich eine Tabelle anpassen, um etwa eine ganze Reihe von IP-Adresse zu blockieren. Die Treiber-Situation für WLAN-Chips verbessert sich weiter, da nun auch Ralink und Realtek sich aktiv an der Weiterentwicklung der Treiber im Linux-Kernel beteiligen.

In Pocket speichern vorlesen Druckansicht
Lesezeit: 21 Min.
Von
  • Thorsten Leemhuis
Inhaltsverzeichnis

In den Freigabe-Mails zur zweiten und dritten Vorabversion des Linux-Kernels 2.6.39 merkte Torvalds jeweils an, es habe vergleichsweise wenig Änderungen gegeben. Beim RC2 zeigt er sich darüber sehr verwundert und fragte, ob die anderen Kernel-Hacker etwas im Schilde führen würden. Beim am Dienstag dieser Woche freigegebenen RC3 scherzte er abermals in diese Richtung; er lässt aber in beiden Mails auch durchblicken, dass er sich darüber freut und auf einen ruhigen Entwicklungszyklus hofft.

Wie üblich war das Gros der Änderungen für die nächste größere Kernel-Überarbeitung bereits im Merge Window in den Hauptentwicklungszweig eingezogen. Das Kernel-Log kann daher schon jetzt einen umfassenden Überblick über die wichtigsten Neuerungen des Mitte oder Ende Mai erwarteten Kernel 2.6.39 geben. Verschiedene Artikel werden sich dabei nach und nach den verschiedenen Funktionsbereichen des Kernels annehmen. Den Anfang der Mini-Serie "Was 2.6.39 bringt" macht die folgende Beschreibung der wichtigsten Änderungen am Netzwerk-Stack und den darauf aufsetzenden Treibern. In den kommenden Wochen folgen Artikel zur Grafik-Treibern, Storage-Unterstützung, Dateisystemen, Architektur-Code, Infrastruktur und Treibern für andere Hardware.

Nach langer Entwicklung unabhängig vom Kernel stieß nun die Unterstützung für die aktuelle Generation von Ipset zum Linux-Kernel (u.a. 1). Dieses Kommandozeilenprogramm erstellt im Speicher vorgehaltene Tabellen, die typischerweise IP-Adressen oder TCP/UDP-Ports enthalten – etwa eine Liste mit IP-Adressen, die geblockt werden sollen. Der Firewall-Code kann diese Tabellen bei der Paket-Prüfung konsultieren; dazu ist lediglich eine einzelne Iptables-Regel nötig, welche die zu verwendende Tabelle spezifiziert. Das kann das Aufsetzen einer Firewall vereinfachen.

Die Tabellen sind zudem deutlich einfacher und schneller aktualisierbar, als sich Iptables-Regeln einfügen oder entfernen lassen – das erleichtert das vorübergehende Aussperren eines Angreifers. Darüber hinaus soll der Kernel die Tabellen erheblich flotter verarbeiten als einen vergleichbaren Satz einzelner Iptables-Regeln.

Einige speziell auf den Firewall-Betrieb ausgelegte Linux-Distributionen haben daher schon lange Ipset-Unterstützung eingebaut. Die Ipset-Homepage listet die wichtigsten Funktionen des Programms und liefert Tipps und Beispiele; Hintergründe zum Einsatz liefern auch die dort abrufbaren Man-Pages zu Ipset und Iptables.

Die Kernel-Hacker haben im Code für das TCP-Protokoll die Standard-Einstellung für das Initial Congestion Window vergrößert, was die Latenzen bei der Netzwerkkommunikation um 10 Prozent reduzieren kann. Die Änderung geht auf Google-Entwickler zurück, die bei Forschungen mit verschiedenen Betriebssystemen festgestellt hatten, dass einige Standardvorgaben im TCP-Stack von Linux nicht ideal für moderne Internet-Kommunikation waren. Die Kernel-Hacker passten daraufhin bei 2.6.38 bereits das Initial Receive Window an; Hintergründe zu diesen beiden Änderungen liefert LWN.net im Artikel "Increasing the TCP initial congestion window".