rfc1963.txt
来自「RFC 的详细文档!」· 文本 代码 · 共 1,124 行 · 第 1/3 页
TXT
1,124 行
Network Working Group K. Schneider
Request for Comments: 1963 S. Venters
Category: Informational ADTRAN, Inc.
August 1996
PPP Serial Data Transport Protocol (SDTP)
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 for
transporting multi-protocol datagrams over point-to-point links. PPP
defines an extensible Link Control Protocol, and proposes a family of
Network Control Protocols for establishing and configuring different
network-layer protocols.
This document describes a new Network level protocol (from the PPP
point of view), PPP Serial Data Transport Protocol, that provides
encapsulation and an associated control protocol for transporting
serial data streams over a PPP link. This protocol was developed for
the purpose of using PPP's many features to provide a standard method
for synchronous data compression. The encapsulation uses a header
structure based on that of the ITU-T Recommendation V.120 [2].
Table of Contents
1. Introduction .......................................... 2
2. SDTP Packets .......................................... 3
2.1 Padding ......................................... 4
2.2 Packet Formats .................................. 4
3. Serial Data Control Protocol .......................... 11
4. SDCP Configuration Option Format ...................... 12
4.1 Packet-Format ................................... 13
4.2 Header-Type ..................................... 13
4.3 Length-Field-Present ............................ 14
4.4 Multi-Port ...................................... 14
4.5 Transport-Mode .................................. 15
4.6 Maximum-Frame-Size .............................. 16
4.7 Allow-Odd-Frames ................................ 16
4.8 FCS-Type ........................................ 17
4.9 Flow-Expiration-Time ............................ 18
SECURITY CONSIDERATIONS ...................................... 19
Schneider & Venters Informational [Page 1]
RFC 1963 PPP SDTP August 1996
REFERENCES ................................................... 19
CHAIR'S ADDRESS .............................................. 20
AUTHORS' ADDRESSES ........................................... 20
1. Introduction
This document is a product of the TR30.1 ad hoc committee on
compression of synchronous data. It represents a component of a
proposal to use PPP to provide compression of synchronous data in
DSU/CSUs.
In addition to providing support for multi-protocol datagrams, the
Point-to-Point Protocol (PPP) [1] has defined an effective and robust
negotiating mechanism that can be used on point to point links. When
used in conjunction with the PPP Compression Control Protocol [3] and
one of the PPP Compression Protocols [4-10], PPP provides an
interoperable method of employing data compression on a point-to-
point link.
This document provides a PPP encapsulation for serial data,
specifying a transport protocol, PPP Serial Data Transport Protocol
(PPP-SDTP), and an associated control protocol, PPP Serial Data
Control Protocol (PPP-SDCP). When these protocols are added to above
mentioned PPP protocols, PPP can be used to provide compression of
serial data on a point-to-point link.
This first edition of PPP-SDTP/SDCP covers HDLC-like synchronous
serial data and asynchronous serial data. It does this by using a
terminal adaption header based on that of ITU-T Recommendation V.120
[2]. Support may be added in the future for other synchronous
protocols as the marketplace demands.
The V.120 terminal adaption header allows transported data frames to
be split over several packets, supports the transport of DTE port
idle and error information, and optionally supports the transport of
DTE control state information.
In addition to the V.120 Header, fields can be added to the packet
format through negotiation to provide support for features not
included in the V.120 header. The extra fields are: a Length Field,
which is used to distinguish packets in compound frames, and a Port
field, which is used to provide multi-port multiplexing capability.
The protocol also allows reserved bits in the V.120 header to be used
to transport non-octet aligned frames and to provide a flow control
mechanism.
Schneider & Venters Informational [Page 2]
RFC 1963 PPP SDTP August 1996
To provide these features, PPP-SDTP permits a single frame format to
be selected from several possible formats by using PPP-SDCP
negotiation. The terminal adaption header can be either fixed length
or variable length, to allow either simplicity or flexibility.
The default frame format places the terminal adaption header at the
end of the packet. This permits optimal transmitter timelines when
user frames are segmented and compression is also used in conjunction
with this protocol.
2. SDTP Packets
Before any SDTP packets may be communicated, PPP must reach the
Network-Layer Protocol phase, and the SDTP Control Protocol must
reach the Opened state.
By default, exactly one SDTP packet is encapsulated in the PPP
Information field, where the PPP Protocol field indicates type hex
0049 (PPP-SDTP). If the Length-Field-Present Configuration Option
and the LCP Compound-Frames Configuration Option are successfully
negotiated, multiple SDTP packets may be placed in the PPP
Information field, and they are distinguished by the presence of
Length fields in each packet.
The maximum length of the SDTP datagram transmitted over a PPP link
is limited only by the negotiated Maximum-Frame-Size and the maximum
length of the Information field of a PPP encapsulated packet. Note
that if compression is used on the PPP link, this the maximum length
of the SDTP datagram may be larger or smaller than the maximum
length of the Information field of a PPP encapsulated packet,
depending on the particular compression algorithm and protocol used.
ITU-T Recommendation V.120 [2] defines an adaption header that is
used with its asynchronous and synchronous modes of operation. SDTP
packets include this header as a Header field to provide the protocol
adaption function. Using negotiation, additional fields can be added
to the packet to provide sequencing and multiplexing capability
within SDTP. SDTP also has an option of using the reserved bits of
the header to provide a flow control mechanism and support for
transporting non-octet aligned data frames.
The default SDTP packet format is designed to allow the efficient use
of the protocol's segmentation feature when combined with a PPP
Compression Protocol [4-10]. This format is a little different from
other PPP NCP's in that data is read from both ends of the packet.
The Header field is placed at the end of the SDTP packet, with the
order of the octets reversed. This somewhat unique format has been
selected to allow optimal transmitter timelines when compression is
Schneider & Venters Informational [Page 3]
RFC 1963 PPP SDTP August 1996
used and transported data frames are split into multiple SDTP
packets. In such a situation, the Header field contains the
information about whether the data is split into multiple packets or
not, so if it is located at the end of a packet, the decision can be
made after observing the compressed size of the packet. The Header
field can then simply be run through the compressor after the
decision has been made.
When the Header field is placed before the data, as in the optional
packet format, the transmitter must make the decision about whether
to split a frame over multiple packets without knowing about the
compressibility of the frame. Therefore the optional format is
designed to be used when transported frames are not split into
multiple SDTP packets or where SDTP is not coupled with compression.
It is believed that this format may be useful for some hardware
implementations.
2.1. Padding
If padding is used, SDTP packets require the use of the Length Field
or the previous negotiation of the LCP Self-Describing-Padding
Configuration Option [11].
2.2. Packet Formats
The default SDTP packet format is shown below. The fields are
transmitted from left to right.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PPP Protocol ID | Transported Data ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Header - H |
+-+-+-+-+-+-+-+-+
The two complete frame formats are shown below: Header-Last and
Header-First. Header-Last is the default packet format. The
additional fields provided support for: Control State Information
(CS), multiple packets and multi-port multiplexing. Again, the
fields are transmitted from left to right. Descriptions of the
fields follow the packet formats.
Schneider & Venters Informational [Page 4]
RFC 1963 PPP SDTP August 1996
Header-Last
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PPP Protocol ID | (Length) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (Port) | Transported Data / (Odd-Pad) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Header - (CS) : H |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Header-First
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PPP Protocol ID | (Length) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (Port) | Header - H : (CS) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Transported Data / (Odd-Pad) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
PPP Protocol ID
The PPP Protocol ID field is described in the Point-to-Point
Protocol Encapsulation [1].
When the SDTP Protocol is successfully negotiated by the SDTP
Control Protocol (SDCP), the value is 0049 hex. This value may be
compressed to one octet when Protocol-Field-Compression is
negotiated, or if one of the PPP compression protocols [4-10] is
used.
Length
The optional Length field is present in every SDTP packet upon
successful negotiation of the Length-Field-Present Configuration
Option.
The value of the Length field is the combined lengths of the
Length, Port (if present), Header, Transmitted Data, and Odd-Pad
(if present) fields in octets.
The length of the Length field defaults to one octet. Valid
lengths are from 2 to 255 octets, since each packet must include
Schneider & Venters Informational [Page 5]
RFC 1963 PPP SDTP August 1996
at least a one octet Header field.
If desired, the length field can be negotiated to be two octets in
length. In that case, valid lengths are from 2 to 65535 octets,
and the field is transmitted most significant octet first.
In either case, a length of 0 means that the combined length is
the same as the length of the remainder of the PPP Information
Field.
Port
The optional Port field is present in every SDTP packet upon
successful negotiation of the Multi-Port Option.
The length of the Port field is one octet. Valid Port numbers are
0 to 254. Port number 255 is reserved for control purposes (see
section on flow control).
Header
The Header field is the terminal adaption header from ITU-T
Recommendation V.120. As specified in that document, it contains
up to two octets: The terminal adaption header octet (H), and the
optional header extension for control state information (CS).
SDTP only supports the protocol sensitive operation of V.120; bit
transparent operation is not supported. The descriptions of the
header bits provided below are derived from the descriptions
provided in Recommendation V.120. In addition to the bit
definitions of V.120, SDTP optionally permits the use of reserved
bits to be used for flow control and to provide support for non-
octet aligned frames.
The length of the Header field is either one or two octets, and is
determined by the value of the E bit in the first octet. By
default, the E-bit must be set in the H octet and the CS octet is
not present. A Configuration Option may be negotiated to allow
the use of the CS octet, or even to require its presence in every
packet.
Schneider & Venters Informational [Page 6]
RFC 1963 PPP SDTP August 1996
H (V.120 Terminal Adaption Header)
The format of the first octet of the Header field is shown
below:
0 1 2 3 4 5 6 7
+-----+-----+-----+-----+-----+-----+-----+-----+
| E | BR | Res | FC | C2 | C1 | B | F |
+-----+-----+-----+-----+-----+-----+-----+-----+
E - Extension Bit
The E bit is the extension bit. If set to 0, it indicates
that the Control-2 field is present.
BR - Break / HDLC Idle Bit
In asynchronous mode, the BR bit indicates the invocation of
the BREAK function by the DTE. A value of 1 indicates
BREAK.
In synchronous HDLC mode, the BR bit is used to indicate
that DTE port is receiving HDLC idle condition. A value of
1 indicates this idle condition.
Res - Reserved
This bit is reserved and MUST be set to 0. (This is a
reserved bit in V.120.)
FC - Flow Control
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?