Archives
 
 
 
  Special
 
 
 
  About Us
 
 
 

Newsletter
Free E-mail Newsletter from BYTE.com

 
    
           
Visit the home page Browse the four-year online archive Download platform-neutral CPU/FPU benchmarks Find information for advertisers, authors, vendors, subscribers Request free information on products written about or advertised in BYTE Submit a press release, or scan recent announcements Talk with BYTE's staff and readers about products and technologies

ArticlesAdjustable Cell Rates for ATM Networks


November 1997 / Core Technologies / Adjustable Cell Rates for ATM Networks

A new ATM service enables applications to compensate for network congestion.

William Stallings

Nowadays, when you use an asynchronous transfer mode (ATM) network, you have a choice from four classes of service for carrying traffic. The first one is constant bit rate (CBR), which specifies a fixed data rate. The ATM provider's network must ensure that this capacity is available and polices the incoming traffic on the connection to ensure that the subscriber does not exceed its allocation.

The second service is the more flexible variable bit rate (VBR). A VBR connection defines a sustained rate for normal use and a faster burst rate for occasional use at peak periods.

The third one is unspecified bit rate (UBR). This is a best-effort service: No amount of capacity is guaranteed, and any cells may be discarded. Finally, a new ATM service has been defined: available bit rate (ABR). It provides a guaranteed minimum capacity. When additional network capacity is available, you can burst data above the minimum rate without risk of cell loss. Each service has its uses, as seen in "Four Types of ATM Service."

ABR and UBR are best suited for LAN internetworking and other types of data traffic. UBR is directed at delay-tolerant applications (e.g., file transfer and e-mail). It provides no feedback about network congestion to the user or application. Thus, UBR increases the risk of discarded cells, which in turn increases network traffic because of the lost cells that must be retransmitted. To improve service to bursty sources that would instead use UBR, ABR was defined.

ABR is intended for applications where network delays are a concern. The main practical difference between ABR and UBR is that, in the case of ABR, the network provides congestion information to the application. This lets the program constantly modify the sending rate, achieving the best throughput.

ABR Rate Control

An application using ABR specifies a peak cell rate (PCR) that it will use and a minimum cell rate (MCR) that it requires. The network allocates resources so that all ABR applications receive at least their MCR capacity. It then shares any unused capacity in a fair and controlled fashion among all ABR sources.

The ABR mechanism uses explicit feedback to the sources to assure that capacity is fairly allocated. Any capacity that ABR sources don't use remains available for UBR traffic. An example of an application using ABR is a LAN interconnection. In this case, the end systems attached to the ATM network are routers.

The ABR service offers a number of benefits. First, ABR connections share available network capacity. They have access to the instantaneous capacity unused by CBR/VBR connections. Thus, ABR can increase network use without affecting the quality of service of CBR/VBR connections. Second, the share of available capacity used by a single ABR connection is dynamic and varies between an agreed MCR and PCR.

Third, the network provides feedback to ABR sources so that ABR flows are limited to available capacity. The time delays inherent in providing feedback dictate the use of buffers along a connection's path. Because of the large data rate and a relatively large propagation delay through a network, these buffers may be substantial, leading to large delays. Accordingly, the ABR service is appropriate for applications that can tolerate adjustments to their transmission rates and unpredictable cell delays. Finally, for ABR sources that adapt their transmission rate to the provided feedback, a low cell-loss ratio is guaranteed.

Feedback Mechanisms

The transmission rate of cells from a source through an ABR connection is characterized by four parameters. The current rate that the source is permitted to transmit cells at is called the allowed cell rate (ACR). The source transmits cells at any rate between zero and the ACR. The MCR is the minimum value the ACR may take. The network will not restrict a source's flow to less than the MCR. You can set the MCR to zero for a given connection. The PCR is the maximum rate the ACR may take. The initial cell rate (ICR) is the initial value assigned to the ACR.

A source starts with the ACR equal to the ICR and dynamically adjusts the ACR based on feedback from the network. Feedback appears periodically as a sequence of resource management (RM) cells. Each cell has three fields: a congestion indication (CI) bit, a no increase (NI) bit, and an explicit cell rate (ER) field. The source first checks the 2 feedback bits. If an increase is called for, it is increased by a fixed-size incr ement. If a decrease is called for, the rate is lowered by a fixed-size increment.

Finally, if the ER is smaller than the ACR, the source reduces the ACR to the ER. These adjustments are subject to the constraint that the ACR varies between the limits of the MCR and the PCR.

Cell Flow

The figure "Adjusting ATM Cell Flow" illustrates the way that the feedback works. It depicts a flow of data in one direction over an ATM connection; a similar flow occurs in the opposite sense for two-way data communication. Two types of ATM cells flow on an ABR connection: data cells and RM cells. A source receives a regular sequence of RM cells that enable it to adjust the rate of cell transmission.

The source initiates the bulk of the RM cells. It transmits one forward RM (FRM) cell for every (Nrm - 1) data cells. Nrm is a preset parameter, usually equal to 32. As each FRM cell is received at the destination, it is turned around and transmitted back to the source as a backward RM (BRM) cell. Each FRM cell contains the CI, NI, and ER fields. The source typically sets CI = 0, NI = 0 or 1, and ER equal to a desired transmission rate in the range ICR </= ER </= PCR. An ATM switch or the destination system may change any of these fields before the corresponding BRM cell returns to the source.

An ATM switch on the network has a number of ways to provide rate-control feedback to a source:

  • EFCI marking: The switch sets the Explicit Forward Congestion Indication (EFCI) condition in an ATM data cell header (using the payload type field) as it passes in the forward direction. This causes the destination end system to set the CI bit in a BRM cell.
  • Relative-rate marking: The switch directly sets the CI or NI bit of a passing RM cell. If the bit is set in an FRM cell, that bit will remain set in the corresponding BRM cell. More rapid results are achieved by setting one of these bits in a passing BRM cell. To achieve the most rapid result, a switch may generate a BR M cell with the CI or NI bit set rather than wait for a passing BRM cell.
  • Explicit-rate marking: The switch may reduce the value of the ER field of an FRM or BRM cell.

These actions let an ATM switch signal a source that congestion is occurring and to reduce its cell rate. The destination system can also signal congestion. Under normal conditions, a destination system simply converts each incoming FRM cell to a BRM cell without changing the NI, CI, or ER fields. The exception is that the CI bit gets set if an EFCI signal has been received on the previous data cell.

However, if the destination is experiencing congestion, it may set the CI or NI bit, or reduce the ER value when converting an FRM cell to a BRM cell. The first ATM switches to support ABR use the EFCI, NI, and CI bits, providing a simple relative-rate control mechanism. The more complex controls associated with the use of explicit rate constitute a second generation of ABR service.


Four Types of A TM Service

illustration_link (17 Kbytes)

ABR is useful for on-line sessions where the network response is critical.


Adjusting ATM Cell Flow

illustration_link (15 Kbytes)

The source adjusts its cell rate based on values returned by the destination and network switches.


William Stallings is a consultant on data communications and computer networking. This article is based on material in his latest book, High-Speed Networks: TCP/IP and ATM Design Principles (Prentice-Hall, 1997). You can reach him at ws@shore.net .

Up to the Core Technologies section contentsGo to next article: Autoconf Makes for Portable SoftwareSearchSend a comment on this articleSubscribe to BYTE or BYTE on CD-ROM  
Flexible C++
Matthew Wilson
My approach to software engineering is far more pragmatic than it is theoretical--and no language better exemplifies this than C++.

more...

BYTE Digest

BYTE Digest editors every month analyze and evaluate the best articles from Information Week, EE Times, Dr. Dobb's Journal, Network Computing, Sys Admin, and dozens of other CMP publications—bringing you critical news and information about wireless communication, computer security, software development, embedded systems, and more!

Find out more

BYTE.com Store

BYTE CD-ROM
NOW, on one CD-ROM, you can instantly access more than 8 years of BYTE.
 
The Best of BYTE Volume 1: Programming Languages
The Best of BYTE
Volume 1: Programming Languages
In this issue of Best of BYTE, we bring together some of the leading programming language designers and implementors...

Copyright © 2005 CMP Media LLC, Privacy Policy, Your California Privacy rights, Terms of Service
Site comments: webmaster@byte.com
SDMG Web Sites: BYTE.com, C/C++ Users Journal, Dr. Dobb's Journal, MSDN Magazine, New Architect, SD Expo, SD Magazine, Sys Admin, The Perl Journal, UnixReview.com, Windows Developer Network