24März2008
1:53 pm

Die Bandbreite in OS X künstlich beschränken 

Durch einen Artikel über die Ladezeit-Optimierung im Webbrowser bin ich soeben auf eine nette Eigenschaft der in OS X integrierten ipfw gestoßen.

Und zwar ist es mittels ipfw möglich, die zu verwendende Bandbreite künstlich zu beschränken, was vor allem beim Testen von Web-Applikationen ein wahrer Segen ist. Denn wer hat heute schon noch ein altes 56k-Modem zu Testzwecken in der Ecke stehen…

Alle folgenden Befehle müssen im Terminal als Superuser ausgeführt werden, da ein normaler Benutzer keine Änderungen an der Firewall durchführen darf.

Kurz zur Erklärung…wir legen uns eine eingehende und eine ausgehende Pipe an, über die wir den gesamten Netzwerk-Traffic verschicken.

sudo ipfw add pipe 1 ip from any to any out
sudo ipfw add pipe 2 ip from any to any in

Die soeben angelegten Pipes können dann individuell in der Bandbreite und verschiedenen anderen Parametern beschränkt werden. Um es nicht übermäßig kompliziert zu machen, belasse ich es aber bei einer Beschränkung der Bandbreite.

sudo ipfw pipe 1 config bw 56Kbit/s
sudo ipfw pipe 2 config bw 56Kbit/s

Ab sofort dürfte man sich beim Surfen wie in der Steinzeit fühlen. Daher noch schnell die Befehle, um die Bandbreitenbeschränkung wieder aufzuheben:

sudo ipfw pipe 1 config bw 0
sudo ipfw pipe 2 config bw 0

Weitere Details gibt’s in der manpage (interessant ist vor allem der Traffic Shaping-Abschnitt bei den Examples gegen Ende des Dokuments).

Falls jemand ein nettes Programm für OS X kennt, mit dem man die Bandbreite auf Programmbasis beschränken kann (am besten noch mit Voreinstellungen für 56k Modem, ISDN, 1000-DSL usw.), würde ich mich sehr über einen Hinweis freuen. Ansonsten sollte man sich hierfür wirklich mal ein kleines AppleScript schreiben.

No Comments

No comments yet.

 

Leave a comment

(required)
(erforderlich) (will not be published)