Browse Prior Art Database

Delta encoding in HTTP (RFC3229)

IP.com Disclosure Number: IPCOM000006597D
Original Publication Date: 2002-Jan-01
Included in the Prior Art Database: 2002-Jan-16

Publishing Venue

Internet Society Requests For Comment (RFCs)

Related People

J. Mogul: AUTHOR [+7]

Abstract

This document describes how delta encoding can be supported as a compatible extension to HTTP/1.1.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 3% of the total text.

Network Working Group                                           J. Mogul

Request for Comments: 3229                                    Compaq WRL

Category: Standards Track                               B. Krishnamurthy

                                                              F. Douglis

                                                                    AT&T

                                                             A. Feldmann

                                                   Univ. of Saarbruecken

                                                               Y. Goland

                                                             A. van Hoff

                                                                 Marimba

                                                          D. Hellerstein

                                                                ERS/USDA

                                                            January 2002

                         Delta encoding in HTTP

Status of this Memo

   This document specifies an Internet standards track protocol for the

   Internet community, and requests discussion and suggestions for

   improvements.  Please refer to the current edition of the "Internet

   Official Protocol Standards" (STD 1) for the standardization state

   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2002).  All Rights Reserved.

Abstract

   This document describes how delta encoding can be supported as a

   compatible extension to HTTP/1.1.

   Many HTTP (Hypertext Transport Protocol) 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."

Mogul, et al.               Standards Track                     [Page 1]

RFC 3229                 Delta encoding in HTTP             January 2002

Table of Contents

   1 Introduction....................................................  3

        1.1 Related research and proposals...........................  4

   2 Goals...........................................................  5

   3 Terminology.....................................................  6

   4 The HTTP message-generation sequence............................  8

        4.1 Relationship between deltas and ranges................... 11

   5 Basic mechanisms................................................ 13

        5.1 Background: an overview of HTTP cache validation......... 13

        5.2 Requesting the transmission of deltas.................... 14

        5.3 Choice of delta algorithm and format..................... 16

        5.4 Identification of delta-encoded responses................ 16

        5.5 Guaranteeing cache safety................................ 17

        5.6 Transmission of delta-encoded responses.................. 18

        5.7 Examples of requests combining Range and delta encoding.. 19

   6 Encoding algorithms and formats................................. 22

   7 Management of base instances.................................... 23

        7.1 Multiple entity tags in the If-None-Match header......... 24

        7.2 Hints for managing the client cache...................... 25

   8 Deltas and intermediate caches.................................. 27

   9 Digests for data integrity...................................... 28

   10 Specification.................................................. 28

        10.1 Protocol parameter specifications....................... 28

        10.2 IANA Considerations..................................... 30

        10.3 Basic requirements for delta-encode...