Congestion Control
Congestion Control
net/publication/228358235
Congestion Control
CITATIONS READS
10 2,196
2 authors:
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Andreas Pitsillides on 21 May 2014.
Congestion Control
Andreas Pitsillides1, Ahmet Sekercioglu2
1
Department of Computer Science, University of Cyprus, Nicosia, Cyprus, email:[email protected]
2
School of Information Technology, Swinburne University of Technology, Melbourne, Australia, email:
[email protected]
Abstract: Network congestion control remains a critical issue and a high priority, especially given the
growing size, demand, and speed (bandwidth) of the increasingly integrated services networks. Designing
effective congestion control strategies for these networks is known to be difficult because of the complexity
of the structure of the networks, nature of the services supported, and the variety of the dynamic parameters
involved. In addition to these, the uncertainties involved in identification of the network parameters lead to
the difficulty of obtaining realistic, cost effective, analytical models of these networks. This renders the
application of classical control system design methods (which rely on availability of these models) very
hard, and possibly not cost effective. Consequently, a number of researchers are looking at alternative non-
analytical control system design and modeling schemes that have the ability to cope with these difficulties
in order to devise effective, robust congestion control techniques as an alternative (or supplement) to
traditional control approaches. These schemes employ artificial neural networks, fuzzy systems, and design
methods based on evolutionary computation (collectively known as Computational Intelligence). In this
chapter we firstly discuss the difficulty of the congestion control problem and review control approaches
currently in use, before we motivate the utility of Computational Intelligence based control. Then, through
a number of examples, we illustrate congestion control methods based on fuzzy control, artificial neural
networks and evolutionary computation. Finally, some concluding remarks and suggestions for further
work are given.
1. Introduction
It is generally accepted that the problem of network congestion control remains a critical issue and a high
priority, especially given the growing size, demand, and speed (bandwidth) of the increasingly integrated
services networks1. One could argue that network congestion is a problem unlikely to disappear in the near
future. Furthermore, congestion may become unmanageable unless effective, robust, and efficient methods
of congestion control are developed. This assertion is based on the fact that despite the vast research efforts,
spanning a few decades, and the large number of different control schemes proposed, there are still no
universally acceptable congestion control solutions. Current solutions in existing networks are increasingly
becoming ineffective, and it is generally accepted that these solutions cannot easily scale up – even with
various proposed “fixes”. In this chapter we firstly define congestion, what causes congestion, how it is
felt, how fast is sensed, and where. We then review current approaches on congestion control in the worlds
of Internet and ATM. A structured approach, toward designing one of the most (if not the most) complex
control systems that man ever made, is then advocated. Guided by the success of control theory in other
man made complex and large-scale systems, we assert that a control theoretic point of view is necessary.
We propose that Computational Intelligence should have an essential role to play in designing this
challenging control system. Nowadays, Computational Intelligence research is very active and
consequently its applications are appearing in some end user products. Finally, we present several
illustrative examples, based on documented studies, of successful application of Computational Intelligence
in controlling congestion, and conclude with some suggestions and open questions.
1
Integrated services communication networks include high speed packet switching networks: ATM, current and future TCP/IP
Internet, frame relay, etc…
book CI congestion-control-final-19-sep-1999.doc 1
A. Pitsillides, A. Sekercioglu
2. Congestion control
2.1 Preliminaries
According to the International Telecommunication Union (ITU) definition (ITU-T: Rec. I371 [1])
“In B-ISDN2, congestion is defined as a state of network elements (e.g. switches,
concentrators, cross-connects and transmission links) in which the network is not able to
meet the negotiated network performance objectives for the already established
connections and/or for the new connection requests".
A similar definition can be posed for packet-switching networks. For example [2] defines congestion as a
network state in which performance degrades due to the saturation of network resources, such as
communication links, processor cycles, and memory buffers. Congestion control refers to the set of
actions taken by the network to minimise the intensity, spread, and duration of congestion. It can be said
that it is that aspect of a networking protocol that defines how the network deals with congestion. Despite
the many years of research efforts, the problem of network congestion control remains a critical issue and a
high priority, especially given the growing size, demand, and speed (bandwidth) of the networks. Network
congestion is becoming a real threat to the growth of existing packet-switched networks, and of the future
deployment of integrated services communication networks. It is a problem that cannot be ignored. In order
to understand the nature of the problem of congestion, and before we can discuss any approach toward
solving the congestion control problem, we next attempt to understand what causes congestion, how it is
felt, how fast is sensed, and where.
Congestion is caused by saturation of network resources (communication links, buffers, network switches,
etc…). For example, if a communication link delivers packets to a queue at a higher rate than the service
rate of the queue, then the size of the queue will grow. If the queue space is finite then in addition to the
delay experienced by the packets until service, losses will also occur. Observe that congestion is not a static
resource shortage problem, but rather a dynamic resource allocation problem. Networks need to serve all
users requests, which may be unpredictable and bursty in their behaviour (starting time, bit rate, and
duration). However, network resources are finite, and must be managed for sharing among the competing
users. Congestion will occur, if the resources are not managed effectively. The optimal control of networks
of queues is a well-known, much studied, and notoriously difficult problem, even for the simplest of cases.
For example, Papathemetriou and Tsitsiklis [3] show that several versions of the problem of optimally
controlling a simple network of queues with simple arrival and service distributions and multiple customer
classes is complete for exponential time (i.e. provably intractable).
The effect of network congestion is degradation in the network performance. The user experiences long
delays in the delivery of messages, perhaps with heavy losses caused by buffer overflows. Thus there is
degradation in the quality of the delivered service, with the need for retransmissions of packets (for services
intolerant to loss). In the event of retransmissions, there is a drop in the throughput—a wastage of system
resources—and leads to a collapse of network throughput when a substantial part of the carried traffic is
due to retransmissions (in that state not much useful traffic is carried). In the region of congestion, queue
lengths, hence queuing delays, grow at a rapid pace—much faster than when the network is not heavily
loaded. This is well illustrated in the case of a single uncontrolled queue with infinite waiting space,
featuring a single stream of packet arrivals with exponential packet length distribution and exponential
service rate (M/M/1 queue). It can be shown analytically that the normalised average time through the
queue is equal to 1/(1-ρ), where ρ is the normalised load (traffic intensity, utilisation) [4]. See Figure 1a.
for a plot of offered normalised load versus the normalised delay. Figure 1b shows the effect of excessive
loading on the network throughput for three cases: no control, ideally controlled, and practically controlled.
2
Broadband-ISDN (Integrated Services Digital Network) is the standards based (ITU-T) multiservice and multimedia network.
Asynchronous Transfer Mode (ATM) was selected as the transport mode for Broadband-ISDN.
book CI congestion-control-final-19-sep-1999.doc 2
A. Pitsillides, A. Sekercioglu
Practically
Offered load controlled
arrival rate =
service rate
Not controlled
3
See later discussion for what constitutes good control.
book CI congestion-control-final-19-sep-1999.doc 3
A. Pitsillides, A. Sekercioglu
4
Need for gateway control was realised early; e.g. see [13], where for future work the gateway side is advocated as necessary.
5
Advocated by the ATM Forum, against an initial push advocating preventive open loop based control for Broadband-ISDN
book CI congestion-control-final-19-sep-1999.doc 4
A. Pitsillides, A. Sekercioglu
The congestion control schemes employed by the TCP/IP protocol have been widely studied. We follow
[12], [10], [6], [7], [8].
The Internet protocol architecture is based on a connectionless end-to-end packet service using the IP
protocol. TCP is an end-to-end transport protocol that provides reliable, in-order service. End-to-end flow
control is integrated with a Go-Back-N error recovery mechanism. Network level congestion control is
implemented via a reactive, closed-loop, dynamic window control scheme [13]. Jacobson developed the
congestion avoidance mechanisms that are now required in TCP implementations in 1988.
These window-based mechanisms operate in the hosts to cause TCP connections to “back off” during
congestion. That is TCP flows are “responsive” to congestion signals (i.e., dropped packets) from the
network. It is primarily these TCP congestion avoidance algorithms that prevent the congestion collapse of
today's Internet. The window normally increases by some amount each round trip time, however the
window decreases (usually by a larger factor—additive-increase, multiplicative-decrease) when the sender
observes congestion indications (packet loss). A fundamental aspect of TCP is that it obeys a “conservation
of packets” principle, where a new segment is not sent into the network until an old segment has left. TCP
implements this strategy via a self-clocking mechanism: acknowledgments received by the sender are used
to trigger the transmission of new segments. This self-clocking property is the key to TCP's congestion
control strategy. If the receiver's acknowledgments arrive at the sender with the same spacing as the
transmissions they acknowledge, and if the sender sends at the rate that acknowledgments are received, the
sender will not overrun the bottleneck link. Along with TCP's self-clocking admission control, other
elements of TCP's congestion control include the congestion recovery algorithm (i.e., slow-start), the
congestion avoidance algorithm, and the fast retransmit/recovery algorithms, see [15] for details. Note that
RFC 2001 [10] fully documents the four algorithms in use (as at January 1997) in the Internet: slow start,
congestion avoidance, fast retransmit, and fast recovery. The TCP congestion control algorithms are
reactive and generally do not prevent congestion from occurring. The algorithms try to obtain as much
bandwidth as possible from the network by continually increasing the send rate until packet loss occurs.
While the congestion control algorithms are effective in certain situations, there are other situations where
TCP performance is poor. Ever increasing demands on the Internet have led to a number of incremental
changes over the last 10 years designed to improve TCP/IP performance:
1. Improved round trip time measurement algorithm (Karn's algorithm) [14].
2. Slow-start and congestion avoidance [13].
3. Fast retransmit, fast recovery algorithms [15].
4. Improved operation over high speed, large delay networks [16].
Even so, there is a large amount of evidence of observed TCP behavior that collectively contributes to
TCP's unpredictable performance. While the majority of TCP analysis has been simulation based, there
have been several empirical studies performed to illustrate that TCP can exhibit unwanted behaviours.
Examples demonstrating unwanted behaviour of TCP include: cyclic behaviour [17], [18]; synchronization
effects and ACK compression [12]. A notable analytic evaluation of the performance of congestion
algorithms [13, 19] for TCP/IP is given by Lakshman and Madhow [20]. Using simple dynamic models for
the slow start and congestion avoidance phases of the two algorithms, they insightfully demonstrate the
unwanted cyclic behaviour of TCP/IP and the effect of a high-bandwidth delay product and random losses
on its performance. Thus, the behaviour of TCP/IP congestion controls remains a critical issue and a matter
of continuous research interest in the TCP/IP world (highlighted by the frequent RFCs proposing fixes or
new solutions).
The congestion control mechanisms continue to be enhanced as TCP/IP evolves to meet new and more
demanding requirements. End-to-end congestion avoidance schemes based on windows were proposed in
[21], [22]. In [21] the aim is to approach the optimal and fair points quickly, as opposed to the slow start.
TCP-Vegas [22] is based loosely on [21] for congestion avoidance, and offers certain significant
improvements. It has been debated over the past decade as to whether window or rate control is more
effective at controlling congestion. A common belief among end-to-end congestion avoidance supporters
was that, due to the high bandwidth-delay product, window-based control is inferior to rate-based control at
high speeds. Proposed closed loop rate based congestion control schemes in a connectionless environment
include XTP (Xpress Transfer Protocol) and IBM’s RTP (Rapid Transport Protocol) rate-based algorithms.
book CI congestion-control-final-19-sep-1999.doc 5
A. Pitsillides, A. Sekercioglu
RTP uses a probe packet, and XTP uses explicit or implicit feedback from either the receiver or the
network to adjust their send rate.
Currently we are witnessing a shift by the Internet world toward the router/gateway congestion control
approach. Router congestion control is a form of control where the router provides either explicit or
implicit feedback indication. For example, the router based congestion control algorithm proposed by Floyd
and Jacobson [23], aims to make the probability that a connection is notified of congestion proportional to
that connection’s share of the bandwidth, through an active queue management mechanism called Random
Early detection (RED). RFC2309 [6], recommends active queue management, and recommends further that
RED [23] be the mechanism. Earlier, Ramakrishnan and Jain [24] proposed a scheme that uses explicit
binary feedback from the gateway (a.k.a. DECbit). This scheme uses a congestion indication (CI), set by
the router on the header of a packet en-route to the destination. The CI is set upon sensing congestion by
monitoring the queue length. Once the destination decides (based on the received CIs) that congestion is
imminent it informs the source to modify its window. Even though this algorithm is prone to oscillations,
exhibits bias against bursty traffic and is not fair, it has stimulated a lot of interest in the early discussion
about ABR control in the ATM Forum (Forward and Backward Explicit Congestion Notification, FECN
and BECN) and for Frame Relay control. In the Internet world, the initial suggestions to introduce a
methodology for adding Explicit Congestion Notification (ECN) to IP router congestion control are
outlined in [25], and later in the Internet draft-kksjf-ecn-03 and RFC 2481 [7]. Internet draft-salim-jhsbnns-
ecn-00 [8] proposes an alternative approach to the ECN mechanism proposed in [7]. It proposes a
Backward-ECN (BECN) which uses the existing IP signalling mechanism, the Internet Control Messaging
Protocol (ICMP) Source Quench message (ISQ) to reduce the reaction time to a congestion in the network.
In addition, the ISQ message can include information on the severity of the congestion allowing the end
host to react accordingly so as to make maximal use of the resources while maintaining network
equilibrium (which they refer to as Multilevel ECN).
A clear trend is observed: To progressively move the controls inside the network, closer to where it can be
sensed, and for the feedback information to become richer (shift from binary to a more explicit value of
congestion). These enable better controls (flexibility and effectiveness); see later discussion on the
congestion control framework and [5]. For the flexible and effective control of congestion in a TCP/IP
environment new control structures and approaches are necessary. According to [6], it is imperative that
work in developing congestion control be energetically pursued, to ensure the future stability of the
Internet. In this respect a control framework and appropriate control techniques (e.g. Computational
Intelligence) will be a necessary aid. Worth noting that not much work on the use of Computational
Intelligence in controlling congestion in the Internet has been reported.
Furthermore, it should be pointed out that the congestion control problem in the Internet is exacerbated, as
the Internet is increasingly transformed into an integrated services high-speed network, see for example the
intserv and diffserv proposed architectures [26[, [27]. For Integrated Services (intserv) [26], not many
congestion control algorithms have appeared in the open literature. Its architecture is expected to provide a
mechanism for protecting individual flows from congestion, and introduces its own queue management and
scheduling algorithms. In [26] it is speculated whether a virtual circuit model should be adopted, as
proposed in ATM and ST-II protocol (i.e. abandon IP). Debate is still at an early stage, but again the
approach to congestion control should be based on a congestion control framework and appropriate control
techniques. The same comments can be applied for differentiated services in the Internet (diffserv) [27],
[28]. Note that some recent works apply feedback control theory for differentiated services [29], [30].
Congestion Control in ATM Networks and Its Evolution for the Available Bit Rate Service
Congestion control in ATM based networks has been extensively researched. This is evidenced by the large
body of published papers, see for example: the proceedings of INFOCOM, GLOBECOM, ICC, ITC, to
name but a few; the journals devoting whole issues to ATM control and the large number of books
published spanning almost two decades. Even with this large body of published works, there are still
substantial unresolved problems of control in ATM based high-speed networks. The complexity and
immensity of the task was recognised early. See, for example: the guest editorial comments in [31] (they
state that: “The international telecommunications community fully appreciates the complexity of the issue
and, to cope with this problem, proposed a large variety of congestion control techniques. Many researchers
believe that there is no silver bullet, and that control of high-speed packet networks can be obtained by
book CI congestion-control-final-19-sep-1999.doc 6
A. Pitsillides, A. Sekercioglu
executing several concurrent mechanisms...”); and [32] the guest editorial comments of the JSAC special
issue on congestion issues in B-ISDN for a brief discussion of some of the control difficulties (they state
that: “the dynamic, heterogeneous, time-varying network environment, with different service requirements
is a significant factor in the design of controls”; and that “the design of the entire system and the interaction
of the various components is often more important than the optimisation of individual components”).
Almost ten years on, we note that the same comments are still applicable.
Initially, for Broadband-ISDN6 [33] there was a push for preventive control [11], (more correct to say open
loop type controls). This was motivated by the large bandwidth-delay product, which was seen [11] as an
inhibitor to the effective application of reactive (more correct to say closed loop or feedback) control. This
view was influenced by a predominant (not often stated) view that controls must reside at the edges of the
network, thus making the total delay around the feedback loop (in comparison to the bandwidth) so high as
to render feedback based control ineffective. Note that many researchers, even at an early stage, did not
adopt that view [34]. Progressively, there was a shift from that view (see parallel with TCP/IP congestion
control debate on router control), that feedback is essential for effective (and efficient) control, and finally
that controls inside the network should not be precluded, at least to supplement preventive controls. This
was formalised by the ATM Forum [9].
The initial view for preventive control was reflected in the general structure of the control framework
described in the ITU recommendation I.371 [1]. It consists of Connection Admission Control (CAC) [35],
[36], [37], and Usage Parameter Control (UPC) [38]. When a new call request is made, the user is required
to inform the network about the traffic characteristics (the “contract”, which contains traffic descriptors
such as mean bit rate, peak bit rate, and possibly burstiness of traffic and others) and the desired QoS of the
connection. It is then the responsibility of the CAC to decide whether to accept or reject the new
connection. It is accepted only if the requested QoS can be satisfied without affecting the QoS of existing
connections. Once a connection is accepted, the UPC polices the traffic characteristics to ensure that they
do not exceed those specified at connection establishment. Such a preventive control framework, however,
is not adequate to achieve the objectives of traffic control. Studies reveal that, for very bursty traffic such as
LAN-to-LAN interconnection whose peak rate is comparable to the link speed, the achievable utilisation is
very small unless detailed knowledge on the traffic characteristics is available [39]. Such knowledge may
include burst length, burst and silence length distributions, a description of any correlation between
successive bursts and silences, or even higher order statistics. In most cases, these traffic descriptors are
unknown at connection establishment. Even if they are known, it is inconceivable that they can be
accurately policed. Note that the effectiveness of policing units has been questioned for what is seemingly a
straightforward task of controlling, or policing, the peak rate [40]. Furthermore, the variability of traffic
inside the network becomes independent of the variability of traffic at the network edge (e.g. [41] has
shown this to be true for moderate to high network utilisation). Thus, cell clustering within the network
may cause congestion, which cannot be prevented by network edge preventive controls. These arguments
suggest that additional controls are necessary to handle congestion. Other notable preventive control
schemes were proposed, such as (open loop) rate based flow control [42], and the Fast Reservation Control
Protocol (FRP) [43] which handles burst level congestion by controlling the admission of bursts, but
similar arguments can be applied to justify the need for additional reactive controls.
A number of researchers advocated the need for closed loop controls early. Many feedback based control
schemes (a large proportion was derived using intuition) were proposed for ATM. In an ATM network,
depending on the nature of the traffic sources, the closed-loop congestion control issue can be approached
in two ways:
• For delay tolerant traffic, which is basically comprised of TCP/IP traffic, switches can send feedback
signals to the sources leading them to reduce the rate at which they release cells to the network. Then,
excess traffic is queued at the source and consequently delayed.
• On the other hand, since delay tolerance of video/voice traffic is very low, congestion is controlled by
sending coding rate signals to these types of sources [44]. In the presence of congestion, the sources
can vary their coding rate, and so reduce the frequency of cells generated by using this feedback
information. Lower coding rate inevitably reduces the image/sound quality at the receiver but network
utilization is maintained at higher levels by minimizing the cell losses due to congestion.
6
Currently, a lack of research activity is observed for Broadband-ISDN.
book CI congestion-control-final-19-sep-1999.doc 7
A. Pitsillides, A. Sekercioglu
Several feedback based control schemes have been proposed for delay tolerant traffic, including: end-to-
end window based flow control [45], end-to-end binary feedback [24], network edge rate control [46], end-
to-end ECN based (forward or backward) flow rate control [47], [48], EPRCA (Enhanced Proportional
Rate Control Algorithm) [49], ERICA [50], Predictive Adaptive control [51] [52], Fuzzy Backward
Congestion Notification [53], Fuzzy Explicit Rate Marking (FERM) [54], hop-by-hop rate based [55], and
credit-based control [56]. In contrast, the number of proposed congestion control schemes for delay
sensitive traffic is much less: Fuzzy congestion control [57], and Neural based congestion control [58],
Fuzzy based rate control for MPEG video [44].
In the summer of 1993, realising that the commercial success of ATM will depend highly on the
performance of “legacy” (i.e. TCP/IP, Ethernet, token-ring LAN) applications connected to an ATM
backbone, the ATM community concentrated its efforts on a mechanism to allocate bandwidth dynamically
within an ATM network, while simultaneously preventing data loss [59]. This effort culminated in the
introduction of a service category by the ATM Forum, called available bit rate (ABR), in order to allocate
bandwidth dynamically within an ATM network, while simultaneously minimizing the cell losses. A
feedback control framework has been selected to achieve these aims [9]. The proposed framework allows
downstream nodes to periodically send information to the traffic sources relating to maximum cell rates
that they can handle. The cell rate information is carried by a stream of resource management (RM) cells
generated by the traffic sources and relayed back to the sources by the destination end systems, or the ATM
switches. During their round-trip, while these cells pass through the switching nodes, the cell rate
information contents of these cells are dynamically updated by the intermediate systems. The actions of the
source, destination and intermediate switches are well defined by the ATM Forum. The calculation of the
rate is not part of the standard. As a prototype of this mechanism, the ATM Forum had developed a set of
algorithms for ABR sources, destinations, and switches [9]. These algorithms had been shown to be robust
in a variety of scenarios that had been simulated. However, since these schemes are designed with
significant non-linearities (e.g. two-phase—slow start and congestion avoidance—dynamic windows,
binary feedback, additive-increase multiplicative-decrease flow control) based mostly on intuition, analysis
of the closed loop behaviour is difficult if at all possible, even for single control loop networks. The
interaction of additional non-linear feedback loops can produce unexpected and erratic behaviour [60], and
empirical evidence demonstrates poor performance and cyclic behaviour of the controlled network [12].
This is exacerbated as the link speed increases to satisfy demand (hence the bandwidth-delay product7
increases), and also as the demand on the network for better quality of service increases. For example, for
WAN networks a multifractal behaviour has been observed [61], and it is suggested that this behaviour —
cascade effect—may be related to existing network controls [62].
7
The bandwidth-delay product indicates the relative delay in the feedback path (mainly constant due to the finite propagation delay)
in relation to the time dynamics of the queues in the system.
book CI congestion-control-final-19-sep-1999.doc 8
A. Pitsillides, A. Sekercioglu
more or less accurately around a prescribed value8 (reference point), or even control toward a prescribed
task9. In an abstract sense it is possible to consider every physical object as a control system, as everything
alters its environment passively or actively. For example, an on-off switch (e.g. to control the flow of
packets into a network) is a man-made control system.
An open-loop control system is one in which the control action is independent of the output, whereas a
closed-loop (also known as feedback10) control system is one in which the control action is somehow
dependant on the output. (Note that feedback is said to exist whenever a closed sequence of cause and
effect relationships exists among the variables of the system. The essence of the feedback concept consists
of measurement, comparison, and correction).
An example of an open loop is a source feeding its packets into the network, based on the timer value to
control congestion. The quality of service (loss and delay) delivered by the network depends on the timer
setting. Knowledge of this relationship, together with the state of the network and its environment, is
essential to ensure that the delivered quality of service meets the desired. Of course any changes from the
assumed environmental conditions, such as other users of the network, would make the controls ineffective.
To make the flow of packets a closed loop system, a continuous measure of network congestion is required.
If a measure of the congestion is available (or could be inferred from other on-line measurements), then in
principle ‘good’ control can be exercised at all times, irrespective of the environmental conditions at the
time of control. (Such environmental conditions include the other sources feeding into the network, their
number and their behaviour). This is achieved by measuring the congestion (system output), comparing it
with the desired value (the reference), and using the error between the measured and the desired to take
corrective action, based on some control strategy. Control theory aims to address the design of control
strategies with known attributes of control quality. Note that the human user in this case is not part of the
control system, the system is self-regulating
The ability of a closed loop control system to maintain some quantities of interest, more or less accurately
around a setpoint (or task) is a very powerful concept often ignored (seldom highlighted) in the literature of
congestion control. Controlling against a setpoint, means that one can have (known, predictable) control
over the state of the system (assuming that the manipulated variable, e.g. the flow, can influence the system
state−i.e. cause and effect must be proven). Selection of an appropriate setpoint value can be a very
important task. For example, for large systems, it may be selected by considering global optimisation
objectives. Local states can be driven in such a way, as to provide overall coordination toward global
objectives11. Furthermore, classical control theory developed techniques for assessing the performance of
the (closed-loop) controlled system12. These included as a (minimum) assessment of
1. stability and stability margin–a control system must respond in some controlled manner to applied
inputs and initial conditions (generally a system is not usable if it is unstable). It is worth noting
that a feedback system, if not properly designed, can cause instability, in an otherwise stable
system.
2. insensitivity to modeling inaccuracies with the actual plant. Since exact matchness with the
physical system is never achievable, we require the controlled system to be reasonably insensitive
to the parameters of the mathematical model used in the design. In addition the characteristics of
the system may change with time (e.g. different connection mix in a network), so again we are
interested in the sensitivity of the closed loop system to parameter changes in the system.
Feedback, in other words, can offer a high degree of robustness in terms of model inaccuracies,
(see discussion on Robustness, in [63], page 123). This idea has been successfully tested in
8
Note that selection of an appropriate prescribed or reference value or task can be a very important issue. For example, for large
systems, it may be selected by considering global optimisation objectives, and can be used as an instrument to reduce interactions and
provide coordination.
9
Observe that task oriented control is closer toward full automation; setpoint control can be seen as limited to regulation: L.A. Zadeh,
Fuzy Control vs Conventional Control Debate, Lotfi A. Zadeh, Michael Athans, EUFIT, Aachen, Germany, 13 -16 September 1999.
10
Feedback, one of the most fundamental processes existing in nature, is present in almost all dynamic systems, including those within
man, among men, and between men and machines. However, use of feedback concepts has not been widespread, even though
recognition that this theory is directly applicable to formulating and solving problems in many fields is becoming widespread, but its
use is limited because of its heavy orientation toward technological applications [Note that this was stated in 1967 by J.Di Stefano,
A.Stubberad, and I.Williams, “Feedback and control systems”, Schaum’s outline series, McGraw Hill, 1967].
11
This approach is commonly practiced. Examples include large-scale systems, e.g. chemical plants and power plants.
12
Note that the performance metrics discussed here are not directly applicable to non-linear systems. See discussion in section 3.1.
book CI congestion-control-final-19-sep-1999.doc 9
A. Pitsillides, A. Sekercioglu
countless closed loop systems (millions), especially in the process industry where plants are
complex, nonlinear with many (even thousands) of control loops around the plant, mostly using a
general purpose local controller—the ubiquitous PID regulator13.
3. ability of feedback control system to handle unforeseen changes in the statistics of the external
inputs and disturbances or noise, that may be considered as changes in the environment in which
the system operates. Disturbances are present in all systems (e.g. changed statistics in the flow of
packets in a buffer under control). The disturbance rejection characteristics of the system are
important. Note that open loop systems cannot offer any disturbance rejection.
4. steady state accuracy. A feedback control system can eliminate steady state error.
5. transient response (i.e. system behaviour until it reaches steady state). A feedback control system
can improve the transient behaviour of the system.
In the case of an overall congestion control system above attributes of a good control are not enough (these
were derived with one controlled variable (loop) in mind, and so they are applicable for the single
congestion control loop). Supplementary control performance attributes that one should take into account
include:
6. the concept of fairness, the
7. complexity and cost of implementation of the overall congestion control strategy, and
8. interoperability.
A lot more work is needed to define a formal framework for performance characterisation of the various
control strategies, but the above attributes, we think are important14.
Making use of control theoretic concepts we believe has potential benefits [60], including:
1. Simpler and/or more effective algorithms with more predictable properties.
2. Better understanding of the performance of the controlled system (including their dynamic
behaviour), see discussion above.
3. Better understanding of existing non-linear algorithms, including the need for any fixes
(“jacketing software”).
4. Better analysis techniques for large systems of interacting algorithms.
Traditionally, most control problems15 arise from design of engineering systems (e.g. power plants,
chemical plants, space shuttle, communication networks, etc…). Such problems are typically complex,
large-scale and fuzzy. They could also span large geographic areas. Control systems theory typically deals
with small-scale, well-defined problems. A major difficulty in control system design is to reconcile the
large-scale, fuzzy, real problems with the simple well-define problems that control theory can typically
handle [63]. It is however in this area that a control system designer can effectively use creativity and
ingenuity. This must be based on good understanding of the fundamental control theory (which can be
sophisticated and complex), as well as a deep understanding of the system under control (not necessarily in
the form of an accurate mathematical model). It is useful to have some perspective of the design process
and a feel for the role of the theory in the design process. A good control system may have to satisfy a large
number of specifications, and there are often many equally good solutions to a design problem. Many
compromises are often necessary, for example cost of control versus control performance. What theory can
contribute to the design process is to give insight and understanding. In particular, theory can often pinpoint
fundamental limitations on control performance. If idealised design problems can be described, which can
be solved theoretically, these can often give good insight into suitable structures and algorithms. It is useful
to note that control problems can be widely different in nature. They can range from design of a simple
13
To alleviate the cost of modeling every controlled loop, a general purpose controller, the PID (PID, Proportional Integral Derivative,
is a 2nd order controller), is often used. The PID parameters are “tuned” on-line, based on well publicised procedures, aiming to
optimise certain controlled system attributes, such as rise time and settling time. Process plant loops are seldom a good match to a 2nd
order model. Furthermore, it is worth noting that the setpoint of the PID is often set on-line by a supervisory control system to meet
global objectives.
14
An analytic performance characterisation will be very difficult, so we propose the design of a formal Common Simulative
Framework (CSF). All proposed algorithms can then be tested with regard to known control performance attributes (e.g. robustness,
efficiency, transient behaviour, complexity of controls, scalability, interoperability, etc). A fairer comparison between any proposed
congestion control solutions can then be made. (See 802.14 Modelling: Advantages of a common Simulative Framework, IEEE
Working Group, January 1990). Note that a network simulator is in common use for the Internet (UCB/LBNL/VINT Network
Simulator - ns (version 2), http://www-mash.cs.berkeley.edu/ns/). It can be expanded to include the controlled system performance
objectives and their measurement for a set of sample network configurations and connection mix(es).
15
Nature is abundant with examples of self-regulating systems. Application of formal control systems theory has provided a clearer
understanding of the underlying principles and workings of these systems.
book CI congestion-control-final-19-sep-1999.doc 10
A. Pitsillides, A. Sekercioglu
control loop in a given system to design of an integrated control system for the complete system. The
relation between the design of the system (in our case the network), and the design of the control system to
control it (the network management and control system) is often ignored, but it is one that can make the
design of controls more effective. By designing the system and its control system together an additional
degree of freedom is introduced, whereby the network designers can use it to design better trade-offs.
Control systems are often introduced into given systems as an after thought to simplify or improve their
operation. If designed into the system from the beginning, the control of strong interactions in the system
can be more effective. If proper controllability of the system is not designed from the beginning in the
system then effective control will be difficult, if not impossible—see discussion in [52], where the concept
of network controllability is discussed. An example of the problems of introducing controls as an after
thought can be found in the control of congestion in the Internet. A piecemeal approach of solving one
problem at a time has been adopted, with well-documented problems of control, and associated “fixes”
[16]. For example, it is now well accepted that use of network devices, such as routers/gateways/ATM
switches, in the control system can make the problem of congestion control simpler and more effective [7].
Network devices should be designed to enable effective implementation of the adopted control strategy,
and the control strategy should be designed with the possible limitations of network devices in mind—an
iterative approach is therefore necessary to find the best compromise solution.
2.4 Modeling
The importance of mathematical models in every aspect of the physical, biological, and social sciences is
well known. Starting with a phenomenological model structure that characterises the cause and effect links
of the observed phenomenon, the parameters of the model are tuned so that the behaviour of the model
approximates the observed behaviour. Alternatively, a general mathematical model such as a differential or
a difference equation can be used to represent the input-output behaviour of the given process, and the
parameters of the model can be determined to minimise the error between the process and model outputs in
some sense. It should be noted that no mathematical model of a physical system is exact, and there is no
such thing as the model of the system. Generally, increasing the accuracy of the model also increases the
complexity of the mathematical model, as well as the cost of deriving the model16, but exactness cannot be
achieved. We generally strive to develop a model at an appropriate level of abstractness, which is adequate
for the problem at hand without making the model overly complex (and costly). Simple and manageable
models are required (complicated or intractable models with an abundance of parameters are not likely to
be used in practice). The model should be parsimonious and able to capture the “essential” dynamic
behaviour in the simplest way. An important question is how good should the model be. Intuitively, one
may say that a good model is one that maximises the benefits that the model offers to the behaviour of the
designed controlled system (such as steady state accuracy, disturbance rejection, robustness, fast transient
response, etc −see earlier discussion). It is important to highlight that what is important is not the actual
model itself, but rather the improvement the model offers in the behaviour of the control system, which was
designed using that model.
To design a control system it is necessary to have a model between the input and the output of the system.
As an example of the difficulty of deriving such a (mathematical) model let us take the development of a
model of traffic behaviour [5]. One can identify several factors that affect the model, and some are time
varying. For example:
1. The diverse user (human) behaviour (which can be time varying and different for different humans,
even for the same interactive services) will affect the way traffic is generated.
2. The inherent fuzzines, for example, in the definition of the “contract” between the user and the
network and its policing, and in the controls (declared objectives of controls and observed behaviour of
the system). Examples of fuzzy attributes include the quality of service to the user (requested and
measured), definition and policing of the declared user traffic parameters, and the definition and
measurement of congestion, congestion onset and congestion collapse
3. Data generation, organisation and retrieval (long range dependance has been shown for both the source
generation, as well as the storage of data) [64].
16
It has been noted that the development of models for control system analysis and design involves 80 to 90% of the total effort
required.
book CI congestion-control-final-19-sep-1999.doc 11
A. Pitsillides, A. Sekercioglu
4. Traffic aggregation (the aggregation process is a very complex one—many studies suggest that self-
similarity seems to be preserved under a variety of network operations, and this holds over a wide
range of network conditions)
5. Network controls (there is speculation that fractal features in network traffic remain even after network
controls).
6. Network evolution (again self-similarity appears robust to network changes, eg. upgrades).
Computational intelligence to handle the complexity and fuzziness present in the network system surely has
an essential role to play here. We should exploit the tolerance for imprecision and uncertainty to achieve
tractability, robustness and low cost [65].
book CI congestion-control-final-19-sep-1999.doc 12
A. Pitsillides, A. Sekercioglu
In the rest of the chapter, we shall illustrate through a number of selected examples the power of the
Computational Intelligence techniques that show that effective congestion control is possible.
book CI congestion-control-final-19-sep-1999.doc 13
A. Pitsillides, A. Sekercioglu
surprising to see that FLCs are favored by the researchers involved in ATM network development. As
discussed in the earlier sections, purely reactive congestion control techniques will not be effective in ATM
based multimedia and multiservice networks. Therefore, the researchers who applied the computational
intelligence methods to congestion control problem mostly looked at predictive congestion control
schemes. In general, the schemes observe the short term behavior of a link to estimate the future of cell
arrivals in order to predict the onset of congestion and take proactive measures to prevent its occurrence. In
the following paragraphs, an overview of the recent research efforts is presented.
Liu and Douligeris [74] have proposed a combination system consisting of a leaky bucket and a fuzzy logic
cell rate controller. Their system is designed for video/voice sources that negotiate their peak and mean cell
rates during the call set up phase. The leaky bucket module is responsible for the compliance of the sources
to the negotiated traffic parameters. The authors stipulate that, for non-conforming sources, instead of
simply discarding the excess cells at the switch, it is possible to send back signals to the sources to reduce
their cell generation rates and so, minimize the cell losses in order to maximize the resource utilization. The
second module, which consists of two fuzzy logic controllers, is responsible for the generation of these rate
control signals. It attempts to predict the near future cell discarding behavior of the switching nodes based
on the short term observation of the cell arrivals. This prediction is then fed back to traffic shapers in the
sources to regulate the data generation rate to minimize cell losses in the switching nodes.
The leaky bucket is realized as a counter. It is incremented whenever a cell is transmitted to the network,
and decremented for every time interval T passed until it reaches 0. Whenever the counter is bigger than a
threshold value Sth , the incoming cells are discarded until the counter value drops below the threshold. If
the counter value is 0, the leaky bucket allows the source to transmit a burst of θ cells maximum. Liu and
Douligeris have found that, if the network traffic gets burstier, selecting the optimum values for T, Sth and
θ becomes a difficult task. In order to reduce the sensitivity of the system to these parameters, and
consequently to minimize the number of cells discarded, the fuzzy system have been included into the
scheme to regulate the peak cell rate of the sources.
Jensen [75] has proposed a fuzzy system for controlling the transmission rate of sources to protect links
against overload in the case of connections exceeding their negotiated traffic parameters. The fuzzy system
consists of three FLCs connected in a cascade formation. The scheme operates as follows: At the call
admission stage a service dependent priority is assigned to each connection. This priority is kept as a fixed
value for the whole life time duration of the connection. Also, in the switching node, a certain buffer
capacity is allocated to the connection. The fuzzy system generates the cell service rate control signals for
each buffer. Inputs the fuzzy system are:
(a) allocated priority level,
(b) difference between the effective bandwidth at which the source is transmitting the cells and the
declared bandwidth negotiated during the call set up stage,
(c) current buffer occupancy level, and
(d) bandwidth utilization at the output link of the switching node.
The variables (a) and (b) above are the inputs of the first FLC of the cascade formation. The output
generated by the first FLC and variable (c) form the inputs of the second FLC. The third FLC receives the
output of the second FLC and variable (d) as its inputs and generates the cell service rate signal to be used
by the server of a particular buffer. The reason behind using a three-step fuzzy control mechanism each
receiving two input variables instead of a single FLC having four input variables is to keep the number of
linguistic rules of the rule base in a reasonable level. FLCs suffer from a problem called “curse of
dimensionality”: the number of linguistic rules rises exponentially when the number of input variables
increases linearly. One of the solutions to this problem is the one adopted by Jensen and to use a cascade
connection of FLCs each has a limited number of input variables. For a discussion of other solutions [76]
can be referred.
Cheng and Chang [77], [78] have opted for a system which combines connection admission control (CAC)
and congestion control mechanisms. The congestion control mechanism sends back coding rate control
signals to video and audio sources, and congestion control signals to data sources to adjust the cell
transmission rate of the sources, and subsequently the traffic density at the switches. The system contains
seven modules, three of them are FLCs:
1. Fuzzy Congestion Controller accepts three inputs: queue length, queue-length change rate, and overall
cell loss probability for all traffic using the same queue. The input signals of the Fuzzy Congestion
book CI congestion-control-final-19-sep-1999.doc 14
A. Pitsillides, A. Sekercioglu
Controller are generated by the Performance Measures Estimator module. The Fuzzy Congestion
Controller generates a control action. A negative value generated denotes a certain degree of
congestion, a new call has little chance of being accepted. A negative value also initiates selective
discarding for video and audio sources, and transmission rate reduction for data sources. A positive
output value indicates that the system is free of congestion to a certain degree, new calls have a good
chance of entering the network, and existing connections can be restored to their original rates. Coding
Rate Manager and Transmission Rate Manager modules are responsible for sending the control signals
to the respective traffic sources.
2. Fuzzy Bandwidth Predictor estimates the equivalent capacity of the call based on the advertised traffic
parameters peak bit rate, average bit rate and peak bit rate duration. The estimated capacity is used by
the Network Resource Estimator module to calculate the total capacity in use.
3. Fuzzy Admission Controller is responsible for generation of accept/reject signals for audio/video call
requests. The input variables for this module are total capacity in use, cell loss probability (generated
by the Performance Measures Estimator module), and control action signal generated by the Fuzzy
Congestion Controller. Based on these input variables it generates an accept/reject signal, which will
be used to grant or deny the incoming call requests.
An interesting approach adopted by Cheng and Chang is the utilization of genetic algorithms to generate
the linguistic rules of the three FLCs mentioned above.
Pitsillides et al. [53], [54], and Qiu [79] have proposed congestion control schemes which operate under
similar principles. The schemes, by measuring the queue length and queue growth rates at the output buffer
of a switch, attempt to estimate the future behaviour of the queue, and send explicit rate control signals to
the traffic sources to avoid or alleviate congestion. The explicit rate control signals are calculated
periodically by fuzzy inference engines located in the switches, and sent to the traffic sources in resource
management (RM) cells.
The scheme of Pitsillides et al. is used in Fuzzy Explicit Rate Marking (FERM) algorithm. They have
analyzed its performance in detail regarding fairness, responsiveness, resource utilization and cell loss in
LAN and WAN environments. The scheme has been further refined (FERM2) and as an adaptive scheme
which has self tuning capabilities (A-FERM) [80]. A detailed overview of FERM2 is presented in later
sections as an illustrative example.
The linguistic rules, which determine the actions to be taken by the FLCs, can sometimes pose challenges
to the designers. Traditionally, the rules encapsulate the expert’s experience or belief about the necessary
control actions taken. It is possible that the expert’s knowledge is not available, or not easily obtainable. In
this case, if operational data is in hand, linguistic rules may be extracted from the data by using clustering
methods. Cheng and Chang [77], [78] have used genetic algorithms to obtain linguistic rules from the
operational data. Another challenge is, usually the rules are static: they do not change during the operation
of the system. Naturally, this can lead to suboptimal control actions to be taken if system dynamics change
in time. The solution to this problem is to use adaptive methods to modify a set of parameters that are used
to define the linguistic rules in real-time.
Takagi and Sugeno [81], [82] have proposed a method for adaptive tuning of linguistic rules of a FLC. In
their method, they approximate the system under control by an open loop fuzzy model (model based FLC
design), given in terms of fuzzy rules. The controlled variable, which determines the output action defined
in the linguistic rules, is chosen as a polynomial expression of some state variables whose coefficients are
modified by adaptive techniques. This method can be used for controlling very complex systems and has
been successfully demonstrated by Sugeno to control the flight of a helicopter. For an illustrative example
of this approach see [83] and [84]. Hu, Petr and Braun [85] have used this method to design an adaptive
fuzzy congestion control scheme. In their approach, the level of network congestion is monitored through
the queue length at the output buffer of the switch, with the control target being set at a desired queue
length. The FLC uses this information as its input variables:
(a) Length of the queue at the output buffer of the switch (normalized);
(b) Queue length change rate;
(c) Data traffic transmission demand (The demand is calculated as the ratio of current rate of data traffic to
the allowed rate. If the ratio is significantly less than 1, the data traffic sources do not have as much
traffic to send as what the network allows.)
(d) Number of discarded data cells (normalized).
book CI congestion-control-final-19-sep-1999.doc 15
A. Pitsillides, A. Sekercioglu
Then, the FLC calculates the allowed cell rate for the data sources. At the same time the parameters of the
polynomial functions which constitute consequent parts of the individual rules are tuned using gradient
descent method. The adaptation objective is chosen as the minimization of the difference between the
queue length and the desired queue length.
Not many schemes were proposed for the control of real time video traffic. A notable example is Tsang et
al [44] who propose a fuzzy logic based scheme for real time MPEG video to avoid long delay or excessive
load at the user interface in an ATM network. They control the input and output rates of a shaper whose
role is to smooth the MPEG output traffic rate. This they do at the expense of variable picture quality, but
in a controlled way (by allowing a small output variation, similar to an open loop which aims for constant
picture quality at the expense of variable bit rate). They use two fuzzy logic control systems operating in
two different time-scales. The first fuzzy system controls the intra-Group-of-Picture traffic, in order to
ensure compliance of the coded video output stream with predefined sustainable cell rate and burst
tolerance parameters to avoid cell dropping by the leaky bucket. The second fuzzy system operates in the
inter- Group-of-Picture time-scale, to change the quantisation parameter of the coder (hence the coding
rate), according to information about the network congestion level. They are able to show that the rate
fluctuation of the video is reduced, as compared to the open loop (constant quality) scheme, without a
substantial drop in picture quality. Thus the proposed scheme reduces burstiness, therefore preventing
congestion from occurring.
book CI congestion-control-final-19-sep-1999.doc 16
A. Pitsillides, A. Sekercioglu
book CI congestion-control-final-19-sep-1999.doc 17
A. Pitsillides, A. Sekercioglu
experienced by the users. The set of linguistic rules shown below in Table 1 define the control surface of
the FCC:
if ABR queue length is too short and queue is decreasing fast then increase flow rate sharply
if ABR queue length is too short and queue is decreasing slowly then increase flow rate moderately
if ABR queue length is too short and queue length is not changing then increase flow rate moderately
if ABR queue length is too short and queue is increasing slowly then decrease flow rate moderately
if ABR queue length is too short and queue is increasing fast then decrease flow rate moderately
if ABR queue length is acceptable and queue is decreasing fast then increase flow rate moderately
if ABR queue length is acceptable and queue is decreasing slowly then increase flow rate moderately
if ABR queue length is acceptable and queue length is not changing then do not change flow rate
if ABR queue length is acceptable and queue is increasing slowly then decrease flow rate moderately
if ABR queue length is acceptable and queue is increasing fast then decrease flow rate moderately
if ABR queue length is too high and queue is decreasing fast then do not change flow rate
if ABR queue length is too high and queue is decreasing slowly then do not change flow rate
if ABR queue length is too high and queue length is not changing then decrease flow rate moderately
if ABR queue length is too high and queue length is increasing slowly then decrease flow rate sharply
if ABR queue length is too high and queue length is increasing fast then decrease flow rate sharply
Table 1. Set of linguistic rules defining the control surface of the FCC
Figure 2. Block diagram of the Fuzzy Congestion Controller of the FERM2 scheme.
Figure 3. Control surface of the Fuzzy Congestion Controller. The control surface is shaped by the rule base
and the linguistic values of the linguistic variables. By observing the progress of simulation, and modifying the
book CI congestion-control-final-19-sep-1999.doc 18
A. Pitsillides, A. Sekercioglu
rules and definitions of the linguistic values, FCC can be tuned to achieve better server utilization, and lower
cell loss coupled with minimal end-to-end cell delay.
The Thinking behind the selected Rule Base
An inspection of either the linguistic rules of Table 1 or the resulting control surface of Figure 3 hints at
some of the designer's beliefs about how the system should be controlled.
The rules of Table 1are more aggressive about decreasing flow rate sharply then increasing it sharply.
There is only one rule that results in increasing flow rate sharply, whereas two rules result in decreasing
flow rate sharply. This is shown in the surface of Figure 2 by a much bigger region of maximum flow rate
reduction relative to maximum flow rate increase.
For intermediate queue lengths (“acceptable” queue length), the rules are somewhat “restless”. Attention is
paid to the rate of change of queue length, and “moderate” changes of flow rate are invoked unless the
queue length is almost constant. This corresponds to the small flat region in the center of the surface in
Figure 2.
These rules reflect the particular views and experiences of the designer, and are easy to relate to human
reasoning processes.
The authors have done extensive simulations on a representative ATM network (Figure 4) and have
compared the performance of FERM against enhanced proportional rate control algorithm (EPRCA). The
results of this study has been reported in [54]. FERM2 yields yet better throughput results than FERM in
overloaded networks (Figure 5 and Figure 6).
Figure 4. ATM network model used for performance analysis of FERM and FERM2 algorithm.
Same network configuration has been used for the simulation of ATM WAN backbone and ATM
LAN backbone except that the distances between switches have been assumed to be 1500 km and 10
km for WAN and LAN simulations respectively. All traffic (except 1hop (b) traffic) leaving ATM
switch 2 travels to a fourth ATM switch and distributed. Since no cell buffering occurs at this switch,
it has not been included into the simulation model. The speed of all links have been considered as 155
Mb/s.
book CI congestion-control-final-19-sep-1999.doc 19
A. Pitsillides, A. Sekercioglu
Figure 5. Plot of average end-to-end ABR cell delay vs. useful throughput of simulated ATM LAN
under FERM2 congestion control. The graph has been produced by varying the offered link loads
generated by the ABR traffic sources from 20% to 150% of the link capacities.
Figure 6. Plot of average end-to-end ABR cell delay vs. useful throughput of simulated ATM WAN
under FERM2 congestion control. The graph has been produced by varying the offered link loads
generated by the ABR traffic sources from 20% to 150% of the link capacities.
The following plots show the time evolution of the Explicit Rate, as calculated by FCC, for the case of a
LAN (Figure 7) and a WAN network (Figure 9). The other two figures show the time evolution of the
queue length for both LAN (Figure 8) and WAN (Figure 10), with the reference point set at 400 cell places.
Please note the expected deterioration in performance of the controlled network for high bandwidth delay
products (WAN), as opposed to the excellent controlled system performance for the case of very small
book CI congestion-control-final-19-sep-1999.doc 20
A. Pitsillides, A. Sekercioglu
propagation delay (LAN). Nevertheless even for the WAN case, the network system is well controlled and
the network losses and retransmissions are limited. Note that the distances between switches are set at
1500km, with a maximum end-to-end round trip delay around 30 msec @ 6000 kms; compare with the 2.6
msec time it takes to fill or empty a buffer of 1000 cells @ 155 Mbits/sec.
Figure 7 Time evolution of the Explicit Rate for the case of the LAN; calculated by the FCC
Figure 8. Time evolution of the queue length for the case of a LAN. Note that the reference value is
set at 500 cell places.
book CI congestion-control-final-19-sep-1999.doc 21
A. Pitsillides, A. Sekercioglu
Figure 9. Time evolution of the Explicit Rate for the case of the WAN; calculated by the FCC
Figure 10. Time evolution of the queue length for the case of a WAN. Note that the reference value is
set at 500 cell places.
In the simulations, the values of the negotiated parameters are set as follows: PCR=149.76 Mb/s, ICR=PCR
and MCR=2 Mb/s. The control interval Nfp is set as 32 cell-service periods.
book CI congestion-control-final-19-sep-1999.doc 22
A. Pitsillides, A. Sekercioglu
very little scope for time consuming fuzzy inferences at the VP level. There is considerable progress on
design and implementation of dedicated hardware for fuzzy inference operations, but additional cost of
integrating fuzzy processors into networking equipment would never be cost effective with using today’s
technologies or without invention of a totally new approach. For relatively simple FLCs such as FCC of
FERM2, simple table lookup methods can easily be employed. As mentioned above, the linguistic rules of
the FCC basically defines a nonlinear control surface and the rules themselves play the role of an interface
as an aid to describe the shape of the control surface. The control surface can then be encoded as a lookup
table, so that when input variables are read, they are used to determine an output value by executing just a
few processor operations.
In FERM2, the lookup table of flow rate correction is stored as a two-dimensional matrix of data and a
particular flow rate correction value is accessed by using the values of input variables queue length and
queue growth rate as the indices.
Tarraf, Habib and Saadawi [88], [89], [90], [91] have extensively investigated how ANNs can be used to
solve many of the problems encountered in the development of a coherent traffic control strategy in ATM
networks. In [91] they present an ANN based congestion controller for ATM video/voice multiplexers. The
congestion controller monitors the number of cells in the multiplexer buffer to predict the potential
congestion problems. It then generates a rate control signal to be fed back to the sources in order to alter the
arrival rate of cells. During the periods of buffer overload, the control signal reduces the arrival rate by
decreasing the coding rate at the video/voice source. When overload period ends, the coding rate is returned
back to its previous level. The ANN generates coding rate signals and so attempts to maximize the overall
performance of the system through a cost function. The cost function combines two system performance
measures:
1. Minimization of the input multiplexer buffer overflow periods (in order to minimize cell loss
rate).
2. Maximization of the coding rate levels at the input sources (in order to maintain the quality of
the video/voice traffic). The congestion control algorithm has self tuning capability by using
reinforcement learning technique [92].
Chen and Leslie [93] have proposed a general adaptive congestion control mechanism. The ANN based
controller monitors two parameters: the arrival rate of the traffic, and a QoS measure such as the cell loss
ratio or delay. Both parameters are processed as time dependent averages, before presented to the ANN, in
order to capture the dynamics of the traffic. The ANN then generates a control signal which attempts to
maximize the arrival rate while maintaining the QoS. The learning is performed by using an adaptive
backpropagation algorithm. The adaptive backpropagation algorithm has been chosen to overcome the
problem of slow rate of learning usually experienced by the classical backpropagation algorithm. The
adaptive backpropagation algorithm, in order to accelerate the learning process, changes the learning rate as
learning proceeds.
Liu and Douligeris have also done an extensive study on applications of ANNs to ATM congestion control
issues for data [94] and video/voice [95] traffic. In [94], they present three different ANN models used as
static and adaptive feedback congestion controllers for data traffic and compare their performance. In their
approach, ANNs are used to predict the possible cell losses in the near future. Based on these cell loss
predictions, a feedback cell containing explicit rate information is sent to the data sources to regulate their
transmission rates. The three schemes differ in the type of information processed by the ANNs. In the first
approach, the current queue length in the buffer of the ATM switch and the cell arrival patterns in the past
book CI congestion-control-final-19-sep-1999.doc 23
A. Pitsillides, A. Sekercioglu
few periods are used to predict the amount by which sources need to reduce their rates. In the second
mechanism, the cell arrival patterns are processed using the standard normal deviate (SND) model before
being fed into the ANN. In the third mechanism, cell arrival patterns are processed by a moving average
data smoothing technique.
normalised queue
length of LB (t) admissible
transmission rate
of sources (t+1)
queue change
of LB (t-1)
queue change
of LB (t-2)
book CI congestion-control-final-19-sep-1999.doc 24
A. Pitsillides, A. Sekercioglu
obtained. Evolutionary computation can be used in engineering applications for synthesis of hardware or
software modules.
It appears that this framework has not been investigated thoroughly for solving congestion control issues in
telecommunication networks, most probably because of its very computationally intensive nature (there are
however many examples of its use for network optimisation). The strength of evolutionary computation
based techniques for time series prediction has been extensively reported in the literature. This can be
exploited for designing predictive congestion controllers similar to the ANN based ones. For example,
observation of traffic patterns and resulting sequences at a switching mode can be used to design a module
that is capable of estimating the future behavior of the traffic and so generate rate signals.
Then, they have used a genetic programming system developed in-house with this data set to evolve an
estimator function. An example of evolved estimator functions is shown below:
float estimate(float a, float b, float c)
{
float estimated_value;
estimated_value = (IFG( ( DIV((c), (((( IFG( (888.788), (595.93), (c)) ) +
( DIV((c), (a)) ))>(164.152))+(a))) ),
( min(((a)*(c)), (((c)+(( DOWN(a,b,c) ) >
(((b)*( min((c), ( DIV((c), (a)) )) )) <
( DIV((c), (a)) ))))*( min((b), ( DIV((c), (b)) )) ))) ),
((( DOWN(a,b,c) )>(b))<( DIV((c), (a)) ))) );
return estimated_value;
}
The estimator function, which is a C procedure, predicts the value of the queue length Q(t+1) at time t+1,
taking into consideration three known preceding values Q(t), Q(t-1), Q(t-2). IFG, DIV, DOWN are macro
expressions, and the constants are generated randomly during the initialization stage.
After generating the candidates for the estimator function, they have selected the one that has the best
prediction potential (given above). To test its generalization capability, they have run a series of
simulations under varying traffic conditions. In these simulations they have sampled the ABR queue length
at the end of every 32 cell service periods, and recorded the predicted value of the queue length for the next
sampling time as evaluated by the estimator function. The estimator function used the current and past two
values of the queue length Q(t-2) , Q(t-1) and Q(t) to predict the queue length Q(t+1) 1-step ahead. The
authors have shown that, on average, error of the 1-step ahead estimation of possible queue length remains
less than 6 cells. Figure 13 and Figure 14 illustrate the dynamic behavior of the estimator function for the
case of running the ATM LAN at 40% output link capacity. Figure 14 shows the actual and estimated
length of the queue in more detail between 0.718 an 0.734 seconds of the simulation time. As can be
observed, the estimator function can predict the queue length quite accurately in most of the situations
except in the cases where sudden changes in queue length are experienced. Even in these situations of
sudden changes, estimation error remains within +/- 30 cells limit.
book CI congestion-control-final-19-sep-1999.doc 25
A. Pitsillides, A. Sekercioglu
Figure 12. The data set used for generating the estimation functions. It is obtained by running the
simulated ATM LAN with a traffic load of 60% of the link capacity
Figure 13. Graph of actual and estimated ABR queue length at the ATM switch for an offered link
load of 40% of link capacity.
book CI congestion-control-final-19-sep-1999.doc 26
A. Pitsillides, A. Sekercioglu
4.0 Conclusions
In the “fight” against congestion, despite the research efforts spanning a few decades and the large number
of different schemes proposed, there are no universally acceptable solutions (a control strategy, a control
system, or a “package” of control solutions). Congestion control remains a critical issue and a high priority,
especially given the growing size, demand, and speed (bandwidth) of the increasingly integrated services
network.
In this chapter we have reviewed existing literature on IP and ATM congestion control. We have presented
illustrative examples of using CI to control congestion using Fuzzy Logic, Neural, and Evolutionary
approaches. These and the literature we review on CI methods applied to ATM networks show that CI can
be effective in the control of congestion. There is no doubt that we will see more and more use of these
techniques, including their use in the IP world. We also expect that, as in other commercial products, CI
techniques will finally make it into real products in this area, and we expect with tremendous success.
Of course many challenges to the control of congestion remain unresolved (after all, the network control
system is one of the most, if not the most, complex control system that man ever made—it is complex as
well as large-scale). The challenges, include:
• To get agreement on a structured approach to congestion control for the network. Control theoretic
concepts and techniques have an essential role to play.
• To add further credibility to CI based control systems for congestion control, in addition to the
empirical evidence of the effectiveness of the approach, formal verification of controlled system
stability, performance, and robustness for CI based systems should be explored. Also a more
systematic approach to design Congestion Control with known controlled system performance
should be sought. Note though, that for nonlinear systems there are no systematic specifications of
the desired controlled system behaviour. For FCC some preliminary results in that direction can be
found in [100], [80], [73]. The complexity versus benefit of these schemes for congestion control
should be explored further. As elegantly pointed out by Mamdani [72], overstressing the necessity
of mathematically derived performance evaluations may be counter productive and contrary to
normal industry approach. Also, the prescribed specifications on the controlled system
performance can be embedded into the fuzzy controller design as a set of fuzzy if-then rules (e.g.
rise time rules, damping rules and steady state rules).
• To define desirable controlled system features. In addition to network metrics, such as throughput
and QoS provision, the desirable features will include fairness toward all sources, effectiveness of
the congestion control system, rise and settling time of controlled system following a disturbance,
robustness of the control system, regulation, efficiency, implementation complexity, ease of
tuning, scalability, internetworking with other schemes, and policing of connections. These should
be incorporated into the control system design brief.
• To engineer the network system with the network control system together in order to add another
degree of flexibility.
• It is commonly acknowledged that for the effective control of congestion a combination of
controls, such as input rate control, window control, connection admission control, resource
reservation control, and bandwidth allocation, will be necessary. These controls can reside at
the edge of the network, within the network, or in a combination. Due to the complexity of
the problem and lack of established and accepted methodologies combined overall
congestion control schemes that take into account interactions between the different control
objectives are not currently available.
• Different input output pairs and feedback ‘sensors’, together with control structures should be
investigated. The idea is to match the input-output pairs to ensure that there is structural
flexibility in the system for a control design to be effective. For example, if the propagation
delay exceeds a certain value, the controls may not be effective−so the feedback delay path
should be reduced, or different input output pairs should be chosen so that feedback and
system dynamics are matched. Another consideration for the feedback sensor is its accuracy,
taking into consideration the complexity of implementation in fast switches.
book CI congestion-control-final-19-sep-1999.doc 27
A. Pitsillides, A. Sekercioglu
• To deploy these control systems in the large scale, geographically distributed network system.
Theoretical advances in handling large scale complex systems are required, including
decomposition and organisation of controls (possibly hierarchical, multilayer, multilevel,
decentralised co-ordinated, and decentralised overlapping), and the selection and tuning of a
possibly large fuzzy rule base.
• To globally optimise the overall network objectives.
• To develop a framework for the evaluation of the performance of the controlled systems for
different control solutions. The framework will possibly have to be simulative (a Common
Simulative Framework, CSF). The CSF will have to define and include a number of predefined
scenarios of test loads, test networks and controlled system performance indices (these will
include the indices discussed in section 2.3).
In conclusion, there is a real challenge in the control of congestion in communication networks, especially
the ones supporting video, voice and data applications simultaneously. Computational Intelligence
techniques are expected to play a central role, especially in the large scale, geographically distributed
network systems. Hybrids are also expected to supplement these techniques and prove useful, especially in
optimising the overall network objectives.
Problems:
1. Consider an idealised FIFO single server M/M/1 queue, described by a dynamic fluid flow state
model [101]:
x (t )
xD (t ) = − C + λ (t ) +λb(t),
1 + x (t )
where x(t) is the ensemble average of the buffer state (number of packets), C(t) is the ensemble
average of the server rate (packets/sec), λ(t) is the ensemble average of the controlled arrival rate
(packets/sec) and λb(t) is the ensemble average of the interfering (background) traffic, initially set at 0.
Design a fuzzy control system to control the rate of traffic (packets) into the queue.
M/M/1 queue
λb C
x
λ
τ
τ
Control
system
The objective is to regulate the controlled traffic rate, irrespective of any variations in the rate of the
background traffic, so as to maintain the buffer state equal to the reference (say 500 packets for a
physical buffer of 1000). Consider three different propagation time delays τ, and investigate the
controlled system performance for two different sets of fuzzy rules (3 and 5, so that you may interpret
the results). Tune the fuzzy rules and set the linguistic values manually, by observing the performance
of the controlled system. You can obtain such measures of controlled system performance as stability,
rise time, and if the behaviour is cyclic measure of period and amplitude of oscillation. Note that the
fluid flow based model is used to gain insight into the system dynamics. Its closeness to an event
based simulation model of an ATM switch has recently been demonstrated [102]. Critically discuss
the results, noting how the propagation delay influences the controlled system behaviour. Choose a
value of time delay for which the performance of the controlled system is not acceptable, and
investigate whether by increasing the number of rules the performance improves. Observe that the 3
fuzzy rule based system may be likened to the additive-increase, multiplicative-decrease control law.
Comment. Note that you may use any simulation, or mathematical tool to implement and simulate the
system. A sample MATLAB based simulation system can be found in
http://www.cs.ucy.ac.cy/~cspitsil/CIbook/problem.html
2. Repeat 1, but replace the fuzzy controller with a neural based one.
3. Repeat 1, but replace the fuzzy controller with a combination of fuzzy and neural. The fuzzy
controller regulates the flow (as in 1), and the neural network tunes the fuzzy rules of the controller.
book CI congestion-control-final-19-sep-1999.doc 28
A. Pitsillides, A. Sekercioglu
4. Repeat 1, but replace the fuzzy controller with a combination of fuzzy and evolutionary. The fuzzy
controller regulates the flow (as in 1), and the evolutionary algorithm tunes (optimises) the fuzzy rules
of the controller.
5. Compare 1, 2, 3 and 4 in terms of performance and cost of implementation (e.g. complexity of control
law).
6. Repeat 1 to 5, but now include an interfering background traffic:
a. sinusoidally varying with an average value of half the server rate and a peak of one quarter,
b. with reasonable correlation (can be simulated using an AR model, as in [103])
c. self similar traffic
d. traces of real traffic.
7. Repeat 1 to 6, replacing the model by a network simulator, e.g. ns2 and OPNET [102].
REFERENCES:
[1] ITU-T Recommendation I.371 (previously CCITT Recommendation), Traffic Control and Congestion
Control in B-ISDN, March 1993.
[2] C-Q Yang, A.V.S. Reddy, A taxonomy for congestion control algorithms in packet switching networks,
IEEE Network, July/August 1995.
[3] C.H. Papadimitriou, J.N. Tsitsiklis, The complexity of Optimal Queueing network control, to appear in
Mathematics of Operations Research. (Available to download at http://lids.mit.edu/~jnt/exprev.ps)
[4] M. Schwartz, Telecommunication networks: Protocols, modeling, analysis, Addison Wesley, 1988.
[5] A. Pitsillides, A. Sekercioglu, Intelligent Congestion Control Framework for Integrated Services
Communication Networks, TR-99-1, Technical Report, Dep. of Computer Science, University of Cyprus,
January 1999.
[6] R. Braden et al, Recommendations on Queue Management and Congestion Avoidance in the Internet,
RFC2309, April 1998.
[7] K.K. Ramakrishnan, S. Floyd, A proposal to add explicit congestion notification (ECN) to IP, draft-
kksjf-ecn-03.txt, October 1998. (RFC2481, January 1999).
[8] H. Salim, Internet draft-salim-jhsbnns-ecn-00.txt, A proposal for Backward ECN for the Internet
Protocol (IPv4/IPv6), June 1998.
[9] ATM Forum, Traffic management specification version 4.0, Tech. Rep. AF-TM-0056.000, April 1996.
[10] W. Stevens, "TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery
Algorithms", RFC 2001, January 1997.
[11] G. M. Woodruff et al., A congestion control framework for high speed integrated packetized transport,
GLOBECOM'88.
[12] J. Martin, A. Nilsson, The evolution of congestion control in TCP/IP: from reactive windows to
preventive flow control, CACC Technical Report TR-97/11, North Carolina State University, August 1997.
(available on line http://www2.ncsu.edu/eos/info/ece_info/www/ccsp/tech_reports/faculty/nilsson.html)
[13] V. Jacobson, Congestion Avoidance and Control, ACM SIGCOMM88, 1988.
[14] P. Karn, C. Partridge, Improving Round-Trip Time Estimates in Reliable Transport Protocol, ACM
SIGCOMM87, October, 1987.
[15] W. Stevens, TCP/IP Illustrated, Volume 1 The Protocols, Addison-Wesley, 1994.
[16] V. Jacobson, R. Braden, D. Borman, TCP Extensions for High Performance, RFC 1323, May 1992.
[17] L. Zhang, A new architecture for packet switching network protocols, Ph. D. Dissertation, M.I.T. Lab.
Comput. Sci., Cambridge, MA, 1989.
[18] S. Shenker, L. Zhang, D.D Clark, Some observation on the dynamics of a congestion control
algorithm, Computer Communications Review, October 1990, pp. 30-39.
[19] V. Jacobson, Modified TCP congestion avoidance algorithm, message to end2end-interest mailing list,
April 1990.
[20] T.V. Lakshman, Upamanyu Madhow, "The Performance of TCP/IP for Networks with High
Bandwidth Delay Products and Random Loss," IEEE/ACM Transactions on Networking, vol. 5, pp. 336-
350, June 1997.
[21] Z. Wang, J. Crowcroft, A new congestion control scheme: slow start and search (Tri-S), ACM
Computer communications review, October 1994.
book CI congestion-control-final-19-sep-1999.doc 29
A. Pitsillides, A. Sekercioglu
[22] L. Bracmo, S. O.’Malley, L. Peterson, TCP Vegas: New techniques for congestion detection and
avoidance, ACM SIGCOMM94, 1994.
[23] S. Floyd, V. Jacobson, Random Early Detection gateways for congestion avoidance, IEEE/ACM
Transactions on networking, August 1993.
[24] K. K. Ramakrishnan, R. Jain, A Binary Feedback Scheme for Congestion Avoidance in Computer
Networks, ACM Transactions on Computer Systems, Vol. 8, No. 2, pp. 158−181, 1990. (Also see K.K.
Ramakrishnan, R. Jain, A binary feedback scheme for congestion avoidance in computer networks with a
connectionless network layer, ACM SIGCOMM, 1988).
[25] S. Floyd, TCP and Explicit Congestion Notification, ACM Computer Communications Review, vol.
24 no. 5, October 1994, p. 10-23.
[26] R. Braden, D. Clark, S.Shenker, Integrated services in the internet architecture: an overview, RFC
1633, July 1994.
[27] D. Black, S. Blake, M. Carlson, E. Davies, Z. Wang, and W. Weiss, An Architecture for
Differentiated Services , Internet Draft, May 1998.
[28] Y. Bernet, et al., A Framework for Differentiated Services, Document: <draft-ietf-diffserv-framework-
02.txt>, Internet Draft, February, 1999.
[29] S. Kalyanaraman, S. Arora, K. Wanglee, G. Guarriello, D. Harrison, A one-bit feedback enhanced
differentiated services architecture, Internet Draft, Internet Engineering Task Force, Apr. 1998. Work in
progress.
[30] C. Hungkei, A. Leon-Garcia, A Feedback Control Extension to Differentiated Services,
http://www.comm.utoronto.ca/~keith/ietf-id/draft-chow-diffserv-fbctrl- 00.ps.
[31] M. Decina, V. Trecordi, Traffic management and Congestion control in ATM networks, Guest
editorial, IEEE Network, Vol. 6, No. 5, September 1992.
[32] K. Sohraby, L. Fratta, I. Gopal, A. A. Lazar, Congestion Control in High-Speed Packet Switched
Networks, Guest Editorial, IEEE Journal of Selected Areas in Communications, Vol. 9, No. 7, September
1991.
[33] CCITT: Recommendation I.211, B-ISDN Broadband Aspects of ISDN, Geneva, 1991.
[34] A. Pitsillides, Control structures and techniques for Broadband-ISDN communication systems, Ph. D.
Dissertation, Swinburne University of Technology, 1993.
[35] G. Gallassi, G. Rigolio, L. Fratta, ATM: Bandwidth assignment and bandwidth enforcement policies,
IEEE GLOBECOM'89, 49.6, pp. 1788-1793, 1989.
[36] H. Suzuki, T. Murase, S. Sato, T. Takeuchi, A simple and burst-variation independent measure of
service quality for ATM traffic control, 7th ITC Specialist Seminar, 13.1, New Jersey, October 1990.
[37] R. Guerin, H. Ahmadi, M. Naghshineh, Equivalent capacity and its application to bandwidth allocation
in high-speed networks, IEEE Journal of Selected Areas in Communications, Vol. 9, No. 7, Sept. 1991.
[38] E. Rathgeb, Modelling and performance comparison of policing mechanisms for ATM networks,
IEEE JSAC, April, 1991.
[39] J.W. Roberts, Traffic control in the B-ISDN, Computer Networks and ISDN Systems, Vol. 25, 1991.
[40] F. Guillemin, P. Boyer, A. Dupuis, L. Romoeuf, Peak Rate Enforcement in ATM, IEEE
INFOCOM'92, pp. 753-758, Florence, May 1992.
[41] A. DeSimone, Generating burstiness in networks: A simulation study of correlation effects in networks
of queues, Computer Communication Review, vol. 21, January 1991.
[42] G. Ramamurthy, R. S. Dighe, A Multidimensional framework for congestion control in B-ISDN, IEEE
JSAC, December 1991.
[43] P. Boyer, A congestion control for ATM, 7th ITC Seminar, Morristown, NJ, USA, 1990.
[44] D.H.K. Tsang, B. Bensaou, S.T.C. Lam, Fuzzy Based Rate Control for Real-Time MPEG Video, IEEE
Transactions on Fuzzy Systems, accepted for publication, 1998.
[45] D. Mitra, J.B. Seery, Dynamic adaptive windows for high speed networks with multiple paths and
propagation delays, INFOCOM' 91.
[46] N. Yin, M.G. Hluchyj, A dynamic rate control mechanism for source coded traffic in a fast packet
network, IEEE JSAC, September 1991.
[47] O. Aboul-Magd and H. Gilbert, Incorporating congestion feedback in B-ISDN traffic management
strategy, ISS'92 International Switching Symposium, Osaka, Japan, October 1992.
[48] P. Newman, Backward explicit congestion notification for ATM local area networks,
GLOBECOM'93, Houston, USA, December, 1993.
book CI congestion-control-final-19-sep-1999.doc 30
A. Pitsillides, A. Sekercioglu
[49] L. Roberts, Enhanced proportional rate control algorithm (EPRCA), Tech. Rep. AF-TM 94-0735R1,
August 1994.
[50] R. Jain, S. Kalyanaraman, R. Goyal, S. Fahmy, R. Viswanathan, ERICA switch algorithm; a complete
description, ATM FORUM, AF/96-1172, August 1996.
[51] A. Pitsillides, J. Lambert, Adaptive connection admission and flow control: quality of service with
high utilisation, IEEE INFOCOM'94, 13th Conference on Computer Communications, Toronto, Ontario,
Canada, June 1994, pp.1083-1091.
[52] A. Pitsillides, J. Lambert, Adaptive congestion control in ATM based networks: quality of service with
high utilisation, Journal of Computer Communications, 20, 1997, pp. 1239-1258.
[53] A. Pitsillides, A. Sekercioglu, G. Ramamurthy, Fuzzy backward congestion notification (FBCN)
congestion control in asynhronous transfer mode (ATM) networks, IEEE GLOBECOM'95, Global
Telecommunications Conference, Singapore, November 13-17, 1995, pp. 280-285.
[54] A. Pitsillides, A. Sekercioglu, G. Ramamurthy, Effective Control of Traffic Flow in ATM Networks
Using Fuzzy Explicit Rate Marking (FERM), IEEE Journal on Selected Areas in Communications (JSAC),
Volume 15, Issue 2, February 1997, pp. 209-225.
[55] P. P. Mishra, H. Kanakia, A hop by hop rate-based congestion control scheme, ACM SIGCOM,
Baltimore, Maryland, 1992.
[56] H. T, Kung, The FCVC (Flow-Controlled Virtual-Channels) proposal for ATM networks,
International Conference Network Protocols, San Francisco, October, 1993.
[57] C. Douligeris, G. Develekos, A fuzzy logic approach to congestion control in ATM networks, IEEE
International Conference on Communications, ICC '95, pp. 1969-1973, 1995.
[58] A.A. Tarraf, I.W. Habib, T.N. Saadawi, Congestion control mechanism for ATM networks using
neural networks, IEEE International Conference on Communications, ICC '95, pp. 206-210, 1995.
[59] K.W. Fendick, Evolution of controls for the Available Bit Rate, IEEE Communications Magazine, pp.
35-39, November 1996.
[60] C.E. Rohrs, R.A. Berry, S.J. O'Halek, A Control Engineer's Look at ATM Congestion Avoidance,
IEEE Global Telecommunications Conference GLOBECOM'95, Singapore, 1995.
[61] A. Feldmann, A.C. Gilbert, W. Willinger, Data Networks as cascades: Investigating the multifractal
nature of the Internet WAN traffic, SIGCOMM 98, Vancouver, 1998.
[62] A. Feldmann, P. Huang, A.C. Gilbert, W. Willinger, Dynamics of IP traffic: A study of the role of
variability and the impact of control, To appear at ACM/SIGCOMM 1999.
[63] K. J. Astrom, B. Wittenmark, Computer Controlled Systems: Theory and design, Prentice Hall
International (2nd Edition), 1990.
[64] P. Pruthi, A. Popescu, Effect of controls on self similar traffic, 5th IFIP ATM Workshop, Bradford,
UK, July 1997.
[65] L.A. Zadeh, Soft Computing and Fuzzy Logic, IEEE Software, November 1994.
[66] J.C. Bezdek, (1992). On the relationship between neural networks, pattern recognition and
intelligence. International Journal of Approximate Reasoning, pp. 6:85–107. 1992
[67] J.C. Bezdek, What is Computational Intelligence?, in Computational Intelligence: Imitating Life,
edited by J. M. Zurada, R. J. Marks II and C. J. Robinson, IEEE Press, pp. 1-12, 1994.
[68] W. Pedrycz, Computational Intelligence: An Introduction, CRC Press, 1998.
[69] Special issue on Computational Intelligence, IEEE Journal on Selected Areas in Communications
(JSAC), Volume 15, Issue 2, February 1997.
[70] B. Azvine (chairman), ERUDIT Technical committee D on Traffic and Telecommunications:
Application of soft computing techniques to the telecommunication domain, Aachen, Germany, Sept 1997.
[71] E.H. Mamdani, S. Assilian, An experiment with in linguistic synthesis with a fuzzy logic controller,
International journal of Man-Machine studies, 7 pp. 1-13, 1975.
[72] E.H. Mamdani, Twenty years of fuzzy control: Experiences gained and lessons learned, IE3
International conference on fuzzy systems, San Franscisco, pp. 339-344, 1993.
[73] R. Palm, D. Driankov, H. Hellendoorn, Model based fuzzy control, Springer-Verlag, 1996.
[74] Y.C. Liu, C. Douligeris, Static vs. adaptive feedback congestion controller for ATM networks, IEEE
Global Telecommunication Conference, GLOBECOM'95, Singapore, 1995.
[75] D. Jensen, B-ISDN network management by a fuzzy logic controller, IEEE Global
Telecommunications Conference, GLOBECOM '94, pages 799—804, 1994.
[76] B. Kosko. Fuzzy Engineering. Prentice Hall, 1997.
book CI congestion-control-final-19-sep-1999.doc 31
A. Pitsillides, A. Sekercioglu
[77] C. Chang and R. Cheng, Traffic control in an ATM network using fuzzy set theory, IEEE
INFOCOM'94 Conference, Toronto, Canada, pp. 1200-1207, June 1994.
[78] R-G. Cheng, C-J. Chang, Design of a fuzzy traffic controller for ATM networks, IEEE/ACM
Transactions on Networking, 4(3), pp. 460-469, June 1996.
[79] B. Qiu. A predictive fuzzy logic congestion avoidance scheme, IEEE Global Telecommunications
Conference, GLOBECOM'97, vol. 2, pp. 967-971, 1997.
[80] A. Sekercioglu, Fuzzy Logic Control techniques for Asynchronous Transfer mode (ATM) based
multimedia networks, PhD Thesis, Swinburne University of Technology, Submitted. 1999.
[81] T. Takagi, M. Sugeno, Fuzzy identification of systems and its application to modelling and control,
IEEE Transactions on Systems, man, Cybernetics, 15(1), pp. 116-132, 1985.
[82] M. Sugeno, Industrial Applications of Fuzzy Control, North-Holland, 1985.
[83] L. A. Zadeh, Fuzzy Logic, IEEE Computer, April, pp. 83-93, 1988.
[84] M. Sugeno, M. Nishida. Fuzzy Control of a Model Car. Fuzzy Sets and Systems, vol. 10, pp. 105-113,
1985.
[85] Q. Hu, D. W. Petr, C. Braun, Self-tuning fuzzy traffic rate control for ATM networks, IEEE
International Conference on Communications, ICC'96, Dallas, Texas, USA, pp. 424-428, 1996.
[86] R. Jager, Fuzzy Logic in Control, PhD Thesis, Technische Universiteit Delft, 1995.
[87] D. Driankov, H. Hellendoorn, M. Reinfrank, An Introduction to Fuzzy Control, Springer-Verlag,
1993.
[88] A.A. Tarraf, I.W. Habib, A novel neural network traffic enforcement mechanism for ATM networks,
IEEE Journal on Selected Areas in Communications, 12(6), pp. 1088--1096, August 1994.
[89] A.A. Tarraf, I.W. Habib, T.N. Saadawi, Intelligent traffic control for ATM broadband networks, IEEE
Communications Magazine, 33(10), pp. 76--82, October 1995.
[90] A.A. Tarraf, I.W. Habib, T.N. Saadawi, Congestion control mechanism for ATM networks using
neural networks, 1995 IEEE International Conference on Communications ICC '95, pp. 206-210, 1995.
[91] A.A. Tarraf, I.W. Habib, T.N. Saadawi, Reinforcement learning-based neural network congestion
controller, Military Communications Conference MILCOM'95, vol. 2, pp. 668-672. 1995.
[92] A.G. Barto, Reinforcement Learning and Adaptive Critic Methods, in Handbook of Intelligent
Control: Neural, Fuzzy, and Adaptive Approaches, Editors D.A. White and D.A. Sofge, pp. 469-491, Van
Nostrand Reinhold, New York, USA, 1992.
[93] X. Chen, I.M. Leslie, A neural network approach towards adaptive congestion control in Broadband
ATM networks, IEEE Global Telecommunications Conference GLOBECOM'91, pp. 115-119, 1991.
[94] Y.C. Liu, C. Douligeris, Static vs. adaptive feedback congestion controller for ATM networks, IEEE
Global Telecommunications Conference GLOBECOM'95, Singapore, 1995.
[95] Y.C. Liu, C. Douligeris, Rate Regulation with Feedback Controller in ATM Networks-A Neural
Network Approach, IEEE Journal on Special Areas in Communications, vol. 15, no.2, pp. 200-208, Feb.
1997.
[96] J.H. Holland, Adaptation in Natural and Artificial Systems, The University of Michigan Press, 1975.
[97] J.R. Koza, Genetic Programming: On the Programming of Computers by Means of Natural Selection,
MIT Press, 1992.
[98] J.R. Koza, Genetic Programming II: Automatic Discovery of Reusable Programs, MIT Press, 1994.
[99] R. Jagielski, A. Sekercioglu, Dynamic forecast of boundaries of queue in ATM networks, ATNAC'96
Australian Telecommunication Networks Applications Conference, Melbourne, Australia, December 1996.
[100] A. Sekercioglu, A. Pitsillides, G. Egan, "An adaptive fuzzy logic control system based on adapting
the relative rule weights", ANZIIS, Brisbane, Queensland, Australia, Nov 30 - Dec 2, pp.204-208, 1994.
[101] A. Pitsillides, P. Ioannou, D. Tipper, Integrated control of connection admission, flow rate, and
bandwidth for ATM based networks", IEEE INFOCOM'96, 15th Conference on Computer
Communications, San Francisco, USA, March 24-28, pp. 785-793, 1996.
[102] A. Pitsillides, P. Ioannou, L. Rossides, Comparison of a fluid flow based model with OPNET
simulated ATM switch model, Internal report, Department of Computer Science, University of Cyprus,
June 1999.
[103] B. Maglaris, D. Anastassiou, P. Sen, G. Karlsson, J. Robbins, Performance models of statistical
multiplexing in packet video communications, IEEE Transactions on Communications, Vol. 36, No. 7, pp.
834-844, July 1988.
book CI congestion-control-final-19-sep-1999.doc 32