Network Working Group B. Thompson Request for Comments: 3336 T. Koren Category: Standards Track Cisco Systems B. Buffam Seaway Networks December 2002
Network Working Group B. Thompson Request for Comments: 3336 T. Koren Category: Standards Track Cisco Systems B. Buffam Seaway Networks December 2002
PPP Over Asynchronous Transfer Mode Adaptation Layer 2 (AAL2)
异步传输模式自适应层2(AAL2)上的PPP
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.
本文件规定了互联网社区的互联网标准跟踪协议,并要求进行讨论和提出改进建议。有关本协议的标准化状态和状态,请参考当前版本的“互联网官方协议标准”(STD 1)。本备忘录的分发不受限制。
Copyright Notice
版权公告
Copyright (C) The Internet Society (2002). All Rights Reserved.
版权所有(C)互联网协会(2002年)。版权所有。
Abstract
摘要
The Point-to-Point Protocol (PPP) provides a standard method for transporting multi-protocol datagrams over point-to-point links.
点到点协议(PPP)提供了通过点到点链路传输多协议数据报的标准方法。
This document describes the use of ATM Adaptation Layer 2 (AAL2) for framing PPP encapsulated packets.
本文档描述了ATM适配层2(AAL2)用于帧PPP封装数据包的使用。
Applicability
适用性
This specification is intended for those implementations which desire to use the facilities which are defined for PPP, such as the Link Control Protocol, Network-layer Control Protocols, authentication, and compression. These capabilities require a point-to-point relationship between the peers, and are not designed for the multi-point relationships which are available in ATM and other multi-access environments.
本规范适用于那些希望使用为PPP定义的设施的实现,例如链路控制协议、网络层控制协议、认证和压缩。这些功能需要对等点之间的点对点关系,而不是针对ATM和其他多址环境中可用的多点关系而设计的。
PPP over AAL5 [2] describes the encapsulation format and operation of PPP when used with the ATM AAL5 adaptation layer. While this encapsulation format is well suited to PPP transport of IP, it is bandwidth inefficient when used for transporting small payloads such as voice. PPP over AAL5 is especially bandwidth inefficient when used with RTP header compression [3].
AAL5上的PPP[2]描述了PPP与ATM AAL5适配层一起使用时的封装格式和操作。虽然这种封装格式非常适合IP的PPP传输,但当用于传输小的有效负载(如语音)时,带宽效率低下。AAL5上的PPP与RTP报头压缩一起使用时,带宽效率特别低[3]。
PPP over AAL2 addresses the bandwidth efficiency issues of PPP over AAL5 for small packet transport by making use of the AAL2 Common Part Sublayer (CPS) [4] to allow multiple PPP payloads to be multiplexed into a set of ATM cells.
AAL2上的PPP通过利用AAL2公共部分子层(CPS)[4]允许将多个PPP有效负载多路复用到一组ATM信元中,解决了AAL5上的PPP用于小数据包传输的带宽效率问题。
The keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL, when they appear in this document, are to be interpreted as described in [6].
本文件中出现的关键词必须、不得、必需、应、不应、应、不应、建议、可能和可选时,应按照[6]中的说明进行解释。
The PPP layer treats the underlying ATM AAL2 layer service as a bit-synchronous point-to-point link. In this context, the PPP link corresponds to an ATM AAL2 virtual connection. The virtual connection MUST be full-duplex, point to point, and it MAY be either dedicated (i.e., permanent, set up by provisioning) or switched (set up on demand). In addition, the PPP/AAL2 service interface boundary MUST meet the following requirements.
PPP层将底层ATM AAL2层服务视为位同步点到点链路。在此上下文中,PPP链路对应于ATM AAL2虚拟连接。虚拟连接必须是全双工的点对点连接,并且可以是专用连接(即永久连接,通过供应设置)或交换连接(按需设置)。此外,PPP/AAL2服务接口边界必须满足以下要求。
Interface Format - The PPP/AAL2 layer boundary presents an octet service interface to the AAL2 layer. There is no provision for sub-octets to be supplied or accepted.
接口格式-PPP/AAL2层边界表示到AAL2层的八位字节服务接口。没有提供或接受子八位字节的规定。
Transmission Rate - The PPP layer does not impose any restrictions regarding transmission rate on the underlying ATM layer traffic descriptor parameters.
传输速率-PPP层不对底层ATM层流量描述符参数的传输速率施加任何限制。
Control Signals - The AAL2 layer MUST provide control signals to the PPP layer which indicate when the virtual connection link has become connected or disconnected. These provide the "Up" and "Down" events to the LCP state machine [1] within the PPP layer.
控制信号-AAL2层必须向PPP层提供控制信号,指示虚拟连接链路何时连接或断开。它们向PPP层内的LCP状态机[1]提供“向上”和“向下”事件。
In the case of PPP over AAL2, the state of the link can be derived from the type 3 fault management packets carried in-band within a given AAL2 CID flow.
在AAL2上的PPP的情况下,链路的状态可以从给定AAL2 CID流中带内携带的类型3故障管理数据包中导出。
PPP over AAL2 defines an encapsulation that uses the Service Specific Segmentation and Reassembly Sublayer (SSSAR) [5] for AAL type 2. The SSSAR sub-layer is used to segment PPP packets into frames that can be transported using the AAL2 CPS. The SSSAR sub-layer uses different AAL2 UUI code-points to indicate whether a segment is the last segment of a packet or not.
AAL2上的PPP定义了一种封装,该封装对AAL类型2使用特定于服务的分段和重组子层(SSSAR)[5]。SSSAR子层用于将PPP数据包分割成可以使用AAL2 CP传输的帧。SSSAR子层使用不同的AAL2 UUI代码点来指示一个段是否为数据包的最后一段。
The encapsulation of PPP over AAL2 provides a 16-bit CRC for PPP payloads. There are 2 UUI code points assigned from SSSAR to indicate intermediate fragments of a packet and the last fragment of a packet. Code point 27 indicates intermediate frames of a fragmented packet and code point 26 indicates the last frame of a packet. The encapsulation format is more fully described in section 6.2.1.
通过AAL2封装PPP为PPP有效负载提供16位CRC。SSSAR分配了2个UUI代码点,用于指示数据包的中间片段和最后一个片段。代码点27表示分段数据包的中间帧,代码点26表示数据包的最后一帧。第6.2.1节对封装格式进行了更全面的描述。
An implementation of PPP over AAL2 MAY use one or more AAL2 Channel Identifiers (CIDs) for transport of PPP packets associated with each PPP session. Multiple CIDs could be used to implement a multiple class real time transport service for PPP using the AAL2 layer for link fragmentation and interleaving. A companion document [10] describes class extensions for PPP over AAL2 using multiple AAL2 CIDs.
AAL2上的PPP的实现可以使用一个或多个AAL2信道标识符(cid)来传输与每个PPP会话相关联的PPP分组。多个CID可用于使用AAL2层实现PPP的多类实时传输服务,用于链路分段和交织。附带文档[10]描述了使用多个AAL2 CID在AAL2上进行PPP的类扩展。
This document proposes the substitution of AAL2 transport for PPP in scenarios where small packets are being transported over an ATM network. This is most critical in applications such as voice transport using RTP [9] where RTP Header compression [3] is used. In applications such as voice transport, both bandwidth efficiency and low delay are very important.
本文件建议在通过ATM网络传输小包的情况下,用AAL2传输替代PPP。这在使用RTP[9]的语音传输等应用程序中最为关键,其中使用RTP报头压缩[3]。在语音传输等应用中,带宽效率和低延迟都非常重要。
This section provides justification for the PPP over AAL2 service for ATM transport by comparing it to existing PPP encapsulation formats used for transport over ATM. Two encapsulation formats will be examined here: PPP over AAL5 [2], and PPP with PPPMUX [8] over AAL5.
本节通过将PPP over AAL2服务与用于ATM传输的现有PPP封装格式进行比较,为ATM传输提供了PPP over AAL2服务的理由。这里将研究两种封装格式:AAL5[2]上的PPP和AAL5上的PPPMUX[8]上的PPP。
This proposal uses ATM AAL2 [4] rather than AAL5 as the transport for PPP. SSSAR along with the AAL2 CPS generates less ATM encapsulation overhead per PPP payload. The payload encapsulation consists of a 2 byte CRC. The AAL2 CPS header consists of 3 bytes, and the AAL2 Start Field (STF) is 1 byte. This is a total encapsulation overhead of 6 bytes. This compares to 8 bytes of overhead for the AAL5 trailer used for PPP over AAL5.
本提案使用ATM AAL2[4]而不是AAL5作为PPP的传输。SSSAR和AAL2 CP在每个PPP负载上产生的ATM封装开销更少。有效负载封装由一个2字节的CRC组成。AAL2 CPS标头由3个字节组成,AAL2起始字段(STF)为1个字节。这是6字节的总封装开销。这与AAL5上用于PPP的AAL5拖车的8字节开销相比。
The multiplexing function of the AAL2 CPS layer allows more bandwidth efficient transport of PPP frames by multiplexing multiple PPP frames into one or more ATM cells using the AAL2 CPS function. This removes the pad overhead of AAL5 when used to transport short frames.
通过使用AAL2 CPS功能将多个PPP帧复用到一个或多个ATM信元中,AAL2 CPS层的复用功能允许PPP帧的带宽效率更高的传输。这消除了AAL5用于传输短帧时的pad开销。
PPP Multiplexing (PPPMUX) [8] is a new method for doing multiplexing in the PPP layer. PPPMUX provides functionality similar to the CPS based multiplexing function of AAL2. Using PPP multiplexing, a PPP stack would look like PPP/PPPMUX/AAL5.
PPP多路复用(PPPMUX)[8]是一种在PPP层进行多路复用的新方法。PPPMUX提供的功能类似于AAL2基于CPS的多路复用功能。使用PPP多路复用,PPP堆栈看起来像PPP/PPPMUX/AAL5。
Both PPP/PPPMUX/AAL5 and PPP/AAL2 use multiplexing to reduce the overhead of cell padding when frames are sent over an ATM virtual circuit. However, the bandwidth utilization of PPP/AAL2 will typically be better than the bandwidth used by PPP/PPPMUX/AAL5. This is because multiplexed frames in PPP/PPPMUX/AAL5 must always be encapsulated within an AAL5 frame before being sent. This encapsulation causes an additional 8 bytes of AAL5 trailer to be added to the PPPMUX encapsulation. In addition to the 8 bytes of AAL5 trailer, PPPMUX will incur an average of 24 additional bytes of AAL5 PAD. These 2 factors will end up reducing the effective efficiency of PPPMUX when it is used over AAL5.
当通过ATM虚拟电路发送帧时,PPP/PPPMUX/AAL5和PPP/AAL2都使用多路复用来减少小区填充的开销。然而,PPP/AAL2的带宽利用率通常会优于PPP/PPPMUX/AAL5使用的带宽。这是因为PPP/PPPMUX/AAL5中的多路复用帧在发送之前必须始终封装在AAL5帧中。此封装导致将额外的8字节AAL5尾部添加到PPPMUX封装中。除了AAL5拖车的8个字节外,PPPMUX还将产生平均24个额外字节的AAL5 PAD。在AAL5上使用PPPMUX时,这两个因素最终会降低PPPMUX的有效效率。
With PPP/AAL2, the AAL2 CPS layer treats individual PPP frames as a series of CPS payloads that can be multiplexed. As long as PPP frames arrive at the CPS layer before the CPS TIMER_CU expires, all ATM cells coming from the CPS layer will be filled. Under these conditions, PPP/AAL2 will have no PAD associated with it. When the AAL2 CPS function causes no PAD to be generated, PPP/AAL2 will be more bandwidth efficient than PPP/PPPMUX/AAL5.
对于PPP/AAL2,AAL2 CPS层将单个PPP帧视为可复用的一系列CPS有效载荷。只要PPP帧在CPS定时器到期之前到达CPS层,来自CPS层的所有ATM信元都将被填充。在这些条件下,PPP/AAL2将没有与之相关的焊盘。当AAL2 CPS功能导致不生成PAD时,PPP/AAL2将比PPP/PPPMUX/AAL5更具带宽效率。
In PPP/PPPMUX/AAL5, the AAL5 SAR and the PPP MUX/DEMUX are performed in two different layers. Thus, the PPPMUX/AAL5 receiver must reassemble a full AAL5 frame from the ATM layer before the PPPMUX layer can extract the PPP payloads. To derive maximum PPP Multiplexing efficiency, many PPP payloads may be multiplexed together. This increases the size of the multiplexed frame to many ATM cells. If one of these ATM cells is lost, the whole PPPMUX packet will be discarded. Also, there may be a significant delay incurred while the AAL5 layer waits for many ATM cell arrival times until a full frame has been assembled before the full frame is passed up to the PPP Multiplexing layer where the inverse PPP demux then occurs. This same issue also applies to PPPMUX/AAL5 frames progressing down the stack.
在PPP/PPPMUX/AAL5中,AAL5 SAR和PPP MUX/DEMUX在两个不同的层中执行。因此,PPPMUX/AAL5接收器必须在PPPMUX层提取PPP有效载荷之前重新组装来自ATM层的完整AAL5帧。为了获得最大的PPP复用效率,可以将许多PPP有效负载复用在一起。这会将多路复用帧的大小增加到许多ATM信元。如果其中一个ATM信元丢失,整个PPPMUX数据包将被丢弃。此外,当AAL5层等待许多ATM信元到达时间直到在将完整帧传递到PPP复用层之前组装完整帧时,可能会产生显著延迟,其中逆PPP解复用随后发生。同样的问题也适用于沿着堆栈进行的PPPMUX/AAL5帧。
With AAL2, both the segmentation and reassembly and multiplexing functions are performed in the AAL2 CPS layer. Because of the definition of the AAL2 CPS function, a multiplexed payload will be extracted as soon as it is received. The CPS receiver does not wait until the many payloads of an AAL2 multiplexed frame are received before removing payloads from the multiplexed stream. The same benefit also applies to AAL2 CPS sender implementations. Also, the loss of an ATM cell causes the loss of the packets that are included in that cell only.
对于AAL2,分段、重组和复用功能都在AAL2 CPS层中执行。由于AAL2 CPS功能的定义,多路复用的有效负载将在接收到它后立即提取。CPS接收机在从复用流中移除有效负载之前,不等待直到接收到AAL2复用帧的多个有效负载。同样的好处也适用于AAL2 CPS发送方实现。此外,ATM信元的丢失导致仅包含在该信元中的数据包的丢失。
The AAL2 CPS function provides multiplexing in AAL2. This function often needs to be implemented in hardware for performance reasons. Because of this, a PPP/AAL2 implementation that takes advantage of an AAL2 SAR implemented in hardware will have significant performance benefits over a PPP/PPPMUX/AAL5 implementation where PPPMUX is implemented in software. Also, the AAL2 specification has been available significantly longer than the PPP Multiplexing specification and because of this, optimized software and hardware implementations of the AAL2 CPS function are further in development than PPP Multiplexing implementations.
AAL2 CPS功能在AAL2中提供多路复用。出于性能原因,此功能通常需要在硬件中实现。因此,利用在硬件中实现的AAL2 SAR的PPP/AAL2实现将比在软件中实现PPPMUX的PPP/PPPMUX/AAL5实现具有显著的性能优势。此外,AAL2规范的可用时间远远长于PPP多路复用规范,因此,AAL2 CPS功能的优化软件和硬件实现比PPP多路复用实现更进一步。
ITU-T I.363.2 specifies ATM Adaptation Layer Type 2. This AAL type provides for bandwidth efficient transmission of low-rate, short and variable length packets in delay sensitive applications. More than one AAL type 2 user information stream can be supported on a single ATM connection. There is only one definition for the sub-layer because it implements the interface to the ATM layer and is shared by more than one SSCS layer.
ITU-T I.363.2规定了ATM适配层类型2。这种AAL类型在对延迟敏感的应用中为低速、短和可变长度的数据包提供了带宽高效的传输。单个ATM连接上可以支持多个AAL 2型用户信息流。子层只有一个定义,因为它实现了到ATM层的接口,并且由多个SSCS层共享。
ITU-T I.366.1 and I.366.2 define Service Specific Convergence Sub-layers (SSCS) that operate above the Common Part Sub-layer defined in I.363.2. This layer specifies packet formats and procedures to encode the different information streams in bandwidth efficient transport. As the name implies, this sub-layer implements those elements of service specific transport. While there is only one definition of the Common Part Sublayer for AAL2, there can be multiple SSCS functions defined to run over this CPS layer. Different CIDs within an AAL2 virtual circuit may run different SSCSs.
ITU-T I.366.1和I.366.2定义了在I.363.2中定义的公共部分子层之上运行的特定于服务的汇聚子层(SSC)。该层指定数据包格式和过程,以便在带宽高效的传输中对不同的信息流进行编码。顾名思义,此子层实现特定于服务的传输的那些元素。虽然AAL2的公共零件子层只有一个定义,但可以定义多个SSC功能以在该CPS层上运行。AAL2虚拟电路中的不同CID可能运行不同的SSC。
The CPS-PKT format over AAL2 as defined in I.363.2:
I.363.2中定义的AAL2上的CPS-PKT格式:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | + + + + | | CID + LI + UUI + HEC + CPS-INFO | | + + + + | | + + + + | | (8) + (6) + (5) + (5) + (45/64 * 8) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | + + + + | | CID + LI + UUI + HEC + CPS-INFO | | + + + + | | + + + + | | (8) + (6) + (5) + (5) + (45/64 * 8) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Note: The size of the fields denote bit-width
注:字段的大小表示位宽度
The Channel ID (CID) identifies the sub-stream within the AAL2 connection. The Length indication (LI) indicates the length of the CPS-INFO payload. The User-to-User Indication (UUI) carries information between the SSCS/Application running above the CPS. The SSSAR sub-layer as defined in I.366.1 uses the following code points:
通道ID(CID)标识AAL2连接内的子流。长度指示(LI)指示CPS-INFO有效载荷的长度。用户对用户指示(UUI)在CP上方运行的SSC/应用程序之间传输信息。I.366.1中定义的SSSAR子层使用以下代码点:
UUI Code-point Packet Content ++++++++++++++ ++++++++++++++
UUI Code-point Packet Content ++++++++++++++ ++++++++++++++
0-26 Framed mode data, final packet.
0-26帧模式数据,最终数据包。
27 Framed mode data, more to come.
27帧模式数据,还有更多。
This proposal uses two UUI code-points as follows:
本提案使用两个UUI代码点,如下所示:
UUI Code-point Packet Content ++++++++++++++ ++++++++++++++
UUI Code-point Packet Content ++++++++++++++ ++++++++++++++
27 non-final packet.
27非最终数据包。
26 final packet.
26最后一包。
The CPS-PDU format over AAL2 as defined in I.363.2:
I.363.2中定义的AAL2上的CPS-PDU格式:
+-+-+-+~+~+-+-+ |CPS| CPS-INFO| |PKT| | |HDR| | +-+-+-+~+~+-+-+ | CPS-PKT |
+-+-+-+~+~+-+-+ |CPS| CPS-INFO| |PKT| | |HDR| | +-+-+-+~+~+-+-+ | CPS-PKT |
| +-+-+-+~+~+-+-+ |CPS| CPS-INFO| | |PKT| | |HDR| | | +-+-+-+~+~+-+-+ CPS-PKT | | +-+-+-+~+~+-+-+ |CPS| CPS-INFO| | | |PKT| | |HDR| | | | +-+-+-+~+~+-+-+ CPS-PKT V V V V +-+-+-+-+-+-+-+~+~+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Cell | | | | Header | STF | CPS-PDU Payload | PAD | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+~+~+
| +-+-+-+~+~+-+-+ |CPS| CPS-INFO| | |PKT| | |HDR| | | +-+-+-+~+~+-+-+ CPS-PKT | | +-+-+-+~+~+-+-+ |CPS| CPS-INFO| | | |PKT| | |HDR| | | | +-+-+-+~+~+-+-+ CPS-PKT V V V V +-+-+-+-+-+-+-+~+~+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Cell | | | | Header | STF | CPS-PDU Payload | PAD | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+~+~+
Note: The size of the fields denote bitwidth
注意:字段的大小表示位宽度
The CPS-PDU format is used to carry one or more CPS-PKT's multiplexed on a single CPS-PDU. The CPS header contains enough information to identify the CPS packets within a CPS-PDU. In the event of cell loss, the STF field is used to find the first CPS-PKT in the current cell.
CPS-PDU格式用于在单个CPS-PDU上传输多路复用的一个或多个CPS-PKT。CPS报头包含足够的信息来识别CPS-PDU中的CPS数据包。在信元丢失的情况下,STF字段用于查找当前信元中的第一个CPS-PKT。
PPP encapsulation over AAL2 uses the AAL2 CPS with no change.
AAL2上的PPP封装使用AAL2 CP,没有任何更改。
Some PPP encapsulated protocols such as RTP header compression require that the link layer provide packet error detection. Because of this, PPP over AAL2 defines a 16-bit CRC that is used along with the SSSAR sub-layer of I.366.1 to provide packet error detection. The encapsulation format is described below.
一些PPP封装协议(如RTP报头压缩)要求链路层提供数据包错误检测。因此,AAL2上的PPP定义了一个16位CRC,与I.366.1的SSSAR子层一起使用,以提供数据包错误检测。封装格式如下所述。
6.2.1 PPP Payload Encapsulation Over AAL2 with 16-bit CRC (CRC-16).
6.2.1 使用16位CRC(CRC-16)在AAL2上封装PPP有效负载。
The payload encapsulation of PPP appends a two byte CRC to each PPP frame before using the SSSAR layer to send the PPP packet as a series of AAL2 frames.
PPP的有效负载封装在使用SSSAR层将PPP分组作为一系列AAL2帧发送之前,向每个PPP帧追加一个两字节CRC。
The format of a PPP over AAL2 packet is shown in the diagram below. Note that the diagram below shows the payload encapsulation when the packet is not segmented (UUI=26). When the PPP packet is segmented, the PPP Protocol ID, Information field, and CRC-16 fields will be split across multiple SSSAR frames. In this case, the UUI field will be set to 27 for all frames except the last frame. In the last frame, the UUI field will be set to 26.
AAL2数据包上的PPP格式如下图所示。请注意,下图显示了数据包未分段时的有效负载封装(UUI=26)。当PPP数据包被分割时,PPP协议ID、信息字段和CRC-16字段将被分割到多个SSSAR帧中。在这种情况下,对于除最后一帧之外的所有帧,UUI字段将设置为27。在最后一帧中,UUI字段将设置为26。
Payload Encapsulation +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | + + + + + + | | CID + LI + UUI + HEC + Protocol + + | | + + + + ID + Information + CRC-16 | | + + + + + + | | (8) + (6) + (5) + (5) + (8/16) + + (16) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Payload Encapsulation +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | + + + + + + | | CID + LI + UUI + HEC + Protocol + + | | + + + + ID + Information + CRC-16 | | + + + + + + | | (8) + (6) + (5) + (5) + (8/16) + + (16) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Note: The size of the fields denote bit-width
注:字段的大小表示位宽度
The algorithms used for computing and verifying the CRC-16 field are identical to the algorithms specified for the Frame Check Sequence (FCS) field in Q.921 [13]. The algorithms from Q.921 are included in this section for ease of access.
用于计算和验证CRC-16字段的算法与Q.921[13]中为帧检查序列(FCS)字段指定的算法相同。本节包含Q.921中的算法,以便于访问。
The CRC-16 field is filled with the value of a CRC calculation which is performed over the contents of the PPP packet, including the PPP Protocol ID and the information field. The CRC field shall contain the ones complement of the sum (modulo 2) of:
CRC-16字段填充在PPP分组的内容上执行的CRC计算的值,包括PPP协议ID和信息字段。CRC字段应包含以下各项之和(模2)的补码:
1) the remainder of x^k (x^15 + x^14 + ... + x + 1) divided (modulo 2) by the generator polynomial, where k is the number of bits of the information over which the CRC is calculated; and
1) the remainder of x^k (x^15 + x^14 + ... + x + 1) divided (modulo 2) by the generator polynomial, where k is the number of bits of the information over which the CRC is calculated; and
2) the remainder of the division (modulo 2) by the generator polynomial of the product of x^16 by the information over which the CRC is calculated.
2) 除以x^16的乘积的生成多项式(模2)的剩余部分,在此基础上计算CRC。
The CRC-16 generator polynomial is:
CRC-16发生器多项式为:
G(x) = x^16 + x^12 + x^5 + 1
G(x) = x^16 + x^12 + x^5 + 1
The result of the CRC calculation is placed with the least significant bit right justified in the CRC field.
CRC计算的结果与CRC字段中的最低有效位右对齐。
As a typical implementation at the transmitter, the initial content of the register of the device computing the remainder of the division is preset to all "1"s and is then modified by division by the generator polynomial (as described above) on the information over which the CRC is to be calculated; the ones complement of the resulting remainder is put into the CRC field.
作为发射机处的典型实现,计算除法剩余部分的设备的寄存器的初始内容被预设为所有“1”,然后通过将要计算CRC的信息除以生成器多项式(如上所述)进行修改;结果余数的1补码被放入CRC字段。
As a typical implementation at the receiver, the initial content of the register of the device computing the remainder of the division is preset to all "1"s. The final remainder, after multiplication by x^16 and then division (modulo 2) by the generator polynomial of the serial incoming PPP packet (including the Protocol ID, the information and the CRC fields), will be 0001110100001111 (x^15 through x^0, respectively) in the absence of transmission errors.
作为接收机的典型实现,计算除法剩余部分的设备寄存器的初始内容预设为所有“1”。在没有传输错误的情况下,将串行传入PPP数据包(包括协议ID、信息和CRC字段)的生成器多项式乘以x^16,然后除以(模2)后的最后余数将为00011101001111(分别为x^15到x^0)。
An implementation of PPP over AAL2 MAY use a single AAL2 Channel Identifier (CID) or multiple CIDs for transport of all PPP packets. In order for the endpoints of a PPP session to work with AAL2, they MUST both agree on the number, SSCS mapping, and values of AAL2 CIDs that will be used for a PPP session. The values of AAL2 CIDs to be used for a PPP session MAY be obtained from either static provisioning in the case of a dedicated AAL2 connection (PVC) or from Q.2630.2 [7] signaling in the case of an AAL2 switched virtual circuit (SPVC or SVC).
AAL2上PPP的实现可以使用单个AAL2信道标识符(CID)或多个CID来传输所有PPP分组。为了使PPP会话的端点与AAL2协同工作,双方必须就PPP会话将使用的AAL2 CID的数量、SSC映射和值达成一致。用于PPP会话的AAL2 CID的值可以在专用AAL2连接(PVC)的情况下从静态供应中获得,或者在AAL2交换虚拟电路(SPVC或SVC)的情况下从Q.2630.2[7]信令中获得。
Using this proposal it is possible to support the use of conventional AAL2 in CIDs that are not used to support PPP over AAL2. This proposal allows the co-existence of multiple types of SSCS function within the same AAL2 VCC.
使用该提案,可以支持在CID中使用传统AAL2,而这些CID不用于支持AAL2上的PPP。该提案允许在同一AAL2 VCC内同时存在多种类型的SSC功能。
PPP operation with AAL2 will perform basic PPP encapsulation with the PPP protocol ID. A 16-bit CRC is calculated as described above and appended to the payload. The SSSAR sub-layer of AAL2 is used for transport.
使用AAL2的PPP操作将使用PPP协议ID执行基本PPP封装。如上所述计算16位CRC并将其附加到有效负载。AAL2的SSSAR子层用于传输。
Applications implementing PPP over AAL2 MUST meet all the requirements of PPP [1].
通过AAL2实现PPP的应用程序必须满足PPP[1]的所有要求。
This section describes an example implementation of how PPP can be encapsulated over AAL2. The example shows two application stacks generating IP packets that are sent to the same interface running PPP/AAL2. One Application stack is generating RTP packets and another application is generating IP Datagrams. The PPP/AAL2 interface shown in this example is running an RFC 2508 compliant version of RTP header compression.
本节介绍如何在AAL2上封装PPP的示例实现。该示例显示了生成IP数据包的两个应用程序堆栈,这些数据包被发送到运行PPP/AAL2的同一接口。一个应用程序堆栈正在生成RTP数据包,另一个应用程序正在生成IP数据报。本例中显示的PPP/AAL2接口正在运行符合RFC2508的RTP报头压缩版本。
Here are the paths an Application packet can take in this implementation:
以下是应用程序包在此实现中可以采用的路径:
+---+---+---+---+--+ + | Application A | | +---+---+---+---+--+ | | RTP | | +---+---+---+---+--+ +---+---+---+---+---+ Application | UDP | | Application B | | +---+---+---+---+--+ +---+---+---+---+---+ | | IP | | IP | | +---+---+---+---+--+ +---+---+---+---+---+ + | | +---------------+------------+ | | +---+---+---+---+---+--+ + | Compression Filter | | +---+---+---+---+---+--+ | | | | | +---------+-----------+ | | | | RTP | | Non-RTP | Packets V | Packets | +---+---+---+---+---+---+ | | | CRTP | | | +---+---+---+---+---+---+---+---+---+---+---+---+ Transport | PPP | | +---+---+---+---+---+---+---+---+---+---+---+---+ | | | +---+---+---+---+---+---+---+ +--+---+---+---+---+--+--+-+ | | Segmentation (SSSAR) | | +---+---+---+---+---+---+---+ +--+---+---+---+---+--+--+-+ | +---+---+---+---+---+---+---+---+---+---+---+---+---+----+ | | AAL2 CPS | | +---+---+---+---+---+---+---+---+---+---+---+---+---+----+ | | ATM Layer | | +---+---+---+---+---+---+---+---+---+---+---+---+---+----+ +
+---+---+---+---+--+ + | Application A | | +---+---+---+---+--+ | | RTP | | +---+---+---+---+--+ +---+---+---+---+---+ Application | UDP | | Application B | | +---+---+---+---+--+ +---+---+---+---+---+ | | IP | | IP | | +---+---+---+---+--+ +---+---+---+---+---+ + | | +---------------+------------+ | | +---+---+---+---+---+--+ + | Compression Filter | | +---+---+---+---+---+--+ | | | | | +---------+-----------+ | | | | RTP | | Non-RTP | Packets V | Packets | +---+---+---+---+---+---+ | | | CRTP | | | +---+---+---+---+---+---+---+---+---+---+---+---+ Transport | PPP | | +---+---+---+---+---+---+---+---+---+---+---+---+ | | | +---+---+---+---+---+---+---+ +--+---+---+---+---+--+--+-+ | | Segmentation (SSSAR) | | +---+---+---+---+---+---+---+ +--+---+---+---+---+--+--+-+ | +---+---+---+---+---+---+---+---+---+---+---+---+---+----+ | | AAL2 CPS | | +---+---+---+---+---+---+---+---+---+---+---+---+---+----+ | | ATM Layer | | +---+---+---+---+---+---+---+---+---+---+---+---+---+----+ +
In the picture above, application A is an RTP application generating RTP packets. Application B is an IP application generating IP datagrams. Application A gathers the RTP data and formats an RTP packet. Lower level layers of application A add UDP and IP headers to form a complete IP packet. Application B is generating datagrams to the IP layer. These datagrams may not have UDP or RTP headers.
在上图中,应用程序A是生成RTP包的RTP应用程序。应用程序B是生成IP数据报的IP应用程序。应用程序A收集RTP数据并格式化RTP数据包。应用程序A的较低层添加UDP和IP报头以形成完整的IP数据包。应用程序B正在向IP层生成数据报。这些数据报可能没有UDP或RTP报头。
In the above picture, a protocol stack is configured to apply CRTP/PPP/AAL2 compression on an interface to a destination host. All packets that are sent to this interface will be tested to see if they can be compressed using RTP header compression. As packets appear at the interface, they will be tested by a compression filter to determine if they are candidates for header compression. If the compression filter determines that the packet is a candidate for compression, the packet will be sent to the CRTP compressor. If the packet is not a candidate for compression, it will be sent directly to the PPP layer for encapsulation as an IP packet encapsulated in PPP.
在上图中,协议栈被配置为在接口上将CRTP/PPP/AAL2压缩应用于目标主机。将测试发送到此接口的所有数据包,以查看它们是否可以使用RTP头压缩进行压缩。当数据包出现在接口上时,它们将由压缩过滤器进行测试,以确定它们是否是报头压缩的候选对象。如果压缩过滤器确定该分组是压缩候选,则该分组将被发送到CRTP压缩器。如果数据包不是压缩的候选数据包,它将被直接发送到PPP层,作为封装在PPP中的IP数据包进行封装。
The destination UDP port number and packet length are examples of criteria that may be used by the compression filter to select the interface.
目标UDP端口号和数据包长度是压缩筛选器可用于选择接口的标准示例。
In this example, packets from application A will be passed to the CRTP compressor which then hands the compressed packet to the PPP layer for encapsulation as one of the compressed header types of CRTP. The PPP layer will add the appropriate CRTP payload type for the compressed packet.
在此示例中,来自应用程序A的数据包将被传递到CRTP压缩器,然后CRTP压缩器将压缩数据包传递给PPP层,以作为CRTP的压缩报头类型之一进行封装。PPP层将为压缩包添加适当的CRTP有效负载类型。
Packets from application B will be sent directly to the PPP layer for encapsulation as an IP/PPP packet. The PPP layer will add the PPP payload type for an IP packet encapsulated in PPP.
来自应用程序B的数据包将直接发送到PPP层,作为IP/PPP数据包进行封装。PPP层将为封装在PPP中的IP数据包添加PPP有效负载类型。
PPP packets are then segmented using I.366.1 segmentation with SSSAR.
然后使用SSSAR的I.366.1分段对PPP数据包进行分段。
The resulting AAL2 frame mode PDU is passed down as a CPS SDU to the CPS Layer for multiplexing accompanied by the CPS-UUI and the CPS-CID. The CPS Layer multiplexes the CPS-PKT onto a CPS-PDU. CPS-PDUs are passed to the ATM layer as ATM SDUs to be carried end-to-end across the ATM network.
产生的AAL2帧模式PDU作为CPS SDU向下传递到CPS层,以便与CPS-UUI和CPS-CID一起进行复用。CPS层将CPS-PKT多路复用到CPS-PDU上。CPS PDU作为ATM SDU传递到ATM层,以便在ATM网络中端到端地传输。
At the receiving end, the ATM SDU's arrive and are passed up to the AAL2 CPS. As the AAL2 CPS PDU is accumulated, complete CPS-PKT's are reassembled by the SSSAR SSCS. Reassembled packets are checked for errors using the CRC algorithm.
在接收端,ATM SDU到达并传递给AAL2 CP。随着AAL2 CPS PDU的积累,SSSAR SSC将重新组装完整的CPS-PKT。使用CRC算法检查重新组装的数据包是否存在错误。
At this point, the PPP layer on the receiving side uses the PPP payload type to deliver the packet to either the CRTP decompressor or the IP layer depending on the value of the PPP payload type.
此时,接收侧的PPP层根据PPP有效负载类型的值,使用PPP有效负载类型将分组传送到CRTP解压缩器或IP层。
By default, PPP over AAL2 will use the 16 bit CRC encapsulation for all packets.
默认情况下,AAL2上的PPP将对所有数据包使用16位CRC封装。
The default Maximum-Receive-Unit (MRU) is 1500 bytes.
默认最大接收单元(MRU)为1500字节。
This memo defines mechanisms for PPP encapsulation over ATM. There is an element of trust in any encapsulation protocol: a receiver should be able to trust that the sender has correctly identified the protocol being encapsulated and that the sender has not been spoofed or compromised. A receiver should also be able to trust that the transport network between sender and receiver has not been compromised.
本备忘录定义了ATM上PPP封装的机制。在任何封装协议中都有一个信任元素:接收方应该能够相信发送方已经正确识别了被封装的协议,并且发送方没有被欺骗或泄露。接收者还应该能够相信发送者和接收者之间的传输网络没有被破坏。
A PPP session that runs over an ATM Virtual Circuit must follow the PPP link operation state machine described in RFC 1661 [1]. This state machine includes the ability to enforce the use of an authentication phase using the PAP/CHAP authentication protocols before any network layer packets are exchanged. Using PPP level authentication, a PPP receiver can authenticate a PPP sender.
在ATM虚拟电路上运行的PPP会话必须遵循RFC 1661[1]中描述的PPP链路操作状态机。此状态机包括在交换任何网络层数据包之前,使用PAP/CHAP身份验证协议强制使用身份验证阶段的能力。使用PPP级身份验证,PPP接收方可以对PPP发送方进行身份验证。
System security may also be compromised by the attacks of the ATM transport network itself. The ATM Forum has published a security framework [11] and a security specification [12] that define procedures to guard against common threats to an ATM transport network.
ATM传输网络本身的攻击也可能危及系统安全。ATM论坛发布了一个安全框架[11]和一个安全规范[12],定义了防范ATM传输网络常见威胁的程序。
PPP level authentication does not guard against man in the middle attacks. These attacks could occur if an attacker was able to compromise the security infrastructure of an ATM switching network. Applications that require protection against threats to an ATM switching network are encouraged to use authentication headers, or encrypted payloads, and/or the ATM-layer security services described in [12].
PPP级认证不能防范中间人攻击。如果攻击者能够破坏ATM交换网络的安全基础设施,则可能发生这些攻击。鼓励需要防止ATM交换网络受到威胁的应用程序使用身份验证标头、加密有效负载和/或[12]中所述的ATM层安全服务。
When PPP over AAL2 is used on a set of CIDs in a virtual connection, there may be other non PPP encapsulated AAL2 CIDs running on the same virtual connection. Because of this, an end point cannot assume that the PPP session authentication and related security mechanisms also secure the non PPP encapsulated CIDs on that same virtual connection.
当通过AAL2的PPP用于虚拟连接中的一组CID时,可能会有其他非PPP封装的AAL2 CID在同一虚拟连接上运行。因此,端点不能假设PPP会话身份验证和相关安全机制也会在同一虚拟连接上保护非PPP封装的CID。
The authors would like to thank Rajesh Kumar, Mike Mclaughlin, Pietro Schicker, James Carlson and John O'Neil for their contributions to this proposal.
作者要感谢Rajesh Kumar、Mike Mclaughlin、Pietro Schicker、James Carlson和John O'Neil对本提案的贡献。
[1] Simpson, W., Editor, "The Point-to-Point Protocol (PPP)", STD 51, RFC 1661, July 1994.
[1] 辛普森,W.,编辑,“点对点协议(PPP)”,STD 51,RFC 1661994年7月。
[2] Gross, G., Kaycee, M., Li, A., Malis, A. and J. Stephens, "PPP over AAL5", STD 51, RFC 2364, July 1998.
[2] Gross,G.,Kaycee,M.,Li,A.,Malis,A.和J.Stephens,“AAL5上的购买力平价”,STD 51,RFC 2364,1998年7月。
[3] Casner, S. and V. Jacobson, "Compressing IP/UDP/RTP Headers for Low-Speed Serial Links", RFC 2508, February 1999.
[3] Casner,S.和V.Jacobson,“压缩低速串行链路的IP/UDP/RTP报头”,RFC 2508,1999年2月。
[4] International Telecommunications Union, "BISDN ATM Adaptation layer specification: Type 2 AAL(AAL2)", ITU-T Recommendation I.363.2, September 1997.
[4] 国际电信联盟,“BISDN ATM适配层规范:2型AAL(AAL2)”,ITU-T建议I.363.2,1997年9月。
[5] International Telecommunications Union, "Segmentation and Reassembly Service Specific Convergence Sublayer for the AAL type 2", ITU-T Recommendation I.366.1, June 1998.
[5] 国际电信联盟,“AAL类型2的细分和重组服务特定汇聚子层”,ITU-T建议I.366.1,1998年6月。
[6] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[6] Bradner,S.,“RFC中用于表示需求水平的关键词”,BCP 14,RFC 2119,1997年3月。
[7] ITU-T, "ITU-T RECOMMENDATION Q.2630.2", December 2000.
[7] ITU-T,“ITU-T建议Q.2630.2”,2000年12月。
[8] Pazhyannur, R, Ali, I. and C. Fox, "PPP Multiplexing", RFC 3153, August 2001.
[8] 帕兹扬努尔,R,阿里,I.和C.福克斯,“PPP多路复用”,RFC 3153,2001年8月。
[9] Schulzrinne, H., Casner, S., Frederick, R. and V. Jacobson, "RTP: A Transport Protocol for Real-Time Applications", RFC 1889, January 1996.
[9] Schulzrinne,H.,Casner,S.,Frederick,R.和V.Jacobson,“RTP:实时应用的传输协议”,RFC 1889,1996年1月。
[10] Thompson, B., Koren, T. and B. Buffam, "Class Extensions for PPP over Asynchronous Transfer Mode Adaptation Layer 2", RFC 3337, December 2002.
[10] Thompson,B.,Koren,T.和B.Buffam,“异步传输模式适应层2上PPP的类扩展”,RFC 3337,2002年12月。
[11] The ATM Forum, "ATM Security Framework Version 1.0", af-sec-0096.000, February 1998.
[11] ATM论坛,“ATM安全框架1.0版”,af-sec-0096.000,1998年2月。
[12] The ATM Forum, "ATM Security Specification v1.1", af-sec-0100.002, March 2001.
[12] ATM论坛,“ATM安全规范v1.1”,af-sec-0100.002,2001年3月。
[13] International Telecommunications Union, ISDN User-Network Interface-Data Link Layer Specification, ITU-T Recommendation Q.921, March 1993.
[13] 国际电信联盟,ISDN用户网络接口数据链路层规范,ITU-T建议Q.921,1993年3月。
Bruce Thompson Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134 USA
布鲁斯·汤普森思科系统公司,美国加利福尼亚州圣何塞西塔斯曼大道170号,邮编95134
Phone: +1 408 527-0446 EMail: brucet@cisco.com
Phone: +1 408 527-0446 EMail: brucet@cisco.com
Tmima Koren Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134 USA
美国加利福尼亚州圣何塞西塔斯曼大道170号,Tmima科伦思科系统有限公司,邮编95134
Phone: +1 408 527-6169 EMail: tmima@cisco.com
Phone: +1 408 527-6169 EMail: tmima@cisco.com
Bruce Buffam Seaway Networks One Chrysalis Way, Suite 300, Ottawa, Canada K2G-6P9
Bruce Buffam Seaway Networks One Chrysalis Way,300套房,加拿大渥太华K2G-6P9
Phone: +1 613 723-9161 EMail: bruce@seawaynetworks.com
Phone: +1 613 723-9161 EMail: bruce@seawaynetworks.com
Copyright (C) The Internet Society (2002). All Rights Reserved.
版权所有(C)互联网协会(2002年)。版权所有。
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.
本文件及其译本可复制并提供给他人,对其进行评论或解释或协助其实施的衍生作品可全部或部分编制、复制、出版和分发,不受任何限制,前提是上述版权声明和本段包含在所有此类副本和衍生作品中。但是,不得以任何方式修改本文件本身,例如删除版权通知或对互联网协会或其他互联网组织的引用,除非出于制定互联网标准的需要,在这种情况下,必须遵循互联网标准过程中定义的版权程序,或根据需要将其翻译成英语以外的其他语言。
The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.
上述授予的有限许可是永久性的,互联网协会或其继承人或受让人不会撤销。
This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
本文件和其中包含的信息是按“原样”提供的,互联网协会和互联网工程任务组否认所有明示或暗示的保证,包括但不限于任何保证,即使用本文中的信息不会侵犯任何权利,或对适销性或特定用途适用性的任何默示保证。
Acknowledgement
确认
Funding for the RFC Editor function is currently provided by the Internet Society.
RFC编辑功能的资金目前由互联网协会提供。