Batasan Update

Dokumen ini berlaku untuk metode berikut: Update API (v4): threatListUpdates.fetch.

Menetapkan batasan

Saat memperbarui database lokal (lihat Update Database), klien dapat menggunakan kolom maxUpdateEntries dan maxDatabaseEntries di permintaan threatListUpdates.fetch untuk menentukan batasan ukuran. Klien harus menetapkan batasan untuk mempertahankan konsumsi RAM, disk, dan bandwidth klien yang dapat diprediksi, serta untuk melindungi dari pertumbuhan daftar.

  • Klien dapat menentukan ukuran respons update maksimum (maxUpdateEntries) dalam jumlah entri (1 entri = 1 penambahan atau 1 penghapusan).
  • Klien dapat menentukan ukuran database maksimum (maxDatabaseEntries) dalam jumlah entri (sebagian besar entri dalam database adalah awalan hash 4 byte, sehingga cukup adil untuk mengasumsikan bahwa 1 entri ≈ 4 byte).

Bandwidth vs. penyimpanan

Meskipun klien dapat menentukan ukuran arbitrer untuk respons update dan ukuran database, server Safe Browsing hanya menyediakan sejumlah kemungkinan respons update dan ukuran database terlebih dahulu.

  • Klien harus menggunakan ukuran respons update (maxUpdateEntries) untuk membatasi penggunaan bandwidth.
  • Klien harus menggunakan ukuran database (maxDatabaseEntries) untuk membatasi jumlah RAM atau penyimpanan disk yang diperlukan di perangkat.
Kedua batas ini berpengaruh pada ukuran database yang sedang diupdate, sehingga berdampak pada jumlah perlindungan yang diberikan kepada pengguna (yaitu, semakin besar ukuran database lokal, semakin baik perlindungannya).

Panduan untuk menetapkan batasan

Ukuran daftar Safe Browsing dapat berubah secara bertahap atau tiba-tiba berubah. Klien harus menetapkan maxUpdateEntries untuk permintaan pembaruan daftar, yang membatasi ukuran respons pembaruan daftar maksimum dan meningkatkan keandalan saat pembaruan besar tidak dapat diproses.

Jika tidak ada persyaratan yang lebih ketat atau persyaratan yang kurang ketat, Google merekomendasikan penggunaan maxUpdateEntries=16777216. Dengan ukuran entri daftar standar sebesar 4 byte per awalan hash, ukuran ini setara dengan sekitar 67 megabyte per daftar. Google merekomendasikan penggunaan batas yang lebih kecil maxUpdateEntries=2097152 untuk klien seluler, karena biasanya tidak begitu efektif. Pada ukuran entri daftar standar sebesar 4 byte per awalan hash, ini setara dengan sekitar 8 megabyte per daftar.

Daftar Safe Browsing memiliki perbedaan ukuran dan tingkat pertumbuhan. Namun, klien harus menetapkan batasan yang sama untuk semua daftar, berdasarkan penggunaan memori atau bandwidth maksimum yang diizinkan untuk setiap daftar.

Untuk meningkatkan keandalan, Google merekomendasikan agar klien mengimplementasikan telemetri untuk mendeteksi penggunaan memori atau bandwidth yang berlebihan, serta mekanisme untuk memberikan batasan baru kepada klien dengan cepat.

Status klien

Server Safe Browsing tidak pernah mengirim update yang membuat klien berstatus usang; klien akan mendapatkan update sepenuhnya setelah setiap permintaan update. Misalnya, jika klien saat ini memiliki database 4096 entri, tetapi hanya ingin mendownload maksimal 2048 delta, server dapat mereset klien ke database 2048 jika klien sudah usang.