You are on page 1of 41

Copyright 1998, 1999 by Marko Vuskovic C

M. Vuskovic ATM Networking CS596


Chapter 1
ATM BASICS
Table of contents:
1.1 OVERVIEW
1.1.1 Why ATM?
1.1.2 Transmission Media
1.1.3 ATM Cells
1.1.4 Statistical TDM
1.1.5 Why the Cell Size is 53 Octets?
1.1.6 ATM Protocol Stack
1.1.7 Virtual Circuits
1.1.8 Guaranteed Quality of Service
1.1.9 LAN Emulation
1.1.10 Circuit Emulation
1.1.11 ATM Interfaces
1.2 PHYSICAL AND ATM LAYERS
1.2.1 Header Structure
1.2.2 Virtual Paths and Virtual Channels
1.2.3 Permanent Virtual Circuits
1.2.4 ATM Switching
1.2.5 Payload Type
1.2.6 ATM Protocol Stack
1.2.7 Cell Loss Priority
1.2.8 Header Error Control
1.2.9 Cell Delineation
1.2.10 Cell Scrambling
1.2.11 Repetitive Checking
1.3 ATM ADAPTATION LAYERS
1.3.1 Service Categories
1.3.2 Traffic Classes
1.3.3 ATM Adaptation Layer 1
1.3.4 ATM Adaptation Layer 2
1.3.5 ATM Adaptation Layer 3/4
1.3.6 ATM Adaptation Layer 5

1-2
Copyright 1999 by Marko Vuskovic C
OVERVIEW
Why ATM?
To support any type of traffic:
- burtsy data (to multimegabit rates: files, images, multimedia)
- intermittent data (interactive systems, low rate, delay intolerant)
- voice (sustained data rate, 64 kbps)
- video (sustained data rate, multimegabit rates)
To support transactions that use data, voice, and video simultaneously
To provide high bandwidth, which can't be found in other technologies
To provide a uniform architecture for fast LANs and scalable WANs of unrestricted sizes
To provide bandwidth on demand (pay for use)
To support multicast operations (video conferencing)
To provide guaranteed quality of service
To provide a unified approach in network management
PBX
Terminal/
service
adapter
ATM
1.5 Mbps - 9 Gbps
Router
LAN

1-3

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
1 2 5 10 20 50 100 200 500 1000
OC-129
OC-12
OC-3
45 Mbps
1.5 Mbps
64 kbps
ISDN, X.25
FR
SMDS
SONET/SDH
ATM
Speed
Network size (number of sites)
ATM can be cost-effective
for both, small and large
networks, ranging from
LANs to WANs,
which can operate at
T1/E1 to over 6 Gbps
[Used from: D. Spohn: "Data Network Design," McGraw-Hill, 1997]
SONET - SynchronousOptical Network
SDH - Synchronous Digital Hierarchy
ATM - Asynchronous Transfer Mode
SMDS - Switched Multi-Megabit Data Services
FR - Frame Relay
X.25 - Protocols for packet-switched public data networks

1-4

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
0.01 0.1 1 10 100 1000
SMDS
FR
ATM
Throughput [Mbps]
1000
500
200
100
50
20
10
5
2
1
X.25
Burstiness
[peak/average]
Circuit switching
Low speed packet switching
networks can take bursty
transactions at low throughput
Circuit-switched networks
are not very good for bursty
traffic
[Used from: D. Spohn: "Data Network Design," McGraw-Hill, 1997]

1-5

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
Range of nodal delay for
circuit-switched networks
is very small - they have
essentially constant nodal
delay
Slow packet switching
networks have large
range of nodal delay
SMDS is designed to
support data only services,
not well suited for voice
0.01 0.1 1 10 100 1000
SMDS
FR
ATM
Throughput [Mbps]
100
10
1
0.1
0.01
0.001
X.25
Range of nodal delay
[msec]
Circuit switching
[Used from: D. Spohn: "Data Network Design," McGraw-Hill, 1997]

1-6

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
Transmission Media
The connections between DTEs (ATM interfaces) and ATM switches, as well as the
connections between ATM switches are possible through a variety of transmission media.
ATM Switch ATM Switch
DS (T1, T3, E1, E3)
SONET/SDH (OC-3, OC-12, ...)
STP (shielded twisted pair)
UTP (unshielded twisted pair, category 5)
Wireless
Satelite

1-7
Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
5 octets 48 octets
Payload Overhead
ATM Cells
One of the main characteristics of ATM are small fixed-size cells (53 octets,
5 octets overhead, 48 octets payload). This gives the following advantages:
predictable delay of cells
can implement cell switching entirely in hardware
smaller packetization delay, better support for voice and video

1 2 3 4
8 bit samples
1024 bit packet
Packetizing 128 samples
Delay of the first sample
16 msec
125 sec
1 2 3 4
Propagation
+ processing delay (= x)
Packet has arrived
(Now you can hear what
was said 16+x ms ago)
1 2 3
8 bit samples
384 cell payload
Packetizing
48 samples
Delay of the first sample
6 msec
1 2 3 4
Cell has arrived (delay only 6+x ms)
Packetization Delay
Its a consequence of not sending the packet before it is filled with data.

1-8

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
Source A
Source B
A
1
A
1
A
1
B
1
B
1
B
1
B
2
B
2
B
2
B
2
A
2
A
2
A
2

Packet
switching
Cell
switching
B
1
Statistical TDM
Second important characteristic of ATM is statistical time division multiplexing (see
Appendix B), also called: asynchronous TDM (which gives rise to the term "ATM").
Multiplexing is facilitated due to small fixed-size cells, resulting in smaller delays
caused by sharing the transmission media among several sources.


1-9

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
Why the Cell Size is 53 Octets?
The cell size is determined as a trade off between packetizing delay and cell overhead.
As shown later, the minimum required overhead (cell header) is 5 octets.
The cell overhead (waste, "cell tax") is smaller at larger payload sizes. However, larger
payload sizes produce larger packetization delays. This can cause echo in voice communi-
cation, and jerky motion in video.
In addition the delay effect, a smaller cell size is preferred because of cell loss. There is
larger probability to get bit errors in larger cells than in smaller cells. Losing a smaller cell
due to error will not be noticed in voice communication. For example a 53-octet cell can
contain 48 voice samples, which is only 48 x125 s = 6 ms of voice. The loss of such cell
would be almost unnoticed. However a loss of cell with 32 ms of voice would be very dis-
ruptive.

It is shown that the maximal payload size, at which there is no noticeable packetizing de-
lay (echo and jerky motion) at 64 kpbs transmission, is 32 octets. This size however pro-
duces an overhead of 13.5 %. On the other hand a 64-octet payload would produce a
small echo in voice communication, but the overhead would be only 7.8 %. USA and Ja-
pan proposed 64 octet payloads, while the rest of the world proposed 32 octet payloads.
(USA and Japan argued that the small echo can be cancelled electronically at the receiver
side.)
In order to agree upon a unique cell size throughout the world, a compromise had to be
reached:
48
2
32 64
=
+
Europe
USA & Japan

1-10

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
ATM Protocol Stack
The ATM protocol stack has three layers: AAL (ATM Adaptation Layer), ATM layer, and the
physical layer. This stack doesn't fit exactly into the OSI reference model. For example,
the ATM and AAL layers can't be interpreted as link and network layers respectively.
What comes above the three ATM layers depends on the context of the ATM implementa-
tion (such as direct ATM, LAN emulation, IP over ATM, multiple protocol over ATM)


ATM
Physical
AAL
(ATM Adaptation
Layer)
Segmentation and
Reasembly (SAR)
Convergence
Sublayer
(CS)
Service Specific CS
(SSCS)
Common Part CS
(CPCS)
Checks and ensures some level of integrity
with the packets/frames passed to AAL from
higher layer protocols (link, network,
transport,...); adds CS overhead. Also
performs reverse operations on packets
frames coming from the ATM layer.
Slices packets/frames into segments
that can accommodate ATM cells;
adds SAR overhead. Also does
reverse operation: assembles cells
coming from ATM layer into
packets/frames
Adapts any traffic into the ATM
format of 48-octet payload (currently,
there are no applications that produce
ATM cells directly.)
Adds cell header and passes cells to
the physical layer. Perform cell switching
and modification of cell headers at ATM
switches.
Error control, cell delineation
Physical frame generation. Mapping of cells
into/from DS1, DS3, SONET/SDH frames.
Line encoding (AMI and B8ZS) and
transmitting/receiving the bit stream.
Bit timing (clocking)
Transmission
Convergence
Physical Media
Dependent
(TC)
(PMD)

1-11

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
Header Payload Trailer
PDU from higher layers
Header Payload Trailer
SSCS
header
Header Payload Trailer
SSCS
header
CPCS
header
CPCS
trailer
SAR
header
SAR
trailer
SAR
header
SAR
trailer
ATM
SAR
SSCS
CPCS
CS
AAL
Higher layers
TC
PMD
11010101111010000111010010101111010101111010101110101010
SAR
header
Cell
header
SAR
trailer
SAR
header
Cell
header
SAR
trailer
48 octets
ATM Cells
SAR PDUs
Physical frames (DS-1, DS-3, STS-3,...)
Bit stream
Each protocol layer/sublayer adds its own header (and trailer) to PDUs coming from the upper
layers and strips the according header/trailer from the PDUs coming from the south part of the
protocol stack. Shown below is the general case of the protocol architecture. Not all adaptation
sublayers are involved in a particular traffic type.


1-12

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
Virtual Circuits

ATM supports three types of switched connections:
Permanent Virtual Circuits (PVC)
Switched Virtual Circuits (SVC)
Soft PVC (SPVC)
(X.25 supports PVC and SVC)
A PVC is programmed by the network administrator and doesn't require additional work
in a communication session. If the connection fails it can't be reestablished (there are no
alternate routes.) An SVC is established each time the connection is needed and termi-
nated there after. Signaling (call setup/call clearing) is a complicated procedure, which
can cause incompatibility among different vendors, but provides rerouting capabilities in
case of the connection failure. A soft PVC is a compromise solution in which the connec-
tion between the DTEs and the network are a PVC, while the connection across the net-
DTE DTE
PVC
PVC SVC
ATM network
In any case, PVC, SVC, or SPVC, there is no routing during a communication session.
Instead, the cells are switched by simple hardware implemented algorithms, which
eliminates processing delay at ATM network nodes.

1-13

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
Guaranteed Quality of Service

This is the third important characteristic of ATM. The combination of small fixed-size
cells, statistical TDM and virtual curcuits provids a possibility of guaranteed delivery of a
certain traffic type. The traffic type can be defined by the following negotiable QoS pa-
rameters:
Cell Delay Variation (CDV)
Cell Transfer Delay (CTD)
Cell Loss Ratio (CLR)
There are other QoS parameters which are not negotiable, but which characterize the
traffic:
PCR - Peak Cell Rate
SCR - Sustainable Cell Rate
MCR - Minimum Cell Rate
CER - Cell Error Rate
CMR - Cell Missinsertion Rate
Required QoS parameters are normally specified by the application.
10
-6
10
-10
10
-8
10
-4
0.1 1 10 100 1000 10000 [msec]
Voice
Broadcast
video
Web
browsing
Interactive
data
File
transfer
Interactive
video
Small loss of speech
is not critical, but delays
can cause echo
Video depends on amount of motion,
resolution and immage size. More
demanding than voice in terms of cell loss
Broadcas video can
tolerate larger delays
(playback buffers can
compensate for CVD)
Maximal CDV
Used from D. McDysan and D. Spohn: "ATM -Theory
and Applications," McGraw-Hill, 1999
1-14

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
LAN Emulation
How can an existing LAN, without changes in interfaces, drivers and applications, take ad-
vantage of ATM-based WANs (for example: campus backbone)? This is a problem of
interoperability of legacy LANs, which was addressed by the ATM Forum. The solutions is
in LAN Emulation, which consists of a set of standards that enable Ethernet (802.3) and
token rings (802.5) to communicate across an ATM network, taking a full advantage of its
benefits (low latencies, performance, scalability).
ATM Backbone
SVC
LAN Emulator Client
(a router)
LAN Emulator Client
(a router)
LEC LEC
Legacy LAN
(802.3)
A
Legacy LAN
(802.5)
B
Host A
PHY
MAC
LLC
TCP/IP
Applica-
tion
PHY
ATM
ATM Switch
PHY
MAC
LLC
PHY
ATM
ALL
LANE
Bridging
LEC
MAC frames ATM cells ATM cells
ATM cells
PHY
MAC
LLC
TCP/IP
Applica-
tion
PHY
ATM
Host B
ATM Switch
PHY
MAC
LLC
PHY
ATM
ALL
LANE
Bridging
LEC
MAC frames ATM cells
ATM
WAN
Maps MAC/IP address (legacy address)
into ATM address/SVC id. For that purpose
an ARP server is needed, which runs on
either LEC, or ATM switch.
LANs are unaware of
existence of ATM WAN

1-15

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
Circuit Emulation
Some legacy devices like classic PBX, video conferencing equipment, and terminal multi-
plexers are based on TDM circuits, which are all characterized as real-time communication
systems with constant bit rate. Most of these devices use T1, E1, T3 or E3 circuits as pri-
vate, or leased lines. The Circuit Emulations Service (CES) provides support for transport-
ing TDM traffic across ATM networks, thus enabling the integration of legacy applications
into a new ATM backbone and therefore protecting the existing investments into equipment.

PBX
PBX
CODEC
CODEC
MUX
MUX
ATM
Network
T1/E1
T1/E1
T1/E1
T1/E1
T1/E1
T1/E1
Ingress Switch
Native T1/E1 frames Native T1/E1 frames
T1/E1 PHY
ATM
AAL
CES-IWF
Egress Switch
T1/E1 PHY
ATM
AAL
CES-IWF
T1/E1
T1/E1
User
T1/E1
T1/E1
User
ATM
Network
CES Interworking Functions
(Enable communication between
TDM and ATM interfaces)

1-16

Copyright 1999 by Marko Vuskovic C
OVERVIEW (Cont.)
ATM Interfaces
Most of the ATM protocols are groupped according to the interface types. There are
three basic interfaces:
UNI - User-Network Interface
(Interface between ATM end users and a private ATM switch,
or between a private ATM switch and the public carrier ATM network)
PNNI - Private Network-Network Interface
(Interface between two switches in the same ATM network)
B-ICI - Broadband (ISDN) Inter-Carrier Interface
(Interface between two public ATM networks)
NOTICE: Sometimes NNI is used instead of PNNI. Strictly, NNI denotes a generic
term: "network node interface", interface between two network nodes.
In addition to the basic interface, there are others like LUNI, FUNI, LNNI, etc.,
which will be discussed later.
PNNI
PNNI
PNNI
PNNI
PNNI
Public ATM
Carrier Network
Public ATM
Carrier Network
B-ICI
Private
ATM switch
PBX
Router
UNI
UNI
UNI
Private Network
UNI
1-17

Copyright 1999 by Marko Vuskovic C
PHYSICAL AND ATM LAYERS
Cell Header
There are two slightly different versions of the ATM cell header, one for UNI and another
for NNI. NNI doesn't use generic flow control (GFC), therefore it can use larger virtual
path identifier. The goal of flow control at the local level is to work with the QoS and help
decrease the congestion problem (as will be seen later, cells get dropped at congested
nodes, which can make the traffic problem even worse due to retransmission requests
made by higher protocol layers.) GFC is to prevent excessive retransmissions in a way
similar to frame relay. The specification of GFC is not yet finished; the GFC field is nor-
mally not used (set to 0x0).

VPI VCI PT HEC
12 bits 16 bits 3 bits 1bit 8 bits
NNI
Header
(5 octets)
Payload (48 octets)
ATM Cell (53 octets)
Generic
Flow Control
Virtual Path
Identifier
Virtual Channel
Identifier
Payload
Type
Cell Loss
Priority
Header Error
Control
GFC VPI VCI PT HEC
4 bits 8 bits 16 bits 3 bits 1bit 8 bits
UNI
The header fields and their usage will be discussed in the following sections

1-18

Copyright 1999 by Marko Vuskovic C
PHYSICAL AND ATM LAYERS (Cont.)
Virtual Paths and Virtual Channels
ATM uses virtual circuits (as in X.25 and FR). However, the virtual circuits are hierarchi-
cally organized using three concepts:
Transmission Paths (TP)
- Physical connections between network nodes
Virtual Channel Connection (VCC)
- Logical end-to-end connection between two users, which provides transport
of a particular transaction (voice, video, data). Conceptually similar to virtual
circuits in X.25. A VCC preserves the cell sequence integrity.
VCCs are unidirectional.
Virtual Path Connection (VPC)
- A bundle of VCCs with identical routing. Introduced to organize the VCCs
and to manage the network more efficiently. VCCs in a VPC can have
different traffic parameters and differently negotiated QoS parameters.
VPCs are unidirectional.
A VCC is a concatenation of virtual channel links (VCL). Each VCL is labelled with an
identifier called Virtual Channel Identifier (VCI). A VCP is a concatenation of virtual path
links (VPL). Each VPL is labeled with an identifier which is called Virtual Path Identifier
(VPI). VCIs and VPIs are used for routing and switching. Theoretically VCIs are in the
range 0..65535, while VPIs are in range of 0..255 for UNI, and 0..4095 for NNI. (Practical-
ly not all switches support the full ranges).
VCIs and VPIs have local significance, i.e. they are re-mapped in each network node.
Reason: easier network reconfiguration and smaller numbers (i.e. less space in cell
header). The knowledge of (VPI.VCI) pairs along a VCC is distributed across the network,
and is known after the connection establishment.
64 kbps
(CBR, occasional
cell loss is OK)
64 kbps
(CBR)
15 Mbps
(CBR)
15 Mbps
(CBR)
128 Mbps
(bursty,
no cell loss)
128 Mbps
(bursty)
Virtual Channel
Connections
(VCC)
Virtual Channel
Connections
(VCC)
Virtual Path
Connection
(VPC)

1-19

Copyright 1999 by Marko Vuskovic C
PHYSICAL AND ATM LAYERS (Cont.)
Permanent Virtual Circuits
VCCs and VPCs can be preestablished (PVC - Permanent Virtual Circuits), or set up
on demand (SVC - Switched Virtual Circuits). In PVCs the routes are set manually
once forever (until the next change) by the network administrator. SVCs are established
and terminated by the call setup/call clearing procedures.
One of the advantages of permanent virtual circuits is PVP tunneling: a public carrier
can create permanent virtual paths (PVPs) across its public ATM network. These paths
logically connect a couple of private ATM networks. The PVPs make the public ATM
network transparent to the private ATM networks, i.e. several private ATM networks be-
come integrated into a larger private ATM network. The user can establish his/her own
VCCs through the PVP tunnels (even if the public carrier doesn't support VCs) - the
condition is that the total bandwidth of the VCCs are within the bandwidth of the PVP.
Public ATM
network
Private ATM
network
Private ATM
network
Private ATM
network
PVP
PVP
Permanent Virtual
Paths
PVP Tunneling

1-20

Copyright 1999 by Marko Vuskovic C Copyright 1999 by Marko Vuskovic C
PHYSICAL AND ATM LAYERS (Cont.)
ATM Switching
There are three types of ATM switching: virtual path switching, virtual channel swiching,
and combined virtual path/virtual channel switching.
Virtual Path Switching
Switching based upon VPIs only (the VCIs are just passed without modification).
End-users may assign VCIs arbitrarily and this will not affect the network.
TP2
TP1
1
1
1
2
2
2
3
1
1
1
2
2
2
3
1
2 3
1
2
3
VCIs
VCIs
VCIs
VCIs
VCIs
VCIs
VCIs
VPI=12
VPI=52
VPI=8
VPI=18
VPI=33
VPI=6
ATM switch
Port 1
Port 2
Port 3
Input
Port VPI
Output
Port VPI
1 12
1 52
2 24
3 33
2 61
3 18
3 6
1 8
TP3

1-21

Copyright 1999 by Marko Vuskovic C
PHYSICAL AND ATM LAYERS (Cont.)
Virtual Channel Switching

VPIs are set to 0 and are left unchanged in each ATM switch, while only VCIs are re-
mapped.
Combined Virtual Path/Virtual Channel Switching
Switch re-maps the entire label, VCI and VPI. The highest flexibility in switching.
Input
Port VPI VCI
1 12 223
1 12 454
1 52 670
1 52 665
Output
Port VPI VCI
2 33 52
2 24 51
2 18 670
2 18 665
TP1
TP2
VPI=12
VPI=52 VPI=18
VPI=24
VPI=33
VP switch
VC switch
ATM switch
VCI=223
VCI=52
VCI=51
VCI=454
VCI=670
VCI=670
VCI=665
VCI=665

1-22

Copyright 1999 by Marko Vuskovic C
PHYSICAL AND ATM LAYERS (Cont.)
Payload Type

The most significant bit indicates user data or network management cells.
This allows the insertion of management cells into a user's VCC without
disrupting the user's data (inband control).
The middle bit of user data cells is Explicit Forward Congestion Indicator (EFCI)
(similar to FECN - Forward Explicit Congestion Notification in frame relay). EFCI can be
set by a congested node, to notify the destination end system, which may implement an
algorithm for adaptive lowering of the cell rate during congestion periods.
The least significant bit of user data cells is used in ATM Adaptation layer.
0 0 1
0 0 0
0 1 1
0 1 0
1 0 1
1 0 0
1 1 1
1 1 0
User
Data
Network
Information
Congestion not
experienced
Congestion
experienced
OAM
cell
SDU type 0
SDU type 1
SDU type 0
SDU type 1
segment
end-to-end
Resource management
Reserved for future
SDU - Service Data Unit (refers to 48-octet payload)
OAM - Operations, Administration, and Maintenance
PT

1-23

Copyright 1999 by Marko Vuskovic C
PHYSICAL AND ATM LAYERS (Cont.)
Cell Loss Priority

The CLP field defines priority when it comes to cell discard due to congestion. If CLP =
1 - cell gets low priority and will be discarded by the congested node if needed. In se-
verely congested traffic, the cells marked CLP = 0 can be discarded either, but not be-
fore the low priority cells.
The ingress network node can set CLP if the corresponding VCC violates the agreed
traffic parameters. For example, certain VCC can exceed the cell rate which was nego-
tiated at the connection establishment. The violating cells can still go through the net-
work, but in case of congestion they will have a low priority (see later, chapter "Traffic
Management")
The end user can also set CLP. For example, user can insert cells that are beyond the
negotiated cell rate with CLP = 1. The cell will be delivered to the destination if the traf-
fic conditions in the network are convenient.

CLP=0 VCI=12
CLP=0 VCI=07
CLP=0 VCI=33
CLP=0 VCI=12
CLP=1 VCI=12
CLP=0 VCI=07
CLP=0 VCI=33
CLP=0 VCI=33
CLP=1 VCI=12
Router
CLP=0 VCI=07
Violates the agreed
cell rate
Congested
switch
Ingress
switch
Discarded cells

1-24

Copyright 1999 by Marko Vuskovic C
PHYSICAL AND ATM LAYERS (Cont.)
Header Error Control
The header field HEC protects only the header (not the payload!). Error control of the
payload is performed by higher layer protocols and applications. The integrity of the head-
er is extremely important because a corrupted header can cause delivery of cells to
wrong addresses, or can interfere with network management. This can bring the network
in a catastrophic condition.

A study has shown that among all errors in fiber-optic transmission media, 99.64% of
them are single bit errors. This means that two-bit or three-bit errors are not very likely.
However, it is also known from the experience that the large error bursts have also a high
probability (of course, far less than single bit errors, but far more than two, three or four
bit errors). This fact has influenced the design of the ATM error control mechanism and
the size of the HEC field.
ATM layer uses the Bose-Chadhuri-Hocquenghem (BCH) algorithm which corrects single-
bit errors and detects multiple bit errors. The algorithm is based on a combination of the
8-bit CRC scheme (which can detect errors) and Hamming code (which can correct single
bit errors). This combination is based on the redundancy of HEC, which has 8 bits and is
used to protect only 5x8 = 40 bits. The coding theory shows that only 6 bits are neces-
sary to detect and correct a single bit error in a message that has 40 bits. Furthermore,
an extended 8-bit HEC can correct single-bit errors and detect 84% of other errors.
The algorithm computes the HEC value by modulo-two division of the header bit pattern
(with the HEC field initialized to zeroes) by the CRC generator whose polynomial is x
8
+
x
2
+ x + 1. The remainder of the modulo-two division is then OR-ed with 01010101 and
placed into the last octet of the cell header (HEC field). Similar operation is performed at
the receiver's side, where the entire header (including HEC field) is modulo-two divided
by the CRC generator.
The error correction capability greatly diminishes the need for cell discarding, and conse-
quently, the need for cell retransmission.
Payload
HEC
Rest of the
header
Unprotected by HEC (protected by higher layers)
HEC protects the entire header
including the HEC itself
Protected by HEC

1-25

Copyright 1999 by Marko Vuskovic C
PHYSICAL AND ATM LAYERS (Cont.)
The working of the HEC algorithm (which uses BCH error coding) can be described by
the following two-state diagram:
The algorithm starts in "correction mode" state. In detection mode the cells have an op-
portunity to be corrected (if the error is single-bit). If any error happens, the state is
changed to detection mode, and it stays there as long as errors persist. This is designed
to handle error bursts. It is assumed that the burst has stopped if a valid cell entered the
switch - then the state is changed back to the correction mode.

No error detected
(pass the cell)
No error detected
(pass the cell)
Multibit error detected
(drop the cell)
Error (any) detected
(drop the cell)
Single-bit error detected
(correct the header
and pass the cell)
Detection
mode
Correction
mode
10
-28
10
-10
10
-9
10
-8
10
-7
10
-6
10
-5
10
-24
10
-20
10
-16
10
-12
10
-8
10
-4
Used from: U. Black: "ATM Foundation for Broadband Networks",
Vol. 1, Prentice Hall, 1999 (Originally published by ITU-T in I.432)
Bit Error Rate
10
-10
10
-6
10
-17
10
-8
BER = , p = (UTP)
BER = , p = (fiber optic)

1-26

Copyright 1999 by Marko Vuskovic C
PHYSICAL AND ATM LAYERS (Cont.)
Cell Alignment
Since cells have no flags to indicate their beginning and the end, there must be some
"pattern recognition" algorithm to find the exact location of a cell in a stream of incoming
bits. To accomplish this, the receiver checks if a candidate header is valid: it modulo-two
divides the 40 bits of the supposed header with the CRC generator. A zero remainder
would indicate the possibility for a valid header. If the remainder is not zero, the receiver
moves one bit further and perform the check again. This process continues, bit-by-bit, un-
til a successful match occurs. As seen, the HEC has two functions: error control and cell
synchronization (alignment, delineation).

10101000101000111100001011101010011100011100010101010101010101010
... ...
...
...
HEC
Rest of
the header
Payload
Payload
Supposed to be header
(apply HEC)
NO MATCH
40 bits
Payload
Supposed to be header
(apply HEC)
10101000101000111100001011101010011100011100010101010101010101010
... ...
...
...
HEC
Payload
NO MATCH
40 bits
Supposed to be header
(apply HEC)
10101000101000111100001011101010011100011100010101010101010101010
... ...
...
...
HEC
Payload
Payload
MATCH !
40 bits

1-27

Copyright 1999 by Marko Vuskovic C
PHYSICAL AND ATM LAYERS (Cont.)
Repetitive Checking
The HEC is not 100% accurate. Therefore the check must be performed several times
successfully on three consecutive cells before the receiver finally can decide that it
has found the right header and is in synchronism. This is called repetitive checking.
A usuall value of repetitions is three times.
Cell Scrambling
What happens if a payload accidentally contains a 40-bit subpattern which satisfies
the HEC? This situation must be not permitted. Therefore the ATM forum has pro-
posed an optional capability of cell scrambling, which looks for a bit pattern within the
payload that satisfies the HEC. If such bit pattern is found, it is modified so that the
match cannot occur within the payload, and that the payload can be easily unscram-
bled at the receiver's side.
Jump 48 octets
and check again
Jump 48 octets
and check again
1
st
successful
HEC match
3
rd
successful
HEC match
2
nd
successful
HEC match This is a valid cell!

1-28

Copyright 1999 by Marko Vuskovic C
PHYSICAL AND ATM LAYERS (Cont.)
PRE
SYNC
HUNT
SYNC
Successful
match
Successful
match
(move times,
cellwise)
Unsuccessful
match
(move bitwise)
Unsuccessful
match
th unsuccessful
match
th successful
match
Receiver enters correction
mode and performs regular HEC
(move cellwise)
The repetitive checking algorithm, which is performed at the receiver's side, can be repre-
sented as a three-state diagram. The algorithm starts in "hunt mode" where it moves bit-
by-bit in search for a valid header. Then it goes to "presync mode" where it continues to
move cell-by-cell, looking for three (in general case ) successful header matches, which is
a condition for synchronism. In "sync mode" the algorithm starts regular error checking
based on the HEC field. If there are more than unsuccessful HEC, the receiver considers
itself to be out of synchronism, and goes back to "hunt mode".

1-29

Copyright 1999 by Marko Vuskovic C
ADAPTATION LAYER
The purpose of the ATM adaptation layer (AAL) is to adapt (converge) the user traffic (ap-
plications) to a cell-based network. The user traffic can have various characteristics and
various demands regarding the bandwidth, burstiness, delay tolerance and cell loss toler-
ance. Therefore there are several different AAL stacks, labeled AAL1, AAL2, AAL3/4 and
AAL5. In order to understand the differences between various AAL types, we must define
first the existing service categories and the traffic classes.
Service Categories
(Here will be given the basic definitions. More details will be discussed in chapter
"Traffic Management"). There are five service categories defined as follows:
CBR - Constant Bit Rate

This is the most expensive service, which gives a guaranteed amount of bandwidth
to a VC. There is no elasticity in the usage of bandwidth. In that it is similar to a
leased T-1 or T-3 line. It is highly inefficient if it is not used 100% of time. Used for
real-time applications that are very sensitive to transfer delay and cell delay varia-
tion, such as voice, video and circuit emulation.
The following applications mostly use CBR:
Interactive video (video conferencing)
Interactive audio (telephone call)
Video distribution (TV, distributed classroom)
Audio distribution (radio, audio feed)
Video retrieval (video on demand)
Audio retrieval (audio library)
Time

1-30

Copyright 1999 by Marko Vuskovic C
ADAPTATION LAYER (Cont.)
rt-VBR - Real-Time Variable Bit Rate

Supports real-time applications that are bursty in nature and therefore can allow more
efficient use of a network. The transfer delay (CTD) and delay variation (CDV) are
tightly controlled. Examples are voice coders with compression and silence suppres-
sion, and other applications that generate variable frame sizes.
The network allocates resources (bandwidth) according to SCR. The cells that exceed
PCR will be flagged by CLP after MBS. Those cells violate the traffic contract and will
be drooped in case of congestion (see subsection "Cell Loss Priority" in the previous
chapter.)
nrt-VBR - Non real-Time Variable Bit Rate
Used for non-real time applications which are more tolerant of network delays. CDV is
not controlled, cell loss is controlled. Response time critical transaction processing,
such as:
airline reservations
banking transactions
process monitoring
store and forward video
Time
PCR
MBS
SCR
SCR - Sustainable Cell Rate (upper edge of average cell rate)
PCR - Pick Cell Rate (Upper limit that the application should never exceed)
MBS - Maximal Burst Size (number of cells which exceed SCR, and which
can be tolerated)

1-31

Copyright 1999 by Marko Vuskovic C
ADAPTATION LAYER (Cont.)
ABR - Available Bit Rate

Designed for non real-time applications which tolerate network delays and cell loss (such
as LAN interconnect and Internet traffic) - a best effort service. Allows most of the statisti-
cal gain without guarantee for throughput. Allows congestion control because the sender
can be informed (requested) to slow down the traffic in congestion periods. ABR provides
a very good network utilization.

Typical applications:
Critical Data Transfer (defense information)
Interactive Text/Data/Image Transfer (banking transactions, e-mail, telex, fax)
Text/Data/Image Distribution (newsfeed, weather satellite pictures)
Test/Data/Image Retrieval (file transfer, library browsing)
Aggregate LAN (LAN interconnection, LAN emulation)
Remote Terminal (telnet, telecommuting)
Time
PCR
MCR
PCR - Pick Cell Rate (Upper limit that the application should never exceed)
MCR - Minimal Cell Rate (can be 0)

1-32

Copyright 1999 by Marko Vuskovic C
ADAPTATION LAYER (Cont.)
UBR - Unspecified Bit Rate

Best effort service without any performance requirement. Only the PCR is specified
(which normally equals to the line bit rate). UBR is equivalent to Internet.
Time
PCR
Service
Category
Bandwidth
Guarantee
Network
Priority
CTD,
CDV
Cell Loss Burstyness
CBR 1 low low none yes
rt-VBR 2 low med small yes
nrt-VBR 3 high med small yes
ABR 4 high med high optional
UBR 5 high high high no
The service categories can be summarized as follows:

1-33

Copyright 1999 by Marko Vuskovic C
ADAPTATION LAYER (Cont.)
Traffic Classes

The various AAL types are defined according to traffic types, which in turn are classified
with respect to the following three attributes: the timing relationship required between
the source and destination, the bit rate, and the connection mode. These summarized in
the following table:
Packet video,
audio
Class A Class B Class C Class D
Required
CBR
Not required
VBR
Connection-Oriented Connectionless
AAL1 AAL2 AAL3/4 or AAL5
T-1, E-1
circuit emlation
FR, X.25 IP, SMDS
Traffic
Class
Connection
Mode
Example
Application
AAL Type
Timing relation
between source
and destination
Bit Rate

1-34

Copyright 1999 by Marko Vuskovic C
ADAPTATION LAYER (Cont.)
Adaptation Layer 1 (AAL1)
Generally designed for CBR traffic (uncompressed real time voice and video). Specifically it
provides circuit emulation of full or fractional DS-1/E-1.

There are two formats of CES:
Unstructured CES
Structured CES (Fractional CES)
Unstructured CES, also called "clear channel", takes the entire TDM frame (T1 or E1)
and passes is to SAR as an integral PDU. Along with the 24 (or 30) 64 kbps channels
the signalling bits are carried through the network as well.
Structured CES, also called "channelized T1 or E1", dissasembles the T1 or E1 frame
and treats individual 64 kbps channels, or their combinations, as independent entities,
which can be routed to different destinations. The signaling bits can not be carried as in
unstructured CES, they are added to the end of the emulated fractional data stream.
1 x 64
1 x 64
2 x 64
2 x 64
6 x 64
6 x 64
4 x 64
4 x 64
12 x 64
12 x 64
12 x 64
12 x 64
ATM
Switch
ATM
Switch
ATM
Switch

1-35

Copyright 1999 by Marko Vuskovic C
ADAPTATION LAYER (Cont.)
DS-1 (or E-1) bit stream
SAR
F F F F
CS
47-octet CS-PDU 47-octet CS-PDU 47-octet CS-PDU
CES Interworking Function (CES-IWF) maps CBR stream into 47-octet PDUs,
without being aware of the frame structure (it doesn't see time slots, channels,
D0s). The mapping implicitly includes signaling and framing bits.
The receiving CS handles the cell delay variation and delivers the CS-PDUs to the
application at the constant bit rate.
Detects lost or missequenced cells
Provides Forward Error Control (FEC) on the AAL1 header and optionally on data
Provides source clock frequency recovery at the receiver
The transmitting CS passes AAL1 header data to SAR sublayer
Passes CS-PDUs to SAR sublayer
CS Indication
(Spans several frames. In odd cells carries
timing recovery info, in even cells contains
an indication of structured or unstructured service.)
Sequence
Number
Sequence Number
Protection
47 - octet payload
1-octet AAL1
header
Sequence
Count
CSI CRC P
1 3 3 1
Sequence count is used to detect
lost or out of sequence cells.
CRC is used for single error correction
and multiple error detection in first 4
bits of SAR header.
Even parity bit is used for protection of
the first 7 bits of SAR header.
Protocol stack for unstructured service

1-36
Copyright 1999 by Marko Vuskovic C

1-37

Copyright 1999 by Marko Vuskovic C
ADAPTATION LAYER (Cont.)
Adaptation Layer 2 (AAL2)
Designed for real-time VBR low bandwidth compressed voice (ADPCM, CELP, ACELP) and
video traffic (MPEG-2, JPEG, H.320). AAL2 has strong point in the trunking of multiple
(compressed) voice channels over a single VCC. This standard is relatively new (recom-
mendation proposed by ITU-T in 1997). Before AAL2, for compressed video and voice was
used either AAL1 or AAL5. AAL2 doesn't have SAR sublayer.
CID - Channel Identifier (needed to multiplex several users onto a single VCC)
LI - Length Indicator (needed because the packets have variable length)
UUI - User to User Indication (to identify a particular SSCS layer)
HEC - Header Error Control (protects CPCS packet header)
OSF - Offset Field (Identifies the next CPCS packet header within the CPCS payload)
SN - Sequence Number (Because packets can span max two cells, sequence numbers are 0,1)
P - Parity Bit (protects/corrects SN)
CPCS
User 2 User 3
VBR Sources
47 octets 47 octets
Pk hdr Pk hdr Pk hdr Data Packet
User 1
1-64 octets
Data Packet Data Packet
3 octets
1 octet
CID LI UUI HEC
8 bits 6 5 5
CPCS packet header
CPCS hdr
CPCS hdr
OSF SN P
6 bits 1 1
1 octet
CPCS Payload CPCS Payload
3 octets
3 octets
1-64 octets 1-64 octets
ATM Payload
Cell
Header

1-38

Copyright 1999 by Marko Vuskovic C
ADAPTATION LAYER (Cont.)
Adaptation Layer 3/4 (AAL 3/4)
Adaptation layers 3 and 4 were originally designed as separate layers, but were later com-
bined into a single layer. AAL 32/4 is generally designed for all type of traffic that is not
real-time critical. AAL 3/4 uses CPCS and SAR sublayers.
CPCS
SAR
CPCS
Header
CPCS
Trailer
CPCS Payload
Padding
Application Data Packet (1-65,535 octets)
CPI Btag BAsize
AL Etag Length
1 1 2 octets
1 1 2 octets
1/2 octet
Makes CPCS payload
multiple of 32 bits
0-3 octets 1/2 octet
SAR
Trailer
SAR
Header
SAR Payload
2 2 44 octets
SAR
Trailer
SAR
Header
SAR Payload
2 2 2 2 44 octets 44 octets
SAR
Trailer
SAR
Header
SAR Payload
ST SN MID
2 4 10 bits
LI CRC
6 10 bits
CPI - Common Part Indicator (unit of measurement for BAsize, bits or octets)
BAsize - Buffer Allocation Size (size of the CPCS payload)
Btag, Etag - Identical bit patterns, compared at receiving side, if different cell is discarded)
AL - Alignment field (makes the trailer a full 32 bits field to simplify the receiver design)
Length - length of the CPCS PDU (difference is in padding)
ST - Segment Type (BOM = beginning of message, COM = cont. of mes., EOM = end of
message, SSM = single segment message)
SN - Sequence Number (used to detect lost SAR PDUs)
MID - Multiplex ID (allows multiplexing of up to 1024 different CPCS PDUs over the same VCC)
LI - Length Indicator (= 44 for BOM or COM, can be less than 44 in EOM, SSM)
CRC - Protects complete SAR PDU, including header, payload and trailer.
Segmentation/reasembly
Error detection/control
Sequence integrity
Multiplexing (interleaving)

1-39

Copyright 1999 by Marko Vuskovic C

1-40

Copyright 1999 by Marko Vuskovic C
1-41

Copyright 1999 by Marko Vuskovic C
ADAPTATION LAYER (Cont.)
Adaptation Layer 5 (AAL 5)
AAL 3/4 has too much overhead. AAL 5 was originally designed by IBM, later accepted
by ATM Forum and ITU-T, to make a more efficient adaptation that can support
TCP/IP, which is already self-sufficient and doesn't need extensive error/sequence control
of AAL 3/4. Later was added support to other protocols, LANs, FR, VBR and CBR voice and
video. CPCS sublayer has only a trailer, while SAR sublayer doesn't append any overhead.
It only uses PT (payload Type) from the ATM cell header, to indicate when the reassembly
can begin (its caled AAL_indicate).
PAD - Padding (to make the payload a multiple of 48 octets)
UU - User-to-User Indication
CPI - Common Part Indicator (unit of measurement for the length field, bits or octets,
also aligns the trailer to a 64-bit boundary)
Length - The length of the CPCS payload (without padding)
CRC - CRC-32 (Error detection of the CPCS PDU, not very reliable for long data packets, same
as in 802.2)
CPCS
SAR
PAD UU CPI CRC Length
0-47 octets 1
1 2 4
CPCS Trailer CPCS Payload (1..65,535 octets)
SAR Payload (48 octets) SAR Payload (48 octets) SAR Payload (48 octets)
PT ATM Cell Payload (48 octets)
Application (voice, video, TCP/IP/LLC, FR,...)
AAL_indicate (lsb of PT - 1 if the
last cell in a PDU, otherwise 0)
Cell Header

You might also like