Chapter 10. Transport Protocols

Chapter 12.
Traffic and Congestion Control
In ATM Networks
Related Standards


ITU-T’s I.371
ATM Forum’s Traffic Management Spec.
Version 4.0
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Requirements for ATM Traffic
and Congestion Control


no flow control-based congestion control
no feedback based congestion control
• implicit congestion control
= no explicit congestion notification
= source deduces the presence of congestion
by the loss of data
= too late reaction in high-speed ATM
(Latency/Speed Effect)
 inadequate for ATM
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Requirements (cont’d)

CBR support
• related to cell delay variation (CDV)
• V(0) = an estimate of the amount of CDV
that an application can tolerate
V(I) = V(I-1) - [t(I) - (t(I-1) + )]
• If V(I) is negative, then that cell is discarded
• CDV can be reduced by increasing the data rate at
the UNI relative to the load and by increasing
resources within the network
• Sources of CDV
– queuing delay due to congestion
– segmentation, interleaving, OAM cells, SDH overhead ...
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ATM Traffic-Related Attributes

Traffic Descriptors
• describe the traffic characteristics of a source and of a
connection
• network establishes a connection only if sufficient
resources are available

QoS Parameters
• characterize the performance of an ATM connection in
terms of QoS that it provides

Other
• feedback attribute for ABR
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Traffic Descriptors

Source Traffic Descriptor
•
•
•
•
•

source characteristics of an ATM flow
peak cell rate (PCR)
sustainable cell rate (SCR)
maximum burst size (MBS)
minimum cell rate (MCR)
Connection Traffic Descriptor
• characteristics of an ATM flow over an ATM
connection
• source traffic descriptor
• cell delay variation tolerance (CDVT)
• conformance definition
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Source Traffic Descriptor

PCR
• an upper bound on the traffic that can be submitted
by a source on an ATM connection
• PCR = 1/T, where T: min spacing between cells
• for CBR and VBR

SCR
• an upper bound on the average rate of an ATM
connection
• calculated over a time scale that is large relative to T
• for VBR only
• SCR < PCR
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Source Traffic Descriptor (cont’d)

MBS
• max number of cells that can be sent continuously at
PCR
• for VBR only

MCR
• min commitment requested of the network
• for ABR only
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Connection Traffic Descriptor

CDVT
• a measure of the amount of variation in cell delay
that is introduced by network interface (e.g., SDH)
and at UNI

Conformance Definition
• used to specify unambiguously the conforming cells
of a connection at UNI
• net may enforce conformance by dropping or
marking cells that exceed the conformance
definition
• GCRA (Generic Cell Rate Algorithm)
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
QoS Parameters

Peak-to-peak Cell Delay Variation
• maxCTD - fixed delay
• CDV is negotiated during connection establishment
whereas CDVT is normally explicitly set at UNI
and is not negotiated
• CDVT is the variation introduced by the source
traffic itself (= an upper bound on CDV at UNI)
• CDV is the difference between the best- and worstcase expected end-to-end CTD
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
QoS Parameters (cont’d)

Maximum Cell Transfer Delay (maxCTD)
• CTD
– time between transmission of the last bit of a cell at source
UNI and the receipt of the first bit of a cell at the
destination UNI
– variable due to buffering and cell scheduling
• maxCTD
– max requested delay

Cell Loss Ratio (CLR)
• ratio of lost cells to total transmitted cells
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Traffic Management Framework

Cell Insertion Time
• react immediately to cells as they are transmitted

Round-Trip Propagation Time
• respond within the lifetime of a cell in net and may
provide a feedback info to source

Connection Duration
• determine whether a new connection at a given QoS
can be accommodated and what performance level
will be agreed to

Long Term
• affect more than one ATM connection and
established for long-term use
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Traffic Control
ATM Traffic Control Functions





set of actions taken by the network
to avoid congestion conditions or
to minimize congestion effects
Resource management using VPs
Connection Admission Control (CAC)
Usage Parameter Control (UPC)
Traffic shaping
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Resource Management using VPs



Net provides aggregate capacity and
performance characteristics on VP and these are
shared by VCs in the VP
QoS of a VPC = max QoS of VCCs in the VPC
statistical multiplexing
•
•
•
•
•
capacity of VPC  average data rates of all VCCs
capacity of VPC < aggregate peak demand
efficient utilization of capacity
difficult to provide fair access
preferable to group VCCs into VPCs on the basis of
similar traffic characteristics and similar QoS
requirements
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Connection Admission Control




Net accepts a connection only if it can commit
the resources necessary to support that traffic
level while at the same time maintaining the
agreed QoS of existing connections
if accepted, traffic contract between net & user
net continues provide the agreed QoS as long as
the user complies with the traffic contract
traffic contract parameters (table 12.3)
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Usage Parameter Control (UPC)


Monitors a connection to determine whether the
traffic conforms to the traffic contract once it
has been accepted by CAC
Protect net resources from an overload on one
connection by detecting violations of assigned
parameters and taking appropriate actions
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
UPC: Two Separate Functions

Control of PCR & CDVT
• a traffic flow is compliant if the peak rate of cell
transmission does not exceed the agreed peak cell
rate, subject to the possibility of cell delay variation
within the agreed bound

Control of SCR & burst tolerance
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
UPC: Generic Cell Rate Algorithm




Used both for PCR & SCR controls
GCRA(I, L), where I: Increment, L: Limit
peak cell rate algorithm
sustainable cell rate algorithm
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
UPC: Peak Cell Rate Algorithm


GCRA(T, )
T: average interarrival time between cells
at PCR if there is no CDVT
: CDVT limit
Virtual Scheduling Algorithm
• fig. 12.6 (a), 12.7 (a)
• max # of conforming back-to-back cells
= 1 +  / (T - )

Leaky Bucket Algorithm
• fig. 12.6 (b), 12.7 (b)
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
UPC: Sustainable
Algorithm


Cell
Rate
GCRA(Ts, s)
Ts: interarrival time between cells at SCR
if there is no burstiness
s: burst tolerance
MBS = 1 + s / (Ts - T)

s = (MBS - 1)(Ts - T)
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
UPC: Actions


compliant cells are passed along and
noncompliant cells are discarded or tagged
(CLP = 1)
fig. 12.10
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Selective Cell Discard


at some point beyond the UPC function, net
discards (CLP = 1) cells in case of congestion
discard lower-priority cells to protect the
performance for higher-priority cells
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
Traffic Shaping



smooth out a traffic flow and reduce cell
clumping
result in a fairer allocation of resources and a
reduced average delay time
Token Bucket
• token generator produces tokens at a rate of  tokens per
sec and places these in token bucket
• to transmit a cell through the server, one token must be
removed from the bucket
• if bucket is empty, cell is queued waiting for the next
token
• if there is a backlog of cells and an empty bucket, cells
are emitted at a smooth flow of  cells per second with
no cell delay variation until the backlog is cleared
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ATM Traffic Control Approaches

Open-Loop Control
• for CBR, rt-VBR, nrt-VBR
• based on traffic contract and UPC
• no feedback to source concerning congestion

Best-Effort
• for UBR
• share the unused capacity in a relatively
uncontrolled fashion
• inefficient: dropped cells cause retransmissions
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ATM Traffic Control Approaches
(cont’d)

Closed-Loop Control
• for ABR
• provide feedback to sources to adjust the load
dynamically and avoid cell loss and share the
capacity fairly
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Characteristics of ABR
Service




ABR connections share available capacity
The share of available capacity used by a single
ABR connection is dynamic and varies between
MCR and PCR
The net provides feedback to ABR sources so
that ABR flow is limited to available capacity
For ABR sources that adapt their transmission
rate to the provided feedback, a low cell loss
ratio is guaranteed
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: ABR Connection
Characterization Parameters

ACR (Allowed Cell Rate)
• current rate at which source is permitted to transmit
cells

MCR (Minimum Cell Rate)
• min value that ACR may take (I.e., net will not
restrict a source’s flow less than MCR)

PCR (Peak Cell Rate)
• max value that ACR may take

ICR (Initial Cell Rate)
• initial value assigned to ACR
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Feedback Mechanism


Feedback is provided periodically in the form of
a sequence of RM (Resource Management) cells
RM cell
• contains CI (Congestion Indication) bit, NI (No
Increase) bit, ER (Explicit cell Rate) field
• source transmits one FRM (Forward RM) cell for
every (Nrm - 1) data cells
• for each received FRM, destination transmits it back
to source as a BRM (Backward RM) cell
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Feedback Mechanism

ACR Control
• Initially, ACR = ICR
• linear increase, exponential decrease
• NI=0, CI=0:
ACRmax[MCR,min[ER,PCR,ACR+RIFPCR]]
• NI=0, CI=1:
ACRmax[MCR,min[ER,ACR(1-RDF)]]
• NI=1, CI=0:
ACRmax[MCR,min[ER,ACR]]
• NI=1, CI=1:
ACRmax[MCR,min[ER,ACR(1-RDF)]]
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Feedback Mechanism
(cont’d)

Source
• set CI = 0, NI = 0 or 1
• set ER equal to some desired transmission rate

Intermediate ATM switch
• EFCI marking: cause dest to set CI = 1 in BRM
• relative rate marking: set CI or NI
• explicit rate marking: reduce ER value

Destination
• under normal: if EFCI is marked in the previous
data cell, set CI
• under congestion: set CI or NI, or reduce ER
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: RM Cell Format

Header
• PT = 110
• for VC rate control: VCI = 6


Protocol ID = 1
Message Type
• FRM (DIR = 0), BRM (DIR = 1)
• BECN cell
– initially generated by source (BN = 0)
– generated by a switch or dest (BN =1)
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Capacity Allocation

Binary Feedback Scheme
• use EFCI, CI, NI bits

Explicit Rate Feedback Scheme
• use ER field
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Capacity Allocation
(cont’d)
Binary Feedback Scheme

when congestion occurs, switch performs a
binary notification either
• by setting the EFCI on a forward data cell or
• by setting CI or NI on a FRM or BRM
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Capacity Allocation
(cont’d)
Binary Feedback Scheme (cont’d)

FIFO Queue
• dedicate the buffer at each output port to a single
FIFO queue
• if buffer occupancy exceeds a threshold, switch
issues binary notifications until buffer occupancy
falls below the threshold
• may use two threshold
• may unfairly penalize connections passing through a
number of switches
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Capacity Allocation
(cont’d)
Binary Feedback Scheme (cont’d)

Multiple Queues
• allocate a separate queue to each VC or to each
group of VCs
• a separate threshold for each queue
• Adv:
– a misbehaving source will not affect other VCs
– delay and loss behavior of individual VCs are decoupled
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Capacity Allocation
(cont’d)
Binary Feedback Scheme (cont’d)

Fair Share Notification
•
•
•
•
selective feedback or intelligent marking
allocate a fair share of capacity dynamically
Fairshare = Target rate / Number of connections
when congested, switch marks cells on any VC
which satisfies CCR > Fairshare
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Capacity Allocation
(cont’d)
Explicit Rate Feedback Scheme

General Functions
• compute the fair share of the capacity for each VC
that can be supported
• determine the current load, or degree of congestion
• compute an ER for each connection and send that ER
to source
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Capacity Allocation
(cont’d)
Explicit Rate Feedback Scheme (cont’d)

Example Schemes
• EPRCA (Enhanced Proportional Rate Control
Algorithm)
• ERICA (Explicit Rate Indication for Congestion
Avoidance)
• CAPC (Congestion Avoidance using Proportional
Control)
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Capacity Allocation
(cont’d)
Explicit Rate Feedback Scheme (cont’d)

EPRCA
•
•
•
•
switch keeps track of MACR (Mean ACR)
MACR(I) = (1-)MACR(I-1) + CCR(I)
if congested, ER  min[ER, DPFMACR]
react to congestion by lowering ERs of VCs that are
consuming more than their fair share of capacity
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Capacity Allocation
(cont’d)
Explicit Rate Feedback Scheme (cont’d)

ERICA
• selectively adjust VC rates so that the total ER
allocated to connections equals the target rate and is
allocated fairly
• Load Factor
– LF = Input rate / Target rate
•
•
•
•
Fairshare = Target rate / Number of connections
VCshare = CCR / LF
ER = min[oldER, max[Fairshare, VCshare]
improve fairness under overload conditions
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Capacity Allocation
(cont’d)
Explicit Rate Feedback Scheme (cont’d)

CAPC
• if LF > 1,
Fairshare = Fairshare  min[ERU, 1+(1-LF)Rup]
• if LF < 1,
Fairshare = Fairshare  min[ERF, 1-(LF-1)Rdp]
– ERU determines the max increased allowed in the
allotment of fair share; ERU > 1
– Rup = a slop parameter between 0.025 and 0.1
– ERF determines the max decrease allowed in the allotment
of fair share; ERF = 0.5
– Rdn = a slope parameter between 0.2 and 0.8
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
ABR: Capacity Allocation
(cont’d)
Explicit Rate Feedback Scheme (cont’d)

CAPC (cont’d)
• if the calculated Fiarshare is lower than ER in RM
cell, then set ER to Fairshare
• simpler to implement than ERICA,
very large rate oscillations if RIF is set too high,
sometimes lead to unfairness
By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul