Browse Prior Art Database

Compressing TCP/IP headers for low-speed serial links (RFC1144)

IP.com Disclosure Number: IPCOM000001955D
Original Publication Date: 1990-Feb-01
Included in the Prior Art Database: 2001-Oct-24

Publishing Venue

Internet Society Requests For Comment (RFCs)

Related People

V. Jacobson: AUTHOR

Abstract

As increasingly powerful computers find their way into people's homes, there is growing interest in extending Internet connectivity to those computers. Unfortunately, this extension exposes some complex problems in link-level framing, address assignment, routing, authentication and performance. As of this writing there is active work in all these areas. This memo describes a method that has been used to improve TCP/IP performance over low speed (300 to 19,200 bps) serial links.

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

   Network Working Group                                     V. Jacobson/1/

   Request for Comments: 1144                                           LBL

                                                              February 1990

                          Compressing TCP/IP Headers

                          for Low-Speed Serial Links

   Status of this Memo

   This RFC is a proposed elective protocol for the Internet community and

   requests discussion and suggestions for improvement.  It describes a

   method for compressing the headers of TCP/IP datagrams to improve

   performance over low speed serial links.  The motivation, implementation

   and performance of the method are described.  C code for a sample

   implementation is given for reference.  Distribution of this memo is

   unlimited.

   NOTE: Both ASCII and Postscript versions of this document are available.

         The ASCII version, obviously, lacks all the figures and all the

               information encoded in typographic variation (italics, boldface,

               etc.).  Since this information was, in the author's opinion, an

               essential part of the document, the ASCII version is at best

               incomplete and at worst misleading.  Anyone who plans to work

               with this protocol is strongly encouraged obtain the Postscript

               version of this RFC.

   ----------------------------

     1. This work was supported in part by the U.S. Department of Energy

   under Contract Number DE-AC03-76SF00098.

   Contents

   1  Introduction                                                        1

   2  The problem                                                         1

   3  The compression algorithm                                           4

      3.1 The basic idea . . . . . . . . . . . . . . . . . . . . . . . .  4

      3.2 The ugly details . . . . . . . . . . . . . . . . . . . . . . .  5

         3.2.1 Overview. . . . . . . . . . . . . . . . . . . . . . . . .  5

         3.2.2 Compressed packet format. . . . . . . . . . . . . . . . .  7

         3.2.3 Compressor processing . . . . . . . . . . . . . . . . . .  8

         3.2.4 Decompressor processing . . . . . . . . . . . . . . . . . 12

   4  Error handling                                                     14

      4.1 Error detection  . . . . . . . . . . . . . . . . . . . . . . . 14

      4.2 Error recovery . . . . . . . . . . . . . . . . . . . . . . . . 17

   5  Configurable parameters and tuning                                 18

      5.1 Compression configuration  . . . . . . . . . . . . . . . . . . 18

      5.2 Choosing a maximum transmission unit . . . . . . . . . . . . . 20

      5.3 Interaction with data compression  . . . . . . . . . . . . . . 21

   6  Performance measurements                                           23

   7  Acknowlegements                                                    25

   A  Sample Implementation                                              27

      A.1 Definitions and State Data . . . . . . . . . . . . . . . . . . 28

      A.2 Compression  . . . . . . . . . . . . . . . . . . . . . . . . . 31

                                      i

      A.3 Decompression  . . . . . . . . . . . . . . . . . . . . . . . . 37

      A.4 Initialization . . . . . . . . . . . . . . . . . . . . . . . . 41

      A.5 Berkeley Unix dependencies . . . . . . . . . . . . . . . . . . 41

   B  Compatibility with past mistakes                                   43

      B.1 Living without a framing `type' byte . . . . . . . . . . . . . 43

      B.2 Backwards compatible SLIP servers  . . . . . . . . . . . . . . 43

   C  More aggressive compression                                        45

   D  Security Considerations                                            46

   E  Author's address                                                   46

                                      ii

   RFC 1144               Compressing TCP/IP Headers          February 1990

   1  Introduction

   As increasingly powerful computers find their way into people's homes,

   there is growing interest in extending Internet connectivity to those

   computers.  Unfortunately, th...