Warum ist das Freifunk-WLAN so langsam?: Unterschied zwischen den Versionen

Aus Freifunk Dresden - Anwender-Wiki
Zur Navigation springen Zur Suche springen
(36 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 7: Zeile 7:
 
==Ursache WLAN==
 
==Ursache WLAN==
  
In Europa sind im 2,4 GHz ISM([https://de.wikipedia.org/wiki/ISM-Band 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 [https://de.wikipedia.org/wiki/Wireless_Local_Area_Network#802.11g IEEE 802.11g] und [https://de.wikipedia.org/wiki/IEEE_802.11n 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 der Höhlung der Datenübertragungsrate gibt es die Möglichkeit einen Kanal auf 40 zu erweitern, danach gibt es praktisch nur zwei überschneidungsfreie Kanäle, das in die Kanäle 4 (1+5) und 11 (6+13), mehr zur Problematik der Kanäle findet ihr unter: [[Kanalwahl]]
+
In Europa sind im 2,4 GHz ISM([https://de.wikipedia.org/wiki/ISM-Band 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 [https://de.wikipedia.org/wiki/Wireless_Local_Area_Network#802.11g IEEE 802.11g] und [https://de.wikipedia.org/wiki/IEEE_802.11n 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===
 
===Was könnte WLAN leisten===
Zeile 15: Zeile 15:
  
 
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.
 
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 [https://de.wikipedia.org/wiki/MIMO_(Nachrichtentechnik) 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 Tablette 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 Daten benötigen.  
+
Es gibt die Möglichkeit die Übertragungsrate mit mehreren Antennen durch die [https://de.wikipedia.org/wiki/MIMO_(Nachrichtentechnik) 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):
 +
{| class="wikitable zebra toptextcells"
 +
|-
 +
!<span style="color: green">Mindestabstand</span>
 +
!c in m/s
 +
!f in Hz(1/s)
 +
!λ in m (λ=c/f)
 +
!<span style="color: green">λ/2 in cm</span>
 +
|-
 +
|Vereinfacht
 +
|300000000
 +
|2400000000
 +
|0,12500000000000
 +
|<span style="color: green">6,25000</span>
 +
|-
 +
|Grenze Kanal 1
 +
|299792458
 +
|2402000000
 +
|0,12480951623647
 +
|<span style="color: green">6,24048</span>
 +
|-
 +
|Grenze Kanal 13
 +
|299792458
 +
|2482000000
 +
|0,12078664705882
 +
|<span style="color: green">6,03933</span>
 +
|-
 +
|}
 +
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===
 
===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.
 
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, das resultiert wiederum in fallenden Übertragungsraten, wie folgende Tabelle veranschaulicht:
+
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:
  
{| class="wikitable aalgin right zebra toptextcells"
+
{| class="wikitable" style="text-align: right;"
! Antennen (MIMO)/Datenrate in Mbps
+
! colspan="1" | Antennen (MIMO)/Datenrate in Mbps
!  
+
! Standard
! 1x1
+
! colspan="3" | 1
! 1x1
+
! colspan="3" | <span style="color:green">1x1</span>
! 2x2
+
! colspan="3" | <span style="color:green">2x2</span>
! 2x2
+
! colspan="3" | <span style="color:green">3x3</span>
! 3x3
 
! 3x3
 
 
|-  
 
|-  
| [https://de.wikipedia.org/wiki/Modulation_(Technik) Modulationsverfahren]
+
| style="text-align:left;" | [https://de.wikipedia.org/wiki/Modulation_(Technik) Modulationsverfahren]
 +
| Standard
 +
| Modulation
 +
| Bit/Code/Symbolrate
 +
| colspan="11" style="text-align:center" | '''Bruttodatenrate'''
 +
|-
 +
| style="text-align:left;" | FHSS ([https://de.wikipedia.org/wiki/Frequenzspreizung Frequenzspreizung])
 +
| style="text-align:left" | <span style="color: brown">'''IEEE 802.11'''</span>
 +
| colspan="1" | 2GFSK
 +
| 1 1,0M/s
 +
| <span style="color: brown">'''1,0'''</span>
 +
| colspan="9" |
 +
|-
 +
| style="text-align:left;" | FHSS
 +
| style="text-align:left" | <span style="color:lightgrey">IEEE 802.11</span>
 +
| 4GFSK
 +
| 2 1,0M/s
 +
| <span style="color: brown">'''2,0'''</span>
 +
| colspan="9" |
 +
|-
 +
| style="text-align:left;" | DSSS([https://de.wikipedia.org/wiki/Direct_Sequence_Spread_Spectrum Direct Sequence Spread Spectrum])
 +
| colspan="1" style="text-align:left" | <span style="color: red">'''IEEE 802.11b'''</span>
 +
| DBPSK
 +
| 1(11Bit)1,0M/s
 +
| <span style="color: red">'''1,0'''</span>
 +
| colspan="9" | 
 +
|-
 +
| style="text-align:left;" | DSSS
 +
| colspan="1" style="text-align:left" | <span style="color:lightgrey">IEEE 802.11b</span>
 +
| DQPSK
 +
| 2(11Bit)1,0M/s
 +
| <span style="color: red">'''2,0'''</span>
 +
| colspan="9" |
 +
|-
 +
| style="text-align:left;" | DSSS
 +
| colspan="1" style="text-align:left" | <span style="color:lightgrey">IEEE 802.11b</span>
 +
| DQPSK
 +
| 4(8Bit)1,4M/s
 +
| <span style="color: red">'''5,5'''</span>
 +
| colspan="9" | 
 +
|-
 +
|-
 +
| style="text-align:left;" | DSSS
 +
| colspan="1" style="text-align:left" | <span style="color:lightgrey">IEEE 802.11b
 +
| DQPSK
 +
| 8(8Bit)1,4M/s
 +
| <span style="color: red">'''11,0'''</span>
 +
| colspan="9" | 
 +
|-
 +
| style="text-align:left;" | OFDM([https://de.wikipedia.org/wiki/Orthogonales_Frequenzmultiplexverfahren Orthogonales Frequenzmultiplexverfahren])
 +
| colspan="1" style="text-align:left" | <span style="color: blue">'''IEEE 802.11g'''</span>
 +
| colspan="3" | <span style="color: blue">'''6 - 54'''</span>
 +
| colspan="9" | 
 +
|-
 +
| style="text-align:left;" | GI [https://en.wikipedia.org/wiki/Guard_interval Guard Interval] ([https://de.wikipedia.org/wiki/Guard_Interval Schutzintervall])
 +
| colspan="1" style="text-align:left" | <span style="color:green">'''IEEE 802.11n'''</span>
 +
|
 
| Codierung
 
| Codierung
 +
| <span style="color: blue">'''GI 0,8µs'''</span>
 +
| [http://mcsindex.com/ MCS Index]
 +
| [https://en.wikipedia.org/wiki/Guard_interval#802.11_guard_interval GI 0,8µs]
 +
| [https://en.wikipedia.org/wiki/Guard_interval#802.11_guard_interval SGI 0,4µs]
 
| MCS Index
 
| MCS Index
| Bruttodatenrate
+
| GI
 +
| SGI
 
| MCS Index
 
| MCS Index
| Bruttodatenrate
+
| GI
| MCS Index
+
| SGI
| Bruttodatenrate
+
 
 
|-  
 
|-  
| BPSK ([https://de.wikipedia.org/wiki/Phasenumtastung Binäre Phasenumtastung])
+
| style="text-align:left;" | BPSK ([https://de.wikipedia.org/wiki/Phasenumtastung Binäre Phasenumtastung])
| 1/2
+
| colspan="1" style="text-align:left" | <span style="color:lightgrey">'''IEEE 802.11n'''</span>
| 0
+
|
| 6.5
+
| style="text-align:center;" |1/2
| 8
+
| <span style="color: blue">'''6,0'''</span>
| 14.4
+
| style="text-align:center;" |0
| 16
+
| <span style="color:green">'''6,5'''</span>
| 21.7
+
| <span style="color:green">'''7,2'''</span>
 +
| style="text-align:center;" |8
 +
| <span style="color:green">'''13,0'''</span>
 +
| <span style="color:green">'''14,4'''</span>
 +
| style="text-align:center;" |16
 +
| <span style="color:green">'''19,5'''</span>
 +
| <span style="color:green">'''21,7'''</span>
 
|-
 
|-
| QPSK ([https://de.wikipedia.org/wiki/Quadraturphasenumtastung Quadraturphasenumtastung])
+
| style="text-align:left;" | QPSK ([https://de.wikipedia.org/wiki/Quadraturphasenumtastung Quadraturphasenumtastung])
| 1/2
+
| colspan="1" style="text-align:left" | <span style="color:lightgrey">'''IEEE 802.11n'''</span>
| 1
+
|
| 13
+
| style="text-align:center;" |1/2
| 9
+
| <span style="color: blue">'''12,0'''</span>
| 26
+
| style="text-align:center;" |1
| 17
+
| <span style="color:green">'''13,0'''</span>
| 39
+
| <span style="color:green">'''14,4'''</span>
 +
| style="text-align:center;" |9
 +
| <span style="color:green">'''26,0'''</span>
 +
| <span style="color:green">'''28,9'''</span>
 +
| style="text-align:center;" |17
 +
| <span style="color:green">'''39,0'''</span>
 +
| <span style="color:green">'''43,3'''</span>
 
|-
 
|-
| QPSK
+
| style="text-align:left;" | QPSK
| 3/4
+
| colspan="1" style="text-align:left" | <span style="color:lightgrey">'''IEEE 802.11n'''</span>
| 2
+
|
| 19.5
+
| style="text-align:center;" |3/4
| 10
+
| <span style="color: blue">'''18,0'''</span>
| 39
+
| style="text-align:center;" |2
| 18
+
| <span style="color:green">'''19,5'''</span>
| 58.5
+
| <span style="color:green">'''21,7'''</span>
 +
| style="text-align:center;" |10
 +
| <span style="color:green">'''39,0'''</span>
 +
| <span style="color:green">'''43,3'''</span>
 +
| style="text-align:center;" |18
 +
| <span style="color:green">'''58,5'''</span>
 +
| <span style="color:green">'''65,0'''</span>
 
|-
 
|-
| 16-QAM ([https://de.wikipedia.org/wiki/Quadraturamplitudenmodulation Quadraturamplitudenmodulation])
+
| style="text-align:left;" | 16-QAM ([https://de.wikipedia.org/wiki/Quadraturamplitudenmodulation Quadraturamplitudenmodulation])
| 1/2
+
| colspan="1" style="text-align:left" | <span style="color:lightgrey">'''IEEE 802.11n'''</span>
| 3
+
|
| 26
+
| style="text-align:center;" |1/2
| 11
+
| <span style="color: blue">'''24,0'''</span>
| 52
+
| style="text-align:center;" |3
| 19
+
| <span style="color:green">'''26,0'''</span>
| 78
+
| <span style="color:green">'''28,9'''</span>
 +
| style="text-align:center;" |11
 +
| <span style="color:green">'''52,0'''</span>
 +
| <span style="color:green">'''57,8'''</span>
 +
| style="text-align:center;" |19
 +
| <span style="color:green">'''78,0'''</span>
 +
| <span style="color:green">'''86,7'''</span>
 
|-
 
|-
| 16-QAM
+
| style="text-align:left;" |16-QAM
| 3/4
+
| colspan="1" style="text-align:left" | <span style="color:lightgrey">'''IEEE 802.11n'''</span>
| 4
+
|
| 39
+
| style="text-align:center;" |3/4
| 12
+
| <span style="color: blue">'''36,0'''</span>
| 78
+
| style="text-align:center;" |4
| 20
+
| <span style="color:green">'''39,0'''</span>
| 117
+
| <span style="color:green">'''43,3'''</span>
 +
| style="text-align:center;" |12
 +
| <span style="color:green">'''78,0'''</span>
 +
| <span style="color:green">'''86,7'''</span>
 +
| style="text-align:center;" |20
 +
| <span style="color:green">'''117,0'''</span>
 +
| <span style="color:green">'''130,0'''</span>
 
|-
 
|-
| 64-QAM
+
| style="text-align:left;" | 64-QAM
| 2/3
+
| colspan="1" style="text-align:left" | <span style="color:lightgrey">'''IEEE 802.11n'''</span>
| 5
+
|
| 52
+
| style="text-align:center;" |2/3
| 13
+
| <span style="color: blue">'''48,0'''</span>
| 104
+
| style="text-align:center;" |5
| 21
+
| <span style="color:green">'''52,0'''</span>
| 156
+
| <span style="color:green">'''57,8'''</span>
 +
| style="text-align:center;" |13
 +
| <span style="color:green">'''104,0'''</span>
 +
| <span style="color:green">'''115,6'''</span>
 +
| style="text-align:center;" |21
 +
| <span style="color:green">'''156,0'''</span>
 +
| <span style="color:green">'''173,3'''</span>
 
|-
 
|-
| 64-QAM
+
| style="text-align:left;" | 64-QAM
| 3/4
+
| colspan="1" style="text-align:left" | <span style="color:lightgrey">'''IEEE 802.11n'''</span>
| 6
+
|
| 58.5
+
| style="text-align:center;" |3/4
| 14
+
| <span style="color: blue">'''54,0'''</span>
| 117
+
| style="text-align:center;" |6
| 22
+
| <span style="color:green">'''58,5'''</span>
| 175.5
+
| <span style="color:green">'''65,0'''</span>
 +
| style="text-align:center;" |14
 +
| <span style="color:green">'''117,0'''</span>
 +
| <span style="color:green">'''130,3'''</span>
 +
| style="text-align:center;" |22
 +
| <span style="color:green">'''175,5'''</span>
 +
| <span style="color:green">'''195,0'''</span>
 
|-
 
|-
| 64-QAM
+
| style="text-align:left;" |64-QAM
| 5/6
+
| colspan="1" style="text-align:left" | <span style="color:lightgrey">'''IEEE 802.11n'''</span>
| 7
+
|
| 65
+
| style="text-align:center;" |5/6
| 15
+
|
| 130
+
| style="text-align:center;" |7
| 23
+
| <span style="color:green">'''65,0'''</span>
| 195
+
| <span style="color:green">'''72,0'''</span>
 +
| style="text-align:center;" |15
 +
| <span style="color:green">'''130,0'''</span>
 +
| <span style="color:green">'''144,4'''</span>
 +
| style="text-align:center;" |23
 +
| <span style="color:green">'''195,0'''</span>
 +
| <span style="color:green">'''216,7'''</span>
 
|}
 
|}
 +
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, ab Firmware 2.4.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)):
 +
n=wlan0;while true; do iw dev $n-1 info | grep ssid>>/tmp/tz; ifconfig | grep 10.200>>/tmp/tz; echo .; ifconfig | grep $n>>/tmp/tz;echo .; cat /etc/config/ddmesh | grep 'n node'>>/tmp/tz; echo .; echo AIRTIME:>>/tmp/tz; iw $n survey dump | grep "in use" -A5>>/tmp/tz;  echo MESH:>>/tmp/tz; echo .;iw dev $n station dump | grep 'bitrate\|Sta'>>/tmp/tz;echo .; echo CLIENT:>>/tmp/tz;echo .; iw dev $n-1 station dump | grep 'bitrate\|Sta'>>/tmp/tz; clear; cat /tmp/tz; sleep 3; rm /tmp/tz; 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 [http://www.elektronik-kompendium.de/sites/net/1712071.htm Elektronik Kompendium].
 +
 +
[[Datei:Airtime.png|miniatur|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.

Version vom 21. November 2020, 16:30 Uhr


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:

Antennen (MIMO)/Datenrate in Mbps Standard 1 1x1 2x2 3x3
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 GI 0,8µs SGI 0,4µs MCS Index GI SGI MCS Index 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
QPSK (Quadraturphasenumtastung) IEEE 802.11n 1/2 12,0 1 13,0 14,4 9 26,0 28,9 17 39,0 43,3
QPSK IEEE 802.11n 3/4 18,0 2 19,5 21,7 10 39,0 43,3 18 58,5 65,0
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
16-QAM IEEE 802.11n 3/4 36,0 4 39,0 43,3 12 78,0 86,7 20 117,0 130,0
64-QAM IEEE 802.11n 2/3 48,0 5 52,0 57,8 13 104,0 115,6 21 156,0 173,3
64-QAM IEEE 802.11n 3/4 54,0 6 58,5 65,0 14 117,0 130,3 22 175,5 195,0
64-QAM IEEE 802.11n 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, ab Firmware 2.4.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)):

n=wlan0;while true; do iw dev $n-1 info | grep ssid>>/tmp/tz; ifconfig | grep 10.200>>/tmp/tz; echo .; ifconfig | grep $n>>/tmp/tz;echo .; cat /etc/config/ddmesh | grep 'n node'>>/tmp/tz; echo .; echo AIRTIME:>>/tmp/tz; iw $n survey dump | grep "in use" -A5>>/tmp/tz;  echo MESH:>>/tmp/tz; echo .;iw dev $n station dump | grep 'bitrate\|Sta'>>/tmp/tz;echo .; echo CLIENT:>>/tmp/tz;echo .; iw dev $n-1 station dump | grep 'bitrate\|Sta'>>/tmp/tz; clear; cat /tmp/tz; sleep 3; rm /tmp/tz; 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.