Hallo zusammen,
ich wühle mich schon seit Tagen durch diverse Foren, auf der Suche nach der Lösung eines Problems, welches wohl recht häufig vorkommt, aber nirgendwo richtig gelöst wird.
An einem Raspberry Pi B+ wird ein LogiLink WL0150 mit dem Ralink RT5372-Chipsatz und dem Standardtreiber (rt2800usb) mit hostapd (aus dem Repository, Version 1.0) und dnsmasq im AP-Mode verwendet. Das funktioniert soweit auch ganz gut. Allerdings: Der Durchsatz liegt deutlich unter den zu erwartenden Wert. Der WL0150 soll mit 40Mhz Kanalbreite 300mb/s schaffen. Das Gegenstück, ein Notebook mit mit Intel N130-Adapter, begrenzt die ganze Sache dann auf 150 mb/s. Da hostapd eine Konfiguration mit 40Mhz Bandbreite wegen diverser Netzwerke in Reichweite verweigert, sind die beiden Geräte nun effektiv mit 72.5 mb/s verbunden. So weit, so gut.
Der Nettodurchsatz beträgt aber bestenfalls 20 mb/s / 2.3 MB/s, wobei es keinen Unterschied macht, ob hostapd im g- oder n-Modus (ieee80211n=1 + wmm_enabled=1) läuft, oder Traffic durchleitet (eth0 > wlan0), per FTP von der SD-Karte (sd > wlan0) oder aus der RAM-Disk (ramfs > wlan0) liest. In einigen Threads war zu lesen, dass die CPU des Raspberry (momentan im Modus "medium" übertaktet) schlapp macht. top zeigt bei 2.3 MB/s Durchsatz aber zumindest noch 30% im idle an, wobei top aber einen load average von > 1 zeigt.
Naheliegend wäre, dass der Flaschenhals beim USB-Controller liegt. Die Kombination aus einem per USB angebundenen WLAN-Stick und dem ebenfalls über USB angebundenen Ethernetcontroller des RPi ist sicher nicht optimal, aber zumindest 5MB/s sollten doch drin sein, oder? Selbst wenn man von einer USB-Nettodatenrate von 240 mb/s (was der Hälfte der Bruttodatenrate entspricht) ausgeht und berücksichtigt, dass Ethernetcontroller und alle USB-Geräte diese Bandbreite teilen müssen, liegen die erreichten 20 mb/s noch meilenweit entfernt.
Der Inhalt meiner hostapd.conf:
#####################################
# Globale Einstellungen #
#####################################
# Schnittstelle und Treiber
interface=wlan0
driver=nl80211
bssid=XX:XX:XX:XX:XX:X0
# Modus
hw_mode=g
ieee80211n=1
wmm_enabled=1
# Kanal
channel=9
# Optionale Einstellung: Unterstuetzte Uebertragungsraten
# supported_rates=10 20 55 110 60 90 120 180 240 360 480 540
# Laendereinstellungen
country_code=DE
ieee80211d=1
# hostapd Log Einstellungen
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
# temporäre Konfigurationsdateien
dump_file=/tmp/hostapd.dump
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
#################################################################
# Konfiguration fuer WLAN 1 #
#################################################################
# WLAN-Konfiguration
ssid=wlan_1
wpa_passphrase=XXX
# ESSID sichtbar
ignore_broadcast_ssid=0
# Uebertragungsmodus / Bandbreite 40MHz / siehe iw list
ht_capab=[HT40-][HT40+][SHORT-GI-20][SHORT-GI-40][RX-STBC12][TX-STBC]
#[DSSS_CCK-40]
# Beacons
beacon_int=15
dtim_period=2
# MAC-Authentifizierung
macaddr_acl=0
# max. Anzahl der Clients
max_num_sta=20
# Groesse der Datenpakete/Begrenzung
rts_threshold=2347
fragm_threshold=2346
# hostapd Log Einstellungen
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
# Authentifizierungsoptionen
auth_algs=3
# Verschlüsselung / hier rein WPA2
wpa=2
rsn_preauth=1
rsn_preauth_interfaces=wlan0
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
# Schluesselintervalle / Standardkonfiguration
wpa_group_rekey=600
wpa_ptk_rekey=600
wpa_gmk_rekey=86400
#########################################################
# Konfiguration fuer WLAN 2 #
#########################################################
bss=wlan0_0
ssid=wlan_2
# Verschlüsselung / hier rein WPA2
wpa=2
rsn_preauth=1
rsn_preauth_interfaces=wlan0
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
# Schluesselintervalle / Standardkonfiguration
wpa_group_rekey=600
wpa_ptk_rekey=600
wpa_gmk_rekey=86400
# Zugangsschlüssel (PSK) / hier in Klartext (ASCII)
wpa_passphrase=XX
Alles anzeigen
Die Konfiguration der Interfaces:
auto lo
iface lo inet loopback
#########################################################
# Interface ppp0: Internetanbindung/ Modem #
#########################################################
#iface eth0 inet dhcp
iface eth0 inet static
address 192.168.0.111
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
dns-nameservers 192.168.0.1
#########################################################
# Interface eth1: Anbindung der DECT-Basis #
#########################################################
iface eth1 inet static
address 10.0.0.1
netmask 255.255.255.0
broadcast 10.0.0.255
#################################################################
# Interface wlan0_*: Anbindung der WLAN-Stationen #
#################################################################
auto wlan0
allow-hotplug wlan0
iface wlan0 inet static
wireless-power off
hostapd /etc/hostapd/hostapd.conf
address 10.0.1.1
netmask 255.255.255.0
broadcast 10.0.1.255
pre-up ifconfig wlan0 hw ether XX:XX:XX:XX:XX:XX
allow-hotplug wlan0_0
iface wlan0_0 inet static
address 10.0.2.1
netmask 255.255.255.0
broadcast 10.0.2.255
Alles anzeigen
Hat einer eine Idee, woran es liegen könnte? Treiber, Hardware, Software?