UMTS: Daten-Volumen sparen mit Proxy

Da ich derzeit auf das knappe Datenvolumen von einem Gigabyte pro Monat (derzeit mit einer Fyve-Karte, da dort noch Guthaben drauf war) angewiesen bin, versuche ich natürlich, möglichst sparsam mit den Daten umzugehen.

Bereits vor einiger Zeit habe ich dafür auf einem vServer ein entsprechendes Setup aufgesetzt, welches mit einer VPN-Verbindung erreichbar ist und dann mit einer Proxy-Kette verschiedene Aufgaben übernimmt. Das ganze läuft unter Debian und lässt sich wahrscheinlich auch einfacher realisieren, aber ein wenig Spaß muss da auch dabei sein. Ich werde jetzt kurz den Weg der Daten vom Internet bis zu meinem Notebook schildern, vielleicht dient dies ja dem ein oder anderen als Inspiration, wenn er vor einem ähnlichen Problem steht.

Station 1: Privoxy

Damit Werbebanner nicht am Datenvolumen nagen werden sie mittels privoxy und einer Adblock-Filterliste direkt aussortiert, bevor die Seiten weiter verarbeitet werden. Das spart im nächsten Schritt Rechenleistung, weil alles was ausgefiltert wurde auch nicht weiter komprimiert werden muss (und es erlaubt in Notfällen, auch auf dem Smartphone ohne Werbung zu surfen).

Station 2: Ziproxy

Wie der Name schon andeutet: ziproxy dient dazu, die Daten zu komprimieren und zu optimieren. Dabei werden vor allem die Bilder verkleinert, aber auch der HTML-Code kann optimiert werden (wobei letzteres dazu führen kann, dass Webseiten nicht mehr funktionieren, weswegen man die Konfiguration hier beachten muss und ein wenig experimentieren sollte mit den eigenen Lieblingsseiten). Im Wesentlichen macht ziproxy nichts anderes, als die Netzbetreiber mit ihren Speedmanagern, nur das man es selbst konfigurieren kann.

Station 3: Squid

Damit der Ablauf, Seiten ersten von Werbung zu befreien und dann zu komprimieren nicht zu oft durchgeführt werden muss, wird das Ergebnis aus Schritt 1 und 2 via squid gecached und von dort aus an den Client ausgeliefert. Die squid-Adresse wird im Client als http-Proxy eingetragen.

Ergebnis

Das übertragene Datenvolumen auf der letzten Strecke, die via UMTS realisiert wird, wird deutlich verringert – dadurch steigt auch die Geschwindigkeit. Bilder sehen etwas unschöner aus durch die Kompressionsartefakte, aber es ist immer noch besser, als mit GPRS-Drosselung zu surfen. Das komplette Setup ist natürlich etwas komplexer zu konfigurieren als hier beschrieben, aber es gibt die komplette Software (squid, privoxy und ziproxy) als Debian-Pakete, was es enorm erleichtert. Für die VPN-Verbindung ist dieses Tutorial ein brauchbarer Einstieg: PPTP-VPN mit dem iPhone + Debian-Server.

Nachtrag: VPN-Server mit Privoxy zuhause betreiben

Wer den VPN-Server und die Privoxy/Ziproxy-Lösung nicht im Internet betreiben und zugleich auf seine Daten zuhause zugreifen will, kann mit einem Raspberry Pi eine VPN-Lösung recht einfach konfigurieren. Nötig ist dazu noch ein Router, der einen DynamicDNS-Server unterstützt – sonst müsste man die IP-Adresse des DSL-Anschlusses nach jeder Einwach nachschauen.