제약조건 업데이트

이 문서는 Update API (v4): threatListUpdates.fetch 메서드에 적용됩니다.

제약조건 설정

로컬 데이터베이스를 업데이트할 때(데이터베이스 업데이트 참고) 클라이언트는 threatListUpdates.fetch 요청에서 maxUpdateEntriesmaxDatabaseEntries 필드를 사용하여 크기 제약조건을 지정할 수 있습니다. 클라이언트는 클라이언트 RAM, 디스크, 대역폭의 예측 가능한 소비를 유지하고 목록 증가를 방지하기 위해 제약조건을 설정해야 합니다.

  • 클라이언트는 항목 수 (1개 항목 = 추가 1개 또는 삭제 1개)로 최대 업데이트 응답 크기(maxUpdateEntries)를 지정할 수 있습니다.
  • 클라이언트는 최대 데이터베이스 크기 (maxDatabaseEntries)를 항목 수로 지정할 수 있습니다 (데이터베이스의 대부분의 항목은 4바이트 해시 프리픽스이므로 1개 항목 약 4바이트로 가정해도 됨).

대역폭과 스토리지 비교

클라이언트는 업데이트 응답 및 데이터베이스 크기를 임의로 지정할 수 있지만 세이프 브라우징 서버는 한정된 수의 가능한 업데이트 응답 및 데이터베이스 크기만 사전에 생성합니다.

  • 클라이언트는 업데이트 응답 크기 (maxUpdateEntries)를 사용하여 대역폭 사용량을 제한해야 합니다.
  • 클라이언트는 데이터베이스 크기 (maxDatabaseEntries)를 사용하여 기기에 필요한 RAM 또는 디스크 스토리지의 양을 제한해야 합니다.
이 두 한도는 업데이트 중인 데이터베이스의 크기에 영향을 미치므로 사용자에게 제공되는 보호 수준 (즉, 로컬 데이터베이스 크기가 클수록 보호 기능이 우수함)에 영향을 줍니다.

제약 조건 설정 안내

세이프 브라우징 목록의 크기는 점진적으로 또는 갑자기 변경될 수 있습니다. 클라이언트는 목록 업데이트 요청에 maxUpdateEntries를 설정해야 합니다. 이렇게 하면 최대 목록 업데이트 응답 크기가 제한되고 대규모 업데이트를 처리할 수 없을 때 안정성이 향상됩니다.

더 엄격한 요구사항이 없거나 덜 엄격한 요구사항이 없으면 maxUpdateEntries=16777216를 사용하는 것이 좋습니다. 일반적인 목록 항목 크기는 해시 프리픽스당 4바이트이므로 목록당 약 67MB입니다. 모바일 클라이언트에는 일반적으로 덜 강력하므로 모바일 클라이언트에는 더 작은 한도 maxUpdateEntries=2097152를 사용하는 것이 좋습니다. 일반적인 목록 항목 크기는 해시 프리픽스당 4바이트일 때 목록당 약 8MB입니다.

세이프 브라우징 목록은 크기와 성장 속도가 서로 다릅니다. 그러나 클라이언트는 각 목록에 허용되는 최대 메모리 또는 대역폭 사용량을 기준으로 모든 목록에 동일한 제약 조건을 설정해야 합니다.

안정성을 향상시키려면 클라이언트가 메모리 또는 대역폭 과다 사용을 감지하기 위한 원격 분석과 클라이언트에 새로운 제약 조건을 빠르게 제공하는 메커니즘을 구현하는 것이 좋습니다.

클라이언트 상태

세이프 브라우징 서버는 클라이언트를 오래된 상태로 유지하는 업데이트를 전송하지 않습니다. 클라이언트는 매번 업데이트 요청 후 최신 상태로 유지됩니다. 예를 들어 클라이언트가 현재 4,096개 항목으로 구성된 데이터베이스를 보유하고 있지만 최대 2,048개의 델타만 다운로드하려는 경우, 클라이언트가 실제로 오래된 경우 서버는 클라이언트를 2,048 데이터베이스로 재설정할 수 있습니다.