11.07.2015 Views

Network Working Group R. Fielding Request for Comments: 2616 ...

Network Working Group R. Fielding Request for Comments: 2616 ...

Network Working Group R. Fielding Request for Comments: 2616 ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Caching would be useless if it did not significantly improveper<strong>for</strong>mance. The goal of caching in HTTP/1.1 is to eliminate the needto send requests in many cases, and to eliminate the need to sendfull responses in many other cases. The <strong>for</strong>mer reduces the number ofnetwork round-trips required <strong>for</strong> many operations; we use an"expiration" mechanism <strong>for</strong> this purpose (see section 13.2). Thelatter reduces network bandwidth requirements; we use a "validation"mechanism <strong>for</strong> this purpose (see section 13.3).Requirements <strong>for</strong> per<strong>for</strong>mance, availability, and disconnectedoperation require us to be able to relax the goal of semantictransparency. The HTTP/1.1 protocol allows origin servers, caches,<strong>Fielding</strong>, et al. Standards Track [Page 74]RFC <strong>2616</strong> HTTP/1.1 June 1999and clients to explicitly reduce transparency when necessary.However, because non-transparent operation may confuse non-expertusers, and might be incompatible with certain server applications(such as those <strong>for</strong> ordering merchandise), the protocol requires thattransparency be relaxed- only by an explicit protocol-level request when relaxed byclient or origin server- only with an explicit warning to the end user when relaxed bycache or clientThere<strong>for</strong>e, the HTTP/1.1 protocol provides these important elements:1. Protocol features that provide full semantic transparency whenthis is required by all parties.2. Protocol features that allow an origin server or user agent toexplicitly request and control non-transparent operation.3. Protocol features that allow a cache to attach warnings toresponses that do not preserve the requested approximation ofsemantic transparency.A basic principle is that it must be possible <strong>for</strong> the clients todetect any potential relaxation of semantic transparency.Note: The server, cache, or client implementor might be faced withdesign decisions not explicitly discussed in this specification.If a decision might affect semantic transparency, the implementorought to err on the side of maintaining transparency unless a

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!