Aggiorna vincoli

Questo documento si applica al seguente metodo: API Update (v4): threatListUpdates.fetch.

Impostazione dei vincoli

Durante l'aggiornamento dei database locali (vedi Aggiornamenti dei database), i client possono utilizzare i campi maxUpdateEntries e maxDatabaseEntries nella richiestathreatListUpdates.fetch per specificare i vincoli di dimensione. I client devono impostare vincoli per mantenere il consumo prevedibile di RAM, disco e larghezza di banda dei client e per salvaguardare la crescita degli elenchi.

  • I client possono specificare una dimensione massima della risposta di aggiornamento (maxUpdateEntries) in numero di voci (1 voce = 1 aggiunta o 1 rimozione).
  • I client possono specificare una dimensione massima del database (maxDatabaseEntries) in numero di voci (la maggior parte delle voci nel database sono prefissi hash di 4 byte, quindi è corretto presumere che 1 voce ≈ 4 byte).

Larghezza di banda e spazio di archiviazione

Anche se i client possono specificare dimensioni arbitrarie per le dimensioni della risposta di aggiornamento e del database, il server di Navigazione sicura pregenera soltanto un numero finito di possibili dimensioni del database e delle risposte di aggiornamento.

  • I client dovrebbero utilizzare le dimensioni della risposta di aggiornamento (maxUpdateEntries) per limitare l'utilizzo della larghezza di banda.
  • I client dovrebbero utilizzare le dimensioni del database (maxDatabaseEntries) per limitare la quantità di RAM o spazio di archiviazione su disco necessaria sul dispositivo.
Entrambi questi limiti influiscono sulle dimensioni del database in fase di aggiornamento e, di conseguenza, hanno un impatto sul livello di protezione offerta all'utente (ovvero, maggiore è la dimensione del database locale, migliore sarà la protezione).

Indicazioni per l'impostazione dei vincoli

Le dimensioni degli elenchi di Navigazione sicura possono cambiare gradualmente o improvvisamente. I client dovrebbero impostare maxUpdateEntries per le richieste di aggiornamento dell'elenco, che limita le dimensioni massime delle risposte di aggiornamento dell'elenco e migliora l'affidabilità quando non è possibile elaborare aggiornamenti di grandi dimensioni.

In assenza di requisiti più severi o meno rigorosi, Google consiglia di utilizzare maxUpdateEntries=16777216. Con la dimensione tipica delle voci di elenco di 4 byte per prefisso hash, corrispondono a circa 67 MB per elenco. Google consiglia di utilizzare il limite più basso maxUpdateEntries=2097152 per i client mobile, perché di solito sono meno potenti. Con le dimensioni tipiche delle voci di elenco di 4 byte per prefisso hash, corrispondono a circa 8 megabyte per elenco.

Gli elenchi di Navigazione sicura hanno dimensioni e tasso di crescita diversi. Tuttavia, i client devono impostare gli stessi vincoli per tutti gli elenchi, in base all'utilizzo massimo consentito di memoria o larghezza di banda per ciascun elenco.

Per migliorare l'affidabilità, Google consiglia ai client di implementare la telemetria per rilevare l'uso eccessivo di memoria o larghezza di banda, nonché meccanismi per applicare rapidamente nuovi vincoli ai client.

Stato client

Il server di Navigazione sicura non invia mai un aggiornamento che lascia il client in uno stato obsoleto; i client saranno completamente aggiornati dopo ogni richiesta di aggiornamento. Ad esempio, se un client dispone attualmente di un database di 4096 voci, ma vuole scaricare al massimo 2048 delta, il server potrebbe reimpostare il client su un database 2048 se il client è davvero obsoleto.