You are on page 1of 14
Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks Dah-Ming CHIU and Raj JAIN Dinu Eauoment Corporation. $80 King Siret (LKGI-2/A19), itheto, M4 01460-1289, USA Abstract. Congestion svcidance machaniams allow a network to operate in the optinal rexion of low delay atd ish thicughpat, thereby. preventing the network from besorsing ‘congested. 'Ibas i cferent Trem the tradionl congestion ‘onifal mechanane that allow the network to reaver from the ‘Soogesad state of high delay and low thiougiput. Bota cor ‘estion avoidance and congestion votel mechanisms ar bas= ‘ally resource management problems. They ean be formulated hd feds ths bach tose utes who acu their conto ‘The key component of any congestion avidance scheme is the algonth for contol forction) used by the users tine reas ot decrease that Load (window or eae) We abstractly Churactrizeu wide clas of such increase /decrsse algorithms tad compe tem sing several diferent performance ctr. and ie of exeations. Tis shown that simple alive increase and eulipicative decrease algorithm satis the sulicient eandiions foe e00- vergence tata elicient and sr sate cegardles of the eating fe of the network. This isthe alert Sally chose for Implementation in the congestion avoidance scheme recone mended for Digital Networking Architecture and OSI Trant- port Clase 4 Nenwoeks Keynors. Computer Network, Network Performance, Re source Managemen, Congestion Contol, Congestom AVC ‘hance, Flow Contra, Famer Nowland ‘Computer Networks and ISDN Systems 17 (1989) 1-14 1. Introduction 1h, Background Congestion in computer networks is becoming an important issue due to the increasing mismatch In tak speeds caused by intermixing of old and row cluiulogy. Reset tecuwlogical wlvances Dah-Ning Cia seoeved the BSE de bree nih firt sss occurs from fm Feral Coleg of Sense and Technol. the MS. and "PRD. degrees Hand Unieesiy. Cambro, BL. in Tore and 1980 rexpectey From 1979 to 1900, he was wich ATAT Bll Laborstonen, ese be raked. on sping queving theory to been with Dita Eouprien Corpo. Piltat where be has worked oo por formance modsing and analysis af computer ste: nd neewrks, Curren. hei a member of te Distbted Sox fEmy Archers group, whee he nv te ae ‘hms. His rsetch interests iaclage operauon stems, ‘db eptinteation theo 'De"chiv i meer ofthe ACM and the IEEE. Raj Jala rescived the LE. degree fom ABS. Univeraty, Rews, India the SLE degre trom Indlan inntie of ‘Sence,“bargsioe toa oa ie FRO. deree trom Harvard “Umer Sty: Cambrdge, MA to 1872, 195, fang 19TH respecte is PhD. diseriation, atited {Contra ‘Theoretic Fermaaon of tide “Outataaigg Diseracns in the Comparer Sciences” snes. Since LTR he has ben with gal Equipment Corporation, nhere he has etn invlved a performance moseling and analysis of 9 umber of commpute Systems and fetworks including VAX Custer. DECaet ad Ente Corny he a Comaliog Engen te Date (he 1983-1984 academic year on a sabbatical at the formance of networks and local area syiem. Pr ther Years bi alo taht a pradoate courte on computer steam perfor thane tediques a1 MIT and ia wading 2 ectbook on tat Subject, to be published by Wily ntersceace ‘Be inn is'a member of the Awciation for Computing Machinery anda setior member of IEEE (0169.7552/9/83.50 © 1989, ever Science Publishers BV. (North-tollsed) Kroc cour Throw sghput Resp time cea & function ofthe load. Broken suelh ay Teal wea uctwurks (LANs) ant fibor optic LANs have resulted in a significant inereace in the bandwidths of computer network links. However, these new technologies must coexist with the old low bandwidth media such as the twisted pair, This heterogeneity has resulted in a mis- ‘match of arrival and service rates in the inter- mediate nodes in the network causing increased ‘queuing and congestion. Traditional congestion control schemes help improve performance after congestion has 0c currsd, Figure 1 chowe general patterne of er ‘sponse time and throughput of a network as the network load increases. If the load is small, throughput generally keeps up with the load. As the load increases, throughput increases. After the load reaches the network capacity, throughput stops increasing, If the load is increased any fur- ther, the queues start building, potentially result- ing in packets being dropped. Throughput may suddenly drop when the load increases heynnd thie paint and the natwork is said to be congested. ‘The response-time curve follows a similar pattern. At first the response time increases little with load, When the queues start building up, the re sponse time increases linearly until finally, as the eM, Chas R Jain / Congestion Avoidance Computer Networks quevae start overflowing, the response time ine ‘eases drastically. ‘The point at which the packets start getting lost is called a cliff due to the fact that the throughput falls off rapidly after this point. We use the term knee to describe the point after which the increase 4m the throughput is stall, bus when a significant inerease in the response time results. ‘A scheme that allows the network to operate at the knee is called a congestion avoidance schere, ‘as distinguished from a congestion control scheme that tries to keep the network operating in the zone to the left of the cliff, A properly designed congestion avoidance scheme will ensure that the users are encouraged to increase their traffic load as Jong as unis does no significandly atfeet dhe reapuune tinicy aind ave required to decrease them if that happens, Thus, the network load oscillates around the knee, Both congestion avoidance and congestion con- trol mechanisms are dynamic resource manage- ‘ment problems that can be formulated as system control problems in which the system senses its state and feeds this back to its users who adjust their controls. For the congestion problem, the state consists of the load on the networle and the control ie the number of packets put into the network by the users. Often a window mechanism is used in the transport layer protocols to limit the number of packets put into the network. Am alter- native mechanism consists of setting a limit on the rate (packets per second or bits per second) that can be sent by a user. In either case, the contra! (window or rate) can be dynamically adjusted as the total load on the system changes. This control, ‘which we call the increase/ decrease algorithm, is at the heart of all congestion avoidance mecha- ‘We have investigated a number of congestion avoidance mechanisms, reported in a series of papers, and this paper is a part of that series [MAUI]. Ihe concept of congestion avoidance land several alternatives are described in (7. We chose a particular alternative called the “binary feedback scheme” which is described in detail in III] Thie schome ig later extended in [10} 19 include a “selective feedback” mechanism in which the routers monitor different users and permit some users to increase load while requesting others to decrease load. All of our work on congestion avoidance is summarized in [8] DM Chi, R Jain / Congestion Avoidance in Compar Nets ‘This paper vomcentrates on a detailed analysis ‘of the increase /dectease algorithms. This analysis resulted in the selection of the increase /decrease algorithms used in the binary feedback scheme proposed in [11] and [10]. However, the analysis presented here is general and applies to many other applications besides congestion avoidance. Briefly, the binary feedback scheme for conges- tion avoidance operates as follows. The resources in the network monitor their usage and determine if they are loaded below of above an optimal load level. Depending upon the load level, the resource sends a binary feedback (I= overloaded, 0= underloaded) to the users who then adjust their load using an increase /decrease algorithm. This binary feedback is sent by setting a bit in the packet header. ‘The use of a bit in the packet header as a feedback mechanism has been incor: porated into the OSI connectionless networking, protocol standards (4), The bit is called a “conges- tion experianced bit” and is a part of a field called “quality of service” in the network layer header. The abstract model assumes that all the users sharing the same bottleneck will receive the same feedback, Based on this feedback, the users try t0 Adjust their load so that the bottleneck is effi- clently used as well as equally shared by all users. In this abstracted context, we assume that the feedback and control loop for all users is synchro- nous, that is, all users receive the same feedback and react to it: the next feedback is then gener- ated after all users have reacted to the feedback and so on. Also, we concentrate on one bottleneck resource and the users that share it. Because of these abstractions, we are able to demonstrate some of the subule behavior of this type of al- soridhn, The resulls preseuted eve were verified by detailed simulations of real networks [7,10.11) 1.2, Past Work ‘The algorithms studied here belong toa class of distibuted algorithms for managing distributed resources. A spectrum of such distributed al gorithms have been studied in the literature. At one cad of the spectrum, we have weulualiced decision making. In this paradigm, information (about user demands) flows to the resource managers, and the decision of how to allocate the resource is made at the resource. ‘The analysis by Sanders [12] is a good example of this approach. 3 ‘AL the other end of tne spectrum, we have de- centralized decision-making, In this case the deci- sions are made by the users while the resources {eed information regarding current resource usage. Algorithms studied by Iaffe [5] and later exten- sions by Galni [2] and Mosely [91 ate all good examples of this approach. In this paper we analyze a class of decentrale ied decision-making algorithms that are based on 4 special form of feedback, namely the feedback from the resource is a binasy sigual This vinary signal indicates whether the resource is currently overloaded or underutilized. A very good reason for considering « binary form of feedback is the ‘motivation of making the controller /managet of the resource as simple and efficient as. possible ‘The requirement of a binary feedback often mini mizes the work at the resource in generating the feedback 1:3. Notations and Definitions Figure 2 shows the assumed model of the net= ‘work with 1 users sharing it. The congestion state ‘of the system is determined by the number of packets in the system, We assume a discrete time ‘operation wath time divided into small slots. These slots basically represent intervals at the heginning ‘of which the users set their load level based on the network feedback received during the previous interval. If during time slot 1 the ith seers Land ie x,(1), then the total load at the bottleneck re- source would be Ex,(1), and the state of the system is denoted by the dimensional vector (0) = ((0), a2()---.,())}- Since we are op- crating at or near’ the Knee, all resources de- nanded by she users are granted (this 1s not true at the cliff), ‘Thus, x,(1) denotes the ith user's Fig.2 A contol system model of» user sharing & actor

You might also like