Unterbrechungsfreies WLAN: Roaming (Fast Transition)

 

Hinter dem Marketingbegriff Mesh-WLAN verbirgt sich häufig der Wunsch nach einem WLAN das einfach überall im Haus funktioniert. Doch was ist eigentlich ein Mesh-WLAN? Und was wird wirklich benötigt, damit WLAN überall und auch während dem Wechsel von einer Empfangsstation zur anderen funktioniert? Mein Setup besteht aus zwei Access-Points, welche als Einheit eine einzige WLAN-SSID zur Verfügung stellen. Als Access-Points verwende ich Geräte von unterschiedlichen Herstellern und OpenWrt als Firmware. Die Access-Points liefern einen unterbrechungsfreien Empfang, wenn ich mich von einem Stockwerk zum anderen bewege und wechseln beim Verlassen des 5GHz-Empfangsbereichs auf eine langsamere 2,4GHz-Verbindung, damit das WLAN überall bestmöglich funktioniert. Am Ende des Artikels erkläre ich meine Einstellungen im Detail.

Mesh-WLAN

Der Begriff Mesh-WLAN ist nicht eindeutig definiert, dennoch werden damit mehrere WLAN-Geräte verstanden, die zusammen ein einziges WLAN zur Verfügung stellen. Klassische Mesh-WLAN-Systeme kommunizieren untereinander meist auch über WLAN, was nicht für alle Gegebenheiten geeignet ist. Als Beispiel könnte eine LAN-Verkabelung zwischen verschiedenen Stockwerken eines Gebäudes oft eine schnellere und stabilere Verbindung der WLAN-Access-Points untereinander gewährleistet. 

Was brauche ich wirklich für ein unterbrechungsfreies WLAN?

Das, was sich die meisten mit dem Begriff Mesh-WLAN erwarten, ist eigentlich die Funktion 802.11r Fast Basic Service Set (BSS) Transition: Die Basis damit Clients möglichst schnell von einem WLAN Access Point zum anderen wechseln können: ohne Unterbrechung. Abhängig von der eingesetzten Hardware kann die Verbindung der Access-Points untereinander über unterschiedlichste Verbindungen stattfinden, als Beispiel WLAN, PowerLine oder einer LAN-Verkabelung. Die Entscheidung welcher Access-Point für die Verbindung verwendet wird liegt beim Client. Auch wenn aktuelle Geräten zusammen mit Access-Points und 802.11r bereits eine sehr gute Roaming-Funktionalität besitzen, kann deren Verhalten beim Einsatz von 802.11k und 802.11v (Seamless Roaming: Access Point und Band Steering) weiter optimiert werden. 

Wie funktioniert 802.11r?

Bei mehreren Access Points mit derselben SSID und demselben Key, entscheidet das Endgerät, wann es auf einen anderen Access-Point mit einem besseren Empfang wechseln soll. Verbindet sich ein Endgerät mit einem WLAN muss dieses sich zunächst Authentifizieren und eine IP-Adresse vom DHCP-Server holen, was ein wenig Zeit kostet. Normalerweise müsste das Gerät beim Wechsel von einem Access Point zum anderen erneut den kompletten Anmeldeprozess durchlaufen und den Datenverkehr anhalten, bis die Verbindung abgeschlossen ist. Der Standard 802.11r vereinfacht den Verbindungsprozess, indem der Anmeldevorgang beim Wechsel von einem Access Point zum anderen verkürzt wird. Zeitintensive Aufgaben werden dabei weggelassen. Ohne der Notwendigkeit eine neue IP-Adresse vom DHCP-Server zu holen, kann der Wechsel von einem Access-Point soweit reduziert werden, dass der Verbindungswechsel zu keiner spürbaren Unterbrechung führt.

Was ist Seamless Roaming?

Des Öfteren taucht auch der Begriff Seamless Roaming für den nahtlosen Wechsel von einer Funkzelle zur nächsten auf. Neben dem Standard 802.11r werden zusätzlich meist die Standards 802.11k und 802.11v eingesetzt, welche den Clients Informationen zu benachbarten WLAN Access Points zur Verfügung stellen damit diese in der Lage sind bessere Entscheidungen für die Verbindung treffen zu können. 

Was ist Access Point - Steering?

Access Point Steering ist eine Routerfunktion die alle WLAN-AccessPoints und deren verbundener Endgeräte überwacht und die Endgeräte aktiv informiert, falls ein anderer Access-Point eine deutlich bessere Verbindung zur Verfügung stellen kann. Technisch gesehen stehen hinter dem Access Point Steering die Standards 802.11r, 802.11k und 802.11v.

Was ist Band Steering?

Für das WLAN kommen zwei verschiedene Frequenzbänder zum Einsatz: 2,4GHz und 5GHz. Das 5GHz-Band liefert einen höheren Datendurchsatz als das ältere 2,4GHz-Band, besitzt aber eine geringere Reichweite. Das sogenannte Band Steering ist eine Router-Funktion welche die Endgeräte dabei unterstützt das gerade am besten geeignete Frequezband für die Verbindung zu verwenden und somit den meisten Durchsatz und die beste Verbindungsqualität zu liefern

Mein Setup: nahtloser WLAN-Empfang über 2 Stockwerke mit 2 verschiedenen Access Points. 

Die beiden Stockwerke meines Hauses sind durch eine Betondecke getrennt, wodurch es nicht möglich ist einen einzelnen WLAN-Access-Point so zu platzieren, dass dieser überall ausreichend WLAN-Empfang zur Verfügung stellen kann. Nachdem der Router meines Providers nur begrenzte Möglichkeiten bietet, habe ich das WLAN darauf deaktiviert und verwende das Gerät rein für die Internetverbindung. Das WLAN im Erdgeschoss wird von einem zusätzlichen Router versorgt, diesen habe ich zentral im Erdgeschoss aufgestellt. Um den WLAN-Empfang im ersten Stock zu verbessern, habe ich dort einen weiteren Access-Point im Vorhaus platziert. Die Verbindung der Geräte erfolgt über eine LAN-Verkabelung, ähnlich dem folgenden Versuchsaufbau:

Siehe auch: Verkabelung, Variante 2

Als Router verwende ich einen bereits in die Jahre gekommenen aber immer noch schnellen Linksys WRT3200ACM und als AccessPoint einen relativ neuen und relativ günstigen Netgear WAC104. Auf beiden Geräten habe ich die neueste OpenWrt-Firmware installiert: 23.05.3. Sollte ich in Zukunft einen weiteren Access-Point benötigen, zum Beispiel um den Empfang im Keller zu verbessern, kann ich dafür eine beliebige Hardware mit OpenWrt-Unterstützung verwenden, siehe: OpenWrt Hardware Empfehlung - verfügbare Geräte 2024

Im Artikel "LAN & WLAN im Heimnetzwerk: der ultimative Guide" habe ich einfach 802.11r in den OpenWrt-Optionen aktiviert, was bereits einen unterbrechungsfreien Wechsel von einer Empfangszone zur anderen ermöglicht. Zudem kann den Geräten mit dem Aktivieren von 802.11k und dem Einsatz eines Client Steering Deamon geholfen werden, möglichst immer die beste Verbindung zu verwenden. 

Voraussetzung: OpenWrt-Wpad Full

Damit ich alle WLAN-Funktionen von OpenWrt verwenden kann, habe ich wpad-basic-wolfssl mit der Vollversion: wpad ersetzt. 

 

WLAN Setup:

Auf allen Access Points sollte für jeweils 2,4GHz und 5GHz überall dieselbe SSID, Verschlüselung, und derselbe Key verwendet werden: 

Bei meinem Setup verwende ich WPA2-PSK und AES als Verschlüsselung. Die Verschlüsselung auf "auto" machte bei bestimmten Clients Probleme.

Falls nicht bereits geschehen, sollte in den WLAN-Einstellungen aller Interfaces mit demselben WLAN-Key 802.11r Fast Transition aktiviert werden:

In den Device-Einstellungen sollte zudem der Country Code eingestellt werden:

Hintergrund: Mit der Standardeinstellung Country Code: "driver default" war es mir bei einem der Access Points nicht möglich das WLAN-Interface zu aktivieren.

  Der Status "disabled" wechselte erst nach dem Setzen des Country Code auf einem meiner APs.

Wie bereits im Artikel LAN & WLAN im Heimnetzwerk: der ultimative Guide beschrieben, reicht diese Einstellung aus, damit sich die Geräte ohne Unterbrechung beim Wechsel von einer Empfangszone zur anderen verbinden. Die Verantwortung für den Wechsel auf eine andere Empfangszone liegt dabei rein beim Endgerät. Für eine zusätzliche Unterstützung seitens Router kann ein sogenannter Client Steering Deamon eingerichtet werden.

Client Steering

Für OpenWrt gibt es zwei verschiedene Client-Steering Deamon: usteer und dawn, beide benötigen die folgenden Einstellungen in den WLAN-Settings.

Alternativ können diese Einstellungen auch im Terminal gemacht werden, was eine Verbindung mit Putty oder einem anderen SSH-Client auf alle Router oder Access Points, bzw. auf deren IP-Adresse voraussetzt:

Im Terminal können die WLAN-Einstellungen mit dem folgenden Befehl bearbeitet werden:

vi /etc/config/wireless

Für die Bedienung des Terminal-Editors VI, siehe: VI Editor - Befehle.

Auf allen Access Points und für alle WLAN-SSIDs bei denen 802.11r aktiviert wurde, werden folgende Konfigurationszeilen in `/etc/config/wireless` vorausgesetzt:

      option bss_transition '1'
      option wnm_sleep_mode '1'
      option time_advertisement '2'
      option time_zone 'GMT0'
      option ieee80211k '1'
      option rrm_neighbor_report '1'
      option rrm_beacon_report '1'

Die Dokumentation des Client Steering Deamon "dawn" ist zwar ausführlicher, dennoch habe ich mich für "usteer" entschieden. Für das Verwenden von "usteer" reicht ein einfaches Installieren der des gleichnamigen Paketes "usteer":

Client Steering Daemon: usteer

"usteer" kann per Terminal, oder über die GUI als Software-Paket auf allen Access Points installiert werden:

 opkg update && opkg install usteer luci-app-usteer

Für die Funktionalität ist rein das Paket usteer verantwortlich. luci-app-usteer bietet einen Überblick in der GUI welche Clients sich gerade auf welchem Access Point verbunden haben, bez über die "Hearing map": Welcher Client auf welchem Access Point sichtbar ist. Außerdem zeigt die Client-List, ob alle Access Points für einen WLAN-Empfang bereit sind:

In den Einstellungen (Settings) kann Usteer zudem auf ein bestimmtes WLAN beschränkt werden:

Siehe auch: openwrt.org/docs/guide-user/network/wifi/usteer

Eine Alternative zu "usteer" kann für das Seamless Roaming auch "dawn" verwendet werden:

dawn (Decentralized Wifi Controller)

Auch "dawn" setzt die zuvor erwähnten Einstellungen in der Datei "/etc/config/wireless" voraus. Die Installation erfolgt auch hier durch die Installation eines Software-Paketes:

 opkg update && opkg install dawn

Die offizielle Dokumentation auf OpenWrt warnt vor einem Problem mit umdns: Als Workaround wird das Deaktivieren des umdns seccomp profile empfohlen:

root@OpenWrt2:~# /etc/init.d/umdns restart
Command failed: Request timed out
root@OpenWrt2:~#  mv /etc/seccomp/umdns.json /etc/seccomp/umdns.json.disable
root@OpenWrt2:~# /etc/init.d/umdns restart

Zuletzt muss in der Datei /etc/config/dawn-opkg noch das Netzwerk auf 192.168.1.x angepasst werden:

[+]
root@OpenWrt2:~# vi /etc/config/dawn-opkg
root@OpenWrt2:~# /etc/init.d/dawn restart
Starting Service...
UMDNS with port 1026
Dawn instance started!
root@OpenWrt2:~#   opkg install luci-app-dawn
Installing luci-app-dawn (git-21.282.29102-4a78122) to root...
Downloading https://downloads.openwrt.org/releases/22.03.1/packages/mipsel_24kc/luci/luci-app-dawn_git-21.282.29102-4a78122_all.ipk
Installing luci-compat (git-22.069.45071-03bb0e2) to root...
Downloading https://downloads.openwrt.org/releases/22.03.1/packages/mipsel_24kc/luci/luci-compat_git-22.069.45071-03bb0e2_all.ipk
Installing luci-lib-json (git-18.184.37844-cde13dc) to root...
Downloading https://downloads.openwrt.org/releases/22.03.1/packages/mipsel_24kc/luci/luci-lib-json_git-18.184.37844-cde13dc_all.ipk
Configuring luci-compat.
Configuring luci-lib-json.
Configuring luci-app-dawn.
root@OpenWrt2:~#   /etc/init.d/network restart

Auch "dawn" besitzt zudem eine Erweiterung für die Verwaltungsoberfläche um eine Zusammenfassung des Netzwerks anzuzeigen:

Details, Siehe: openwrt.org/docs/guide-user/network/wifi/dawn

Fazit

Beim Einsatz der WLAN-Standards 802.11r/k/v können mehrere Access-Points als gemeinsame Einheit auftreten und für einen bestmöglichen WLAN-Empfang sorgen. Neben bestimmten Geräten eines Herstellers, können die Standards auch mit einer Open Source-Firmware wie OpenWrt genutzt werden und Geräte von unterschiedlichen Herstellern zum Einsatz kommen: OpenWrt Hardware Empfehlung - verfügbare Geräte 2024.

positive Bewertung({{pro_count}})
Beitrag bewerten:
{{percentage}} % positiv
negative Bewertung({{con_count}})

DANKE für deine Bewertung!

Aktualisiert: 27.03.2024 von Bernhard | Translation English |🔔 | Kommentare:4

Alternative Router Firmware: OpenWrt und nicht mehr DD-WRT | Netzwerk | https-Webservices als VPN Alternative: Zugriff auf das Netzwerk
OpenWRT LoadBalancing - LTE Backup Internetleitung multiwan | OpenWrt | OpenWRT - mein Setup

Top-Artikel in diesem Bereich


IP Adressen im Netzwerk finden, auch wenn deren Firewall aktiviert ist

Einen schnellen Überblick über alle aktiven Geräte im Netzwerk liefern - neben der Verwaltungsoberfläche des Routers - Befehle in der Eingabeaufforderung, in PowerShell oder spezielle IP-Scanner. Die zu Beginn dieses Beitrages zusammengestellten PowerShell-Befehle geben einen schnellen Überblick über alle Geräte im lokalen Netzwerk und machen spezielle Programme für das Scannen des Netzwerks eventuell überflüssig. Wer die Befehle gerne in Aktion sehen will, kann dies in meinem YouTube-Video. Für...


PING mit Port - Windows cmd | PowerShell: Test-Netconnection

Mit dem Tool Ping kann bekanntlich der Zugriff zu einem bestimmten Netzwerkgerät und dessen Antwortzeit getestet werden. Nicht alle Geräte antworten auf einen Ping, möglicherweise aber auf einen bestimmten TCP-Port, vorausgesetzt, es wird darüber ein bestimmter Netzwerkservice zur Verfügung gestellt. Windows PowerShell ermöglicht es, einen bestimmten Port mit Windows Bordmitteln zu testen. Das Tool PSping kann zudem die Antwortzeit auf einen bestimmten Port messen. Wer die Befehle gerne in Aktio...


cmd Befehle für die Netzwerkanalyse

Mit einfachen Befehlen kann ein schneller Überblick über die aktuellen Netzwerkeinstellungen ausgelesen werden, eventuelle Verbindungsfehler gefunden, oder ein Überblick über andere Geräte im Netzwerk verschafft werden. Die hier beschriebenen Befehle sind cmd-Befehle. Die Eingabe erfolgt über die Eingabeaufforderung: cmd, siehe auch das zugehörige YouTube-Video.

Fragen / Kommentare


(sortiert nach Bewertung / Datum) [alle Kommentare(neueste zuerst)]

✍anonym
02.01.2024 21:34
Muss man usteer auf allen Access-Points installieren?
✍Bernhard
gepostet am 07.01.2024 10:30
Ja, muss auf allen AccessPoints installiert werden.

Beitrag erstellt von Bernhard

✍anonym
17.04.2024 08:44
Danke für deine Arbeit, wirklich toll gemacht und bin noch am abarbeiten der Einstellungen.

Hier in den Artikel bitte noch einfügen:
"Die Einstellung "FT over the Air" und "Reassociation Deadline" mit dem Wert 20000 hat das Problem gelöst."

von hier: https://www.libe.net/heimnetzwerk#router-ap

Habe ebenfalls das Problem das teilweise geräte, obwohl vollen Empfang, weder aufs Netzwerk noch aufs Internet zugreifen können, erst das Wechseln des W-Lan schafft dabei Abhilfe.

Hoffe mit der Einstellung ist ín Zukunft das Problem behoben.

Gruß
Karsten
✍Bernhard
gepostet am 17.04.2024 09:50
Danke dir! Ich werde den Screenshot in diesem Artikel demnächst anpassen.

Beitrag erstellt von Bernhard

Durch die weitere Nutzung der Seite stimmst du der Verwendung von Cookies zu Mehr Details