Traffic-Shaping mit Linux

Die erste Warteschlange

Ist die Installation von tcng erfolgreich abgeschlossen, können Sie für einen ersten Test gleich eine einfache Warteschlange einrichten. Legen Sie dazu mit einem Texteditor die Datei example.tc mit folgendem Inhalt an:

#include "fields.tc"
#include "ports.tc"
dev eth0 {
egress {
drop if tcp_sport != PORT_HTTP;
}
}

Sie sehen schon, wie einfach es ist, mit tcng Konfigurationen zur Manipulation des Datenverkehrs zu schreiben. In von geschweiften Klammern eingefassten Blöcken legen Sie die einzelnen Regeln fest. Unser kleines Beispiel sorgt etwa dafür, dass nur auf dem HTTP-Port mit der Nummer 80 ausgehende Pakete – gekennzeichnet durch das Schlüsselwort egress – über das Interface eth0 versendet werden. Die dabei verwendete Variable PORT_HTTP bezieht das Script aus der per Include-Anweisung eingebundenen Datei ports.tc. Die ebenfalls integrierte Datei fields.tc wird für das Beispiel eigentlich nicht benötigt. Sie sollten sich aber angewöhnen, beide Hilfsdateien in alle ihre tcng-Skripte aufzunehmen, weshalb auch wir beide Dateien aufführen. Füttern Sie nun den Übersetzer tcc, der Bestandteil des tcng-Pakets ist, mit dieser Konfigurationsdatei:

tcc -r example.tc > example.sh