p5-range-orig.txt   draft-fielding-http-p5-range-00.txt 
Network Working Group R. Fielding Network Working Group R. Fielding, Ed.
Internet-Draft UC Irvine Internet-Draft Day Software
Obsoletes: 2068, 2616, 2617 J. Gettys Obsoletes: 2068, 2616, 2617 J. Gettys
(if approved) Compaq/W3C (if approved) J. Mogul
Intended status: Standards Track J. Mogul Intended status: Standards Track HP
Expires: March 4, 2008 Compaq Expires: May 14, 2008 H. Frystyk
H. Frystyk Microsoft
W3C/MIT
L. Masinter L. Masinter
Xerox Adobe Systems
P. Leach P. Leach
Microsoft Microsoft
T. Berners-Lee T. Berners-Lee
W3C/MIT W3C/MIT
September 2007 November 11, 2007
HTTP/1.1, part 5: Range Requests and Partial Responses HTTP/1.1, part 5: Range Requests and Partial Responses
draft-fielding-http-p5-range-00 draft-fielding-http-p5-range-00
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.
skipping to change at page 1, line 45 skipping to change at page 1, line 44
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 March 4, 2008. This Internet-Draft will expire on May 14, 2008.
Copyright Notice Copyright Notice
Copyright (C) The IETF Trust (2007). Copyright (C) The IETF Trust (2007).
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
skipping to change at page 2, line 25 skipping to change at page 2, line 25
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Range Units . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Range Units . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. 206 Partial Content . . . . . . . . . . . . . . . . . . . . . 3 3. 206 Partial Content . . . . . . . . . . . . . . . . . . . . . 3
4. 416 Requested Range Not Satisfiable . . . . . . . . . . . . . 4 4. 416 Requested Range Not Satisfiable . . . . . . . . . . . . . 4
5. Combining Byte Ranges . . . . . . . . . . . . . . . . . . . . 4 5. Combining Byte Ranges . . . . . . . . . . . . . . . . . . . . 4
6. Header Field Definitions . . . . . . . . . . . . . . . . . . . 5 6. Header Field Definitions . . . . . . . . . . . . . . . . . . . 5
6.1. Accept-Ranges . . . . . . . . . . . . . . . . . . . . . . 5 6.1. Accept-Ranges . . . . . . . . . . . . . . . . . . . . . . 5
6.2. Content-Range . . . . . . . . . . . . . . . . . . . . . . 6 6.2. Content-Range . . . . . . . . . . . . . . . . . . . . . . 5
6.3. If-Range . . . . . . . . . . . . . . . . . . . . . . . . . 8 6.3. If-Range . . . . . . . . . . . . . . . . . . . . . . . . . 8
6.4. Range . . . . . . . . . . . . . . . . . . . . . . . . . . 8 6.4. Range . . . . . . . . . . . . . . . . . . . . . . . . . . 8
6.4.1. Byte Ranges . . . . . . . . . . . . . . . . . . . . . 8 6.4.1. Byte Ranges . . . . . . . . . . . . . . . . . . . . . 8
6.4.2. Range Retrieval Requests . . . . . . . . . . . . . . . 10 6.4.2. Range Retrieval Requests . . . . . . . . . . . . . . . 10
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 11 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11
8. Security Considerations . . . . . . . . . . . . . . . . . . . 11 8. Security Considerations . . . . . . . . . . . . . . . . . . . 11
9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 11 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 11
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Appendix A. Internet Media Type multipart/byteranges . . . . . . 11 Appendix A. Internet Media Type multipart/byteranges . . . . . . 11
Appendix B. Changes from RFC 2068 . . . . . . . . . . . . . . . . 13 Appendix B. Changes from RFC 2068 . . . . . . . . . . . . . . . . 13
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 14 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 14
Intellectual Property and Copyright Statements . . . . . . . . . . 17 Intellectual Property and Copyright Statements . . . . . . . . . . 17
1. Introduction 1. Introduction
This document will define aspects of HTTP related to range requests, This document will define aspects of HTTP related to range requests,
partial responses, and the multipart/byteranges media type. Right partial responses, and the multipart/byteranges media type. Right
skipping to change at page 4, line 8 skipping to change at page 4, line 8
body. body.
o Date o Date
o ETag and/or Content-Location, if the header would have been sent o ETag and/or Content-Location, if the header would have been sent
in a 200 response to the same request in a 200 response to the same request
o Expires, Cache-Control, and/or Vary, if the field-value might o Expires, Cache-Control, and/or Vary, if the field-value might
differ from that sent in any previous response for the same differ from that sent in any previous response for the same
variant variant
If the 206 response is the result of an If-Range request that used a If the 206 response is the result of an If-Range request, the
strong cache validator (see [Part 4]), the response SHOULD NOT response SHOULD NOT include other entity-headers. Otherwise, the
include other entity-headers. If the response is the result of an response MUST include all of the entity-headers that would have been
If-Range request that used a weak validator, the response MUST NOT returned with a 200 (OK) response to the same request.
include other entity-headers; this prevents inconsistencies between
cached entity-bodies and updated headers. Otherwise, the response
MUST include all of the entity-headers that would have been returned
with a 200 (OK) response to the same request.
A cache MUST NOT combine a 206 response with other previously cached A cache MUST NOT combine a 206 response with other previously cached
content if the ETag or Last-Modified headers do not match exactly, content if the ETag or Last-Modified headers do not match exactly,
see 5. see 5.
A cache that does not support the Range and Content-Range headers A cache that does not support the Range and Content-Range headers
MUST NOT cache 206 (Partial) responses. MUST NOT cache 206 (Partial) responses.
4. 416 Requested Range Not Satisfiable 4. 416 Requested Range Not Satisfiable
skipping to change at page 11, line 22 skipping to change at page 11, line 12
In some cases, it might be more appropriate to use the If-Range In some cases, it might be more appropriate to use the If-Range
header (see Section 6.3) in addition to the Range header. header (see Section 6.3) in addition to the Range header.
If a proxy that supports ranges receives a Range request, forwards If a proxy that supports ranges receives a Range request, forwards
the request to an inbound server, and receives an entire entity in the request to an inbound server, and receives an entire entity in
reply, it SHOULD only return the requested range to its client. It reply, it SHOULD only return the requested range to its client. It
SHOULD store the entire received response in its cache if that is SHOULD store the entire received response in its cache if that is
consistent with its cache allocation policies. consistent with its cache allocation policies.
7. Acknowledgments 7. IANA Considerations
Most of the specification of ranges is based on work originally done
by Ari Luotonen and John Franks, with additional input from Steve
Zilles.
Based on an XML translation of RFC 2616 by Julian Reschke. TBD.
8. Security Considerations 8. Security Considerations
No additional security considerations have been identified beyond No additional security considerations have been identified beyond
those applicable to HTTP in general [Part 1]. those applicable to HTTP in general [Part 1].
9. References 9. Acknowledgments
Most of the specification of ranges is based on work originally done
by Ari Luotonen and John Franks, with additional input from Steve
Zilles.
Based on an XML translation of RFC 2616 by Julian Reschke.
10. References
[RFC2046] Freed, N. and N. Borenstein, "Multipurpose Internet Mail [RFC2046] Freed, N. and N. Borenstein, "Multipurpose Internet Mail
Extensions (MIME) Part Two: Media Types", RFC 2046, Extensions (MIME) Part Two: Media Types", RFC 2046,
November 1996. November 1996.
[RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., [RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H.,
Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext
Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999. Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.
Appendix A. Internet Media Type multipart/byteranges Appendix A. Internet Media Type multipart/byteranges
skipping to change at page 13, line 44 skipping to change at page 13, line 37
2 2
206 Partial Content (status code) 3 206 Partial Content (status code) 3
4 4
416 Requested Range Not Satisfiable (status code) 4 416 Requested Range Not Satisfiable (status code) 4
A A
Accept-Ranges header 5 Accept-Ranges header 5
C C
Content-Range header 6 Content-Range header 5
G G
Grammar Grammar
Accept-Ranges 5 Accept-Ranges 5
acceptable-ranges 5 acceptable-ranges 5
byte-content-range-spec 6 byte-content-range-spec 6
byte-range-resp-spec 6 byte-range-resp-spec 6
byte-range-set 9 byte-range-set 9
byte-range-spec 9 byte-range-spec 9
byte-ranges-specifier 9 byte-ranges-specifier 9
skipping to change at page 14, line 25 skipping to change at page 14, line 19
other-range-unit 3 other-range-unit 3
Range 10 Range 10
range-unit 3 range-unit 3
ranges-specifier 9 ranges-specifier 9
suffix-byte-range-spec 9 suffix-byte-range-spec 9
suffix-length 9 suffix-length 9
H H
Headers Headers
Accept-Ranges 5 Accept-Ranges 5
Content-Range 6 Content-Range 5
If-Range 8 If-Range 8
Range 8 Range 8
I I
If-Range header 8 If-Range header 8
M M
Media Type Media Type
multipart/byteranges 11 multipart/byteranges 11
multipart/x-byteranges 13 multipart/x-byteranges 13
skipping to change at page 15, line 7 skipping to change at page 15, line 7
R R
Range header 8 Range header 8
S S
Status Codes Status Codes
206 Partial Content 3 206 Partial Content 3
416 Requested Range Not Satisfiable 4 416 Requested Range Not Satisfiable 4
Authors' Addresses Authors' Addresses
Roy T. Fielding Roy T. Fielding (editor)
Department of Information and Computer Science Day Software
University of California, Irvine 23 Corporate Plaza DR, Suite 280
Irvine, CA 92697-3425 Newport Beach, CA 92660
USA
Fax: +1(949)824-1715 Phone: +1-949-706-5300
Email: fielding@ics.uci.edu Fax: +1-949-706-5305
Email: fielding@gbiv.com
URI: http://roy.gbiv.com/
James Gettys James Gettys
World Wide Web Consortium Hewlett-Packard Company
MIT Laboratory for Computer Science, NE43-356 HP Labs, Cambridge Research Laboratory
545 Technology Square One Cambridge Center
Cambridge, MA 02139 Cambridge, MA 02138
USA
Fax: +1(617)258-8682 Email: Jim.Gettys@hp.com
Email: jg@w3.org
Jeffrey C. Mogul Jeffrey C. Mogul
Compaq Computer Corporation Hewlett-Packard Company
Western Research Laboratory HP Labs, Large Scale Systems Group
250 University Avenue 1501 Page Mill Road, MS 1177
Palo Alto, CA 94305 Palo Alto, CA 94304
USA
Email: mogul@wrl.dec.com Email: JeffMogul@acm.org
Henrik Frystyk Nielsen Henrik Frystyk Nielsen
World Wide Web Consortium Microsoft Corporation
MIT Laboratory for Computer Science, NE43-356 1 Microsoft Way
545 Technology Square Redmond, WA 98052
Cambridge, MA 02139 USA
Fax: +1(617)258-8682
Email: frystyk@w3.org
Email: henrikn@microsoft.com
Larry Masinter Larry Masinter
Xerox Corporation Adobe Systems, Incorporated
MIT Laboratory for Computer Science, NE43-356 345 Park Ave
3333 Coyote Hill Road San Jose, CA 95110
Palo Alto, CA 94034 USA
Email: LMM@acm.org
URI: http://larry.masinter.net/
Email: masinter@parc.xerox.com
Paul J. Leach Paul J. Leach
Microsoft Corporation Microsoft Corporation
1 Microsoft Way 1 Microsoft Way
Redmond, WA 98052 Redmond, WA 98052
Email: paulle@microsoft.com Email: paulle@microsoft.com
Tim Berners-Lee Tim Berners-Lee
World Wide Web Consortium World Wide Web Consortium
MIT Laboratory for Computer Science, NE43-356 MIT Laboratory for Computer Science
545 Technology Square 545 Technology Square
Cambridge, MA 02139 Cambridge, MA 02139
USA
Fax: +1(617)258-8682 Fax: +1 (617) 258 8682
Email: timbl@w3.org Email: timbl@w3.org
Full Copyright Statement Full Copyright Statement
Copyright (C) The IETF Trust (2007). Copyright (C) The IETF Trust (2007).
This document is subject to the rights, licenses and restrictions This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors contained in BCP 78, and except as set forth therein, the authors
retain all their rights. retain all their rights.
 End of changes. 27 change blocks. 
61 lines changed or deleted 66 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/