Open Source im professionellen Einsatz

© scx.hu

WLAN im Ad-hoc-Modus

Vermascht

,

Ein WLAN ist eine zentralistische Sache und räumlich rund um den Accesspoint begrenzt. Die bisherigen Linux-Mesh-Implementationen für den Ad-hoc-Modus umwehte der Hauch einer Bastelstube. Die Aufnahme des offiziellen IEEE 802.11s-Codes in den Linux-Kernel könnte das ändern.

Wenig eingesetzt, aber trotzdem möglich: Um ein WLAN zu betreiben, ist ein Accesspoint nicht zwingend. Die meisten Anwender aber verwenden den so genannten Infrastruktur-Modus, bei dem sich alle Clients mit einer Zentrale verbinden. In einem typischen Heim- oder Büronetzwerk sucht jeder Client den Router, der in Funktionsunion oft auch WLAN-Accesspoint ist.

Dabei gibt andere Möglichkeiten WLAN-Netze aufzubauen. Eine davon ist der Ad-hoc-Modus. Bei ihm gibt es keine zentrale Verwaltung. Stattdessen sind alle Teilnehmer gleichberechtigt und gleichzeitig sowohl Client als auch Master. So lassen sich auch ohne feste Infrastruktur schnell kleine Netze aufbauen.

Nur einen Link mittels Ad-hoc-Mode aufzubauen reicht aber nicht aus: IP-Adressen vergibt normalerweise ein DHCP-Server im Accesspoint. Er nennt dem Client auch den Nameserver und das Default-Gateway. Fehlt ein Accesspoint, müssen die angeschlossenen Geräte diese Daten selbst aushandeln. Da Anwender solch kleiner Ad-hoc-Netze primär unkompliziert und schnell eine Datenübertragung aufbauen wollen, genügen meist die Hausmittel der Betriebssysteme, um sie einzurichten.

Rohe Maschen

Nutzen WLAN-Anwender nur den reinen Ad-hoc-Modus, stoßen sie schnell an Grenzen. Unmittelbare Nachbarn sind so zwar erreichbar, aber als Zwischenstationen lassen sich andere Netzteilnehmer auf diese Weise nicht verwenden. Auch auf Treiber-Ebene gibt es Probleme. Manche Betriebssysteme unterstützen beispielsweise nur zwei Clients in einem solchen Netz. Gerade in schnell aufgebauten Netzen möchten sich Nutzer nicht darum kümmern, welche Funkverbindungen zwischen welchen Rechnern sich nun besser oder schlechter eignen. Hier kommt Meshing ins Spiel. Insbesondere der Standard IEEE 802.11s verspricht, die einige diese Hürden zu beseitigen.

Meshing bezeichnet den Zusammenschluss mehrerer Knoten, wie es zum Beispiel in einem Ad-hoc-Netzwerk der Fall ist. Das können Computer, Notebooks, aber auch IP-fähige Smartphones sein. Das Mesh-Protokoll versucht automatisch den bestmöglichen Weg für ein Paket zu wählen. Es bestehen also keine festen Verbindungen zwischen einzelnen Knoten. Das Protokoll sucht selbst für jedes Paket immer wieder die besten Verbindungen heraus.

Sich ändernde Umgebungen

Meshing gleicht seine Daten möglichst oft ab, typischer alle paar Sekunden. So erreicht es eine hohe Dynamik und reagiert auf geänderte Bedingungen, die sich durch bewegende Knoten, Hindernisse oder die Belegung einer Direktverbindung ergeben. Jede aktive Linkstrecke bewertet es nach bestimmten Kriterien und wählt die beste aus. Das Routing ist somit eine der wichtigsten und auch teuersten Aufgaben des Meshings.

Entwickler haben schon auf unterschiedliche Weisen Meshing implementiert [1]. Die bekanntesten sind OLSR (siehe Kasten "Optimized Link State Routing", [2]) und das sperrige "Better Approach to Mobile Ad-hoc Networking" (siehe Kasten "B.A.T.M.A.N.", [3]). Beide verwenden Routing auf dem OSI-Layer 3, um Wege im Mesh zu finden. Das neuere Batman Advanced [4], ein unabhängig entwickelter Fork, verwendet dagegen Switching auf OSI-Layer 2. Je nach Einsatzzweck haben das Network- und das Link-Layer ihre jeweiligen Vorteile.

Routing lässt sich intuitiver implementieren und kontrollieren, verbraucht aber auch viele Ressourcen in den Knoten, die häufig nicht mit üppigen CPUs ausgestattet sind.

Das weit verbreitete Linksys WRT54G etwa (siehe Abbildung 1) taktet seine CPU je nach Modell mit zwischen 125 und 240 MHz [6]. In einem Meshnode III [7] versieht eine Geode-CPU mit 500 MHz Taktung ihren Dienst (siehe Abbildung 2). Das ist zwar schon mehr als das Linksys, lässt sich aber dennoch bei weitem nicht mit der Leistung eines typischen PC-Systems vergleichen. Solche kleinen Geräte benötigen daher die 10- bis 20-fache Zeit eines Desktop-Systems, um die Topologie komplett neu zu berechnen.

Für das OLSR existieren Plugins und alternative Berechnungsmethoden, um die hardwarebedingt eingeschränkte Skalierbarkeit auszugleichen. Batman hat diese Problematik bereits bei der Entwicklung berücksichtigt. Beide Protokolle erlauben anzugeben, ob ein Knoten Zugang zum Internet hat und damit als Gateway für andere Knoten agieren kann. Bei Batman lässt sich zusätzlich die Bandbreite angeben, mit der das Gateway das Internet anbindet. Auf diese Weise suchen sich Clients das günstigste Gateway. Kein Client ist dabei auf eine zentrale Stelle angewiesen, die diese Informationen für alle verwaltet.

Abbildung 1: Das unter Linux-Anwendern verbreitete Linksys WRT54G beherrscht Meshing, allerdings ist seine CPU für die komplexen Routingalgorithmen beim Meshing oft etwas schwach.

Abbildung 1: Das unter Linux-Anwendern verbreitete Linksys WRT54G beherrscht Meshing, allerdings ist seine CPU für die komplexen Routingalgorithmen beim Meshing oft etwas schwach.

Abbildung 2: Das Saxnet Meshnode III ist besonders für den vermaschten Betrieb in Gebäuden und im Freien vorbereitet und bringt gleich vier Wireless-Module mit, die eine Geode-CPU organisiert.

Abbildung 2: Das Saxnet Meshnode III ist besonders für den vermaschten Betrieb in Gebäuden und im Freien vorbereitet und bringt gleich vier Wireless-Module mit, die eine Geode-CPU organisiert.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 5 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook