ATM Adaptation Layer Protocols Overview

Introduction

The following ATM Adaptation Layer protocols (AALs) have been defined for Asynchronous Transfer Mode. These protocols are loosely associated with the various classes of traffic expected to be carried:

AAL 1
Supports constant bit rate, connection-oriented, synchronous traffic (e.g., uncompressed voice).
AAL 2
Definition never completed, but was envisioned to be assigned for variable bit rate, connection-oriented, synchronous traffic.
AAL 3/4
Supports variable bit rate, connection- oriented, asynchronous traffic (e.g., X.25 data) or connectionless packet data (e.g., SMDS traffic) with an additional 4-byte header in the information payload of the cell.
AAL 5
Similar to AAL 3/4 with a simplified information header scheme; this AAL assumes that the data is sequential from the end user and uses the PTI bit to indicate the last cell in a transmission Examples of services that use AAL 5 are Classic IP over ATM, and LAN Emulation (LANE). AAL 5 is the most widely used ATM Adaptation Layer Protocol.

The ATM Adaptation Layer Protocols are formally defined in ITU-T Standard I.363 available from the International Telecommunications Union (ITU).


AAL TYPE 1

This section addresses ATM Adaptation Layer protocol type 1 (AAL 1), which is designed to accommodate constant bit rate, connection-oriented, synchronous traffic. A good example of this type of traffic is uncompressed video.

Like all of the AAL protocols, AAL 1 is designed to accept the data from the upper-layers (i.e., USER layers) of the end user and prepare it for handoff in 48-byte segments to the ATM Layer of the ATM protocol stack. The ATM Layer then provides each segment with an appropriate header and hands the 53-byte ATM cell down to the Physical Layer for transmission over the ATM network.

The preparation offered by the AAL 1 protocol includes support for the following functions required by the upper layer:

In order to provide these services, AAL 1 adds a one-byte (8 bit) header to each Protocol Data Unit segment generated at the Segmentation and Reassembly Sublayer. This information includes Convergence Sublayer specific information (when required) as well as an error checking mechanism. No trailer is added with this AAL protocol type.

AAL 1 Data Flow

                                                           LAYER
     +----------------------------------------------+
     |              Service Data Unit               | ----- USER
     +----------------------------------------------+
                            V
     +----------------------------------------------+ ---+
     |  Convergence Sublayer Protocol Data Unit     |    |
     +----------------------------------------------+    |
                            V                            |
     +--------------++--------------++--------------+    |
     |   SAR-PDU    ||   SAR-PDU    ||   SAR-PDU    |    |- AAL
     +--------------++--------------++--------------+    |
      \  47 Bytes    \                \  47 Bytes    \   |
   +---+--------------+            +---+--------------+  |
   | H |   SAR-PDU    |            | H |   SAR-PDU    |  |
   +---+--------------+            +---+--------------+ -+
                                   V      48 Bytes    V
   H = SAR HEADER             +-----------------------+
  AH = ATM HEADER             | AH |    ATM PAYLOAD   | --- ATM

AAL 1 SAR Header Format

The 1 byte (8 bit) header added at the Segmentation and Reassembly Sublayer is divided into two 4-bit fields:

The SN field is further subdivided into the 1-bit Convergence Sublayer Indication (CSI) subfield and the 3-bit Sequence Count (SC) field. The CSI subfield is used to convey Convergence Sublayer-specific information and is not used for all AAL implementations. The SC subfield carries the sequence number for the entire CS_PDU; this is generated by the Convergence Sublayer.

The other field (SNP) functions as the error check for the SAR header. The first three bits of this field are a Cyclical Redundancy Check (CRC) for the SN portion of the header. The polynomial used to generate this CRC is x3 + x + 1

The remaining bit is an even parity check over the previous 7 bits (i.e., the SN field and the CRC subfield).

These fields are illustrated below:

              +-------------+-----------------------+
              | SAR HEADER  |        SAR-PDU        |
              +-------------+-----------------------+
              |             |
              +------+------+
              |  SN  |  SNP |        EPC = Even
              +------+------+              Parity
            /        |        \            Check
          +---+------+------+---+
          |CSI|  SC  | CRC  |EPC|
          +---+------+------+---+
            ^     ^     ^     ^
            |     |     |     |
   1 Bit ---+     |     |     +--- 1 Bit
         3 Bits --+     +-- 3 Bits


AAL TYPE 3/4

This section addresses ATM Adaptation Layer protocol type 3 and protocol type 4. These two types are merged into a single protocol, AAL 3/4, which is designed to accommodate both variable bit rate, asynchronous traffic (type 3) or connectionless packet data (type 4). Good examples of these types of traffic are X.25 Pacekt-Switched Data and SMDS respectively.

Like all of the AAL protocols, AAL 3/4 is designed to accept the data from the upper-layers (i.e., USER layers) of the end user and prepare it for handoff in 48-byte segments to the ATM Layer of the ATM protocol stack. The ATM Layer then provides each segment with an appropriate header and hands the 53-byte ATM cell down to the Physical Layer for transmission over the ATM network.

AAL 3/4 provides for full sequencing as well as error-control and error-recovery mechanisms. This is accomplished both at the Convergence Sublayer and the Segmentation and Reassembly Sublayer of the AAL Layer.

AAL 3/4 DATA FLOW

The first step in the data flow for AAL 3/4 is the Service Data Unit (SDU) being passed down from the Upper (User) Layer to the Convergence Sublayer of the AAL Layer.

AAL 3/4 subdivides the Convergence Sublayer into the Service Specific Convergence Sublayer (SSCS) and the Common Part Convergence Sublayer (CPCS). The Upper Layer SDU is passed through the SSCS Sublayer unchanged.

The CPCS Sublayer adds a 4-byte header and a 4-byte trailer; at this point, the User SDU is also padded, with 0-3 bytes as necessary, to assure that the entire CPCS Protocol Data Unit (PDU) length is divisible by 4.

The CPCS-PDU is then passed down to the Segmentation and Reassembly (SAR) sublayer of the AAL Layer. At this point, the entire CPCS-PDU, including the added header, trailer, and pad, is segmented in 44-byte pieces. The SAR then adds a 2-byte header and a 2-byte trailer to each segment; this 48-byte SAR-SDU segment is passed down to the ATM Layer for processing.

The ATM Layer adds the 5-byte ATM header to each segment received from the SAR and passes each segment to the Physical Layer for transport over the ATM network.

This process is illustrated below:

     +----------------------------------------------+
     |              Service Data Unit               |
     +----------------------------------------------+
     |                                              |
     V                                              V
+----+----------------------------------------------+----+----+
| CH |  Convergence Sublayer Protocol Data Unit     | PAD| CT |
+----+----------------------------------------------+----+----+
|                                                             |
V                                                             V
+-------------------++-------------------++-------------------+
|    |              ||                   ||         |    |    |
+-------------------++-------------------++-------------------+
|     Segment 1     ||     Segment 2     ||      Segment 3    |
V       (BOM)       VV       (COM)       VV        (EOM)      V

CH = CPCS Header  CT = CPCS Trailer   BOM = Beginning of Message
  COM = Continuation of Message  EOM = End of Message

++------------------++-------------------+
||                  ||         |    |    |
++------------------++-------------------+
||  Segment 2 (COM) ||  Segment 3 (EOM)  |
VV                  VV                   V
                 +---+-------------------+---+
                 | H |         |    |    | T |
                 +---+-------------------+---+
                 |         SAR-SDU           |
                 V                           V
           +-----+---------------------------+
           |  AH |   |         |    |    |   |
           +-----+---------------------------+
                 |_______  ATM Payload ______|

           |_______  53-Byte ATM Cell _______|

H = SAR Header   T = SAR Trailer  AH = ATM Header
AAL 3/4 CPCS-PDU FORMAT

+----+----------------------------------------------+----+----+
| CH |  Convergence Sublayer Protocol Data Unit     | PAD| CT |
+----+----------------------------------------------+----+----+
|      \                                               /      |
|         \                                         /         |
|            \                                   /            |
+---+----+------+                              +--+----+------+
|CPI|Btag|BASize|                              |AL|Etag|Length|
+---+----+------+                              +--+----+------+

The Convergence Sublayer adds a 4-byte header, a 4-byte trailer, and extra bytes as necessary to maintain the size requirements for even ATM segmentation.

AAL 3/4 CPCS-PDU FORMAT

The CPCS header that is added to the data passed down from the Upper Layer (end user) consists of the following three fields:

CPI
Common Part Indicator. This 1-byte field is used to interpret the remainder of the fields in the header and trailer added for this sublayer.
Btag
Beginning Tag. This 1-byte field acts as an error check for this segment. The value in this field is also placed in the Etag (End Tag) field of the trailer, allowing a quick comparison after receipt to determine if the segment has been corrupted.
BASize
Buffer Allocation Size. This 2-byte field is encoded to indicate the length of the CPCS-PDU (segment) payload.

The CPCS trailer also is divided into three fields:

AL
Alignment. This 1-byte field is used to make the trailer size 4 bytes, in order to maintain the divisibility of the segment by 4. It is passed through the network transparently.
Etag
This 1-byte field contains the same information as the Btag field in the header. (See Btag above.)
Length
This 2-byte field indicates the length of the PDU payload. It is encoded to indicate the number of COUNTING UNITS in the length of the payload, with the counting unit size indicated in the CPI of the header.

AAL 3/4 SAR-SDU FORMAT

                 +---+-------------------+---+
                 | H |    SAR Payload    | T |
                 +---+-------------------+---+
               /     |                /      |
            /        |             /         |
         /           |          /            |
    +----+----+------+        +-----+--------+
    | ST | SN | MID  |        |  LI | CRC-10 |
    +----+----+------+        +-----+--------+

The Segmentation and Reassembly header and trailer adds information concerning the segment order and provides a cyclical redundancy check (CRC) for the segment. Each is 2 bytes in length.

The SAR header is divided into three fields:

ST
Segment Type. This 2-bit field is used to indicate one of four segment types: Beginning of Message (BOM), Continuation of Message (COM), End of Message (EOM), or Single-Segment Message (SSM).
SN
Sequence Number. This 4-bit field allows the stream of SAR SDUs to be numbered using modulo 16. It is used to provide a "loss of segment" check for each full PDU that is segmented.
MID
Multiplexing Identification. This 10-bit field is used to multiplex CPCS connections on a single ATM Layer connection, when applicable.

The SAR trailer contains two parts:

LI
Length Indication. This 6-bit field is binary- encoded to indicate the number of bytes of the CPCS-PDU (received from the Convergence Layer above) that are contained in the payload portion of this segment. For BOM and COM segments, this value MUST be 44. For EOM segments, the value can range from 4 to 44, as appropriate. For SSM segments, permitted values range from 8 to 44.
CRC
Cyclical Redundancy Check. This 10-bit sequence functions as an error check for the entire SAR-SDU, including the header, payload, and LI field of the trailer.


AAL TYPE 5

This section addresses ATM Adaptation Layer protocol type 5 (AAL 5), which is designed to accommodate the same variable bit rate, connection-oriented asynchronous traffic or connectionless packet data supported by AAL 3/4, but without the segment tracking and error correction requirements. It is used to transfer non-SMDS data, such as classical IP over ATM and LAN Emulation (LANE). It is also known as the Simple and Efficient Adaptation Layer (SEAL).

Like all of the AAL protocols, AAL 5 is designed to accept the data from the upper-layers (i.e., USER layers) of the end user and prepare it for handoff in 48-byte segments to the ATM Layer of the ATM protocol stack. The ATM Layer then provides each segment with an appropriate header and hands the 53-byte ATM cell down to the Physical Layer for transmission over the ATM network. For all cells except the last, the low order bit in the Payload Type Indicator (PTI) is set to zero to indicate the cell is not the last cell is a series that represents a single frame. For the last cell, the low order bit in the PTI field is set to one.

AAL 5 is geared for a streamlined transmission. It assumes that error recovery is performed by the higher layers, so that all 48 bytes of the payload may be allocated to carry data. It also assumes that only ONE message is transmitted over the UNI at one time. (If there is more than one user at a time, messages are queued for sequential transmission.)

AAL 5 DATA FLOW

The first step in the data flow for AAL 5 is the Service Data Unit (SDU) being passed down from the Upper (User) Layer to the Convergence Sublayer of the AAL Layer.

Like AAL 3/4, AAL 5 subdivides the Convergence Sublayer into the Service Specific Convergence Sublayer (SSCS) and the Common Part Convergence Sublayer (CPCS). The Upper Layer SDU is passed through the SSCS Sublayer unchanged.

The CPCS Sublayer adds an 8-byte trailer to the SDU and pads the SDU with 0-47 bytes of data in such a manner that the SDU may be divided evenly into 48-byte segments, with the trailer occupying the last 8 bytes of the last segment.

At this time, the CPCS-PDU is handed down to the SAR Sublayer, where it is divided into 48-byte segments. THE SAR SUBLAYER PERFORMS NO ADDITIONAL FUNCTIONS WITH AAL 5.

Each of the segments is then handed (unchanged) to the ATM Layer for incorporation into an appropriate ATM cell. The ATM Layer then sends the cell to the Physical Layer for transmission over the ATM network.

This process is outlined below:

+----------------------------------------------+
|              Service Data Unit               |
+----------------------------------------------+
|                                              |
V                                              V
+----------------------------------------------+-------+------+
|  Convergence Sublayer Protocol Data Unit     |  PAD  |  CT  |
+----------------------------------------------+-------+------+
|                                                             |
V                                                             V
+-------------------++-------------------++-------------------+
|                   ||                   ||    |       |      |
+-------------------++-------------------++-------------------+
|   First Segment   ||   Second Segment  ||    Last Segment   |
V                   VV                   VV                   V

CT = CPCS Trailer

-++-------------------++-------------------+
 ||                   ||    |       |      |
-++-------------------++-------------------+
 ||   Second Segment  ||    Last Segment   |
 VV                   VV                   V
                       +-------------------+
                       |    |       |      |
                       +-------------------+
                       |      SAR-SDU      |
                       V                   V
                 +-----+-------------------+
                 |  AH |    |       |      |
                 +-----+-------------------+
                       |___ ATM Payload ___|

                 |____ 53-Byte ATM Cell ___|

AH = ATM Header

AAL 5 CPCS-PDU FORMAT

+----------------------------------------------+-------+------+
|  Convergence Sublayer Protocol Data Unit     |  PAD  |  CT  |
+----------------------------------------------+-------+------+
                                                   /          |
                                                /             |
                                           /                  |
                                       /                      |
                                    +----+----+------+--------+
                                    |U-U |CPI |Length| CRC-32 |
                                    +----+----+------+--------+

The 8-byte CPCS trailer is divided into four fields:

CPCS-UU
CPCS User-to-User Indication. This 1-byte field is used to transparently transfer information from the origination user to the destination user.
CPI
Common Part Indicator. This is a 1-byte field used to align the CPCS-PDU trailer to the 32-bit boundary.
Length
This 2-byte field indicates the length of the CPCS payload, not including the PAD bytes.
CRC-32
Cyclical Redundancy Check. The 4-byte CRC-32 field is a 32-bit error check for the entire contents of the CPCS-PDU, including the payload, PAD field, and first 4 bytes of the trailer. The CRC-32 generating polynomial is: x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1.