- From: Jeffrey Mogul <mogul@pa.dec.com>
- Date: Mon, 03 Jun 96 14:22:44 MDT
- To: Dave Kristol <dmk@allegra.att.com>
- Cc: http-wg%cuckoo.hpl.hp.com@hplb.hpl.hp.com
1) 10.2.7 206 Partial Request is worded to apply only to responses that contain a *single* byte range, and a Content-Range header. ("The response MUST include a Content-Range header....") Does that mean I should use 200 (OK) for responses with multiple byte ranges? No, I think the description of 206 needs adjusting. Instead of The server has fulfilled the partial GET request for the resource. The request must have included a Range header field (section 14.36) indicating the desired range. The response MUST include a Content-Range header field (section 14.17) indicating the range included with this response. The Content-Length header field in the response MUST match the actual number of OCTETs transmitted in the message-body. it should say The server has fulfilled the partial GET request for the resource. The request must have included a Range header field (section 14.36) indicating the desired range. The response MUST include either a Content-Range header field (section 14.17) indicating the range included with this response, or a multipart/byteranges Content-Type including Content-Range fields for each part. If multipart/byteranges is not used, the Content-Length header field in the response MUST match the actual number of OCTETs transmitted in the message-body. I think this was the intent of the byte-range draft all along. 2) 19.2 MIME multipart/byteranges Content-type b) The words ("...includes two or more parts...") imply that multipart/byteranges cannot be used to send just a single byterange. This is a little trickier. If the client is not able to part the multipart/byteranges Content-type, it can avoid receiving such a response simply by never requesting multiple ranges (under the current wording). If we make your suggested change: 2) multipart/byteranges can be used to send just a single range. then we have to insist that any client using Range has to implement multipart/byteranges. Note that Netscape's current practice, according to Lou Montulli, is to use multipart/byteranges *only* for multiple-part responses. 3) 14.17 Content-Range The words here (and in 19.2) say "... multiple non-overlapping ranges...". That implies that a server a) will detect and coalesce overlapping ranges in Range. b) will use multipart/byteranges only when it sends more than one distinct range. Actually, that term is used only in sentences that begin "for example" and is not normative. I think there is nothing in the spec that requires or prevents coalescing, and I think it should stay that way. I would certainly expect coalescing to be a slightly more efficient use of network resources, but perhaps not of server resources. -Jeff
Received on Monday, 3 June 1996 14:31:42 UTC