Title: ATM
1Asynchronous Transfer Mode (ATM)
2An Overview of ATM
- A technology for multiplexing fixed-length cells
from a variety of sources to a variety of remote
locations. - Capable of moving data at a wide range of speeds,
but aimed at very high speed (100-1000 Mb/s). - Capable of handling data from a variety of media
(e.g. voice, video, and data) using a single
interface. - ATM is a connection-oriented protocol.
- Connections can be switched or permanent.
- Signalling procedures are used to set up switched
calls. - Certain quality of service (QoS) is guaranteed
for each connection. QoS parameters may include
as cell loss rate, max./avg. cell delay, delay
jitter, cell error rate, cell misinsertion rate,
etc. - QOS is negotiated at connection setup.
3An Overview of ATM
- ATM operates on a best effort basis cells with
errors, or that encounter congestion, are
silently dropped. - Two types of connections point-to-point and
multipoint. - Service Carried in Fixed Length Cells (53
octets). - 5 Octets Header
- 48 Octets Payload
4ATM Networking
IS
IS
IS
ES
ES
- UNI User-Network Interface
- NNI Network-Network Interface
5ATMCell Format
?? 48 Octets
GFC VPI VCI PTI CLP HEC
4 8 16 3 1
8 ??
(a) UNI Cell format
?? 48 Octets
VPI VCI PTI CLP HEC
12 16 3 1
8 ??
(b) NNI Cell format
- GFC Generic Flow Control (4 bits). Used by the
flow - control mechanism at the UNI.
- VPI Virtual Path Identifier (8 bits). Used for
directing - cells within the ATM network.
- VCI Virtual Channel Identifier (16 bits).
- PTI Payload Type Identifier (3 bits).
Identifies the type - of data being carried by the
cell. - CLP Cell Loss Priority (1 bit). 1 low
priority. - HEC Header Error Correction (8 bits). Generated
and - inserted by the physical layer.
For first 4 octets. - Correct single-bit errors and
detect some - multiple-bit errors.
bit 1 AAL indication bit 2 EFCI (upstream
congestion) bit 3 data or OAM cells
6Pre-assigned VPI/VCI Values
- Unassigned Cell Indication (VPI 0, VCI 0)
- Meta signalling (VCI1)
- Meta signalling is the bootstrap procedure used
to establish and release a signalling VC. Not
used for PVC setup. - General broadcasting signalling (VCI2)
- OAM F4 flow indication -- segment and end-to-end
(VCI3 and VCI4) - F4 VP level OAM
- F5 VC level OAM, segment or end-to-end (PT100
or 101) - Point-to-Point Signalling (VCI5)
- Carriage of Interim Local Management Interface
(ILMI) messages (VPI0, VCI16)
7Preassigned, Reserved VPI/VCI Values
8Cell Multiplexing and Cell Switching Examples
100
200
100
100
200
100
100
0
0
UTP
UTP
300
300
1
1
SMF
SMF
200
400
200
2
2
MMF
MMF
150
150
150
3
3
UTP
UTP
ATM Switch
9ATM Protocol Stack
Management plane
Control plane
User plane
Higher Layers
Higher Layers
ATM Adaptation Layer
Virtual Channel Functions
Plane management
ATM Layer
Virtual Path Functions
Layer management
Physical Layer (PMD)
10ATM Layer Service
- Transparent transfer of 48-octet data unit
- Deliver data in sequence on a connection
- Two levels of multiplexing (VC, VP)
- Three types of connections
- Point-to-point
- Point-to-Multipoint
- Multipoint-to-Multipoint (??)
- Transport is best-effort
- Network QoS negotiation
- Traffic control and congestion control
11ATM Layer Functions
- Cell multiplexing and switching
- Cell rate decoupling
- Cell discrimination based on pre-defined VPI/VCI
- Quality of Service (QoS)
- Payload type characterization
- Generic flow control
- Loss priority indication and Selective cell
discarding - Traffic shaping
12Cell Rate Decoupling and Cell Discrimination
- Cell Rate Decoupling
- ATM sending entity adds unassigned cells to the
assigned cell stream in order to adjust to the
cell rate acquired by the payload capacity of the
physical layer (R). - The receiving ATM entity shall extract and
discard the unassigned and invalid cells from the
flow of cells coming from the physical layer (R). - Cell Discrimination
- Meta signalling
- General broadcast signalling
- Point-ot-point Signalling
- Segment OAM F4 flow cell
- End-to-end OAM F4 flow cell
- ILMI message
- User data
13Virtual Channels, Virtual Paths, and the Physical
Channel
????
????
????
????
????
100
100
100
100
200
200
??
100
100
200
200
200/300
300/10
200
100/100
300/40
200
300
300
10
10
300
300
20
20
30
30
40
40
- ?? (VPI/VCI)
- (100,100),(100,200),(200,100),
- (200,200),(200,300),(300,10),
- (300,20),(300,30),(300,40)
14Physical Link, Virtual Path, and Virtual Channel
virtual channel connection
virtual channel link
VC link
ATM Layer
virtual path connection
VP link
VP link
transmission path
Phy. Layer
Digital Section
Regenerator Section
Crossing point
Endpoint
15Virtual Channels
- The virtual Channel (VC) is the fundamental unit
of transport in a B-ISDN. Each ATM cell contains
an explicit label in its header to identify the
virtual channel. - a Virtual Channel Identifier (VCI)
- a Virtual Path Identifier (VPI)
- A virtual channel (VC) is a communication channel
that provides for the transport of ATM cells
between two or more endpoints for the purpose of
user-user, user-network, network-network
information transfer. The points at which the ATM
cell information payload is passed to a higher
layer signify the endpoints of a VC. - A Virtual Channel Identifier (VCI) identifiers a
particular VC within a particular VP over a UNI
or NNI.
16Virtual Paths
- A Virtual Path (VP) is a group of Virtual
Channels that are carried on the same physical
facility and at a given reference point in the VP
share the same Virtual Path Identifier (VPI)
value. - The VP boundaries are delimited by Virtual Path
Terminators (VPT). - AT VPTs, both VPI and VCI are processed.
- Between VPTs associated with the same VP, only
the VPI values are processed (and translated) at
ATM network elements. - The VCI values are processed only at VPTs, and
are not translated at intermediate ATM network
elements.
17Why Virtual Paths and Virtual Channel ?
- Assume the identification field contains 8 bits.
All used - as VCI. Then the size of the mapping table
is 256.
New
New
VCI OP
VCI OP
VCI
VCI
0
0
(2) 1 (3)
(1) 2 (2)
(127) 2 (35)
(35) 1 (255)
1
1
(208) 2 (254)
(254) 1 (38)
255
255
(1)
(3)
(2)
(127)
(255)
(35)
(208)
(38)
0
(254)
0
A
B
1
1
255
255
18Why Virtual Paths and Virtual Channels ?
- Assume the identification field contains 8 bits.
VPI takes 3 bits - and VCI takes 5 bits. Then the size of the
mapping table is 8.
(1/1)
(0/1)
(0/31)
(1/31)
(7/25)
(7/25)
0
0
(7/1)
1
0
(0/31)
1
1
31
(1/25)
7
0
7
1
31
0
1
7
19Virtual Channels Examples
Port (a,1)
Port (c,2)
New
VPI/VCI OP
VPI/VCI
????
(200,10) 4 (300,10)
????
??
VPI/VCI
(100,10)
??
VPI/VCI
1 (100,10)
D
A
a
1
4
c
2 (100,20)
1 (300,10)
2
2
(100,20)
(300,10)
????
(200,10)
(200,10)
(200,20)
??
VPI/VCI
????
(100,20)
(300,10)
(300,20)
1 (300,10)
??
4
VPI/VCI
1
B
C
b
2
1
2
d
3
1 (100,20)
????
(100,10)
??
VPI/VCI
Port (b,1)
Port (d,1)
New
New
1 (100,10)
VPI/VCI OP
VPI/VCI OP
VPI/VCI
VPI/VCI
Port (b,2)
(200,10) 3 (300,20)
(300,20) 2 (100,20)
New
(200,20) 2 (300,10)
VPI/VCI OP
VPI/VCI
(100,10) 4 (200,10)
20Virtual Path/Virtual Channel (VP/VC) Switches
VC1
VP3
VP1
A
C
VP Switch
VC2
SW1
SW4
VP/VC Switch (VP Terminator, VPT)
SW3
VP4
VP2
VC4
SW5
SW2
B
D
VC3
21ATM Adaptation Layers (AAL)
- AAL Reference Structure
- AAL Type 1
- AAL Type 2
- AAL Type 3/4
- AAL Type 5
- SAAL
Management plane
Control plane
User plane
Higher Layers
Higher Layers
ATM Adaptation Layer
Plane management
Virtual Channel Functions
ATM Layer
Virtual Path Functions
Layer management
Physical Layer (PMD)
22AAL Reference Structure
SAP
Service Specific CS (SCCS)
(may be Null)
Convergence Sublayer (CS)
Primitives
AAL
Common Part CS (CPCS)
Primitives
SAR
SAR(Common)
SAP
23AAL
Layer MGMT
Service Specific Layers
message
AAL
48 byte payloads
...
ATM
add 5 byte header
...
Transmission
Convergence
Sublayer
PMD
24AAL Functions
Functions Parameters Error
Detection CRC, length, correlation tags Framing
of user data units Payload type/segment type Cell
sequence indication Cell sequence count
field Multiplexing Message ID
(MID) Error Correction FEC, retransmission Flow
Control Credit window Timing
Recovery Time stamp
25ATM Adaptation Layers (AAL)
- In order to carry data units longer than 48
octets in ATM cells, an adaptation layer is
needed. - The ATM adaptation layer (AAL) provides for
segmentation and reassembly of higher-layer data
units and for detection of errors in
transmission. - Since the ATM layer simply carries cells without
concern for their contents, a number of different
AALs can be used across a single ATM interface. - The AAL maps the user, control, or management
protocol data units into the information field of
the ATM cell and vice versa. - To reflect the spectrum of applications, four
service classes have been defined by CCITT.
26CCITT Services Classifications
Class A Class B Class C Class D
Attribute
Packetized
Connection
Circuit
Datagram
Oriented
Emulation
voice/video
Data
Timing between source and destination
Required Not required
Bit Rate Constant
Variable
Connection mode
Connection oriented Connectionless
- Examples
- Class A (CBR) 64kbps digital voice
- Class B (rt-VBR, nrt-VBR) Variable bit rate
encoded video - Class C (UBR,ABR) Frame Relay over ATM, File
Transfer (Telnet, FTP, TCP),... - Class D (ABR) SMDS over ATM, IP over ATM,...
- Class X Raw Cell Service (e.g., proprietary AAL)
27AAL Service Classification
Class A Class B Class C
Class D
Signalling
Circuit
Packetized
Connection
Datagram
(Q.93B)
Oriented
Emulation
voice/video
Data
Attribute
AAL 4
AAL 3
AAL1 AAL2
SAAL
AAL 5
Timing between source and destination
Required Not required
Bit Rate Constant
Variable
Connection Mode
Connection oriented Connectionless
28AAL Types
- Five AALs have been accepted for consideration by
the CCITT. - AAL 1 is meant for constant-bit-rate services
(voice). - AAL 2 is meant for variable-bit-rate services
with a required timing relationship between
source and destination (audio and video). - AAL 3 was originally meant for connection-oriented
variable -bit-rate services without a required
timing relationship it has now been merged with
AAL 4. - AAL 3/4 and 5 are meant for connectionless
services (e.g. connectionless data). - Only AALs 3/4 and 5 are of interest for IP
networking.
29AAL 1 (Constant Bit Rate -CBR) Functions
- Emulation of DS1 and DS3 Circuits
- Distribution with forward error correction
- Handle cell delay for constant bit rate
- Transfer timing information between source and
destination - Transfer structure information (structure
pointer) - Provide indication of unrecoverable lost or
errored information
SAR PDU
Header SN SNP 47 Octets
Payload
Seq
CRC
EP
CSI
Count
1 3 3
1
30AAL1 Supports Circuit Emulation
- Synchronous Residual Time Stamp (SRTS)
- DS1, DS3
- Require accurate frequency clock
- 4-bit Residual Time Stamp (RTS) for clock
aligning - RTS is generated once every 8 cell times, carried
in CSI bit of odd cells - Structured Data Transfer (SDT)
- nxDS0 (64kbps)
- 1-octect pointer carried in payload once every
two cells (even cells) indicates the offset into
the current payload of the first octect of an
nxDS0 payload - The octect contains 1 reserved bit and 7-bit
offset field which points to start of up to 93
octect structure (474693)
31AAL 2 (VBR) Protocol Data Unit (PDU)
ATM PDU
SAR PDU
Header SN IT 47 Octets
Payload LI CRC
- SN Sequence number
- IT Information TypeBOM,COM,EOM,SSM
- Length Indicator
32AAL 3/4
- The variable bit rate (VBR) adaptation layer,
defined in CCITT recommendation I.363, is defined
for services (e.g. data) that require bursty
bandwidth. - Comprises two sublayers
- the convergence sublayer (CS)
- the segmentation and reassembly sublayer (SAR)
33AAL 3/4 CS and SAR PDU Structures
CS-PDU Header 4 Octets
CS-PDU Trailer 4 Octets
PAD 0-3 Octets
CS-PDU User Information lt 65,535 Octets
Common Part Indicator
CS User Infor. Length
Alignment
ETag
BTag BASize
1 1 2
1 1 2
- CPI00000000
- Btag/Etag Beginning/Ending Tag -- 256 increment
counters - BAsize receiving side maximum buffering
requirement (gt CPCS-PDU) - Pad make CPCS-PDU on 32-bit boundary
- AL(Alignment) make trailer 32-bit aligned
- Length CPCS-PDU size
34AAL 3/4 SAR Sublayer
SAR-PDU Header 2 Octets
SAR-PDU Trailer 2 Octets
Segmentation Unit ,SAR-PDU Payload 44
Octets
p
SAR Type
SAR SN
Length
SAR-PDU CRC
MID
2 4 1 9
6 10
- ST COM(00),BOM(10),EOM(01),SSM(11)
- SN Modulo 16 sequence counter
- P(Priority) 1- Priority CS-PDU, 0- Normal CS-PDU
- MID (Multiplexing ID) -- Multiplexing multiple
CPCS connections on a -
single ATM connection - LI Length lt44
- CRC on Cell Header, SAR-PDU payload and LI
35AAL 5 PDU Structure
- The Simple and Efficient Adaptation Layer (SEAL),
attempts to reduce the complexity and overhead of
AAL 3/4. - It eliminates most of the protocol overhead of
AAL 3/4. - AAL 5 comprises a convergence sublayer and a SAR
sublayer, although the SAR is essentially null.
CS-PDU Trailer 8 Octets
PAD 0-47 Octets
CS-PDU User Information lt 65,535 Octets
Protocol Control
CRC
Length
2 2 4
36AAL 5 Segmentation and Reassembly
User SDU
CS-PDU Trailer 8 Octets
PAD 0-47 Octets
CPCS-PDU Payload (CPCS-SDU) lt 65,535 Octets
48 octets
48 octets
...
More F
More T
More T
Data T
User Data
User Data
ATM cell
ATM cell
ATM cell
- Control
- CPCS-UU -- CPCS User-to-User Indication
- (1 octet). Transparently transfer CPCS user
- to user information
- CPI -- Common Part Indicator (1 octet). Align
- trailer to 64 bits. Possible identification
of - layer management message.
CRC-32
Control
Length
2 2 4
37AAL 5
- When a network node has a user datagram to
transmit, it first converts it to a CS-PDU by
adding the pad (if necessary) and trailer. - Then it breaks the CS-PDU into 48-octet SAR-PDUs
and transmits each in an ATM cell on the same
virtual channel. - Since there is no AAL 5 SAR header, an
end-of-frame indication in the ATM cell header is
required SDU type of 1 (binary value 0X1) in the
PTI field. - The receiver simply concatenates cells as they
are received, watching for the end-of-frame
indication. - The higher layer is responsible for ignoring PDUs
with CRC errors. - Some applications may discard PDUs with errors
others may choose to use them.
38SAAL Structure
Primitives
Service Specific Coordination Function (SSCF)
Service Specific Convergence
Sublayer
Service Specific Connection Oriented
Peer-to-Peer Protocol (SSCOP)
Peer-to-Peer Message
Peer-to-Peer Message
Common Part AAL Peer-to-Peer Protocol
(CP-AAL)
Common Part
Primitives
39SAAL
- Reside between Q.93B and ATM Layer.
- SAAL is used to provide reliable transport of
Q.93B messages between peer Q.93B entities. - SAAL CP-AAL uses AAL5 Common Part Protocol.
- SSCOP can be used for any reliable service.
- SSCF maps primitives from MTP 3 to the required
SSCOP signals and vice versa, and - flow control
- maintains link status
- reports to layer management when a link is
released