电脑技术学习

RFC1975 - PPP Magnalink Variable Resource Compression

dn001

  Network Working Group D. Schremp
Request for Comments: 1975 J. Black
Category: Informational J. Weiss
Magnalink
August 1996

PPP Magnalink Variable Resource Compression

Status of This Memo

This memo provides information for the Internet community. This memo
does not specify an Internet standard of any kind. Distribution of
this memo is unlimited.

Abstract

The Point-to-Point Protocol (PPP) [1] provides a standard method of
encapsulating multiple protocol datagrams over point-to-point links.
The PPP Compression Control Protocol [2] provides a method for
negotiating data compression over PPP links.

The Magnalink Variable Resource Compression Algorithm (MVRCA) allows
a wide range of interoperable compression implementations whose
performance characteristics are a function of available CPU and
memory resources.

IntrodUCtion

The Magnalink variable resource compression algorithm defines a
family of interoperable compression solutions with compression
performance as a function of available CPU and memory resources. It
addresses the need for an algorithm which can be tailored to the
system on which it is implemented without compromising
interoperability.

Licensing

Source licenses are available on a non-discriminatory basis.

The contact person for evaluation under NDA and Licensing is:

Director of OEM Sales
Magnalink Communications Division
Telco Systems Inc.
63 Nahatan Street
Norwood, Mass. 02062
Phone: (617) 255-9400, Fax: (617) 255-5885
oem@magna.telco.com

MVRCA Packets

Before any MVRCA packets may be communicated, PPP must reach the
Network-Layer Protocol phase[1], and the Compression Control Protocol
must reach the Opened state.

The text of a Packet to be compressed begins with PPP Protocol
number. The Packet header including the PPP Protocol number may have
already been compressed when Protocol-Field-Compression has been
negotiated.

Reliability and Sequencing

MVRCA packets may be sent across an unreliable link or may use a
reliable link as described in "PPP Reliable Transmission"[3] if the
reliable link has been negotiated. If frames are delivered out of
order or a frame is dropped, the decompressor will detect this and
requests a resynchronization using the Reset-Req and Reset-Ack types
of the CCP[2], with the compressor for the affected context.

Data EXPansion

Although the compression algorithm may occasionally expand a data
packet, there is no expansion in MVRCA since any expanded data is
instead sent uncompressed. Dictionary synchronization is maintained
across uncompressed packets.

Encapsulation

The encapsulation consists of the PPP Protocol Identifier, a bit to
indicate if the data is compressed, the Context Identifier(CID), a
proprietary flag bit (E), a Packet Integrity Byte(PIB), and the
Compressed data.

0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
PPP Protocol Identifier
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
CE CID PIB C compressed flag
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1 data is compressed
Compressed data ... 0 data is not compressed
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Compressed/Uncompressed Flag (C)

When attempting to compress certain types of Packets or Fragments the
compressor may not be effective. When this occurs the uncompressed
data is added to the compression History Buffer and sent across the
link in frame with the Compressed/Uncompressed Flag(C) set to 0.

Context Identifier (CID)

Since PPP will transport multiple protocol datagrams it may be
advantageous to compress each protocol or each virtual circuit in a
different History Buffer or Context. The CID allows the compressor to
indicate to the decompressor which History Buffer the compressor
decided to use for a given Packet. The basis of this decision is up
to the implementor. The number of buffers and size of each buffer is
negotiated.

A CID of 0 indicates that the Packet by Packet context will be used
if it has been negotiated. The Packet by Packet context is cleared
between Packets so that this History Buffer is not maintained across
Packet boundaries.

Packet Integrity Byte (PIB)

To ensure that Packets are being compressed and decompressed
correctly and to ensure History Buffer synchronization is maintained,
a Packet Integrity Byte is added to the packet header.

The packet integrity byte is defined in the full protocol
specification.

Configuration Option Format

Description

The CCP MVRCA Configuration Option negotiates the use of MVRCA on the
link. By default or ultimate disagreement, no compression is used.

0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type Length FE P History # Contexts
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Type

24

Length

4

FE - Features

Negotiates features specific to this compression algorithm.

History

Defines the size of the compression history buffer. Valid values are
defined in the full protocol specification.

# Contexts

This is the number of contexts. Each context implies the creation of
a History Buffer for that context of the size indicated in the
Context History field. Values are 1-63. This value includes both
the Packet by Packet context and the number of contexts for which
history is maintained. Therefore, when this value is 1 and the P
(Packet by Packet) flag is also 1, then only in packet compression is
supported and history context is not retained across packet
boundaries. The Context Identifier (CID) starts with 1 for contexts
where the history is maintained.

P - Packet by Packet flag

When 1, packet by packet compression is enabled for the context whose
context ID is 0. When P is 0, packet by packet compression is not
supported.

Security Considerations

Security issues are not discussed in this memo.

References

[1] Simpson, W., Editor, "The Point-to-Point Protocol (PPP)", STD 51,
RFC1661, July 1994.

[2] Rand, D., "The PPP Compression Control Protocol (CCP)", RFC1962,
June 1996.

[3] Rand, D., "PPP Reliable Transmission", RFC1663, July 1994.

Acknowledgments

Chair's Address

The working group can be contacted via the current chair:

Karl Fox
Ascend Communications
3518 Riverside Drive, Suite 101
Columbus, Ohio 43221

EMail: karl@ascend.com

Authors' Addresses

Comments about this document may also be directed to the authors.

Doug Schremp
Telco Systems, Inc.
Magnalink Communications Division
63 Nahatan Street
Norwood Ma. 02062

Phone: (617) 255-9400
EMail: dhs@magna.telco.com

Jeffrey Black
Telco Systems, Inc.
Magnalink Communications Division
63 Nahatan Street
Norwood Ma. 02062

Phone: (617) 255-9400
EMail: jtb@magna.telco.com

Jeffrey Weiss
Telco Systems, Inc.
Magnalink Communications Division
63 Nahatan Street
Norwood Ma. 02062

Phone: (617) 255-9400
EMail: jaw@magna.telco.com