Nutzungslimits bei Proxys
Nutzungslimits legen fest, wie viele Daten ein Proxydienst für Sie übertragen kann, wie schnell Sie Aufträge darüber senden können und welche Ziele erreichbar sind. Für dieselbe Aufgabe können mehrere Regeln gelten. Unbegrenzter Traffic kann mit einer Obergrenze für gleichzeitige Verbindungen und Einschränkungen für bestimmte Websites oder Ports verbunden sein. Jede Bedingung steuert einen anderen Teil des Dienstes.
Vergleichen Sie diese Bedingungen bei der Auswahl eines Proxydienstes mit der tatsächlichen Arbeitsweise Ihrer Anwendung. Die Zahl der IP-Adressen oder ein einzelner erfolgreicher Test zeigt nur einen Teil des Bildes. Wenn Sie wissen, was jedes Limit misst, können Sie die Kapazität besser einschätzen und erkennen, welche Bedingung für Ihre Aufgabe geändert werden müsste.
Was ein Anbieter begrenzen kann
Manche Limits beziehen sich auf eine Ressource, die Sie über einen Zeitraum verbrauchen. Andere steuern die momentane Auslastung oder bestimmen, ob eine Verbindung überhaupt erlaubt ist. Die folgenden Unterschiede sind auch dann relevant, wenn ein Tarif nur einen oder zwei dieser Parameter hervorhebt.
| Parameter | Messgröße | Was er bestimmt |
|---|---|---|
| Datenvolumen | Übertragene Bytes | Je nach Produkt unbegrenzt oder begrenzt |
| Anfragekontingent | Gezählte Vorgänge im Kontingentzeitraum | Wie viele gezählte Vorgänge enthalten sind |
| Übertragungsrate | Bits oder Bytes pro Sekunde | Wie schnell Daten übertragen werden können |
| Anfragerate | Anfragen pro Sekunde oder Minute | Wie häufig neue Vorgänge gestartet werden dürfen |
| Gleichzeitige Verbindungen | Zur selben Zeit gezählte Verbindungen | Wie viele Verbindungen gleichzeitig offen bleiben dürfen |
| Zielzugriff | Angefragte Website, Adresse oder Operation | Welche Ressourcen und Funktionen erlaubt sind |
| Portzugriff | Zielport und Transportprotokoll | Welche Netzwerkdienste der Proxy erreichen kann |
Mit diesen Regeln verteilt ein Anbieter Netzkapazität und Rechenressourcen, kontrolliert Kosten und schränkt unerwünschte Aktivitäten ein. Die Auswirkungen unterscheiden sich: Ein höheres Verbindungslimit erlaubt mehr gleichzeitige Verbindungen; die Freigabe eines gesperrten Ziels ermöglicht dagegen eine zuvor nicht ausführbare Aufgabe. Eine geänderte Bedingung ändert die anderen nicht automatisch.
Gleichzeitige Verbindungen
Ein Limit für gleichzeitige Verbindungen legt fest, wie viele Verbindungen zur selben Zeit offen bleiben dürfen. Ein Browser oder eine andere Anwendung kann für eine Aufgabe mehrere Verbindungen öffnen. Die Anzahl der Tabs, Profile oder Programmthreads zeigt daher nicht genau, welcher Teil dieses Kontingents belegt ist.
Verbindungen können zwischen Anfragen offen bleiben; HTTP/2 kann mehrere Anfragen über eine Verbindung übertragen. Weniger Anfragen pro Minute geben belegte Verbindungen deshalb nicht zwangsläufig frei. Der Artikel über gleichzeitige Verbindungen erklärt, was dieses Kontingent belegt und warum es sich von der Anzahl der Anfragen unterscheidet.
Limits können sich gegenseitig beeinflussen. Dauert die Übertragung einer großen Antwort länger, kann auch die Verbindung länger belegt bleiben. Startet das Programm weiter neue Vorgänge, kann es trotz unveränderter Anfragerate das Verbindungslimit erreichen. Zusätzliche parallele Vorgänge können dann Wartezeiten und Fehler erhöhen, ohne den Durchsatz erfolgreich abgeschlossener Vorgänge zu steigern.
Gesperrte Websites und Apps
Ein Anbieter kann den Zugriff auf bestimmte Websites, Adressen oder Operationen einschränken. Ein Ziel kann auf seiner Sperrliste stehen, obwohl der Traffic unbegrenzt ist und noch Verbindungskapazität verfügbar ist. Auch Produkte desselben Anbieters können unterschiedliche Zugriffsrechte haben. Der Artikel über gesperrte Websites und Apps erklärt, wie solche Listen entstehen und wovon der Zugriff auf eine bestimmte Ressource abhängt.
Eine Anwendung kann mehrere Ziele verwenden: Ihre Hauptseite lässt sich möglicherweise öffnen, während eine separate Funktion ausfällt. Auch die Zielwebsite kann eigene Einschränkungen durchsetzen, obwohl der Proxyanbieter den Zugriff erlaubt. Ermitteln Sie bei einem Fehler zuerst, welche Ressource nicht verfügbar ist und welche Seite die Anfrage abgelehnt hat.
Gesperrte Ports
Der Zugriff auf eine Website bedeutet nicht, dass jeder Netzwerkdienst auf demselben Server erreichbar ist. Ein Anbieter kann Webtraffic erlauben und zugleich einen Port für den Mailversand sperren. Entscheidend ist hier der Zielport, den die Anwendung anfordert. Der Artikel über gesperrte Ports erklärt den Unterschied zum Port, über den die Verbindung zum Proxy selbst hergestellt wird.
Zur Freigabe gehört auch die Unterstützung des Transportprotokolls. TCP und UDP übertragen Daten auf unterschiedliche Weise. Die Freigabe einer TCP-Portnummer bedeutet nicht, dass dieselbe UDP-Portnummer ebenfalls erreichbar ist. Das Produkt muss das benötigte Transportprotokoll unterstützen und erlauben. Mehr IP-Adressen oder ein höheres Verbindungslimit ersetzen eine fehlende Freigabe nicht.
Datenvolumen, Übertragungsgeschwindigkeit und Anfragezahlen
Datenvolumen
Je nach Anbieter und Produkt ist der Traffic unbegrenzt oder an ein Datenkontingent gebunden. Manche Anbieter verkaufen eine feste Datenmenge, etwa ein monatliches Gigabyte-Paket. Prüfen Sie bei einem solchen Paket die Gültigkeitsdauer, den Zeitpunkt der Erneuerung und ob ungenutztes Volumen übertragen wird. Diese Abrechnungsregeln gelten für Produkte mit Datenkontingent; sie sind keine allgemeine Voraussetzung für die Nutzung von Proxys.
Die Größe des gespeicherten Ergebnisses ist keine zuverlässige Schätzung des Traffics. Um einen kurzen Preis oder Produktnamen auszulesen, muss möglicherweise eine ganze Seite geladen werden. Ein Browser kann außerdem Bilder, Skripte und andere Dateien anfordern. Wiederholte Versuche können erneut Daten übertragen. Messungen mit der tatsächlichen Anwendung helfen, die Netzlast abzuschätzen. Wird nach Datenvolumen abgerechnet, müssen Sie zusätzlich prüfen, welche übertragenen Bytes der Anbieter zählt.
Übertragungsgeschwindigkeit
Ein Limit der Übertragungsrate bestimmt, wie viele Daten pro Zeiteinheit übertragen werden können. Üblich sind Bits pro Sekunde, etwa Mbit/s, oder Bytes pro Sekunde, etwa MB/s. Ein Byte enthält acht Bits: 80 Mbit/s entsprechen vor dem Protokoll-Overhead 10 MB/s. Das sind Geschwindigkeitseinheiten; ein monatliches Kontingent in GB beantwortet eine andere Frage.
Entscheidend ist, worauf sich die beworbene Geschwindigkeit bezieht. Ein Serverport mit einer bestimmten Nenngeschwindigkeit bedeutet nicht, dass jeder Kunde oder jede Verbindung diese Rate erhält. Mehrere Übertragungen können sich ein Kontingent teilen. Die tatsächliche Geschwindigkeit hängt auch vom Netzwerkpfad, vom Zielserver und vom eigenen Anschluss ab. Die angegebene Obergrenze garantiert daher kein bestimmtes Ergebnis für jeden Download.
Neben der Übertragungsgeschwindigkeit zählt die Antwortzeit. Ein Server kann eine Anwendung vor dem Senden einer kleinen Antwort warten lassen, obwohl genügend Kapazität für die Datenübertragung vorhanden ist. Große Downloads hängen stärker von der dauerhaft verfügbaren Übertragungsrate ab; bei vielen kurzen Anfragen können Antwortverzögerungen und die erlaubte Anfragerate wichtiger sein.
Anfragekontingent und Anfragerate
Ein Anfragekontingent legt fest, wie viele gezählte Vorgänge enthalten sind. Ein Limit der Anfragerate bestimmt, wie schnell hintereinander sie gesendet werden dürfen. Ein großes Restkontingent bedeutet nicht, dass es vollständig in einem kurzen Schub verbraucht werden darf. Beide Limits können unabhängig voneinander bestehen, auch wenn ein Produkt nicht nach Datenvolumen abrechnet.
Auch der gezählte Vorgang muss eindeutig definiert sein. Ein Klick, ein Seitenaufruf, eine HTTP-Anfrage und eine abgeschlossene Scraping-Aufgabe sind unterschiedliche Ereignisse. Ein Seitenaufruf kann viele HTTP-Anfragen auslösen; eine Aufgabe einer verwalteten API kann mehrere Versuche des Anbieters umfassen. Ob diese Versuche das Kundenkontingent verbrauchen, hängt von den Abrechnungsregeln des Produkts ab.
Ein Ratenlimit hat außerdem ein Zeitfenster und Regeln für kurze Lastspitzen. Teilt man ein Minutenlimit durch sechzig, erhält man einen Durchschnitt, erfährt aber nicht, wie der Dienst einen gleichzeitig gesendeten Anfragestapel behandelt. Wenn Sie erlaubte Vorgänge zeitlich verteilen, können Sie das Ratenlimit einhalten, ohne das Gesamtvolumen zu ändern. Ein bereits verbrauchtes Anfragekontingent wird dadurch nicht wieder aufgefüllt.
Welches Konto, welche IP oder welches Produkt das Limit teilt
Eine Zahl ist erst aussagekräftig, wenn klar ist, für wen sie gemeinsam gilt. Ein Anbieter kann ein Limit auf ein Konto, eine Bestellung, eine einzelne Proxy-IP, eine zugelassene Client-IP oder eine andere definierte Gruppe beziehen. Eine gesamte Übertragungsrate für ein Konto wird beispielsweise von allen Programmen dieses Kontos geteilt. Unterschiedliche Ausgangs-IP-Adressen schaffen für diese Programme kein separates Kontingent pro IP.
Mehrere Ebenen können gleichzeitig gelten. Ein Dienst kann ein Maximum pro Proxy-IP und ein zweites für das gesamte Paket festlegen. Die Verteilung auf mehrere IPs kann bei der ersten Grenze helfen; das Paketlimit bleibt bestehen. Ein an die öffentliche Client-IP gebundenes Limit kann außerdem mehrere Geräte betreffen, die über diese Adresse ins Internet gelangen.
Auch die Produktregeln sind wichtig. Eine direkte Proxyverbindung, eine verwaltete Scraping-API und ein anderes Netzwerk desselben Anbieters können unterschiedliche Kontingente und Freigaben haben. Eine API zählt möglicherweise Aufgaben oder Ergebnisse statt Netzwerkverbindungen. Lesen Sie die Limits des tatsächlich vorgesehenen Produkts einschließlich der speziell für Ihr Konto geltenden Einstellungen.
Was beim Erreichen eines Limits passiert
Die Reaktion des Dienstes hängt von der Regel ab. Bei einer begrenzten Übertragungsrate können Daten mit gedrosselter Geschwindigkeit weiterfließen. Bei einem Anfrageratenlimit können überschüssige Vorgänge warten oder abgelehnt werden. Bei einem Verbindungslimit kann der Dienst neue Verbindungen verweigern, während bestehende nutzbar bleiben. Ist bei einem Produkt das Traffic- oder Anfragekontingent erschöpft, kann eine Verlängerung oder ein Zukauf nötig sein; die Bedingungen des Anbieters bestimmen die verfügbaren Möglichkeiten.
Das Wort „unbegrenzt“ braucht deshalb einen Bezug: unbegrenzter Traffic, unbegrenzte Anfragen oder unbegrenzte Verbindungen. Jede Aussage beschreibt einen Parameter. Ein Tarif mit unbegrenztem Traffic kann trotzdem eine endliche Übertragungsgeschwindigkeit und ein Verbindungslimit haben. Setzt ein Anbieter Fair-Use-Bedingungen ein, um ein Kontingent nach anhaltend hoher Nutzung zu ändern, gehören auch diese zum Tarif. Das einzelne Wort definiert nicht das gesamte Regelwerk.
Eine ausdrückliche Meldung des Anbieters ist hilfreicher als ein allgemeiner Fehler. HTTP 429 bedeutet, dass der antwortende Dienst die Anzahl der Anfragen nach seinen Regeln als zu hoch einstuft. Klären Sie zuerst, ob die Antwort vom Proxydienst oder vom Ziel stammt. Ein Timeout kann andere Ursachen haben, etwa ein langsames Ziel oder Netzwerkprobleme. Nutzungsstatistiken, Fehlerdetails und der Zeitpunkt des Versuchs helfen, ein Kontingentproblem von anderen Fehlern zu unterscheiden.
Wiederholtes Senden abgelehnter Vorgänge kann ein Ratenproblem verschärfen und zusätzliches Kontingent verbrauchen. Eine sinnvolle Änderung setzt an der bekannten Ursache an: Anfragerate senken, nicht mehr benötigte Verbindungen schließen, ein erschöpftes Kontingent erweitern oder die Zielfreigabe klären. Ein allgemeines Paketupgrade hilft nur, wenn es genau diese Bedingung ändert.
Limits auf die gesamte Aufgabe abstimmen
Beginnen Sie beim benötigten Ergebnis und beim Zeitrahmen. Eine Beispielrechnung: Eine Aufgabe erfordert 6.000 HTTP-Anfragen innerhalb von 30 Minuten, bei einer durchschnittlichen Antwortgröße von 0,5 MB. Das entspricht im Mittel 200 Anfragen pro Minute und etwa 3 GB Antwortdaten in Dezimaleinheiten. Ausgehende Daten, zusätzliche Browserressourcen und Wiederholungsversuche sind darin nicht enthalten. Sie müssen hinzugerechnet werden, wenn sie bei der tatsächlichen Aufgabe anfallen und der Dienst sie zählt.
Diese Summen legen noch nicht fest, welches Verbindungskontingent Sie benötigen. Testen Sie die tatsächliche Parallelität der Anwendung und wie lange Verbindungen belegt bleiben. Berücksichtigen Sie andere Programme mit demselben Limit und kurze Lastspitzen beim gemeinsamen Start mehrerer Aufgaben. Messen Sie Datenvolumen, Anfragerate und gleichzeitige Verbindungen getrennt; ein Zähler kann nicht alle drei ersetzen.
Testen Sie mit dem vorgesehenen Produkt und den vorgesehenen Zielen einschließlich aller Anwendungsfunktionen, die zum Abschluss der Aufgabe benötigt werden. Ein kleiner erfolgreicher Test zeigt, dass ein Vorgang funktioniert hat. Ein repräsentativer Durchlauf liefert zusätzlich Hinweise auf Dauerlast, Spitzen und Ressourcenbedarf der gesamten Aufgabe. Planen Sie Reserve für die im Test beobachteten Schwankungen ein, statt den Durchschnitt als sicheres Maximum zu betrachten.
Ist eine Anforderung unklar, geben Sie dem Support eine konkrete Beschreibung: Produkt, Zielhosts, Zielports und Transportprotokoll, erwartetes Datenvolumen, Anfragerate, maximale gleichzeitige Verbindungen und die genaue Fehlermeldung. Damit kann der Anbieter das betreffende Kontingent oder die Freigabe prüfen. Ziel ist eine Übereinstimmung zwischen den angegebenen Dienstlimits und der geplanten Arbeitslast.
