Asynchronous Transfer Mode (ATM) : Dr. Sanjay P. Ahuja, Ph.D. Professor School of Computing, UNF
Asynchronous Transfer Mode (ATM) : Dr. Sanjay P. Ahuja, Ph.D. Professor School of Computing, UNF
(ATM)
Dr. Sanjay P. Ahuja, Ph.D.
Professor
School of Computing, UNF
Goals of ATM
1. ATM, also known as cell relay, involves the transfer of data in discrete chunks
called cells. Multiple logical connections can be multiplexed over a single
path. This is similar to packet switching except that the packets are variable
sized and cells are of a fixed size.
3. ATM has minimal error and flow control capabilities to reduce the overhead of
cells the overhead of protocol processing, enabling ATM to operate at high
data rates.
2
ATM Protocol Architecture
3
ATM Protocol Architecture …
• Physical Layer
Concerned with specifications of the transmission medium and signal encoding .
Data rates specified include 155 and 622 Mbps with other data rates possible.
• ATM Layer
Defines transmission of data in fixed size cells and also defines the logical
connections (Virtual circuits and virtual paths).
(There are 3 planes in the protocol architecture: the User plane is for user traffic including flow
and error control; the Control plane is for connection control; the Management plane manages
the system as a whole and coordinates the planes and layers).
4
ATM Protocol Layers …
5
Virtual Paths (VPs) and Virtual Circuits (VCs)
6
Virtual Paths (VPs) and Virtual Circuits (VCs) …
• A Virtual Path Connection (VPC) is a bundle of VCCs that have the same endpoint.
So all cells flowing within all the VCCs in a VPC are switched together.
– VPC helps control cost by grouping connections sharing common paths through the network into a single
unit. Network management can then be applied to a small number of groups of connections instead of a
large number of individual connections.
• Advantages of VPCs:
1. Simplified network architecture (network functions can be separated into those related to a VCC and those
related to a group of connections (VPC)).
2. Increased network performance and reliability since the network deals with fewer entities.
3. Reduced processing and short connection set-up time (most of the work is done when a VPC is set-up. By
reserving capacity on a VPC in anticipation of later calls, new VCCs can be set-up be executing simple
control functions at end-points of the VPC; no call processing is required at transit nodes. So addition of new
VCCs to an existing VPC involves minimal processing).
4. Enhanced network services (the VPC is used internal to the network but is also visible to the end user. So
user may define closed user groups or closed networks of VCC bundles (lease them)). 7
Virtual Paths (VPs) and Virtual Circuits (VCs) …
• The VPC mechanisms include calculating routes, allocating capacity and storing
connection state information.
• For an individual VCC set-up, control involves checking that a VPC to destination
node with sufficient capacity to support a VCC exists and then store state information
(VCC/VPC mapping).
• VCC uses
In a VCC, cell sequence integrity is preserved, i.e. cells are delivered in the order they were sent.
Examples:
• Between end users to carry end-to-end user data.
• Between an end user and a network entity for user-to-network control signaling.
• Between two network entities for network traffic management and routing functions.
8
Virtual Paths (VPs) and Virtual Circuits (VCs) …
• VPC/VCC Characteristics
1. QoS: A user of a VCC is provided with QoS specified by parameters such as cell loss ratio (ratio of cells lost
to cells transmitted) and cell delay variation.
3. Traffic parameter and usage monitoring: Traffic parameters such as average rate, peak rate, burstiness, and
peak duration, can be negotiated between a user and the network for each VCC. The input of cells to a VCC
is monitored by the network to ensure that the negotiated parameters are not violated.
- network can deny request for new VCCs if congested or discard cells if negotiated parameters are violated or if
congestion becomes severe. In a worst case, a VCC can be terminated.
4. VCC identifier restriction within a VPC: One or more VCC #s may not be available to users of the VPC but
may be reserved for network management use.
9
ATM Cell Format
10
ATM Cell Format …
• Fixed size cell has a 5-byte header and 48-byte data field.
– Use of small cells may reduce queuing delay for a high-priority cell (since it waits less if it arrives slightly
behind a lower priority cell that has gained access to the transmitter).
– Fixed size cells can be switched more efficiently (i.e. easier to implement switching mechanism in
hardware and build more scalable switches). This is important for the high data rates of ATM.
• Header format
GFC (4-bits): Generic Flow Control to assist the customer in controlling traffic flow
based on QoS. This field is only retained at the user-network interface (UNI) and
not retained at the network-network interface (NNI) between ATM switches.
VPI (8-bits at the UNI and 12-bits at the NNI allowing more VPCs to be represented
within the network): Virtual Path Identifier is a routing field for the network.
VCI (16-bits): Virtual Channel Identifier is used for routing to and from an end user.
11
ATM Cell Format …
• Header format (continued)
PTI (3-bits): Payload Type indicates type of information in the information field.
The MSB indicates the type of ATM cell that follows. This bit set to 0 indicates user data; a bit set to 1
indicates network management data.
The middle bit indicates whether the cell experienced congestion in its journey from source to
destination. This bit is also called the Explicit Forward Congestion Indication (EFCI) bit. This bit is set
to 0 by the source; if an interim switch experiences congestion while routing the cell, it sets the bit to 1.
After it is set to 1, all other switches in the path leave this bit value at 1.
12
ATM Cell Format …
• Header format (continued)
CLP (1-bit): Cell Loss Priority provides guidance to the network in the event of
congestion. CLP = 0 indicates a cell of high priority which should not be discarded.
CLP = 1 indicates a cell that is subject to discard.
- When the CLP bit is set to 1, the interim switches sometimes discard the cell in congestion situations.
- An ATM user sets the CLP bit to 1 when a cell is created to indicate a lower priority cell. The ATM switch
can set the CLP to 1 if the cell exceeds the negotiated traffic parameters of a VCC. Later if congestion is
experienced, the cell that has been marked with CLP = 1 is subject to discard in preference to cells that fall
within agreed traffic limits.
HEC (8-bits): Header Error Code is calculated based on the remaining 32-bits of the
header. Polynomial used for the checksum is x^8 + x^2 + x + 1. In the case of ATM,
the input to calculate the checksum is only 32-bits compared to the 8-bits for the
code.
- The HEC only checks the ATM header and not the ATM payload. Checking the payload for errors is the
responsibility of upper layer protocols.
13
Cell Framing (Delineation)
To recognize a cell boundary. This is done by the Transmission Convergence Sub-layer which is part of the
Physical Layer. It uses the HEC since no flags are available to signal end of a cell. A finite state machine is
used as shown above. 14
ATM Adaptation Layer 5 (AAL 5)
• AAL5 is used to carry computer data such as TCP/IP. AAL5 adapts multi-cell higher layer
PDUs into ATM cells with minimal error checking and no error detection.
• Unlike most network frames, which place control information in the header, AAL5 places control
information in an 8-byte trailer at the end of the packet.
• Each AAL5 packet is divided into an integral number of ATM cells and reassembled into a
packet before delivery to the receiving host. This process is known as Segmentation and
Reassembly.
15
AAL5 …
• The AAL layer has two sub-layers: CS and SAR.
A block of data from a higher layer is encapsulated into a PDU at the CS sub-layer. This is then
passed to the SAR sub-layer where it is broken up into payload blocks (total length = 48 bytes).
16
AAL5 …
• The Common Part Convergence Sub-layer (CPCS-PDU) is shown below:
0-47 8 bytes
CPCS-PDU Payload Pad CPCS-PDU trailer
• Pad within the CPCS-PDU: The payload from the next higher layer is padded out to make the
entire CPCS-PDU (including trailer) is a multiple of 48-bytes. 17
AAL5 …
• The AAL5 SAR-PDU is 48 bytes payload as shown:
48 bytes
SAR-PDU payload
A block of data from a higher layer is encapsulated into a PDU at the CS sub-layer. This is then
passed to the SAR sub-layer where it is broken up into payload blocks (total length = 48 bytes).
• The SAR-PDU has no header and trailer (i.e. no protocol overhead). The implications of a lack
of protocol are:
– No sequence # and so receiver must assume that all SAR-PDUs arrive in sequence for reassembly (CRC field in CPCS-
PDU verifies this).
– To tell when a CPCS-PDU ends, the AAU bit (the LSB bit of the PTI field in the ATM cell header) is used. A CPCS-PDU
consists of 0 or more consecutive SAR-PDUs with AAU bit set to 0 followed immediately by a SAR-PDU with AAU bit set
to 1.
– The last cell contains padding to ensure that the entire packet is a multiple of 48 bytes. The final cell contains up to 40
bytes of data, followed by 0 or more padding bytes and the 8-byte trailer. In other words, AAL5 places the trailer in the last
8 bytes of the final cell where it can be found without knowing the length of the packet; the final cell is identified by a bit in
the ATM header (the LSB of the PTI field), and the trailer is always in the last 8 bytes of that cell.
18
AAL 5 Transmission
SAR-PDU payload
SAR-PDU payload
SAR-PDU payload
19
AAL5 Utilization
• Example: If a 1010 byte message is to be sent via AAL5, what is the utilization, U?
20
ATM Bit Rate Services
21