Skip to content

[torrc] -- Kontrolle der benutzten Bandbreite

Tor bietet dir neben den flexiblen Exitpolicies auch die Möglichkeit, die genutzte Bandbreite zu kontrollieren. Viele Anbieter begrenzen die Menge der zu versendenden oder zu empfangenden Daten. Mit den untenstehenden Einstellungen kannst du Tor so konfigurieren, dass er auch innerhalb dieser Grenzen bleibt bzw. nicht zuviel Bandbreite benutzt.

BandwidthRate
Diese Option legt fest, wie hoch die durchschnittliche einkommende Bandbreite ist. Als Einheit könnt ihr alles zwischen Bytes und Terabyte angeben. Ist die Option nicht gesetzt, werden 3 MB als Voreinstellung genommen. Wie oben schon betont, ist der gesetzte Wert ein Durchschnitt, d.h. kurzfristig kann aus auch zu Abweichungen in beide Richtungen kommen. Beispiel: BandwidthRate 1739KB
BandwidthBurst
Diese Option bestimmt die einmalige Höchstgrenze. Stellt euch vor, ihr habt eine Internetverbindung von 2 MB Bandbreite und in der torrc die BandwidthRate auf 500KB gesetzt. Dann ist es möglich, dass in einem kurzen Zeitfenster auch mal die vollen 2 MB genutzt werden. Falls ihr das nicht wollt, könnt ihr die Option BandwidthBurst nutzen. Die Größenangaben entsprechen denen in der Option BandwidthRate. Die Voreinstellung beträgt 6 MB. Beispiel: BandwidthBurst 1456KB.
MaxAdvertisedBandwidth
Hiermit wird nie mehr als der angegebene Wert für die BandwithRate angegeben. Der Torclient versucht immer schnelle Server für den Verbindungsaufbau zu nutzen. Das führt dazu, dass Server mit einer schnellen Leitung auch mehr Verbindungen behandeln müssen. Mit der Option kann man das einschränken. Die Angaben sind gleich zu den obigen Optionen. Beispiel: MaxAdvertisedBandwidth 10MB
AccountingMax

Mit dieser und der folgenden Option lässt sich das von Tor verbrauchte Volumen steuern. Der Torprozess loggt die Menge an Daten in der Datei bw_accounting (unter Linux im Verzeichnis /var/lib/tor bzw. einem der Unterverzeichnisse). Mit der obenstehenden Option kannst du steuern, wieviel Bytes in einer bestimmten Periode reinkommen oder rausgehen sollen. Dabei ist es wichtig zu beachten, dass Tor beide Richtungen getrennt betrachtet.

Stell dir vor, du hast die Option auf 10 GB eingestellt. Dann ist es durchaus erlaubt, dass der Server 7 GB sendet und 8,5 GB empfängt. Erst wenn eine der beiden Richtungen die Grenze erreicht hat, schaltet sich der Server ab. Falls du also pro Monat ein Volumen von n Bytes zur Verfügung hast, empfiehlt es sich hier n/2-ε Bytes anzugeben. Denn die Anzahl an gesendeten und empfangenen Bytes ist meist ungefähr gleich.

Nachdem die vorgegebene Anzahl an AccountingMax-Bytes erreicht ist, unterbricht der Prozess alle Verbindungen und nimmt keine neuen mehr an. Die Dokumentation bezeichnet dies als &qot;hibernate". Diese Ruhe hält bis zu dem in AccountingStart konfigurierten Zeitpunkt an. Danach wird Tor wieder die Arbeit aufnehmen. Hin und wieder wundert man sich vielleicht, dass der Torprozess nicht sofort zu dem eingestellten Zeitpunkt aufwacht. Das liegt daran, dass die Entwickler Tor noch eine zufällige Zeitspanne warten lassen. Dies soll verhindern, dass u.U. alle Prozesse gleichzeitig mit der Arbeit loslegen.

Mit der obigen Option lässt sich das verbrauchte Datenvolumen recht genau steuern. Wenn du nur ein bestimmtes Volumen in einer Periode erlauben willst, könntest du natürlich auch auf die Idee kommen, die oben erwähnte Option für die Bandbreitensteuerung einzusetzen. Denn auch wenn diese herabgesetzt wird, werden weniger Bytes verbraucht. Das Netzwerk benötigt jedoch mehr eine Reihe von Servern mit hoher Bandbreite als viele Server mit niedriger Bandbreite. Daher wird empfohlen, die Bandbreite so hoch wie möglich einzustellen und mehr mit dieser Option zur Steuerung des Datenvolumens zu arbeiten. Beispiel: AccountingMax 10GB; auch hier können wieder Werte zwischen Byte und Terabyte angegeben werden.

AccountingStart
Hier werden nun die Perioden für die Kontrolle der Bandbreite eingestellt. Du kannst zwischen Tag, Woche und Monat wählen. Die folgenden Beispiele sollen die Benutzung der Option verdeutlichen:
AccountingStart day 08:00
Jeden Morgen um 8 startet die Periode, d.h. evtl. wird der Torprozess wieder zum Leben erweckt.
AccountingStart week 2 18:28
Eine Periode geht nun eine Woche. Der Start ist am zweiten Tag der Woche, also dienstags, um 18:28 Uhr. Wenn das Argument week mitgegeben wird, muss als nächste Angabe der Tag geschrieben werden. Die Tage werden dabei als Zahlen angegeben, mit einer 1 für Montag bis 7 für Sonntag. Als letztes Argument kommt dann wieder die Uhrzeit.
AccountingStart month 17 23:29
Mit dieser Einstellung wird die Periode auf monatlich gesetzt. Ähnlich wie bei der obigen wöchentlichen Periode wird als zweites Argument der Starttag mitgegeben. Im Beispiel ist das der 17. Tag des Monats. Du kannst eine Zahl zwischen 1 und 28 einsetzen.

Trackbacks

Ingo Jürgensmann on : Ingo Jürgensmann via Twitter

Show preview
@qbi - auf https://t.co/xQByGw5CBs vermisse ich noch AccountingRule

Comments

Display comments as Linear | Threaded

Frank Mayer on :

Hi,
danke für die schönen Erklärungen zu Tor. Vielleicht eine kleine Anmerkung: Es ist nicht ganz klar, ob bei der Kontrolle der Bandbreite Bits oder Bytes gemeint sind. An einer Stelle schreibst Du “Bytes” und ich habe jetzt auch nochmal schnell auf der manpage nachgesehen, es sind Bytes. Da aber gerade bei Providern sehr gerne Bit/s angegeben werden könnte man das nochmal explizit herausheben.

Gruß,
FM

Add Comment

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
Standard emoticons like :-) and ;-) are converted to images.
BBCode format allowed
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

You can use [geshi lang=lang_name [,ln={y|n}]][/geshi] tags to embed source code snippets.
Form options
cronjob