| draft-ietf-httpbis-p6-cache-03.txt |  | draft-ietf-httpbis-p6-cache-04.txt |
--- | --- | --- | --- | ---
| Network Working Group R. Fielding, Ed. |  | Network Working Group R. Fielding, Ed. |
| Internet-Draft Day Software |  | Internet-Draft Day Software |
| Obsoletes: 2616 (if approved) J. Gettys |  | Obsoletes: 2616 (if approved) J. Gettys |
| Intended status: Standards Track One Laptop per Child |  | Intended status: Standards Track One Laptop per Child |
| Expires: December 19, 2008 J. Mogul |  | Expires: March 2, 2009 J. Mogul |
| HP |  | HP |
| H. Frystyk |  | H. Frystyk |
| Microsoft |  | Microsoft |
| L. Masinter |  | L. Masinter |
| Adobe Systems |  | Adobe Systems |
| P. Leach |  | P. Leach |
| Microsoft |  | Microsoft |
| T. Berners-Lee |  | T. Berners-Lee |
| W3C/MIT |  | W3C/MIT |
| Y. Lafon, Ed. |  | Y. Lafon, Ed. |
| W3C |  | W3C |
| J. Reschke, Ed. |  | J. Reschke, Ed. |
| greenbytes |  | greenbytes |
| June 17, 2008 |  | August 29, 2008 |
| HTTP/1.1, part 6: Caching |  | HTTP/1.1, part 6: Caching |
| draft-ietf-httpbis-p6-cache-03 |  | draft-ietf-httpbis-p6-cache-04 |
| Status of this Memo |  | Status of this Memo |
| By submitting this Internet-Draft, each author represents that any |  | By submitting this Internet-Draft, each author represents that any |
| applicable patent or other IPR claims of which he or she is aware |  | applicable patent or other IPR claims of which he or she is aware |
| have been or will be disclosed, and any of which he or she becomes |  | have been or will be disclosed, and any of which he or she becomes |
| aware will be disclosed, in accordance with Section 6 of BCP 79. |  | aware will be disclosed, in accordance with Section 6 of BCP 79. |
| Internet-Drafts are working documents of the Internet Engineering |  | Internet-Drafts are working documents of the Internet Engineering |
| Task Force (IETF), its areas, and its working groups. Note that |  | Task Force (IETF), its areas, and its working groups. Note that |
| skipping to change at page 1, line 49 |  | skipping to change at page 1, line 49 |
| and may be updated, replaced, or obsoleted by other documents at any |  | and may be updated, replaced, or obsoleted by other documents at any |
| time. It is inappropriate to use Internet-Drafts as reference |  | time. It is inappropriate to use Internet-Drafts as reference |
| material or to cite them other than as "work in progress." |  | material or to cite them other than as "work in progress." |
| The list of current Internet-Drafts can be accessed at |  | The list of current Internet-Drafts can be accessed at |
| http://www.ietf.org/ietf/1id-abstracts.txt. |  | http://www.ietf.org/ietf/1id-abstracts.txt. |
| The list of Internet-Draft Shadow Directories can be accessed at |  | The list of Internet-Draft Shadow Directories can be accessed at |
| http://www.ietf.org/shadow.html. |  | http://www.ietf.org/shadow.html. |
| This Internet-Draft will expire on December 19, 2008. |  | This Internet-Draft will expire on March 2, 2009. |
| Abstract |  | Abstract |
| The Hypertext Transfer Protocol (HTTP) is an application-level |  | The Hypertext Transfer Protocol (HTTP) is an application-level |
| protocol for distributed, collaborative, hypermedia information |  | protocol for distributed, collaborative, hypermedia information |
| systems. HTTP has been in use by the World Wide Web global |  | systems. HTTP has been in use by the World Wide Web global |
| information initiative since 1990. This document is Part 6 of the |  | information initiative since 1990. This document is Part 6 of the |
| seven-part specification that defines the protocol referred to as |  | seven-part specification that defines the protocol referred to as |
| "HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 6 defines |  | "HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 6 defines |
| requirements on HTTP caches and the associated header fields that |  | requirements on HTTP caches and the associated header fields that |
| skipping to change at page 4, line 20 |  | skipping to change at page 4, line 20 |
| 20.2. Informative References . . . . . . . . . . . . . . . . . . 44 |  | 20.2. Informative References . . . . . . . . . . . . . . . . . . 44 |
| Appendix A. Compatibility with Previous Versions . . . . . . . . 44 |  | Appendix A. Compatibility with Previous Versions . . . . . . . . 44 |
| A.1. Changes from RFC 2068 . . . . . . . . . . . . . . . . . . 44 |  | A.1. Changes from RFC 2068 . . . . . . . . . . . . . . . . . . 44 |
| A.2. Changes from RFC 2616 . . . . . . . . . . . . . . . . . . 45 |  | A.2. Changes from RFC 2616 . . . . . . . . . . . . . . . . . . 45 |
| Appendix B. Change Log (to be removed by RFC Editor before |  | Appendix B. Change Log (to be removed by RFC Editor before |
| publication) . . . . . . . . . . . . . . . . . . . . 45 |  | publication) . . . . . . . . . . . . . . . . . . . . 45 |
| B.1. Since RFC2616 . . . . . . . . . . . . . . . . . . . . . . 45 |  | B.1. Since RFC2616 . . . . . . . . . . . . . . . . . . . . . . 45 |
| B.2. Since draft-ietf-httpbis-p6-cache-00 . . . . . . . . . . . 45 |  | B.2. Since draft-ietf-httpbis-p6-cache-00 . . . . . . . . . . . 45 |
| B.3. Since draft-ietf-httpbis-p6-cache-01 . . . . . . . . . . . 46 |  | B.3. Since draft-ietf-httpbis-p6-cache-01 . . . . . . . . . . . 46 |
| B.4. Since draft-ietf-httpbis-p6-cache-02 . . . . . . . . . . . 46 |  | B.4. Since draft-ietf-httpbis-p6-cache-02 . . . . . . . . . . . 46 |
|  |  | B.5. Since draft-ietf-httpbis-p6-cache-03 . . . . . . . . . . . 46 |
| Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 |  | Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 |
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 49 |  | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 49 |
| Intellectual Property and Copyright Statements . . . . . . . . . . 52 |  | Intellectual Property and Copyright Statements . . . . . . . . . . 52 |
| 1. Introduction |  | 1. Introduction |
| HTTP is typically used for distributed information systems, where |  | HTTP is typically used for distributed information systems, where |
| performance can be improved by the use of response caches, and |  | performance can be improved by the use of response caches, and |
| includes a number of elements intended to make caching work as well |  | includes a number of elements intended to make caching work as well |
| as possible. Because these elements interact with each other, it is |  | as possible. Because these elements interact with each other, it is |
| skipping to change at page 38, line 42 |  | skipping to change at page 38, line 42 |
| HTTP/1.1 caches SHOULD treat "Pragma: no-cache" as if the client had |  | HTTP/1.1 caches SHOULD treat "Pragma: no-cache" as if the client had |
| sent "Cache-Control: no-cache". No new Pragma directives will be |  | sent "Cache-Control: no-cache". No new Pragma directives will be |
| defined in HTTP. |  | defined in HTTP. |
| Note: because the meaning of "Pragma: no-cache" as a response- |  | Note: because the meaning of "Pragma: no-cache" as a response- |
| header field is not actually specified, it does not provide a |  | header field is not actually specified, it does not provide a |
| reliable replacement for "Cache-Control: no-cache" in a response. |  | reliable replacement for "Cache-Control: no-cache" in a response. |
| 16.5. Vary |  | 16.5. Vary |
| The Vary field value indicates the set of request-header fields that |  | The Vary response-header field's value indicates the set of request- |
| fully determines, while the response is fresh, whether a cache is |  | header fields that fully determines, while the response is fresh, |
| permitted to use the response to reply to a subsequent request |  | whether a cache is permitted to use the response to reply to a |
| without revalidation. For uncacheable or stale responses, the Vary |  | subsequent request without revalidation. For uncacheable or stale |
| field value advises the user agent about the criteria that were used |  | responses, the Vary field value advises the user agent about the |
| to select the representation. A Vary field value of "*" implies that |  | criteria that were used to select the representation. A Vary field |
| a cache cannot determine from the request headers of a subsequent |  | value of "*" implies that a cache cannot determine from the request |
| request whether this response is the appropriate representation. See |  | headers of a subsequent request whether this response is the |
| Section 8 for use of the Vary header field by caches. |  | appropriate representation. See Section 8 for use of the Vary header |
|  |  | field by caches. |
| Vary = "Vary" ":" ( "*" | 1#field-name ) |  | Vary = "Vary" ":" ( "*" | 1#field-name ) |
| An HTTP/1.1 server SHOULD include a Vary header field with any |  | An HTTP/1.1 server SHOULD include a Vary header field with any |
| cacheable response that is subject to server-driven negotiation. |  | cacheable response that is subject to server-driven negotiation. |
| Doing so allows a cache to properly interpret future requests on that |  | Doing so allows a cache to properly interpret future requests on that |
| resource and informs the user agent about the presence of negotiation |  | resource and informs the user agent about the presence of negotiation |
| on that resource. A server MAY include a Vary header field with a |  | on that resource. A server MAY include a Vary header field with a |
| non-cacheable response that is subject to server-driven negotiation, |  | non-cacheable response that is subject to server-driven negotiation, |
| since this might provide the user agent with useful information about |  | since this might provide the user agent with useful information about |
| the dimensions over which the response varies at the time of the |  | the dimensions over which the response varies at the time of the |
| response. |  | response. |
| skipping to change at page 43, line 27 |  | skipping to change at page 43, line 27 |
| [ISO-8859-1] |  | [ISO-8859-1] |
| International Organization for Standardization, |  | International Organization for Standardization, |
| "Information technology -- 8-bit single-byte coded graphic |  | "Information technology -- 8-bit single-byte coded graphic |
| character sets -- Part 1: Latin alphabet No. 1", ISO/ |  | character sets -- Part 1: Latin alphabet No. 1", ISO/ |
| IEC 8859-1:1998, 1998. |  | IEC 8859-1:1998, 1998. |
| [Part1] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |  | [Part1] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |
| Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |  | Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |
| and J. Reschke, Ed., "HTTP/1.1, part 1: URIs, Connections, |  | and J. Reschke, Ed., "HTTP/1.1, part 1: URIs, Connections, |
| and Message Parsing", draft-ietf-httpbis-p1-messaging-03 |  | and Message Parsing", draft-ietf-httpbis-p1-messaging-04 |
| (work in progress), June 2008. |  | (work in progress), August 2008. |
| [Part2] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |  | [Part2] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |
| Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |  | Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |
| and J. Reschke, Ed., "HTTP/1.1, part 2: Message |  | and J. Reschke, Ed., "HTTP/1.1, part 2: Message |
| Semantics", draft-ietf-httpbis-p2-semantics-03 (work in |  | Semantics", draft-ietf-httpbis-p2-semantics-04 (work in |
| progress), June 2008. |  | progress), August 2008. |
| [Part3] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |  | [Part3] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |
| Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |  | Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |
| and J. Reschke, Ed., "HTTP/1.1, part 3: Message Payload |  | and J. Reschke, Ed., "HTTP/1.1, part 3: Message Payload |
| and Content Negotiation", draft-ietf-httpbis-p3-payload-03 |  | and Content Negotiation", draft-ietf-httpbis-p3-payload-04 |
| (work in progress), June 2008. |  | (work in progress), August 2008. |
| [Part4] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |  | [Part4] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |
| Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |  | Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |
| and J. Reschke, Ed., "HTTP/1.1, part 4: Conditional |  | and J. Reschke, Ed., "HTTP/1.1, part 4: Conditional |
| Requests", draft-ietf-httpbis-p4-conditional-03 (work in |  | Requests", draft-ietf-httpbis-p4-conditional-04 (work in |
| progress), June 2008. |  | progress), August 2008. |
| [Part5] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |  | [Part5] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |
| Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |  | Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |
| and J. Reschke, Ed., "HTTP/1.1, part 5: Range Requests and |  | and J. Reschke, Ed., "HTTP/1.1, part 5: Range Requests and |
| Partial Responses", draft-ietf-httpbis-p5-range-03 (work |  | Partial Responses", draft-ietf-httpbis-p5-range-04 (work |
| in progress), June 2008. |  | in progress), August 2008. |
| [Part7] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |  | [Part7] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |
| Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |  | Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |
| and J. Reschke, Ed., "HTTP/1.1, part 7: Authentication", |  | and J. Reschke, Ed., "HTTP/1.1, part 7: Authentication", |
| draft-ietf-httpbis-p7-auth-03 (work in progress), |  | draft-ietf-httpbis-p7-auth-04 (work in progress), |
| June 2008. |  | August 2008. |
| [RFC2047] Moore, K., "MIME (Multipurpose Internet Mail Extensions) |  | [RFC2047] Moore, K., "MIME (Multipurpose Internet Mail Extensions) |
| Part Three: Message Header Extensions for Non-ASCII Text", |  | Part Three: Message Header Extensions for Non-ASCII Text", |
| RFC 2047, November 1996. |  | RFC 2047, November 1996. |
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate |  | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate |
| Requirement Levels", BCP 14, RFC 2119, March 1997. |  | Requirement Levels", BCP 14, RFC 2119, March 1997. |
| 20.2. Informative References |  | 20.2. Informative References |
| skipping to change at page 46, line 39 |  | skipping to change at page 46, line 39 |
| other parts of the specification. |  | other parts of the specification. |
| B.4. Since draft-ietf-httpbis-p6-cache-02 |  | B.4. Since draft-ietf-httpbis-p6-cache-02 |
| Ongoing work on IANA Message Header Registration |  | Ongoing work on IANA Message Header Registration |
| (<http://www3.tools.ietf.org/wg/httpbis/trac/ticket/40>): |  | (<http://www3.tools.ietf.org/wg/httpbis/trac/ticket/40>): |
| o Reference RFC 3984, and update header registrations for headers |  | o Reference RFC 3984, and update header registrations for headers |
| defined in this document. |  | defined in this document. |
|  |  | B.5. Since draft-ietf-httpbis-p6-cache-03 |
|  |  | Closed issues: |
|  |  | o <http://www3.tools.ietf.org/wg/httpbis/trac/ticket/106>: "Vary |
|  |  | header classification" |
| Index |  | Index |
| A |  | A |
| age 7 |  | age 7 |
| Age header 27 |  | Age header 27 |
| C |  | C |
| cache 5 |  | cache 5 |
| Cache Directives |  | Cache Directives |
| max-age 32-33 |  | max-age 32-33 |
| max-stale 32 |  | max-stale 32 |
| min-fresh 32 |  | min-fresh 32 |
| must-revalidate 34 |  | must-revalidate 34 |
| no-cache 29 |  | no-cache 29 |
| no-store 30 |  | no-store 30 |
| no-transform 35 |  | no-transform 35 |
End of changes. 15 change blocks.
| 26 lines changed or deleted |  | 35 lines changed or added |
This html diff was produced by rfcdiff 1.34. The latest version is available from http://tools.ietf.org/tools/rfcdiff/