Open Source im professionellen Einsatz

Newsletter abonnieren
Seite durchsuchen

HEFTARCHIV | NEWS | E-BIBLIOTHEK | VIDEO | BLOGS | WHITEPAPER | EVENTS | ACADEMY | ABO | SHOP

user friendly

  Home  »  Heft & Abo  »  Heftarchiv  »  2009  »  09  »  Vorfahrtsregler  

RSS-Feed der aktuellen News von Linux-Magazin Online Folgen Sie Linux-Magazin Online auf Twitter
Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark

© haitaucher39, Fotolia.com

Neues beim Traffic Shaping

Vorfahrtsregler

von Johann Glas
Erschienen im Linux-Magazin 2009/09

Die gebuchte Bandbreite nach draußen mag noch so groß sein: Wenn große Downloads laufen und mehrere Leute Videos schauen, bleiben interaktive Sessions und VoIP-Telefonate auf der Strecke. Ein Freund und Helfer muss den Datenverkehr regeln: Traffic Shaping.

Traffic Shaping als Teil des QoS (Quality of Service, auf deutsch: Dienstgüte) eilt nicht der beste Ruf voraus: Als vor Jahren Peer-to-Peer-Tauschbörsen ihren ersten Boom erlebten, stießen die Internetprovider schnell an die Grenzen der Leitungskapazitäten. Also drosselten sie mit Traffic Shaping die Übertragungsrate für einzelne Dienste künstlich, sodass für Dateitauscher auch der schnellste DSL-Anschluss unnütz wurde. Die Provider waren einstweilen glücklich, ihre Kunden aber hatten sich natürlich unter "Dienstgüte" etwas anderes vorgestellt.

Dabei ist Traffic Shaping eine gute Sache (wenn man es selbst betreibt). Andernfalls blockieren Downloads fast die ganze Bandbreite, während in der Shell die Buchstaben einzeln durchs Kabel tropfen. Traffic Shaping bremst die Bandbreiten-Brummis dezent aus und überlässt interaktiven Verbindungen die Überholspur. Mit gleicher Technik begrenzen Unternehmen die Kosten ihrer Online-Anbindung, verbannen Filesharer auf den Verzögerungsstreifen und lassen VoIP-Telefone nicht verstummen.

Traffic Shaping mit Linux verwaltet den zu steuernden Datenstrom per QDisc (Queuing Discipline). Dabei handelt es um mehr oder weniger komplex aufgebaute Fifo-Pipes für den Empfang und Versand der Datenpakete (siehe Abbildung 1). Linux\' Standard-Qdisc heißt »pfifo_fast« und besteht aus einer Pipe, die sich aus drei verschiedenen "Bands" zusammensetzt. Der Kernel verleiht Band 0 die höchste Priorität und arbeitete ihre Pakete zuerst ab. Band 2 besitzt die niedrigste Priorität.


Abbildung 1: Eine QDisc besteht im Wesentlichen aus den »enqueue()«- und »de-queue()«-Funktionen. Trifft ein Layer-3-Paket ein, hängt »dev_queue_xmit()« es in eine Warteschlange und startet mit »qdisc_run()« die Übertragung.

Ein Algorithmus betrachtet nun jedes einlaufende Datenpaket einzeln, klassifiziert es nach Herkunft und Aufgabe und steckt es dann in eine zu ihm passende Warteschlange.

Die Zuweisung erfolgt dabei über das Type of Service Flag (TOS) der Datenpakete. Das Gesamtsetup verteilt so die Bandbreite gerecht und verhindert, dass Vielkommunizierer die Netzwerkübergänge blockieren.

In die Röhren schauen

Bei den QDiscs, die der Admin konfiguriert, hat er die Wahl zwischen Classless und Classful QDiscs. Letztere werden manchmal auch als Inner QDisc oder als Sub-qdisc bezeichnet. Die Manipulationsvarianten bei den klassenlosen sind beschränkt: Das Token Bucket Filter (TBF) beispielweise kann Übertragungsraten zuweisen, scheitert es bei der Prioritätenvergabe. Dagegen glänzt das Stochastic Fair Queuing (SFQ) zwar mit Prioritäten, kennt aber keine Transferraten. Die Vorteile beider liegen in der einfachen Konfiguration.

Mit den Classful QDiscs dagegen lassen sich über eine Wurzel-QDisc Hierarchien aufbauen und durch so genannte Classes für jeden Dienst innerhalb der Hierarchie eine Übertragungsrate und/oder eine Priorität zuweisen (siehe Abbildung 2). Die beiden wichtigsten Classful-Vertreter sind Prio und Htb. Schon die Bordmittel (IPtables und TC, siehe unten) erlauben hier eine große Flexibilität.


Abbildung 2: Mit den Classful QDiscs lassen sich über eine Wurzel-QDisc Hierarchien aufbauen. Die Klassenhierarchie endet in jedem Zweig bei einer QDisc. Klassen können selbst keine Pakete verarbeiten, daher brauchen sie die QDisc.

Eine Handvoll Implementationen

Das klassische Werkzeug, um QDiscs aller Art zu erzeugen, ist TC (Traffic Control) aus dem IProute2-Paket [1], das fast alle Distributionen mitbringen (siehe ausführlichen Arikel [2]). Da die »tc«-Kommandos reichlich kompliziert zu handhaben sind, übersetzen Tools wie TCng diese in eine verständliche Konfigurationssprache [3],[4]. Noch cleverer stellt sich Trickle [5] an: Statt sich mit den Schwierigkeiten des Netzwerkbetriebs im Kernel aufzuhalten, schiebt es sich zwischen Applikation und Glibc. Dank Preloading klappt das sehr einfach und kommt ohne Root-Rechte aus [6].

Im Gegensatz zu TC bieten neuere Lösungen wesentlich mehr als das passive Zuteilen von Ressourcen. Das ist schon daran erkennbar, dass es für manche mehrere Frontends gibt, um die gesammelten Daten als textbasierte Tabelle oder als Grafik auszugeben.

Sie können diesen Artikel als PDF für 99 Cent kaufen. Klicken Sie dazu einfach auf eine der beiden Bezahloptionen Paypal oder ClickandBuy.


Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark
Ähnliche Artikel
Nachzügler aus Redmond Windows Server 2008 mit Linux-Features
Vordrängler Queueing Disciplines: Traffic Control mit Linux
Transportwesen LPIC-1-Vorbereitung - Teil 15: Grundlagen von TCP/IP
Verkehrsplanung Traffic Engineering und Bandbreitenmanagement: Grundlagen und Produkte
Tooltipps Werkzeuge im Kurztest
Bunte Vielfalt Die Firewall Cyberoam authentifiziert Benutzer und überwacht das Messaging
Whitepaper
Daten Migration - Eine Publikation von Bloor Research

Datenmigrationsprojekte überschreiten häufig das Budget, neigen zu Verzögerung und werden unter Umständen komplett abgebrochen. Bloor Research ist eines der weltweit führenden IT-Forschungs-, Analyse- und Beratungsunternehmen und wird in dem vorliegenden White Paper die wichtigsten Aspekte dieser Problematik näher beleuchten. Ferner werden praktische Empfehlungen für erfolgreiche Migrationsprojekte gegeben, die Sie auf Ihr nächstes Projekt übertragen können.

Download PDF (Registrierung erforderlich)
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele

Über die letzten Jahre hinweg haben sich Open Source Lösungen als fester Bestandteil des gesamten Datenintegrationsmarktes etabliert. Viele Unternehmen haben bereits das Open Source Modell für Ihre Datenintegrationsprojekte aufgegriffen. Das vorliegende White Paper illustriert anhand ausgewählter Fallstudien und Anwendungsbeispiele die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.

Download PDF (Registrierung erforderlich)
Kommentare (0)