Changes

Jump to: navigation, search

Phishing Protection: Design Documentation

311 bytes added, 01:08, 4 November 2006
Client Backoff
The first update request happens at a random interval between 0-5 minutes after the browser starts. The second update request happens between 15-45 minutes later. After that, each update is once every 30 minutes.
If the client receives an error during update, it tries again in a minute. If it receives three errors in a row, it waits for skips updates until at least 60 minutes have passed before trying again. If it then receives another (4th) error, it waits skips updates for the next 180 minutes, and if it receives another (5th) error, it waits itskips updates for the next 360 minutes. It will continue to check once every 360 minutes until the server responds with a success message. The current implementation doesn't change the 30 minute timer interval, it just involves skipping updates until the back off time has elapsed.
A lookup request happens on page load if the user has opted into remote checking. If a lookup request fails, we automatically fall back on a local table. If there are 3 lookup failures in a 10 minute period, we wait skip lookups during the next 10 minutes before trying again. Each successive lookup failure increases the wait by (2*last wait + 10 minutes). The maximum wait before trying again is 360 minutes. As mentioned above, if we're not doing lookups, we query the local lists instead.
In both the update requests and lookup requests, once the server starts to send successful HTTP replies, the error stats are reset.

Navigation menu