Häufigkeit der Anfragen

Dieses Dokument bezieht sich auf die folgenden Methoden:

  • Update API (Version 4): fullHashes.find
  • Update API (Version 4): threatListUpdates.fetch
  • Aktualisierungs-Anfragen

    Um eine Überlastung des Servers zu vermeiden und einen optimalen Schutz zu erhalten, wie oft ein Client Anfragen an den Safe Browsing-Server senden kann, URL-Prüfungen durchführen (fullHashes.find) oder zum Aktualisieren der lokalen Datenbank (threatListUpdates.fetch).

    Die erste Datenanfrage muss in einem zufälligen Intervall zwischen 0 und 1 Minute nach dem die Kundschaft beginnt oder aufwacht. Nachfolgende Anfragen können erst erfolgen, nachdem der minimale Wartezeit oder Das Zeitlimit für den Backoff-Modus wurde geändert beobachtet.

    Mindestwartezeit

    Sowohl die fullHashes.find-Antwort und threatListUpdates.fetch-Antwort ein minimumWaitDuration-Feld haben, das von Clients befolgt werden muss.

    Wenn das Feld minimumWaitDuration in der Antwort nicht festgelegt ist, können Clients beliebig oft aktualisiert und so viele threatListUpdates- oder fullHashes-Anfragen wie was sie wollen.

    Wenn das Feld minimumWaitDuration in der Antwort festgelegt ist, können Clients keinen häufiger aktualisiert werden als die Wartezeit. Wenn beispielsweise die Antwort fullHashes eine Mindestwartezeit von 1 Stunde enthält, darf der Client keine fullHashes-Anfragen senden bis diese Stunde vergeht, selbst wenn der Nutzer eine URL aufruft, deren Hash-Präfix mit dem lokalen Datenbank. Hinweis: Clients werden seltener aktualisiert als die Mindestwartezeit. kann sich negativ auf den Schutz auswirken.)

    Backoff-Modus

    Der automatische Backoff gilt sowohl für den fullHashes.find-Antwort und threatListUpdates.fetch die Antwort enthält.

    Clients, die eine fehlgeschlagene HTTP-Antwort erhalten, d. h. einen anderen HTTP-Statuscode als 200 OK) muss in den Backoff-Modus wechseln. Im Backoff-Modus müssen Clients die berechnete Zeit abwarten bevor eine weitere Anfrage an den Server gesendet werden kann.

    Clients müssen die folgende Formel verwenden, um die Backoff-Zeitdauer zu berechnen:

    MIN((2N-1 * 15 minutes) * (RAND + 1), 24 hours)

    N entspricht der Anzahl der aufeinanderfolgenden, fehlgeschlagenen Anfragen, die beim Client auftreten. (beginnt mit N=1 nach der ersten fehlgeschlagenen Anfrage). RAND ist eine Zufallszahl zwischen 0 und 1. der nach jedem fehlgeschlagenen Update ausgewählt werden muss.

    Sobald ein Client eine erfolgreiche HTTP-Antwort erhält, muss er den Backoff-Modus beenden und die Mindestwartezeit wie oben beschrieben.