Connected: An Internet Encyclopedia
Header Compression (CPPP/CSLIP)

Top: Connected: An Internet Encyclopedia
Up: Topics
Up: Hardware Media
Up: Serial Links

Search: |  | Search Depth: |
Search Type: | String RegEx | Search Options: | NoCase WholeWord

### Header Compression (CPPP/CSLIP)

The Internet protocols introduce heavy overhead for some common types of network traffic. Probably the most extreme case is an interactive session with a user typing on a keyboard. With each keystroke, a packet is sent to the remote host and a reply is returned. Even though only a single byte of data is being sent, the addition of a TCP header (20 bytes) and an IP header (another 20 bytes) expand the resulting packet to at least 41 bytes. This represents 4000% overhead!

These problems are not apparent on Ethernet media, which enforces a 64-byte minimum size on all packets at the Data Link Layer. Other media may also be fast enough to disguise the problem, but dial-up modems can't tolerate such inefficiencies. RFC 1144 documents Van Jacobson compression, a popular technique for compressing TCP/IP headers. Van Jacobson compression can reduce packet header overhead from 4000% to 300%, enough to yield acceptable interactive performance at 2400 bps. This is often used in conjunction with SLIP or PPP, and referred to as CSLIP or CPPP.

- Header, not data compression. Van Jacobson compression makes no attempt to compress the data portion of the packet.

- End-to-end checksum. The orignal TCP checksum is always preserved, transmitted unmodified, and used to check the validity of the reconstructed packet. A sound case (the so-called end-to-end argument) can be made on the inherent robustness of this approach. Of course, the robustness is only as good as the checksum algorithm itself.

Connected: An Internet Encyclopedia
Header Compression (CPPP/CSLIP)