Open Source im professionellen Einsatz

Einheitliches Modell für die Anbindung drahtloser Geräte

Mac80211 - Neuer WLAN-Stack für den Linux-Kernel

,

Im kommenden stabilen Kernel 2.6.22 ist der neue WLAN-Stack mac80211 enthalten. Die neuen Funktionen und Vorteile hat das Linux-Magazin Online mit Unterstützung des am Stack beteiligten deutschen Entwicklers Johannes Berg aufgearbeitet.

Mit dem ersten Release Candidate des neuen Kernels 2.6.22 hat der neue WLAN-Stack Einzug gehalten. Kurios ist, dass der Stack ohne zusätzliche Treiber eingeflossen ist. Kernel-Maintainer lassen das nur selten zu. In diesem Fall soll es der Entwicklung des Stacks dienen. Die ersten Treiber stehen auch schon in den Startlöchern.

Der Stack soll Entwicklung, Einbindung und Nutzung von WLAN-Geräten einfacher und einheitlich machen. Die meisten Funktionen sind in Softmac umgesetzt, ein Verfahren, das auch viele Gerätehersteller einsetzen. Einsparungen bei den Entwicklungs- und Pflegekosten und mehr Flexibilität sprechen dafür. Aber: Die Hersteller setzen das Konzept jeweils verschieden um und so unterschieden sich auch die Ansätze der Implementierungen. Mit dem WLAN-Stack mac80211 und den neuen Interfaces soll das anders werden: Eine einheitliche, zentrale Implementierung ist Ziel und größter Vorteil zugleich. Nahezu alle aktuellen Treiber für WLAN-Geräte bauen dann auf dem neuen Stack auf. Als eine der wenigen Ausnahmen nannte Berg den im One-Laptop-per-Child-Projekt verwendete Marvell-Chipsatz . Bei dem stecken alle Funktionen in der Firmware.

Mac80211 ist aus dem von Devicescape entwickelten Stack d80211 entstanden. Das Unternehmen hatte die bewährte Lösung, die schon in verschiedenen embedded Devices eingesetzt ist, erst vor kurzem unter der GPL freigegeben. Daraufhin haben sich viele Entwickler dem Code gewidmet und ihn für die Aufnahme in den Kernel getrimmt. Er ersetzt das im Herbst letzten Jahres aufgenommene IEEE80211-Subsystem.

Neue Funktionen

Zu den Funktionen zählt die Unterstützung aller bestehenden Arbeitsmodi wie Client-/Ad-Hoc-Mode und Accesspoint. Weitere Funktionen wie Quality of Service (QoS) und das Wireless Distribution System (WDS) kommen hinzu. Das schon im Ansatz integrierte Netlink-Interface dient als Userspace-Schnittstelle. Die befindet sich derzeit aber in einem rudimentären Entwicklungsstand und bietet lediglich zwei Funktionen: Hinzufügen und Entfernen von virtuellen Interfaces. Aber: Mit diesen virtuellen Interfaces soll es erstmals möglich sein, mehrere Betriebsmodi gleichzeitig zu nutzen. Diverse Konfigurationen sind dann denkbar. Zum Beispiel kann ein System als Client in einem Netzwerk angemeldet sein und gleichzeitig im Monitormode den umgebenden Verkehr überwachen und abhören. Ein anderes Szenario setzt auf das Projekt Penumbra. Hier ist ein Rechner über ein virtuelles Interface als Client in einem verschlüsselten Netzwerk eingebucht und kommuniziert über ein zweites virtuelles Interface mit den umgebenden Rechnern ohne festes Netz.

Der Stack im Release-Candidate ist aber noch nicht komplett. Entwickler Johannes Berg spricht von einer in Teilen zufriedenstellend funktionsfähigen, abgespeckten Variante. Erst mit der Fertigstellung der Userspace-Konfigurationsmöglichkeiten sei er vollständig einsetzbar. Bis es soweit ist, sollen auch die noch fehlende Funktion fertig sein.

Neue Treiber

Die Entwicklung neuer Treiber hat ebenfalls Fahrt aufgenommen. Ein gutes Dutzend für verschiedene Chipsätze sind fertig, die ersten stehen vor der Aufnahme in den Kernel. Ob sie es noch in das stabile Releases 2.6.22 schaffen ist fraglich, da die Aufnahme neuen Codes mit Veröffentlichung des RC1 als beendet gilt. Zu den schon unterstützen Geräten zählen unter anderem Chipsätze von Broadcom, Ralink und Intel. Letzterer hat in Eigenregie Treiber für seine Chipsätze 3945 a/b/g sowie für den gerade erst erschienenen Chipsatz 4965 bereitgestellt. Patches zur Unterstützung des vorläufigen Standards Draft "N" zählen ebenfalls dazu. Probleme scheint es derzeit mit dem Softmac-Treiber für Prism-2-Chipsätze zu geben, wenn im Ad-Hoc-Mode ein Verbindung aufgebaut werden soll.

Die Rückwärtskompatibilität ist nur in Maßen gegeben. Karten, auf denen Firmwareupgrades möglich sind, dürften eventuell mit dem neuen Stack klarkommen. Geräte, die einen Großteil der Funktionen über Hardware lösen, wie die Intel-Chips IPW2200 und IPW2100, brauchen weiterhin eine eigene Treiberstruktur. Die beiden Intel-Treiber sind darüber hinaus die letzten Treiber, die auf den alten Stack IEEE80211 setzen. Um Verwirrungen vorzubeugen, ist es denkbar, dass der alte Stack direkt in den Intel-Treiber eingearbeitet wird. Auch die Wireless-Tools werden aktualisiert und in den kommenden Monaten sukzessive durch eine neue Werkzeugsammlung ersetzt. Dennoch sollen die alten Tools soweit angepasst werden, dass sie den neuen Stack steuern können, wenn auch nicht in vollem Umfang.

Intels Chips der Reihe 2200 brauchen weiterhin eine eigene Treiberstruktur.

Ein potenzielles Problem birgt der neue Stack aber. Da es damit möglich ist, die Hardware umfangreich zu steuern, ist auch der Betrieb außerhalb der Spezifikation für Frequenzen und Sendestärke möglich. Davon betroffen sind beispielsweise Broadcom-Geräte, die so gut wie alle Funktionen über den Treiber realisieren. Weniger Probleme machen Exemplare, die mit Closed-Source-Firmware arbeiten, wie die Intel-Karten. Konsequenz aus diesem Spezifikationsproblem dürfte sein, dass viele Hersteller keine Open-Source-Treiber anbieten können, und auch keine Hilfe bei der Entwicklung leisten, da sie Gefahr laufen, mit den Zulassungsbehörden in Konflikt zu geraten. Doch zumindest bei Broadcom hat die Entwickler-Gemeinschaft bereits für eine Lösung gesorgt. Seit gut zwei Jahren gibt es einen Open-Source-Treiber, der aus Reverse-Engineering entstanden ist und dessen Spezifikationen offen liegen.

Hardware-Zertifizierung für Wireless-Geräte

Die Suche nach einer neuen PCMCIA-WLAN-Karte hat David Christian Berg, Bruder von Johannes Berg, auf die Idee einer Zertifizierung von drahtlosen Netzwerkgeräten gebracht. Er traf im Fachhandel auf ratlose Verkäufer, sobald er er nach Linux-Kompatibilität fragte. Die vergleichsweise teure Netgear-Karte, die er sich schließlich kaute brachte er nur mit Hilfe seines Bruders zum Laufen. Daraufhin entwickelte er ein Zertifizierungsschema, das Konsumenten und Händlern gleichermaßen hilfreich sein soll. der Käufer erkennt damit, ob die Karte für ihn geeignet ist, der Händlern bekommt eine Übersicht darüber, ob die Hardware Linux-kompatibel ist.

In drei Zertifizierungsstufen ist das Schema aufgeteilt. Die höchste Stufe hat Berg "Linux Wireless - Best Choice" getauft. Dieses Siegel bedeutet, dass Anwender ohne Hintergrundwissen die zertifizierte Hardware schnell und einfach installieren können. Die Quellen des Treibers liegen als Open Source vor. Die zweite Stufe setzt ebenfalls freie Quellen voraus und nennt sich "Linux Wireless - Geek User". In dieser Stufe ist das Setup der Hardware eher für Fortgeschrittenen zu empfehlen. Die Stufe "Linux Wireless - Home User" bezeichnet Hardware, für die der Hersteller Linux-kompatible Treiber stellt, die zwar einfach zu installieren, aber nicht quelloffen sind. Für David Christian Berg ist diese Stufe nötig, um für mehr Akzeptanz bei den Hersteller zu werben und sie für das Stufenmodell zu gewinnen.

So könnte ein Zertifzierungssiegel für Linux-taugliche WLAN-Geräte aussehen.

Kernel-Entwickler sehen die Zertifizierungsidee aber auch kritisch. Johannes Berg unterstützt zwar den Vorstoß seines Bruders, äußerte aber auch Bedenken. Schließlich würden gut dokumentierte und offen liegende Treiber schnell adaptiert und einfach in den Kernel gebracht. Bei "Linux Wireless - Home User"-zertifizierter Hardware sieht Berg die Gefahr, dass nach einer Pleite des Herstellers die Geräte keine neuen Treiber mehr bekommen und irgendwann unbenutzbar werden.

Die ungute Angewohnheit mancher Hersteller, unter der gleichen Serie verschiedene Chipsätze zu verbauen, und die Produktbezeichnung gleich zu lassen, könnte mit der Zertifizierung wiederum bekämpft werden. Hersteller könnten an zertifizierter Hardware nicht mehr ohne weiteres Änderungen vornehmen und trotzdem das Gütesiegel verwenden.

Den Vorschlag von Christian David Berg muss nun die Open-Source-Gemeinschaft bewerten. Ist die Idee umsetzbar? Taugen die Kriterien und Zertifizierungsstufen? Die beiden Brüder warten gespannt auf Kritik, Kommentare und Vorschläge.

Ausgabe 01/2017

Digitale Ausgabe: Preis € 6,40
(inkl. 19% MwSt.)

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.