- From: Jeffrey Mogul <mogul@pa.dec.com>
- Date: Fri, 16 Jan 98 17:58:17 PST
- To: http-wg@cuckoo.hpl.hp.com
Some of you are probably aware of the SIGCOMM '97 paper I co-authored with Fred Douglis, Anja Feldmann, and Bala Krishnamurthy of AT&T, on the subject of "delta encoding." The idea is certainly not original with us, but we seem to have become the first to propose a specific set of protocol extensions to HTTP to support delta encoding. At about the same time, a group of people from a long list of companies submitted a proposal to W3C for a "Distribution and Replication Protocol" (DRP) that had a similar feature. So we pooled our efforts, and we've now generated an Internet-Draft describing the proposed extension: ftp://ietf.org/internet-drafts/draft-mogul-http-delta-00.txt "Delta encoding in HTTP" J Mogul, Y. Goland, Arthur van Hoff, Fred Douglis, Anja Feldmann, Balachander Krishnamurthy 01/13/1998. (104930 bytes) Many HTTP requests cause the retrieval of slightly modified instances of resources for which the client already has a cache entry. Research has shown that such modifying updates are frequent, and that the modifications are typically much smaller than the actual entity. In such cases, HTTP would make more efficient use of network bandwidth if it could transfer a minimal description of the changes, rather than the entire new instance of the resource. This is called ``delta encoding.'' This document describes how delta encoding can be supported as a compatible extension to HTTP/1.1. This is not a work item for the HTTP-WG (at least, not under the current charter), but we thought it would be a good idea to encourage comments from the HTTP-WG. Note that this is a first draft, not a final specification, so constructive comments are especially welcome. This is a fairly long draft (sorry, I tend to err on the side of including too much) but the actual set of extensions proposed for HTTP is fairly compact. For reasons that are explained in draft-mogul-http-delta-00, some of us believe that we needed a different kind of integrity mechanism than is currently provided in HTTP/1.1. A simple mechanism is proposed in another Internet-Draft: ftp://ietf.org/internet-drafts/draft-mogul-http-digest-00.txt "Instance Digests in HTTP" J Mogul, Arthur van Hoff 01/13/1998. (24829 bytes) HTTP/1.1 defines a Content-MD5 header that allows a server to include a digest of the response body. However, this is specifically defined to cover the body of the actual message, not the contents of the full file (which might be quite different, if the response is a Content-Range, or uses a delta encoding). Also, the Content-MD5 is limited to one specific digest algorithm; other algorithms, such as SHA-1, may be more appropriate in some circumstances. Finally, HTTP/1.1 provides no explicit mechanism by which a client may request a digest. This document proposes HTTP extensions that solve these problems. Again, constructive comments are welcome. Please be careful to distinguish between this "Digest" proposal and the "Digest Authentication" part of HTTP/1.1, which are two entirely different things. We expect to generate a few more drafts as a consequence of trying to recast DRP as a set of relatively independent extensions to HTTP. This does not mean that the DRP proposal is being abandoned, but it is quite likely that it will be possible to simplify DRP by adding some generally-useful extensions to HTTP instead. -Jeff
Received on Friday, 16 January 1998 18:01:23 UTC