AA_PO-3802.jpg

© Zastavkin, Fotolia

Ressourcenwächter

Bandbreitenkontrolle mit Wondershaper

29.09.2009
Bandbreitenregulierung hilft, Flaschenhälse im Netz zu umgehen. Wondershaper erschließt die sehr komplizierte Technik dahinter auch dem Normalanwender.

Verwenden mehrere Nutzer einen Internetanschluss gemeinsam, dann passiert es schnell, dass große Uploads die Geschwindigkeit der Downloads anderer Teilnehmer massiv beeinträchtigen. Lädt beispielsweise ein Kollege die komplette Sammlung seiner letzten Urlaubsbilder hoch oder betreibt einen Peer-to-Peer-Client wie Edonkey oder Bittorrent, wird das Surfen für die restlichen Nutzer des Zugangs schnell zur Qual. Mit dem Wondershaper formen Sie den Netzwerkverkehr so, dass stets genügend Bandbreite für alle übrig bleibt.

Hinter den Kulissen

Hierzulande verwenden die meisten Nutzer ADSL, dessen Upload-Datenrate im Schnitt um das zehn- bis zwanzigfache unter jener der Downloads liegt. Im Normalfall stellt das kein Problem dar, denn die meisten Anwender laden deutlich größere Datenmengen herunter als hoch. Ist der Upload jedoch einmal für längere Zeit vollständig ausgelastet, bricht auch der Download ein.

Der Grund dafür liegt in der Arbeitsweise des Transmission Control Protocols (TCP). Es verlangt vom Empfänger eines Datenpaketes den Versand einer Bestätigung über das intakte Eintreffen. Erst danach schickt der Versender das nächste Datenpaket los. Ist nun der eigene Upload ausgelastet, stellt sich dieses so genannte SYN/ACK-Paket hinten in der Warteschlange der zum Versand anstehenden Datenpakete an. Dadurch unterbleiben weitere Transfers von Datenpaketen vom Sender so lange, bis das SYN/ACK-Paket verschickt und vom Sender empfangen wurde.

Traffic Shaping [1] erlaubt das Eingreifen in die Reihenfolge der zu versendenden Datenpakete. Die meisten Linux-Distributionen bringen die Voraussetzungen dafür mit dem Userspace-Programm namens tc (kurz für "Traffic Control") von Haus aus mit. Die Komplexität von Tc erfordert es aber, ein komplettes Skript schreiben, das den Netzwerkverkehr in Klassen einteilt und diese individuell priorisiert. Hier kommt Wondershaper [2] ins Spiel, das den Aufwand dabei deutlich reduziert.

Das Skript teilt den ausgehenden Netzwerkverkehr in Klassen ein und bevorzugt Datenpakete von interaktiven Anwendungen, wie VoIP oder Internet-TV. Das vermeidet Verzögerungen in der Übertragung, die der Benutzer durch Sprachaussetzer oder Bildstörungen bemerken würde. Andere Pakete, deren Zustellung warten kann – etwa Datentransfers via FTP – stellt Wondershaper bei ausgelasteter Datenleitung hinten an. Diese Technik nennt sich im Jargon der Netzwerktechniker "Quality of Service" oder kurz QoS.

Traffic Shaping

Traffic-Shaping eignet sich vornehmlich für den Einsatz auf Routern, da nur diese in der Lage sind, die Upload-Bandbreite zu regeln. Entweder Sie verwenden einen Router Marke Eigenbau – beispielsweise einen alten Rechner mit IPCop [3] – oder ein Gerät wie den Linksys WRT54GL [4] mit den alternativen Firmware-Systemen OpenWrt [5] oder DD-WRT [6]. Um Wondershaper zu nutzen, laden Sie das Paket von der Heft-DVD oder der Projektseite herunter und entpacken es. Da es sich lediglich um ein Skript handelt, ist eine Installation nicht notwendig.

Bevor Sie damit beginnen, das eigene Netzwerk in Form zu bringen, ermitteln Sie zunächst die Ping-Reaktionszeiten, um zu prüfen, ob die Einstellungen von Wondershaper greifen. Da der Test nur unter Vollast des Uploads brauchbare Informationen liefert, laden Sie beispielsweise eine große Datei auf einen eigenen Webspace hoch oder versenden eine Mail mit großem Anhang. Senden Sie währenddessen einen Ping zu Ihrem Gateway und sehen Sie sich die Reaktionszeiten an (Listing 1, unten). Die IP-Adresse des Gateways sowie die verwendete Netzwerkschnittstelle ins Internet ermittelt Sie das Kommando route -n (Listing 1, oben).

Listing 1
$ route -n
Kernel-IP-Routentabelle
Ziel         Router   Genmask         Flags […] Iface
88.66.0.1    0.0.0.0  255.255.255.255 UH    […] ppp0
192.168.0.0  0.0.0.0  255.255.255.0   U     […] eth0
169.254.0.0  0.0.0.0  255.255.0.0     U     […] eth0
0.0.0.0      0.0.0.0  0.0.0.0         U     […] ppp0
$ ping 88.66.0.1
PING 88.66.0.1 (88.66.0.1) 56(84) bytes of data.
64 bytes from 88.66.0.1: icmp_seq=1 ttl=255 time=594 ms
[…]

Während bei freier Leitung Reaktionszeiten von 10 Millisekunden üblich sind, steigen sie bei ausgelastetem Upload im Beispiel auf über 500. Webseiten laden entsprechend langsamer, Internet-Telefonie ist nicht mehr möglich. Aktivieren Sie danach Wondershaper, beachten Sie dabei aber, das richtige Netzwerkgerät (ppp0, eth0,…) zu verwenden. In diesem Fall wäre es ppp0. Generell starten Sie das Skript mit dem Aufruf

$ sudo wondershaper Interface Download-Rate Upload-Rate

Die Transferraten geben Sie in kbit/s an, also beispielsweise wondershaper ppp0 15000 900 für eine 16-Mbit/s-Anbindung. Verfügen Sie über eine 2-Mbit/s-Anbindung, geben Sie für den Download 2000 an. Sie sollten immer ein paar Prozent vom theoretisch maximalen Wert abziehen – das selbe gilt für die Upload-Bandbreite. Anschließend schicken Sie weitere Pings ab. Verbessern sich die Ping-Zeiten nicht, dann senken Sie den Upload-Wert langsam weiter ab, bis Sie akzeptable Reaktionszeiten erhalten. Im Testaufbau griffen die Einstellungen bei 15000 kbit/s Download- und 600 kbit/s Upload-Bandbreite (Listing 2). Mit diesen Einstellungen war dann auch Surfen trotz Auslastung des Uploads problemlos möglich.

Listing 2
$ sudo wondershaper ppp0 15000 900
$ ping 88.66.0.1
PING 88.66.0.1 (88.66.0.1) 56(84) bytes of data.
64 bytes from 88.66.0.1: icmp_seq=2 ttl=255 time=520 ms
[…]
$ sudo wondershaper ppp0 15000 600
$ ping 88.66.0.1
PING 88.66.0.1 (88.66.0.1) 56(84) bytes of data.
64 bytes from 88.66.0.1: icmp_seq=1 ttl=255 time=7.25 ms
[…]

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Downloads beschleunigen mit Trickle
    Verstopfen zu viele Downloads die eigene Internet-Leitung, sollte man den eigenen Netzwerkverkehr besser regeln. Der Linux-Kernel bietet dafür einige Wege, doch die sind verschlungen. Einfacher geht's mit Trickle.
  • Cebit 2010: Strato bietet Online-Festplatte mit freien Protokollen
    Die Berliner Webhosting-Firma Strato streicht "Web" aus ihrer Branchenbezeichnung und will so den Weg für Anwendungen frei machen, die ohne Webbroser auskommen.
  • Neue Cherokee-Version mit Traffic Shaping
    Der freie Webserver Cherokee behauptet, der schnellste seiner Art zu sein. Das Projekt hat jetzt Version 0.99 veröffentlicht.
  • Volks-Firewall
    Angesichts der massiven Bedrohungen führt heute kein Weg mehr an Internet-Gateways vorbei. IPCop bietet dafür eine ebenso kostengünstige wie flexible Lösung an.
  • No Limits
    Vielen gilt ein Breitband-Zugang per DSL oder Kabelmodem als Selbstverständlichkeit. Doch dank neuer Mobilfunktechniken lassen sich auch ohne Kabelanschluss Downloadraten über 200 KByte/s erreichen.
Kommentare

Infos zur Publikation

LU 01/2015: E-Books im Griff

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

ICEauthority
Thomas Mann, 17.12.2014 14:49, 2 Antworten
Fehlermeldung beim Start von Linux Mint: Could not update ICEauthority file / home/user/.ICEauth...
Linux einrichten
Sigrid Bölke, 10.12.2014 10:46, 5 Antworten
Hallo, liebe Community, bin hier ganz neu,also entschuldigt,wenn ich hier falsch bin. Mein Prob...
Externe USB-Festplatte mit Ext4 formatiert, USB-Stick wird nicht mehr eingebunden
Wimpy *, 02.12.2014 16:31, 0 Antworten
Hallo, ich habe die externe USB-FP, die nur für Daten-Backup benutzt wird, mit dem YaST-Partition...
Steuern mit Linux
Siegfried Markner, 01.12.2014 11:56, 2 Antworten
Welches Linux eignet sich am besten für Steuerungen.
Nach Ubdates alles weg ...
Maria Hänel, 15.11.2014 17:23, 5 Antworten
Ich brauche dringen eure Hilfe . Ich habe am wochenende ein paar Ubdates durch mein Notebook von...