Asynchronous Transfer Mode (ATM) : 494 Link Layer and Local Area Networks
Asynchronous Transfer Mode (ATM) : 494 Link Layer and Local Area Networks
Framing. A method for encapsulating data in a PPP frame, identifying the begin-
ning and end of the frame, and detecting errors in the frame.
Link-control protocol. A protocol for initializing, maintaining, and taking down
the PPP link.
Network-control protocols. A family of protocols, one for each upper-layer net-
work protocol, that allows the network-layer modules to configure themselves
before network-level datagrams begin flowing across the PPP link.
The standards for ATM were first developed in the mid-1980s. For those too young
to remember, at this time there were predominately two types of networks: tele-
phone networks, which were (and still are) primarily used to carry real-time voice,
and data networks, which were primarily used to transfer text files, support remote
login, and provide e-mail. There were also dedicated private networks available for
video conferencing. The Internet existed at this time, but few people were thinking
about using it to transport phone calls, and the World Wide Web was as yet unheard
of. It was therefore natural to design a networking technology that would be appro-
priate for transporting real-time audio and video as well as text, e-mail, and image
files. Asynchronous transfer mode (ATM) achieved this goal. Two standards com-
mittees, the ATM Forum [ATM 2002] and the International Telecommunications
Union [ITU 2002] developed standards for broadband digital services networks.
The ATM standards call for packet switching with virtual circuits (called virtual
channels in ATM jargon). The standards define how applications directly interface
with ATM, so that ATM provides a complete networking solution for distributed ap-
plications. Paralleling the development of the ATM standards, major companies
throughout the world made significant investments in ATM research and develop-
ment. These investments have led to a myriad of high-performing ATM technolo-
gies, including ATM switches that can switch terabits per second. In recent years,
ATM technology has been deployed very aggressively within both telephone net-
works and the Internet backbones.
Although ATM has been deployed within networks, it has been less successful
in extending itself all the way to desktop PCs and workstations. And it is now ques-
tionable whether ATM will ever have a significant presence at the desktop. Indeed,
while ATM was brewing in the standards committees and research labs in the late
1980s and early 1990s, the Internet and its TCP/IP protocols were already opera-
tional and making significant headway:
02-068 C05 pp4 6/14/02 3:01 PM Page 495
The TCP/IP protocol suite was integrated into all of the most popular operating
systems.
Companies began to transact commerce (e-commerce) over the Internet.
Residential Internet access became inexpensive.
Many wonderful desktop applications were developed for TCP/IP networks, in-
cluding the World Wide Web, Internet phone, and interactive streaming video.
Thousands of companies are currently developing new applications and services
for the Internet.
As shown in Figure 5.44, the ATM protocol stack consists of three layers: the ATM
physical layer, the ATM layer, and the ATM adaptation layer (AAL):
The ATM physical layer deals with voltages, bit timings, and framing on the
physical medium.
The ATM layer is the core of the ATM standard. It defines the structure of the
ATM cell.
The ATM adaptation layer (AAL) is roughly analogous to the transport layer in
the Internet protocol stack. ATM includes several different types of AALs to sup-
port different types of services.
ATM layer
Application layer
(HTTP, FTP, SMTP, etc.)
Transport layer
(TCP, UDP)
Network layer
(IP)
AAL5
ATM layer
Sublayer Responsibilities
Table 5.2 The Two Sublayers of the Physical Layer and Their Responsibilities
02-068 C05 pp4 6/14/02 3:01 PM Page 498
frames used in the earlier sections of this chapter. The transmission frame is a physical-
layer TDM-like mechanism for organizing the bits sent on a link.) The PMD sub-
layer does not recognize cells. Some possible PMD sublayers include:
At the transmit side, the TC sublayer generates the HEC byte for each ATM cell
that is to be transmitted. At the receive side, the TC sublayer uses the HEC byte
to correct all one-bit errors in the header and some multiple-bit errors in the
header, reducing the possibility of incorrect routing of cells. The HEC is com-
puted over the first 32 bits in the cell header, using an eight-bit polynomial-
coding technique, as described in Section 5.2.3.
At the receive side, the TC sublayer delineates cells. If the PMD sublayer is cell-
based with no frames, then this delineation is typically done by running the HEC
02-068 C05 pp4 6/14/02 3:01 PM Page 499
on all contiguous sets of 40 bits (that is, five bytes). When a match occurs, a cell
is delineated. Upon matching four consecutive cells, cell synchronization is de-
clared and subsequent cells are passed to the ATM layer.
If the PMD sublayer is cell-based with no frames, the sublayer sends an idle cell
when the ATM layer has not provided a cell, thereby generating a continuous
stream of cells. The receiving TC sublayer does not pass idle cells to the ATM
layer. Idle cells are marked in the PT field in the ATM header.
Virtual channel identifier (VCI). Indicates the VC to which the cell belongs. As
with most network technologies that use virtual circuits, a cell’s VCI is translated
from link to link (see Section 1.3).
Payload type (PT). Indicates the type of payload the cell contains. There are sev-
eral data payload types, several maintenance payload types, and an idle cell pay-
load type. (Recall that idle cells are sometimes needed by the physical layer for
synchronization.)
Cell-loss priority (CLP) bit. Can be set by the source to differentiate between
high-priority traffic and low-priority traffic. If congestion occurs and an ATM
switch must discard cells, the switch can use this bit to first discard low-priority
traffic.
Header error control (HEC) byte. Error-detection and -correction bits that pro-
tect the cell header, as described above.
40 bits
VCI PT HEC
CLP
Virtual Channels
Before a source can begin to send cells to a destination, the ATM network must first
establish a virtual channel (VC) from source to destination. A virtual channel is
nothing more than a virtual circuit, as described in Section 1.3. Each VC is a path
consisting of a sequence of links between source and destination. On each of the
links the VC has a virtual circuit identifier (VCI). Whenever a VC is established or
torn down, VC translation tables must be updated (see Section 1.3). As noted earlier,
ATM backbones in the Internet often use permanent VCs; they obviate the need for
dynamic VC establishment and teardown.
AAL Structure
AAL has two sublayers: the segmentation and reassembly (SAR) sublayer and the
convergence sublayer (CS). As shown in Figure 5.49, the SAR sits just above the
ATM layer; the CS sublayer sits between the user application and the SAR sublayer.
Higher-layer data (for example, an IP datagram) are first encapsulated in a common
Figure 5.47 The AAL layer is present only at the edges of the ATM network.
02-068 C05 pp4 6/14/02 3:01 PM Page 501
ATM cell
Cell AAL
header bytes
part convergence sublayer (CPCS) PDU in the convergence sublayer. This PDU can
have a CPCS header and CPCS trailer. Typically, the CPCS-PDU is much too large
to fit into the payload of an ATM cell; thus the CPCS-PDU has to be segmented at
the ATM source and reassembled at the ATM destination. The SAR sublayer seg-
ments the CPCS-PDU and adds AAL header and trailer bits to form the payloads of
the ATM cells. Depending on the AAL types, the AAL and CPCS header and trail-
ers could be empty.
User data
ATM
SAR sublayer AAL Payload data AAL
cell
header ≤ 48 bytes trailer
header
ATM cell
0-65535 0-47 2 4
removed at the receiver. The CRC is the same one that is used by Ethernet, token
ring, and FDDI. At the ATM source, the AAL5 SAR chops the CPCS-PDU into 48-
byte segments. As shown in Figure 5.51, a bit in the PT field of the ATM cell header,
which is normally 0, is set to 1 for the last cell of the CPCS-PDU. At the ATM desti-
nation, the ATM layer directs cells with a specific VCI to an SAR-sublayer buffer.
The ATM cell headers are removed, and the AAL_indicate bit is used to delin-
eate the CPCS-PDUs. Once the CPCS-PDU is delineated, it is passed to the AAL
convergence sublayer. At the convergence sublayer, the length field is used to ex-
tract the CPCS-PDU payload (for example, an IP datagram), which is passed to the
higher layer.
Internet
IP traffic
IP router
Internet Internet
ATM network
IP traffic IP traffic
IP router IP router
IP router
Internet
IP traffic
connect four routers. Let us refer to the router at which the datagram enters the
ATM network as the “entry router” and the router at which the datagram leaves
the network as the “exit router.” The entry router does the following:
After these four steps have been completed, the job of moving the datagram to
the exit router is out of the hands of IP and in the hands of ATM. ATM must now
move the datagram to the ATM destination address obtained in Step 3 above. This
task has two subtasks:
02-068 C05 pp4 6/14/02 3:01 PM Page 504
Determine the VCI for the VC that leads to the ATM destination address.
Segment the datagram into cells at the sending side of the VC (that is, at the en-
try router), and reassemble the cells into the original datagram at the receiving
side of the VC (that is, at the exit router).
The first subtask listed above is straightforward. The interface at the sending
side maintains a table that maps ATM addresses to VCIs. Because we are assuming
that the VCs are permanent, this table is up to date and static. (If the VCs were not
permanent, then an ATM signaling protocol would be needed to establish and tear
down the VCs dynamically.) The second task merits careful consideration. One ap-
proach is to use IP fragmentation, as discussed in Section 4.4.4. With IP fragmen-
tation, the sending router would first break the original datagram into fragments,
with each fragment being no more than 48 bytes, so that the fragment could fit into
the payload of the ATM cell. But this fragmentation approach has a big problem—
each IP fragment typically has 20 bytes of header, so that an ATM cell carrying a
fragment would have 25 bytes of “overhead” and only 28 bytes of useful informa-
tion. ATM uses AAL5 to provide a more efficient way to segment and reassemble a
datagram.
Recall that IP in the entry router passes the datagram down to ATM along with
the ATM address of the exit router. ATM in the entry router indexes an ATM table to
determine the VCI for the VC that leads to the ATM destination address. AAL5 then
creates ATM cells out of the IP datagram:
AAL5 then passes the cells to the ATM layer. ATM sets the VCI and CLP fields
and passes each cell to the TC sublayer. For each cell, the TC sublayer calculates the
HEC and inserts it in the HEC field. The TC sublayer then inserts the bits of the cells
into the PMD sublayer.
The ATM network then moves each cell across the network to the ATM destina-
tion address. At each ATM switch between the ATM source and the ATM destina-
tion, the ATM cell is processed by the ATM physical and ATM layers, but not by the
AAL layer. At each switch the VCI is typically translated (see Section 1.3) and the
HEC is recalculated. When the cells arrive at the ATM destination address, they are
directed to an AAL buffer that has been put aside for the particular VC. The CPCS-
PDU is reconstructed using the AAL_indicate bit to determine which cell is the
last cell of the CPCS-PDU. Finally, the IP datagram is extracted out of the CPCS-
PDU and is passed up the protocol stack to the IP layer.