Network-Assisted Congestion-Control Example: ATM ABR Congestion Control

Network-Assisted Congestion-Control Example: ATM ABR Congestion Control

We close this section with a brief case study of the congestion-control algorithm in ATM ABR - a protocol that takes a network-assisted approach toward congestion control. We emphasize that our objective here is not to describe aspects of the ATM architecture in great detail, but rather to demonstrate a protocol that takes a markedly different approach toward congestion control from that of the Internet's TCP protocol. In fact, we only present below those few aspects of the ATM architecture that are required to understand ABR congestion control.

Basically ATM takes a virtual-circuit (VC) oriented approach toward packet switching. Recall from our discussion in Computer Networks and the Internet, this means that each switch on the source-to-destination path will maintain state about the source-to-destination VC. This per-VC state allows a switch to track the behavior of individual senders (e.g,, tracking their average transmission rate) and to take source-specific congestion-control actions (such as explicitly signaling to the sender to reduce its rate when the switch becomes congested), This per-VC state at network switches makes ATM ideally suited to perform network-assisted congestion control.

Congestion-control framework for ATM ABR service

ABR has been designed as an elastic data transfer service in a manner reminiscent of TCP. When the network is underloaded, ABR  service should be able to take advantage of the spare available bandwidth; when the network is congested, ABR service should throttle its transmission rate to some predetermined minimum transmission rate. A detailed tutorial on ATM ABR congestion control and traffic management is provided in [Jain 1996].

Figure 1 shows the framework for ATM ABR congestion control. In our discussion we adopt ATM terminology (for instance, using the  term switch rather than router, and the term cell rather than packet). With ATM ABR service, data cells are transmitted from a source to a destination through a series of intermediate switches. Interspersed with the data cells are resource-management cells (RM cells); these RM ceIls can be used to convey congestion-related information among the hosts and switches. When an RM cell arrives at a destination, it will be turned around and sent back to the sender (possibly after the destination has modified the contents of the RM cell). It is also possible for a switch to generate an RM cell itself and send this RM cell directly to a source. RM cells can thus be used to provide both direct network feedback and network feedback via the receiver, as shown in Figure 1.

ATM ABR congestion control is a rate-based approach. That is, the sender explicitly computes a maximum rate at which it can send and  regulates itself accordingly. ABR provides three mechanisms for signaling congestion-related information from the switches to the receiver,

● EFCI bit. Each data cell includes an explicit forward congestion indication (EFCI) bit. A congested network switch can set the EFCl bit in a data cell to 1 to signal congestion to the destination host. The destination must check the EFCI bit in all received data cells. When an RM cell arrives at the destination, if the most recently received data cell had the EFCI bit set to 1, then the destination sets the congestion indication bit (the CI bit) of the RM cell to 1 and sends the RM cell back to the sender. Using the EFCI in data cells and the CI bit in RM cells, a sender can thus be notified about congestion at a network switch.

● CI and Nl bits. As noted above, sender-to-receiver RM cells are interspersed with data cells. The rate of RM cell interspersion is a tunable parameter, with the default value being one RM cell every 32 data cells. These RM cells have a congestion indication (CI) bit and a no increase (Nl) bit that can be set by a congested network switch. Particularly, a switch can set the NI bit in a passing RM cell to 1 under mild congestion and can set the CI bit to 1 under severe congestion conditions. When a destination host receives an RM cell, it will send the RM cell back to the sender with its CI and NI bits intact (except that CI may be set to 1 by the destination as a result of the EFCI mechanism explained above).

● ER setting. Each RM cell also contains a 2-byte explicit rate (ER) field. A congested switch may lower the value contained in the ER field in a passing RM cell. In this way, the ER field will be set to the minimum supportable rate of all switches on the source-to-destination path.

An ATM ABR source adjusts the rate at which it can send cells as a function of the CI. NI, and ER values in a returned RM cell. The rules for making this rate adjustment are rather complicated and a bit tedious. The interested reader is referred to [Jain 1996] for details.


Tags

congestion control, packet switching, transmission rate, tcp protocol

Copy Right

The contents available on this website are copyrighted by TechPlus unless otherwise indicated. All rights are reserved by TechPlus, and content may not be reproduced, published, or transferred in any form or by any means, except with the prior written permission of TechPlus.