Warum ein Proxy mit niedriger Latenz trotzdem langsam herunterladen kann
Verbindungsverzögerung und Download-Durchsatz messen unterschiedliche Teile einer Proxy-Anfrage. Wählen Sie den Test passend zur Aufgabe.
Ein Proxy, der eine kleine Seite schnell liefert, kann beim Herunterladen einer Datei trotzdem langsam sein. Die erste Anfrage zeigt vor allem die Verzögerung beim Verbindungsaufbau und bei der Antwort. Bei größeren Übertragungen zählt auch, wie viele Daten die Route dauerhaft transportieren kann.
Welche Zahl beantwortet Ihre Frage?
| Aufgabe | Hilfreiche Beobachtung |
|---|---|
| Eine kleine Seite öffnen oder eine kurze API-Anfrage senden | Zeit bis zum Empfang der Antwort einschließlich Verbindungsaufbau. |
| Eine Datei herunterladen | Übertragene Gesamtbytes und durchschnittlicher Durchsatz mit einer geeigneten Testdatei. |
| Eine Anwendung über viele Anfragen hinweg reaktionsfähig halten | Typische Antwortzeit, Fehlschläge und Wiederverwendung von Verbindungen unter der erwarteten Last. |
ICMP-Ping ist ein anderer Test. Ein Server kann Ping beantworten, obwohl sein Proxy-Dienst nicht verfügbar ist, oder Ping blockieren, während der Proxy funktioniert. Auch die Umlaufzeit zur Proxy-Adresse lässt die Verbindung des Proxys zu Ihrem Ziel außer Acht.
Eine echte Übertragung messen
Verwenden Sie eine Datei auf einem von Ihnen kontrollierten Server oder eine eigens für solche Tests vorgesehene Datei. Dieses Beispiel verwirft den Antwortinhalt und gibt Übertragungsgröße, durchschnittliche Bytes pro Sekunde und Gesamtzeit aus:
curl --proxy http://203.0.113.10:8080 --noproxy '' --connect-timeout 5 --max-time 30 --silent --show-error --output /dev/null --write-out 'status=%{http_code} bytes=%{size_download} average_Bps=%{speed_download} seconds=%{time_total}\n' https://example.com/test-file.bin
Ersetzen Sie sowohl den Beispiel-Proxy als auch die Datei-URL. Eine 404-Seite oder eine Antwort mit verweigertem Zugriff ist kein gültiger Download-Benchmark, selbst wenn sie schnell eintrifft. Prüfen Sie Status, erwartete Dateigröße und Inhalt, bevor Sie Geschwindigkeiten vergleichen.
Das Feld für die Durchschnittsgeschwindigkeit verwendet Bytes pro Sekunde. Ein in Bits pro Sekunde beworbener Netzwerktarif verwendet eine andere Einheit. Für eine grobe Umrechnung von Bytes in Bits multiplizieren Sie mit acht; bleiben Sie während des gesamten Vergleichs bei derselben Einheit.
Fair vergleichen
Verwenden Sie dasselbe Ziel, dieselbe Datei, dasselbe Client-Netz und dieselben Zeitlimits. Vergleichen Sie mehrere maßvolle Stichproben, statt den schnellsten Versuch auszuwählen. Bei stockenden Übertragungen wählen Sie Limits für Verbindungsaufbau, Gesamtdauer und niedrige Geschwindigkeit bewusst. Behalten Sie fehlgeschlagene Anfragen in den Ergebnissen: Ein Proxy, der gelegentlich schnell überträgt, aber häufig ausfällt, kann für einen Auftrag, der fertig werden muss, ungeeignet sein.
Eine zwischengespeicherte Datei und ein neuer Download können unterschiedliche Wege durch den Dienst nehmen. Das gilt auch für eine Anfrage nach einem neuen Verbindungsaufbau gegenüber einer Anfrage, die eine bestehende Verbindung wiederverwendet. Entscheiden Sie, welches Verhalten Ihre Anwendung benötigt, und messen Sie dieses konsequent.
Nach Arbeitslast auswählen
Bei einer kleinen API-Antwort kann eine zusätzliche Sekunde vor dem ersten Byte wichtiger sein als der Spitzendurchsatz. Bei einem großen Download ist ein schneller Handshake mit anschließend sehr langsamem Antwortinhalt ein schlechter Tausch. Testen Sie für beide Aufgaben das tatsächlich verwendete Ziel; kein einzelner Geschwindigkeitswert beschreibt jede Route durch einen Proxy.
Die Proxy-Liste von ProxyHub bietet keine unabhängigen Durchsatzmessungen pro IP. Ein Protokoll- oder Länderfilter ist keine Rangliste nach Geschwindigkeit.