Warum ist das Freifunk-WLAN so langsam?

Aus Freifunk Dresden - Anwender-Wiki
Zur Navigation springen Zur Suche springen


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, 5, 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 3 (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 2x2 MIMO z.B. erst seit dem Samsung Galaxy S5 oder Note4, Apple stattet seine iPhones erst seit dem 5er mit MIMO aus. Aller neuste Geräte nutzen sogar 3x3 MIMO, aufgrund des größeren Rechenaufwandes und des damit höheren Stromverbrauches leider nur reicht wenige. Nutzer älterer, preiswerter und kleiner Geräte müssen meist mit einer Antenne vorlieb nehmen. 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.

Hintergrund

Das es preiswerter ist nur eine Antenne zu verbauen leuchtet ein, dennoch spielt auch die Größe des Gerätes eine wichtige Rolle: MIMO nutzt die unterschiedliche Ausbreitung der Signale im Raum. Damit ein anderes Gerät die versetzten Signale auch erkennt, muss der Abstand der Antennen mindestens der halben Wellenlänge der Frequenz entsprechen, auf der die Datenübertragung läuft.

Um ein 2,4 Ghz Gerät MIMO tauglich zu bauen, benötigen die einzelnen Antennen bei 2,4 Ghz einen Mindestabstand etwas über 6cm. Die Wellenlänge(λ) errechnet sich aus der Lichtgeschwindigkeit(c) geteilt durch die Frequenz(f):

Mindestabstand c in m/s f in Hz(1/s) λ in m (λ=c/f) λ/2 in cm
Vereinfacht 300000000 2400000000 0,12500000000000 6,25000
Grenze Kanal 1 299792458 2402000000 0,12480951623647 6,24048
Grenze Kanal 13 299792458 2482000000 0,12078664705882 6,03933

Das erklärt auch, dass kleinere Handys für 2,4 Ghz kaum MIMO tauglich zu bauen sind, eher dann größere Smartphones, Phablets/Tabelets und natürlich Notebooks, die dann sogar (leider selten) mit 3x3 MIMO.

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 einen 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:

Tabelle 11, 11b, 11g, 11n

Antennen (MIMO)/Datenrate in Mbps bei 2,4Ghz
und Freifunktypischen 20Mhz Kanalbreite in 2,4Ghz
Standard 1 1x1 2x2 3x3 4x4
Modulationsverfahren Standard Modulation Bit/Code/Symbolrate Bruttodatenrate
FHSS (Frequenzspreizung) IEEE 802.11 2GFSK 1 1,0M/s 1,0
FHSS IEEE 802.11 4GFSK 2 1,0M/s 2,0
DSSS(Direct Sequence Spread Spectrum) IEEE 802.11b DBPSK 1(11Bit)1,0M/s 1,0
DSSS IEEE 802.11b DQPSK 2(11Bit)1,0M/s 2,0
DSSS IEEE 802.11b DQPSK 4(8Bit)1,4M/s 5,5
DSSS IEEE 802.11b DQPSK 8(8Bit)1,4M/s 11,0
OFDM(Orthogonales Frequenzmultiplexverfahren) IEEE 802.11g 6 - 54
GI Guard Interval (Schutzintervall) IEEE 802.11n Codierung GI 0,8µs MCS Index
HT
GI 0,8µs SGI 0,4µs MCS Index
HT
GI SGI MCS Index
HT
GI SGI MCS Index
HT
GI SGI
BPSK (Binäre Phasenumtastung) IEEE 802.11n 1/2 6,0 0 6,5 7,2 8 13,0 14,4 16 19,5 21,7 24 26,0 28,9
QPSK (Quadraturphasenumtastung) IEEE 802.11n 1/2 12,0 1 13,0 14,4 9 26,0 28,9 17 39,0 43,3 25 52,0 57,8
QPSK IEEE 802.11n 3/4 18,0 2 19,5 21,7 10 39,0 43,3 18 58,5 65,0 26 78,0 86,7
16-QAM (Quadraturamplitudenmodulation) IEEE 802.11n 1/2 24,0 3 26,0 28,9 11 52,0 57,8 19 78,0 86,7 27 104,0 115,6
16-QAM IEEE 802.11n 3/4 36,0 4 39,0 43,3 12 78,0 86,7 20 117,0 130,0 28 156,0 173,3
64-QAM IEEE 802.11n 2/3 48,0 5 52,0 57,8 13 104,0 115,6 21 156,0 173,3 29 208,0 231,1
64-QAM IEEE 802.11n 3/4 54,0 6 58,5 65,0 14 117,0 130,3 22 175,5 195,0 30 234,0 260,0
64-QAM IEEE 802.11n 5/6 7 65,0 72,0 15 130,0 144,4 23 195,0 216,7 31 260,0 288,9
Typischer Anwendungsbereich Einfachster Router
Einsteiger Endgerät
Eine Antenne
Standard Router
Standard Endgerät

Zwei Antennen
Besserer Router
Premium Endgerät

Drei Antennen
Premium Router
Vier Antennen

Grafik 11g, 11n, 11an, 11ac, 11ax

BruttoDRFF.png

Grafik 11b, 11g, 11n, 11an, 11ac, 11ax

BruttoDRFFlog.png

Die aktuelle MCS Rate der verbundenen Router erfährt man per SSH im Router mit dem Befehlen:

iw dev wifi2ap station dump; iw dev wifi5ap station dump
while true; do clear; iw dev mesh2g-80211s station dump | grep 'bitrate\|Sta\|expec' ; sleep 2;  done
while true; do clear; iw dev mesh5g-80211s station dump | grep 'bitrate\|Sta\|expec' ; sleep 2;  done

Router untereinander /\

Router zu Clients \/

iw dev wifi2ap station dump | grep 'at'
iw dev wifi5ap station dump | grep 'at' 
while true; do clear; iw dev wifi2ap  station dump | grep 'bitrate\|Sta\|expec' ; sleep 2;  done
while true; do clear; iw dev wifi5ap  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, ab Firmware 4.2.10-BETA integriert) 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 (Triple-click zur Auswahl):

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

Etwas komfortabler (Triple-click zur Auswahl)): 2,4G:

n=wifi;m=mesh;g='g-80211s';t='/tmp/tz';while true; do iw dev $n\2ap info | grep ssid>>$t; ifconfig | grep '10.200\|'$g>>$t; echo .; echo AIRTIME:>>$t; iw $m\2$g survey dump | grep "in use" -A5>>$t;  echo $m:>>$t; echo .;iw dev $m\2$g station dump | grep 'bitrate\|Sta'>>$t;echo .; echo CLIENT:>>$t;echo .; iw dev $n\2ap station dump | grep 'bitrate\|Sta'>>$t; clear; cat $t; sleep 3; rm $t; done

+Durchsatz:

n=wifi;m=mesh;g='g-80211s';t='/tmp/tz';while true; do iw dev $n\2ap info | grep ssid>>$t; ifconfig | grep 10.200>>$t; echo .; echo AIRTIME:>>$t; iw $m\2$g survey dump | grep "in use" -A5>>$t;  echo $m:>>$t; echo .;iw dev $m\2$g station dump | grep 'bitrate\|Sta\|thr'>>$t;echo .; echo CLIENT:>>$t;echo .; iw dev $n\2ap station dump | grep 'bitrate\|Sta\|thr'>>$t; clear; cat $t; sleep 3; rm $t; done


Etwas komfortabler (Triple-click zur Auswahl)): 5G:

n=wifi;m=mesh;g='g-80211s';t='/tmp/tz';while true; do iw dev $n\5ap info | grep ssid>>$t; ifconfig | grep 10.200>>$t; echo .; echo AIRTIME:>>$t; iw $m\5$g survey dump | grep "in use" -A5>>$t;  echo $m:>>$t; echo .;iw dev $m\5$g station dump | grep 'bitrate\|Sta'>>$t;echo .; echo CLIENT:>>$t;echo .; iw dev $n\5ap station dump | grep 'bitrate\|Sta'>>$t; clear; cat $t; sleep 3; rm $t; done

Es endet im kontrollierten Chaos

Soweit zur Theorie. WLAN-Geräte schalten bei Störungen oder anderen WLAN-Teilnehmern entsprechend viele Gänge zurück. 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 wann 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.

Airtime

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, dabei nutzen sie den selben Funkkanal, dürfen aber nicht gleichzeitig senden. Bei einem Router ohne direkten Anschluss müssen somit erst einmal die Daten über Funk zum Router gesendet werden, um anschließend über das eigentliche Client-WLAN ans Endgerät verteilt zu werden. In Theorie bedeutet das, dass z.B. aus theoretischen 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 das zumindest. Oft geht das aber 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.

Mögliche Geschwindigkeiten

Im Aufbau...

Hersteller Typ SoC Mhz Cores Self WireGuard fastd vLAN Mesh LAN MIMO 2,4 Ghz 5 Ghz r1 r2r r3r r4r r1 r2r r3r r4r
Gerät und Chipsatz Test iPerf3 reale Geschwindigkeit ixi:i Handy 2x2:2 ac
(Knoten selbst an BB)
Mesh 2,4Gz Mesh 5Gz
GL.iNet GT-MT6000 (Flint 2) MediaTek
MT7986A
2000 4 5800 1000 2300 4x4:4
Xiaomi AX3200 MediaTek
MT7622B
1350 2 6500 360 58 855 400 4x4:4 78 340 80 300 650
Linksys MR8300 (Dallas) Qualcomm
IPQ4019
717 4 1700 130 52 135 2x2:2 108
Ubiquiti EdgeRouter X MediaTek
MT7621AT
880 2 632 149 47 546
GL.iNet GL-MT1300 MediaTek
MT7621AT
880 2 550 147 48 560 2x2:2 50 90 80 205
Xiaomi Mi Router 4A Gigabit Edition MediaTek
MT7621AT
880 2 650 122 50 550 2x2:2 50 106 85 250
YouHua  WR1200JS MediaTek
MT7621AT
880 2 700 2x2:2 250
TP-Link RE650 v1 MediaTek
MT7621AT
880 2 650 122 45 480 1xLAN 4x4:4 50 80 65 144 200 700
ZyXEL NWA55AXE MediaTek
MT7621AT
880 2 650 125 40 850 1xLAN 2x2:2 50 80 85 205
D-Link DAP-X1860 A1 MediaTek
MT7621AT
880 2 580 135 40 700 1xLAN 2x2:2 64 92 80 230
Netgear  R6220 MediaTek
MT7621ST
880 1 600 85 40 550 2x2:2 50 55 65 200
TP-Link TL-WR1043ND v2 Qualcomm
AT9558
720 1 444 36 22 260 3x3:3 21 nv 65 100
TP-Link TL-WR941ND v6 Qualcomm
AT9343
750 1 330 nv 22 90 3x3:3 13 nv 62 70
Netgear  R6120 MediaTek
MT7628A
580 1 330 24 16 94 2x2:2 15 15 80 140
AVM FRITZ!Box 7412 intelLantiq
XWAY XRX200
500 1 440 30 15 89 1xLAN 2x2:2 13 nv 35
TP-Link WDR3600 Qualcomm
AT9344
560 1 20 2x2:2 17 17
TP-Link TL-WR841N/ND v9, Qualcomm
AT9533
550 1 325 nv 20 81 2x2:2 nv 65
TP-Link TL-WR841N/ND v8 Qualcomm
AT9341
535 1 265 nv 19 2x2:2 11 nv 55
TP-Link TL-WA801N/ND v2 Qualcomm
AT9341
535 1 280 nv 1xLAN 2x2:2 nv 54
TP-Link TL-WR1043N/ND v1 Atheros
AR9132 rev 2
400 1 300 nv 18 2x2:3 nv 45
TP-Link TL-WR740N/ND v4 Qualcomm
AT9331
400 1 290 nv 17 1x1:1 nv 48
AVM FRITZ!Box 7312 intelLantiq
XWAY ARX188
396 1 300 25 14 82 1xLAN 2x2:2 12 nv 44
Ubiquiti  NanoStation loco M2 Atheros
AT7241
390 1 290 nv 90 1xLAN 2x2:2 nv 70
  • )

iPerf3 TCP Geschwindigkeiten in Mbit/s (Interner Speddtest auf Knoten und Server)

* Self Test = zu sich selbst
* WireGuard = Wireguard-Verbindung zum Gatewayserver
* vLAN = Mesh im Kabel
* Von LAN Port zu LAN Port eines anderen Routers

Effektive Geschwindigkeit zu Endgeräten (2x2:2) ins Internet bei 2,4 Ghz und 5 Ghz Verbindung

Mesh-Geschwindigkeit zu anderen Routern, bei 1,2,3 und 4 Antennen jweile im 2,4 Ghz und 5 Ghz (iPerf3)