Asynchronous Transfer Mode

Previous Topic Next Topic

ATM Model

The ATM model's primary layers are the physical layer, the ATM layer, and the ATM Adaptation layer. Each layer and sublayer is described in more detail in the following sections.

Physical Layer

The physical layer provides for the transmission and reception of ATM cells across a physical medium between two ATM devices; this can be a transmission between an ATM endpoint and an ATM switch, or it can be between two ATM switches. The physical layer is subdivided into a Physical Medium Dependent sublayer and Transmission Convergence sublayer.

PMD Sublayer

The Physical Medium Dependent (PMD) sublayer is responsible for the transmission and reception of individual bits on a physical medium. These responsibilities encompass bit timing, signal encoding, interacting with the physical medium, and the cable or wire itself.

ATM does not rely on any specific bit rate, encoding scheme or medium and various specifications for ATM exist for coaxial cable, shielded and unshielded twisted pair wire, and optical fiber at speeds ranging from 64 kilobits per second to 9.6 gigabits per second. In addition, the ATM physical medium can extend up to 60 kilometers or more using single-mode fiber and long-reach lasers, so it can readily support campus-wide connectivity and even private metropolitan area networks (MANs). The independence of ATM from a particular set of hardware constraints has allowed it to be implemented over radio and satellite links.

Transmission Convergence Sublayer

The Transmission Convergence (TC) sublayer functions as a converter between the bit stream of ATM cells and the Physical Medium Dependent sublayer. When transmitting, the TC sublayer maps ATM cells onto the format of the Physical Medium Dependent sublayer (such as DS-3 or SONET frames). Because a continuous stream of bytes is required, unused portions of the ATM cell stream are "filled" by idle cells. These idle cells are identified in the ATM header and are silently discarded by the receiver. They are never passed to the ATM layer for processing.

The TC sublayer also generates and verifies the Header Error Control (HEC) field for each cell. On the transmitting side, it calculates the HEC and places it in the header. On the receiving side, the TC sublayer checks the HEC for verification. If a single bit error can be corrected, the bit is corrected and the results are passed to the ATM layer. If the error cannot be corrected (as in the case of a multi-bit error) the cell is silently discarded.

Finally, the TC sublayer delineates the ATM cells, marking where ATM cells begin and where they end. The boundaries of the ATM cells can be determined from the Physical Medium Dependent layer formatting or from the incoming byte stream using the HEC field. The PMD performs the HEC validation per byte on the preceding 4 bytes. If it finds a match, the next ATM cell boundary is 48 bytes away (corresponding to the ATM payload). The PMD performs this verification several times to ensure that the cell boundaries have been determined correctly.

The ATM Layer

The ATM layer provides cell multiplexing, demultiplexing, and VPI/VCI routing functions. The ATM layer also supervises the cell flow to ensure that all connections remain within their negotiated cell throughput limits. If connections operate outside their negotiated parameters, the ATM layer can take corrective action so the misbehaving connections do not affect connections that are obeying their negotiated connection contract. The ATM layer also maintains the cell sequence from any source.

The ATM layer multiplexes and demultiplexes and routes ATM cells, and ensures their sequence from end to end. However, if a cell is dropped by a switch due to congestion or corruption, it is not the ATM layer's responsibility to correct the dropped cell through retransmission or to notify other layers of the dropped cell. Layers above the ATM layer must sense the lost cell and decide whether to correct it or disregard it.

In the case of interactive voice or video, a lost cell is typically disregarded because it would take too long to resend the cell and place it in the proper sequence to reconstruct the audio or video signal. A significant number of dropped cells in time-dependent services, such as voice or video, results in a choppy audio or video playback, but the ATM layer cannot correct the problem unless a higher Quality of Service is specified for the connection.

In the case of data (such as a file transfer), the upper layer application must sense the absence of the cell and retransmit it. A file with missing 48-bytes chunks here and there is a corrupted file that is unacceptable to the receiver. Because operations such as file transfers are not time dependent, the contents of the cell can be recovered by incurring a delay in the transmission of the file corresponding to the recovery of the lost cell.

ATM Layer Multiplexing and Demultiplexing

ATM layer multiplexing blends all the different input types so that the connection parameters of each input are preserved. This process is known as traffic shaping.

ATM layer demultiplexing takes each cell from the ATM cell stream and, based on the VPI/VCI, either routes it (for an ATM switch) or passes the cell to the ATM Adaptation Layer (AAL) process that corresponds to the cell (for an ATM endpoint).

ATM Adaptation Layers

The ATM Adaptation Layers (AAL) are responsible for the creation and reception of 48-byte payloads through the lower layers of ATM on behalf of different types of applications. Though there are five different types of AALs, Windows 2000 supports only AAL5. ATM Adaptation is necessary to link the cell-based technology at the ATM Layer to the bit-stream technology of digital devices (such as telephones and video cameras) and the packet-stream technology of modern data networks (such as Frame Relay, X.25 or LAN protocols such as TCP/IP or Ethernet).

The five different AALs each provide a distinct class of service:

AAL0   AAL0 is user-defined, or No AAL, meaning that no AAL layer is used. In all other AAL types, some delineation of the data segment is included at the AAL level before the segment is made into cells. This affects how the data is passed up to the ATM layer. With AAL5, the data is not passed up until a complete AAL segment is received. With AAL0, for example, there is no delineation or synchronization, so individual cells are passed up as they are received, or the adapter might optimize and accrue a certain amount before indicating that a cell can be passed along.

AAL1   AAL1 provides circuit emulation over an ATM network. This requires constant bit rate, time-dependent service. To provide this, AAL1 adds timestamps, error checking and sequencing to the data payload. Additional functionality is provided in AAL1 to load the 48-byte cell payload with multiple smaller-than-48-byte samples, as is usually required with voice streams. Due to its high overhead, AAL1 is used only when these features are required. This format is most commonly used with voice or video applications.

AAL2   AAL2 is a mechanism that allows the transfer of high-speed, variable bit rate information in an isochronous, connection-oriented manner. Unlike AAL1, AAL2 is designed to use bandwidth only when data is sent. AAL2 has never been fully defined by the standards committee and did not gained wide acceptance. It has largely been supplanted by AAL5.

AAL3/4   AAL3/4 combines two once-separate AAL specifications. AAL3 was intended for the framing of connection-oriented protocols, while AAL4 was intended for the framing of connectionless protocols. While pursuing these two standards, the ATM standards bodies learned that there was no difference in the framing between the two types of protocols; therefore, they combined the two separate framing methods to create AAL3/4. This AAL adds information to the payload regarding segment size, sequencing, and ordering control. However, AAL 3/4 is rarely used because of the high overhead required; AAL5 provides the same services with minimal overhead.

AAL5   AAL5 provides a way for non-isochronous, variable bit rate, connectionless applications to send and receive data. AAL5 was developed as a way to provide a more efficient transfer of network traffic than AAL3/4. AAL5 merely adds a trailer to the payload to indicate size and provide error detection. AAL5 is the AAL of choice when sending connection-oriented or connectionless LAN protocol traffic over an ATM network. Windows 2000 supports AAL5.

AAL5 in Detail

AAL5 provides a straightforward framing at the Common Part Convergence Sublayer (CPCS) that behaves more like existing LAN technologies, such as Ethernet. Figure 14.5 shows a detailed breakdown of an AAL5 Cell Header and Payload.

Figure 14.5    Breakdown of an AAL5 Cell Header and Payload
Enlarge figure

Figure 14.5 Breakdown of an AAL5 Cell Header and Payload

With AAL5, there is no longer a dual encapsulation. The service class frames cells at the CPCS, but not at the Segmentation and Reassembly (SAR) sublayer to minimize overhead. It also uses a bit in the Payload Type (PT) field of the ATM header rather than a separate SAR framing.

AAL5 is the AAL of choice when sending connection-oriented (X.25 or Frame Relay) or connectionless (IP or IPX) LAN protocol traffic over an ATM network.

AAL5 CPCS Sublayer

Figure 14.5 shows the framing that occurs at the AAL5 CPCS sublayer. (Note that only a trailer is added.)

CPCS PDU Payload

The block of data that an application sends. The size can vary from 1 byte to 65,535 bytes. The PAD consists of padding bytes of variable length (0-47 bytes), which create a whole number of cells by making the CPCS PDU payload length a multiple of 48 bytes.

User-to-User Indication

Transfers information between AAL users.

Common Part Indicator

Currently used only for alignment processes so that the AAL5 trailer falls on a 64-bit boundary.

Length of CPCS PDU Payload Field

Indicates the length of the CPCS PDU payload in bytes. The length does not include the PAD.

Cyclic Redundancy Check (CRC)

A Cyclic Redundancy Check, or CRC, is a 32-bit portion of the trailer that performs error checking on the bits in the CPCS PDU. The AAL5 CRC uses the same CRC-32 algorithm used in 802.x-based networks such as Ethernet and Token Ring.

AAL5 SAR Sublayer

Byte-by-byte, Figure 14.5 shows the framing that occurs at the AAL5 SAR sublayer. There is no SAR header or trailer added. On the transmitting side, the AAL5 SAR sublayer merely segments the CPCS PDU into 48-byte units and passes them to the ATM layer for the final ATM header.

On the receiving side, the sublayer reassembles a series of 48-byte units and passes the result to the CPCS. The AAL5 SAR uses the third bit in the Payload Type (PT) field to indicate when the last 48-byte unit in a CPCS PDU is being sent. When the ATM cell is received with the third bit of the PT field set, the ATM layer indicates this fact to the AAL; the AAL then begins a CRC and length-checking analysis of the full CPCS PDU.

© 1985-2000 Microsoft Corporation. All rights reserved.