Warum ist das Freifunk-WLAN so langsam?
Inhaltsverzeichnis
Warum ist das Freifunk-WLAN so langsam?
Das kann vielfältige Gründe haben. Zum einen könnte es entfernte Gründe geben, z.B. könnte es daran liegen, dass die Gateway-VPN-Tunnel überlastet sind. Doch auch im näheren Umfeld gibt es eine Vielzahl an Störfaktoren, die das Netz negativ beeinflussen können.
Ursache WLAN
In Europa sind im 2,4 GHz ISM(Industrial, Scientific and Medical)-Band eine Vielzahl an Anwendungen erlaubt, WLAN ist nur eine davon. WLAN unterteilt sich dabei in 13 Kanälen zu 5 Mhz. Ein ganzer WLAN Kanal ist nach IEEE 802.11g und IEEE 802.11n mindestens 20Mhz breit, somit stehen 4 überschneidungsfreie Kanäle zur Verfügung, nämlich der Kanal 1, 4, 9 und 13. Zur Erhöhung der Datenübertragungsrate gibt es die Möglichkeit einen Kanal auf 40 Mhz zu erweitern, danach gibt es praktisch nur zwei überschneidungsfreie Kanäle, sind die Kanäle 4 (1+5) und 11 (6+13), mehr zur Problematik der Kanäle findet ihr unter: Kanalwahl
Was könnte WLAN leisten
Wie ihr sicher schon bemerkt habt, sind die „bis zu Angaben“ der WLAN Gerätehersteller sehr theoretische Wert und kommen in der Praxis nicht mal in die Nähe dieser Wunschvorstellung. Meist werden grob die Werte zusammen addiert, der höchste (auch proprietäre) Standards auf beiden Seiten „angenommen“, der Overhead der Protokolle und mögliche Störeinfüße ignoriert und herauskommen Werte die in der Praxis nicht erreicht werden können, jedoch auf der Verpackung im Geschäft etwas hermachen.
MIMO
Im Freifunk wird im 2,4GHz Band mit 20Mhz Kanalbreite nach IEEE 802.11g und n Standard gesendet, dadurch sind theoretische Datenraten von 54 Mbit/s bzw. 65 Mbit/s angegeben. Es gibt die Möglichkeit die Übertragungsrate mit mehreren Antennen durch die MIMO Technik zu erhöhen, dazu ist es allerdings notwendig, dass beide Geräte über mehrere Antennen verfügen. Bei 2x2 MIMO werden 130, bei 3x3 195 MBit/s angegeben. Während man bei den Routern meist mehrere Antennen zur Verfügung stehen, sieht es bei den Endgeräte düsterer aus. So gibt es 2xMIMO z.B. erst seit dem Samsung Galaxy S5 oder Note4, Apple stattet seine iPhones erst seit dem 5er mit MIMO aus. Nutzer älterer oder preiswerter Geräte müssen meist mit einer Antenne vorlieb nehmen, ähnlich verhält es sich bei Tabletts oder Laptops. Schon die theoretischen Angaben der Hersteller lassen erahnen, dass Geräte mit nur einer Antenne mindestens die doppelte Zeit für die gleiche Anzahl an zu übertragenden Daten benötigen.
WLAN ist „gerecht“ und die Grenze ist die Airtime
Es steht allen Geräten im WLAN eine begrenzte Zeit an Airtime zur Verfügung, die sich alle teilen. Im Idealfall gibt es einen Sender, z.B. den Router und eine Empfänger, z.B. das Smartphone und keinerlei Störquellen. Der Empfänger steht direkt neben dem Sender und der höchste Standard kann genutzt werden. Dieser Idealfall tritt aber höchstwahrscheinlich nur in Mitten der Dresdener Heide auf. Je weiter der Empfänger vom Sender weg ist, desto schlechter empfangen sich Beide. Um entfernte Geräte zu erreichen oder Störungen auszugleichen nutzen die WLAN Geräte die Möglichkeit ihre Modulation und Codierung so zu verändern, dass es wieder funktioniert, das resultiert wiederum in fallenden Übertragungsraten, wie folgende Tabelle veranschaulicht:
Antennen (MIMO)/Datenrate in Mbps | 1x1 | 2x2 | 3x3 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Modulationsverfahren | Bruttodatenrate | ||||||||||
FHSS (Frequenzspreizung) | IEEE 802.11 | 1 - 2 | |||||||||
DSSS(Direct Sequence Spread Spectrum) | IEEE 802.11b | 5,5 - 11 | |||||||||
OFDM(Orthogonales Frequenzmultiplexverfahren) | IEEE 802.11g | 6 - 54 | |||||||||
IEEE 802.11n | |||||||||||
Guard Interval | Codierung | GI 0,8µs | MCS Index | GI 0,8µs | SGI 0,4µs | MCS Index | GI | SGI | MCS Index | GI | SGI |
BPSK (Binäre Phasenumtastung) | 1/2 | 6,0 | 0 | 6,5 | 7,2 | 8 | 13,0 | 14,4 | 16 | 19,5 | 21,7 |
QPSK (Quadraturphasenumtastung) | 1/2 | 12,0 | 1 | 13,0 | 14,4 | 9 | 26,0 | 28,9 | 17 | 39,0 | 43,3 |
QPSK | 3/4 | 18,0 | 2 | 19,5 | 21,7 | 10 | 39,0 | 43,3 | 18 | 58,5 | 65,0 |
16-QAM (Quadraturamplitudenmodulation) | 1/2 | 24,0 | 3 | 26,0 | 28,9 | 11 | 52,0 | 57,8 | 19 | 78,0 | 86,7 |
16-QAM | 3/4 | 36,0 | 4 | 39,0 | 43,3 | 12 | 78,0 | 86,7 | 20 | 117,0 | 130,0 |
64-QAM | 2/3 | 48,0 | 5 | 52,0 | 57,8 | 13 | 104,0 | 115,6 | 21 | 156,0 | 173,3 |
64-QAM | 3/4 | 54,0 | 6 | 58,5 | 65,0 | 14 | 117,0 | 130,3 | 22 | 175,5 | 195,0 |
64-QAM | 5/6 | 7 | 65,0 | 72,0 | 15 | 130,0 | 144,4 | 23 | 195,0 | 216,7 |
Die aktuelle MCS Rate der verbundenen Router erfährt man per SSH im Router mit dem Befehlen:
iw dev wlan0 station dump
while true; do clear; iw dev wlan0 station dump | grep 'bitrate\|Sta\|expec' ; sleep 2; done
Router untereinander /\
Router zu Clients \/
iw dev wlan0-1 station dump | grep 'at'
while true; do clear; iw dev wlan0-1 station dump | grep 'bitrate\|Sta\|expec' ; sleep 2; done
Tunning 802.11b Geräte aussperren
Ein Möglichkeit die Geschwindigkeit bei vielen Nutzern um 30-60% zu erhöhen, ist die Geräte die schlechten Empfang haben nicht zu erlauben. Dazu muss (noch) von Hand per SHH in der /etc/config/wireless Datei folgende Raten festgelegt werden. Bitte wie immer Vorsicht und Sorgfalt walten lassen.
config wifi-device 'radio0' option type 'mac80211' option hwmode '11g' option path 'platform/ar934x_wmac' option htmode 'HT20' option country 'DE' option disabled '0' option channel '13' option txpower '18' list basic_rate '6000 9000 12000 24000 54000' list supported_rates '6000 9000 12000 18000 24000 36000 48000 54000'
Anschließend ist ein wifi(mit selbigen Kommando) Neustart notwendig.
Überprüfung:
while true; do clear; iw dev wlan0-1 info | grep ssid; ifconfig | grep wlan0; cat /etc/config/ddmesh | grep 'n node'; iw dev wlan0 station dump | grep 'bitrate\|Sta' ; echo ^^MESH^^-vvDEVICEvv; iw dev wlan0-1 station dump | grep 'bitrate\|Sta'; sleep 3; done
Es Endet im kontrolliertem Chaos
Soweit, so theoretisch zu den Übertragungsraten. Ein WLAN Geräte schalten bei Störungen oder anderen WLAN entsprechend viele Gänge zurück. Hinzukommen jedoch nun neben anderen WLAN Teilnehmern auch Störungen. Da jeder spontan ein WLAN betreiben kann muss irgendwie eine friedliche Koexistenz geschaffen werden. Es kommt das CSMA/CA (Carrier Sense Multiple Access/Collision Avoidance) Verfahren zum Einsatz, es entscheidet wenn ein WLAN senden darf und wann es sich zurückhalten oder pausieren muss weil gerade ein anderes WLAN sendet oder eine Störung vorliegt. Ins technische Detail geht hier ein guter Artikel vom Elektronik Kompendium.
Stellen wir uns die Airtime als Scheibe vor. Jedes dieser WLANs soll die gleiche Menge an Daten übertragen. Ein langsames WLAN(Orange) benötigt für die gleiche Datenmenge bspw. die 10fache Zeit wie ein Schnelles (Magenta/Gelb). Während ein WLAN sendet, warten die anderen WLANs und senden selbst nach einer zufällig langen Pause. Kommt eine WLAN Übertragung nicht beim Empfänger (Violett) an und wird gestört(Schwarz), so muss diese erneut gesendet werden. Das Beispiel soll verdeutlichen, dass obwohl die schnellen WLANs mehr übertragen könnten, einfach meist die Airtime dazu fehlt.
Erschwerend für die Airtime kommt bei Freifunk dazu, dass sich die Router untereinander verbinden. Bei einem Router ohne direkten Anschluss müssen erst einmal die Daten über WLAN zum Router gesendet werden um anschließend über das eigentliche WLAN ans Endgerät verteilt zu werden. In Theorie bedeutet das, dass z.B. aus theoretische 60MBit/s → 30MBit/s werden, mit jedem weiteren Sprung von Knoten zu Knoten halbiert sich dieser Wert, bis ein Knoten den entfernten Knoten nicht mehr sieht oder "gestört" wird.
Moderne Router beherrschen die automatische Kanalwahl oder behaupten zumindest Selbiges für sich, oft geht das leider schief, da sie nur die internationalen Kanäle 1-11 betrachten. Besser ist es also immer den Kanal für das private Netzwerk selbst festzulegen. Es kommen Kanal 1, 5 oder 9 in Frage, siehe Kanalwahl.
Fremde nicht WLAN-Störungquellen zu identifizieren ist dagegen um einiges schwieriger und auch ein teuer Spaß. Entsprechende 2,4 GHz Spektrumanalysierer liegen preislich im guten dreistelligen €-Bereich.