1. Introduction
HTTP [RFC2616] exige que les caches "répondent à une requête avec la réponse la plus à jour détenue... qui est appropriée à la requête", bien que "dans des circonstances soigneusement examinées", une réponse périmée soit autorisée à être renvoyée. Ce document définit deux extensions Cache-Control indépendantes qui permettent un tel contrôle, stale-if-error et stale-while-revalidate.
L'extension HTTP Cache-Control stale-if-error permet à un cache de renvoyer une réponse périmée lorsqu'une erreur -- par exemple, une erreur interne du serveur 500, un segment réseau ou une défaillance DNS -- est rencontrée, plutôt que de renvoyer une erreur "dure". Cela améliore la disponibilité.
L'extension HTTP Cache-Control stale-while-revalidate permet à un cache de renvoyer immédiatement une réponse périmée pendant qu'il la revalide en arrière-plan, masquant ainsi la latence (à la fois sur le réseau et sur le serveur) aux clients.
2. Conventions de notation (Notational Conventions)
Les mots clés "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", et "OPTIONAL" dans ce document doivent être interprétés comme décrit dans la RFC 2119 [RFC2119].
Cette spécification utilise la forme de Backus-Naur augmentée de la RFC 2616 [RFC2616], et elle inclut la règle delta-seconds de cette spécification.