. 97
( 132 .)


much too late.
No. of lost cells
No. of transmitted cells
This parameter is only negotiable for guaranteed services.
• Cell transfer delay (CTD): the average time taken for a cell to travel from source to
destination. It will incorporate all delays experienced along the network such as queuing
delays at switches en route, propagation delays, etc.
• Cell delay variation (CDV): the measure of variance of CDT. If the value of this is
high, it means that there will be buffering required for traf¬c that is sensitive to delay,
for example, video.


cells cells lost
arrive at or arrive late

fixed CDV transfer time

Figure 7.48 Probability of cell arrival times

Figure 7.48 shows a probability distribution for the arrival of cells at the destination.
Normally, the value of CDV is picked so that the percentage of lost or late cells is very
small. The ¬xed delay value at the start is made up of static delays such as propagation
through the physical media, transmission system delays and processing delays at switches. Non-negotiable network characteristics

In addition to these parameters, there are also some measured characteristics that relate
to the reliability of the network, which cannot be negotiated:

• Cell error ratio (CER): proportion of cells that are delivered with either single or
multiple bit errors.
• Severely-errored cell block ratio (SECBR): proportion of cells within a given block that
have errors.
• Cell misinsertion rate (CMR): number of cells ending up in the wrong place because
of an undetected header error.

Table 7.18, presents a comparison of the QoS parameters across each of the traf¬c
classes, stating which are speci¬ed and which are not. Note that for CLR, it can be
de¬ned separately for cells that have the cell loss priority (CLP) bit set or cleared.
As an example, a voice application will specify that it requires the CBR service class,
and then supply the following QoS parameters: PCR, CLR, CTD and CDV.
Recall from the cell frame format that each cell has a 1-bit CLP ¬eld in the header,
and that cells with CLP = 1 are lower in priority. A harsh policy in the switch would
be just to discard a cell immediately a contract breach has been detected, particularly if
there is no congestion on the network. A more humane solution is to lower the priority
of the cell, by marking cells with CLP = 0 to CLP = 1. In the future, should the network
become congested, cells with CLP = 1 will be discarded ¬rst. Usually a switch will have

Table 7.18 QoS parameter summary
Attribute Service class

Traf¬c parameters
PCR Speci¬ed Speci¬ed Speci¬ed Speci¬ed Speci¬ed Speci¬ed
SCR n/a Speci¬ed Speci¬ed n/a n/a n/a
MCR n/a n/a n/a Speci¬ed Speci¬ed n/a
CDVT n/a Speci¬ed Speci¬ed n/a n/a n/a
MBS n/a Speci¬ed Speci¬ed n/a Speci¬ed n/a
QoS Parameters
CLR Speci¬ed Speci¬ed Speci¬ed Unspeci¬ed Unspeci¬ed Unspeci¬ed
CTD Speci¬ed Speci¬ed Unspeci¬ed Unspeci¬ed Unspeci¬ed Unspeci¬ed
CDV Speci¬ed Speci¬ed Unspeci¬ed Unspeci¬ed Unspeci¬ed Unspeci¬ed

a policing policy where minor breaches are punished with priority lowering, and major
breaches with cell discard.
Note also from Table 7.18 that some of the service classes specify (or make optional)
CLP = 1. This means that these classes, for example, ABR, will de¬ne two levels of
QoS, one for CLP = 0 and one for CLP = 1. If this is the case, these are termed CLP
0 + 1 ¬‚ows.

Traf¬c shaping is the way that the network moulds data ¬‚ows to the terms of the contract
and meets the de¬ned QoS parameters. The simplest method of introducing a shaping
policy is using the leaky bucket algorithm (Figure 7.49). Consider a bucket with a small
hole in the bottom. Water enters the bucket at the top, and the rate at which the water
enters is variable. However, the entry rate is irrelevant, as water will always exit through
the hole at a constant rate. If the bucket is full, any more water entering the bucket is lost
over the sides.
In a communication system, a host is connected to the network through a leaky bucket.
Thus it is implemented as a queue where there is a regular ¬‚ow of cells exiting from the
queue. If a cell arrives and the queue is full, it is discarded. To overcome this, bursts in
cells are smoothed out and losses minimized.

7.10.1 Generic cell rate algorithm (GCRA)
The generic cell rate algorithm (GRCA) is the ATM implementation of the leaky bucket
algorithm and is introduced in the switch to shape the traf¬c and hence meet the terms
of the contract between user and network. The algorithm can be considered to operate at
two points in the QoS process. At the input side, referring back to Figure 7.46, once cells
arrive at the switch, it needs to police them to make sure that they are sticking to their

entry rate

output rate

Figure 7.49 The leaky bucket algorithm

late cell
theoretical accepted
cell arrival
time on-time cell

early cell

Figure 7.50 Virtual scheduling

de¬ned QoS (policing function). At the output side, emerging cells are shaped to ensure
that they meet the required QoS as they leave the switch.
GCRA is referred to as a virtual scheduling algorithm and, simpli¬ed, works on the
following concept. A clock ticks at each node to set the pace of cell transmission. The
clock ticks are the gaps between frames. A cell which arrives on the tick or after the tick
is accepted and complies with the contract, but cells that arrive too early are rejected, i.e.
fail to comply. The principle is shown in Figure 7.50.
Returning to the QoS parameters just de¬ned, the two of concern to the GRCA are
the PCR and the CVDT. As was seen, the gap between cells is T = 1/PCR. Figure 7.51
shows the different cases that may occur. In the diagram, E is the CDVT.
In the ¬rst case, the cell arrives exactly on time with a gap of T in between cells. The
second case shows the cell arriving at a time greater than T, but this is also compliant.
There are now two cases of early arrival to consider. The third case shows a cell arriving
early, but the arrival time is still within the acceptable margin de¬ned by E. However,



Case 1
1 2


Case 2
1 2


Case 3
1 2

Case 4
1 2

Figure 7.51 Generic cell rate algorithm

now the user is expected to transmit the next cell at a distance of twice the cell gap from
the arrival time of the errant cell. This is to dissuade the user from continuing to transmit
early, thus increasing the value of PCR. The last case is where the cell arrives early and
beyond the error margin, E. The cell is therefore deemed to have breached the contract.

7.10.2 Usage parameter control
In the case of a contract breach, the actions taken by the network fall under the de¬nition
of usage parameter control (UPC). This is the policing function in the network used
to actually enforce compliance with the traf¬c contract, as checked using the GCRA.
The UPC function will enforce adherence to the speed limit, i.e. the PCR, through the
following actions in the case of a breach:

• cell tagging: the CLP bit of the cell is marked to low priority (CLP = 1)
• cell discard.

Cell tagging is an option to offer a lower penalty for ¬rst-time offences or minor
breaches, as de¬ned within the network policy. Consider that cell discard for a breach
when the network is not congested would be a rather harsh policy.

In terms of the leaky bucket analogy, the capacity of the bucket is T, with a gap left
for more water, equivalent to E. As each cell arrives, it ¬lls the bucket up to the level of
T, and between then and the next cell, the bucket drains at a steady rate until empty. A
cell that arrives late will ¬nd that the bucket is empty and ¬ll it backup to T. A cell that
arrives early will ¬nd that there is still some water remaining, but since there is still a
gap left at the top of the bucket, E, it can ¬t into the bucket. However, once it arrives too
early, the water left in the bucket will be greater than E, and the water would spill over
the edge so the cell is rejected. Note, if it is expected that there will often be a burst of
cells, then E should be set to a value such that E >> T, so that none of the cells in the
burst will be lost.

For the ABR service, how does the ATM network try to ful¬l its end of the QoS contract
when there will be so many users and so many switches to travel through? The network
must attempt to deal with two broad classi¬cations of congestion. Long-duration conges-
tion is where there is more traf¬c entering the network than can be handled, causing a
˜traf¬c jam™. Short-duration congestion is where there are traf¬c bursts. There are multiple
techniques used and they are summarized in Figure 7.52.
At the long-duration congestion control end of the scale, admission control and resource
reservation are the principle techniques. In admission control, congestion is prevented
before it occurs using the QoS mechanisms, i.e. non-conforming traf¬c is not permitted
to enter the network. Resource reservation is also a preventative measure, where for guar-
anteed services, enough bandwidth is allocated to handle the traf¬c. At the short-duration
end, buffering is used. There have been many mechanisms proposed for congestion con-
trol based on providing feedback to the user for the ABR traf¬c, which inherently causes
most of the congestion problems, because of bursts of traf¬c. One example is a rate-based
scheme, which is an end-to-end approach and was implemented due to its simplicity. A
switch need only monitor queues and if they become congested they set the middle bit

congestion congestion
duration mechanism

network design
capacity planning
admission control
end-to-end feedback
link-by-link feedback

Figure 7.52 Congestion control techniques

in the PTI ¬eld of the cell header to 1, referred to as the explicit forward congestion
indicator (EFCI). At the destination, the congestion is measured for a given period and
then a resource management (RM) cell is sent back to the sender if there is congestion.
The sender, once it receives an RM, thus indicating congestion, will decrease the rate at
which it is transmitting. There is a problem here, as what happens if RM cells are lost? The
solution adopted was to send an RM cell when no congestion was experienced, informing


. 97
( 132 .)