U.S. patent application number 10/921914 was filed with the patent office on 2005-02-03 for efci scheme with early congestion detection.
This patent application is currently assigned to SBC Technology Resources, Inc.. Invention is credited to Li, San-Qi, Sigarto, Sam, Zhao, Yongdong.
Application Number | 20050025052 10/921914 |
Document ID | / |
Family ID | 26699275 |
Filed Date | 2005-02-03 |
United States Patent
Application |
20050025052 |
Kind Code |
A1 |
Zhao, Yongdong ; et
al. |
February 3, 2005 |
EFCI scheme with early congestion detection
Abstract
An adjustable bit rate (ABR) feedback control scheme is provided
where the effects of multiloop delays and high priority traffic
transmission are built into the control model. The data traffic is
filtered by a low pass filter. Then, the low frequency bandwidth of
the filtered traffic is measured and compared to a predetermined
threshold. If the measured value exceeds the threshold, the ABR
traffic flow is reduced. If the measured value is less than the
threshold, the ABR traffic flow is increased. In addition, a
General Prediction Control (GPC) method may be applied to the
control model for optimal performance. An object of the invention
is to minimize the unused link capacity subject to no congestion,
where the ABR traffic is adapted to the low frequency variation of
high priority traffic flow for high efficiency.
Inventors: |
Zhao, Yongdong; (Austin,
TX) ; Li, San-Qi; (Austin, TX) ; Sigarto,
Sam; (Austin, TX) |
Correspondence
Address: |
GREENBLUM & BERNSTEIN, P.L.C.
1950 ROLAND CLARKE PLACE
RESTON
VA
20191
US
|
Assignee: |
SBC Technology Resources,
Inc.
Austin
TX
University of Texas at Austin
Austin
TX
|
Family ID: |
26699275 |
Appl. No.: |
10/921914 |
Filed: |
August 20, 2004 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10921914 |
Aug 20, 2004 |
|
|
|
09488926 |
Jan 21, 2000 |
|
|
|
6826151 |
|
|
|
|
09488926 |
Jan 21, 2000 |
|
|
|
08922457 |
Sep 3, 1997 |
|
|
|
6144639 |
|
|
|
|
60025099 |
Sep 3, 1996 |
|
|
|
Current U.S.
Class: |
370/230 |
Current CPC
Class: |
H04L 12/5602 20130101;
H04L 2012/5635 20130101 |
Class at
Publication: |
370/230 |
International
Class: |
H04L 001/00 |
Claims
What is claimed:
1. A method for detecting congestion in high speed network switches
of a high speed network in order to optimize throughput, the method
comprising: adapting low priority data traffic in response to a low
frequency variation of high priority data traffic; and eliminating
low frequency, high magnitude low priority data traffic
oscillations.
2. The method of claim 1, in which the eliminating further
comprises applying a generalized predictive control (GPC)
method.
3. The method of claim 1, in which the adapting further comprises
detecting a bandwidth threshold requirement.
4. The method of claim 3, in which the detecting further comprises
filtering the high priority data traffic.
5. The method of claim 3, in which the detecting further comprises
filtering the high priority data traffic and the low priority data
traffic.
6. The method of claim 4, in which the filtering further comprises
employing a low pass filter.
7. The method of claim 1, in which the high speed network switches
comprise ATM switches.
8. The method of claim 1, in which the adapting further comprises
adapting a low priority traffic transmission rate to an unused link
capacity.
9. The method of claim 4, in which the filtering occurs
periodically.
10. The method of claim 4, further comprising employing traffic
prediction to reduce a filtering delay effect.
11. A computer readable medium storing a program for detecting
congestion in high speed network switches to optimize throughput,
the program comprising: an adaptation code segment that adapts low
priority data traffic in response to a low frequency variation of
high priority data traffic; and an oscillating code segment that
eliminates low frequency, high magnitude low priority data traffic
oscillations.
12. The medium of claim 11, in which the oscillating code segment
further comprises applying a generalized predictive control (GPC)
method.
13. The medium of claim 11, in which the adapting code segment
further comprises a detecting code segment that detects a bandwidth
threshold requirement.
14. The medium of claim 13, in which the detecting code segment
further comprises a filtering code segment that filters the high
priority data traffic.
15. The medium of claim 13, in which the detecting code segment
further comprises a filtering code segment that filters the high
priority data traffic and the low priority data traffic.
16. The medium of claim 14, in which the filtering code segment
employs a low pass filter.
17. The method of claim 11, in which the high speed network
switches comprise ATM switches.
18. The medium of claim 11, in which the adapting code segment
further comprises adapting a low priority traffic transmission rate
to an unused link capacity.
19. The medium of claim 14, in which the filtering occurs
periodically.
20. The medium of claim 14, further comprising a traffic prediction
code segment that predicts traffic to reduce a filtering delay
effect.
Description
CROSS REFERENCE TO RELATED APPLCATIONS
[0001] This is a continuation of U.S. application Ser. No.
09/488,926, filed Jan. 21, 2000, which is a continuation of
08/922,457, filed Sep. 3, 1997, which is now U.S. Pat. No.
6,144,639, which claims benefit of provisional Application No.
60/025,099, filed Sep. 3, 1996, the contents of all of which are
expressly incorporated herein by reference in their entireties.
BACKGROUND OF THE INVENTION
[0002] 1. Field of the Invention
[0003] The present invention relates to the field of
communications, and to an apparatus and method for congestion
control in high speed networks. More particularly, the present
invention relates to flow control techniques and the flow control
of Available Bit Rate (ABR) traffic in, for example, Asynchronous
Transfer Mode (ATM) networks.
[0004] 2. Background and Material Information
[0005] With advanced ATM technologies, future high speed networks
will be able to support a wide spectrum of applications with
diverse traffic characteristics and service requirements. Using ATM
Forum terminologies, traffic is classified into three classes:
Constant Bit Rate (CBR), Variable Bit Rate (VBR) and Available Bit
Rate (ABR). The CBR and VBR traffic are transmitted in high
priority with sufficient reservation of buffer space and link
capacity; their arrival rate is normally not adaptable to the
changing network environment. In contrast, the ABR traffic is
transmitted in low priority using the remaining buffer space and
link capacity; their arrival rate is constantly adjustable to avoid
network congestion. For low complexity high speed operation, the
end to end flow control approach is found superior to that of link
by link flow control. Further, the traditional window based flow
control is no longer effective in high speed networks and is
replaced by rate based control. In the rate based control design,
the arrival rate of each ABR connection is dynamically adapted
based on network feedback information.
[0006] A simple rate based control scheme uses single bit feedback
information from the network. An example of such a control scheme
is described in M. HLUCHYJ and N. YIN, "On Closed-loop Rate Control
for ATM Networks," Proc. INFO-COM '94, pp.99-108 (1994), the
disclosure of which is expressly incorporated herein by reference
in its entirety. With single-bit feedback, a bit is marked at
switching nodes or destination based on some preset congestion
status. All the ABR sources will then adjust their transmission
rate, based upon the single bit observation. An exemplary
single-bit feedback scheme is called negative polarity feedback,
and is described in J. C. BOLOT and A. SHANKAR, "Dynamic Behavior
of Rate-based Flow Control Mechanisms," ACM Comp. Comm. Review,
Vol. 20, No. 2, pp. 35-49 (1992), the disclosure of which is
expressly incorporated herein by reference in its entirety. In
negative polarity feedback, each ABR source reduces its
transmission rate exponentially once receiving the negative
feedback bit, otherwise each source keeps increasing its
transmission rate linearly.
[0007] As indicated in the study described in R. JAIN et al., "The
OSU Scheme for Congestion Avoidance Using Explicit Rate
Indication," OSU Technical Report, September 1994, the disclosure
of which is expressly incorporated herein by reference in its
entirety, a single-bit rate based control is too slow to react to
the rapidly changing traffic environment and an explicit rate
control scheme should be designed to enhance control performance.
One scheme was proposed by JAIN and his co-workers at Ohio State
University. In the OSU scheme, a load factor is periodically
computed at the congested node, the load factor being the ratio of
present aggregate ABR rate to its desired rate. The rate of each
individual ABR source in the next period is then simply equal to
its current rate divided by the load factor. For example, if the
aggregate rate is only one half of its desired rate, each source
rate will be doubled in the next period.
[0008] The major advantage of most proposed single bit and explicit
rate control schemes is their simplicity in implementation.
However, to achieve such simplicity neither a dynamic control model
nor round trip multiloop delays are considered in the above noted
schemes. Yet, there is a price for simplicity which should be
considered. First, most existing control schemes induce significant
low frequency high magnitude oscillations in each feedback ABR
control loop, where the oscillation frequency is directly
associated with the round trip delay of each loop. It is
intuitively clear that such inherent low frequency traffic
oscillations will cause substantial oscillations in queuing
process. As a result, a large buffer capacity has to be reserved at
each node to absorb the ABR traffic oscillations. Second, the
stability of the control schemes is highly sensitive to the high
priority CBR/VBR traffic characteristics.
[0009] Another problem with most existing attempts on ABR feedback
control design is they generally neglect the effect of multiple
feedback loop delays and high priority traffic transmission. With
multiloop delays, the already existing low frequency high magnitude
oscillations of ABR traffic within each loop can become much worse.
With high priority traffic transmission, the original control
stability conditions can be ruined.
[0010] The closed loop stability problem is a major issue for any
feedback control scheme. Its solution requires the knowledge of
round trip delays of all ABR connections. In fact, the round trip
delay is the main obstacle that prevents the prior systems from
achieving good congestion control performance; especially within a
wide area network, the round trip delay of individual ABR
connections can be vastly different. For systems with multiple
delays, their feedback controller must be carefully designed to
provide closed loop stability, otherwise the systems can easily
become unstable.
[0011] The study in L. BENMOHAMED and S. MEERKOV, "Feedback Control
of Congestion in Store-and-For-ward Networks: The Described Case in
Single Congestion Node," IEEE/ACM Trans. Networking, Vol. 1, No. 6,
December 1993, pp. 693-708, the disclosure of which is expressly
incorporated herein by reference in its entirety, considers round
trip delays and analyzes the closed loop stability of an explicit
rate control scheme in the absence of high priority traffic. In the
disclosed scheme, a fluid flow queuing model is adopted and the
queue size at the bottleneck node is used as the feedback
information for the ABR traffic adaption. The feedback controller
in BENMOHAMED et al. is designed only with the requirement of
closed loop stability. No other performance criteria such as steady
state error is considered.
[0012] In existing binary bit Available Bit Rate (ABR) congestion
control schemes, nodal congestion is often detected by comparison
of present queue size with a predetermined threshold. However, the
queue threshold detection schemes have disadvantages. First, no
congestion can be detected until the queue is longer than the
threshold. Second, although the congestion is readily removed as
the queue starts dropping, the detection of when the queue dropped
below the threshold has unnecessarily extended the congestion
period. The delayed detection followed by unnecessary extension of
congestion periods significantly increases the oscillation period
as well as the oscillation magnitude of ABR traffic within the
network, causing a large consumption of buffer resources.
[0013] Therefore, despite the advances, congestion control of high
speed network switches, such as ATM switches, is still inadequate.
Large buffers are required to handle the overflow of data due to
inaccurate detection of the network congestion. Moreover, multiple
feedback loop delays and high priority traffic transmission has
been neglected in existing feedback control designs. Thus, there
exists a need for a system which accurately detects the congestion
in an ATM network in order to optimize the throughput of ATM
networks by controlling the flow of the ABR traffic.
SUMMARY OF THE INVENTION
[0014] In view of the foregoing, the present invention, through one
or more of its various aspects, embodiments and/or specific
features or subcomponents, is thus intended to bring about one or
more of the objects and advantages as specifically noted below.
[0015] A general object of the present invention is to provide an
apparatus and method for congestion control of high speed network
switches, including ATM switches.
[0016] A further object of the invention is to provide a system
which is capable of accurately detecting congestion of high speed
network switches, such as ATM switches, in order to optimize the
throughput of the network by controlling the flow of traffic.
[0017] According to an aspect of the invention, the link capacity
requirement of CBR/VBR traffic is captured by its present filtered
rate so that the ABR transmission rate will be periodically adapted
to the remaining link capacity. However, because of multiloop delay
and the CBR/VBR traffic variation, the link capacity will not be
fully utilized. Another object of the present invention is
therefore to minimize the unused link capacity. An advantage of the
present invention is it eliminates unnecessary highly frequent
adaptations of ABR traffic rate as found in most existing control
schemes, which are caused either by the high frequency variation of
CBR/VBR traffic or by the rapid change of queue congestion status.
Because of the filtering, the ABR traffic varies very smoothly
along with the slow time variation of the low frequency CBR/VBR
traffic.
[0018] Another object of the invention is to provide an explicit
rate ABR traffic control scheme by using a process control design
method, referred to herein as Generated Prediction Control (GPC),
to provide a closed loop stable controller with linear quadratic
optimal performance. An advantage of the present invention is that
multiloop delays of ABR connections are built into the design of
the control model. The low frequency high magnitude oscillations of
ABR traffic flow, as usually found in most proposed ABR control
schemes, are therefore eliminated. As a result, not only is the
buffer capacity requirement for ABR traffic substantially reduced,
but the control stability condition is also significantly
improved.
[0019] In a preferred embodiment, a new explicit rate control
scheme based on the results of frequency domain analysis of
multimedia traffic is provided. Examples of frequency domain
analysis of multimedia traffic can be found in S. Q. LI and C.
HWANG, "Queue Response to Input Correlation Functions: Continuous
Spectral Analysis," IEEE/ACM Trans. Networking, Vol. 1, No. 6,
December 1993, pp. 678-692 (LI (I) et al. hereinafter), and S. Q.
LI, S. CHONG, and C. HWANG, "Link Capacity Allocation and Network
Control by Filtered Input Rate in High Speed Networks," IEEE/ACM
Trans. Networking, Vol. 3, No. 1, February 1995, pp. 10-15 (LI (II)
et al. hereinafter), the disclosures of which are expressly
incorporated herein by reference in their entireties. The inventors
have found that the link capacity required by input traffic at each
node is essentially captured by the traffic's low frequency
characteristics. In other words, no congestion occurs at the node
if the control design guarantees that the aggregate CBR/VBR/ABR
traffic rate, filtered in a low frequency band, never exceeds the
link capacity. All the high frequency traffic is absorbed and
smoothed out via limited buffering. Further, the filtered traffic
rate is significantly less than its original non-filtered rate.
[0020] Another object of the present invention is to provide
significant improvement of ABR traffic performance by replacing the
queue threshold detection with the bandwidth threshold detection,
using an Explicit Forward Congestion Indication (EFCI) scheme.
According to an aspect of the invention, a modified EFCI scheme is
provided, which is called EFCI-ECD scheme, where ECD refers to
early congestion detection. A simulation study has shown about a
60% savings in buffer capacity for the EFCI-ECD scheme to achieve
the same throughput as the original EFCI scheme, providing the same
set of source control parameters. The amplitude of the ABR traffic
oscillation is reduced by about 50%. Note that the traffic
filtering operation can easily by implemented by digital signal
processing (DSP) chips. Using today's technology, a common DSP chip
only costs a few U.S. dollars whereas the high speed SRAM chips for
buffer capacity are relatively much more expensive. Moreover, a
single DSP chip can be shared by many links for multiple traffic
measurement purposes.
[0021] Thus, there are at least three major advantages for the
EFCI-ECD scheme of the present invention: (1) none of the existing
EFCI protocols at source and destination needs to be changed; (2)
the buffer capacity required at each switching node is
substantially reduced; and (3) the ABR traffic oscillation is much
reduced.
[0022] The present invention is described as a traffic congestion
control apparatus for use in a network having a plurality of types
of data traffic. The data traffic comprises high priority traffic
and low priority traffic. The network has a plurality of links
through which the data traffic flows, each link being susceptible
to data traffic congestion. The apparatus has a processor which
comprises a filter through which said data traffic flows, and a
sampler which periodically measures a characteristic of the data
traffic filtered by said filter. The measured characteristic
indicates a present link capacity requirement of the filtered
traffic. A flow control system for adjusting a flow rate of the low
priority traffic is also provided. The apparatus also comprises a
comparator which compares the measured characteristic with a
predetermined threshold. The comparator sends a first signal to the
flow control system when the measured characteristic exceeds the
predetermined threshold to indicate link congestion. The comparator
sends a second signal to the flow control system when the measured
characteristic is below the predetermined threshold to indicate
unused link capacity. The flow control system reduces the
transmission rate of the low priority traffic in response to
receipt of the first signal and increases the transmission rate of
the low priority traffic in response to receipt of the second
signal.
[0023] The traffic congestion control apparatus may be used in an
asynchronous transfer method (ATM) network.
[0024] In a preferred embodiment, the filter is a low pass
filter.
[0025] In another embodiment, a method for controlling congestion
in a network is provided. The network has high priority data
traffic and low priority data traffic, the low priority traffic
being transmitted by a plurality of data inputs. The network
comprises a plurality of links through which the data traffic
flows. The method comprises filtering the data traffic and then
periodically repeating the following steps: sampling the filtered
traffic to estimate a present link capacity required by the high
priority traffic; determining the remaining link capacity;
calculating a transmission rate for each data input to minimize an
unused link capacity of each link subject to no congestion; and
adjusting a transmission flow rate of each data input to match the
calculated transmission rate.
[0026] The above listed and other objects, features of advantages
of the present invention will be more fully set forth below.
BRIEF DESCRIPTION OF THE DRAWINGS
[0027] The present invention is further described in the detailed
description which follows, by reference to the noted plurality of
drawings by way of non-limiting examples of preferred embodiments
of the present invention, in which like reference numerals
represent similar parts throughout the illustrations, and
wherein:
[0028] FIG. 1 is a block diagram of an exemplary ATM switch, with
input buffer switch architecture, according to an aspect of the
present invention;
[0029] FIGS. 2(a) and 2(b) are plots of a 28-sec JPEG video sample
sequence and the same 28-sec JPEG video sample sequence as filtered
by non-causal low-pass filtering;
[0030] FIGS. 3(a) and 3(b) illustrate ABR transmission rates
without filtering delay, where FIG. 3(a) illustrates the first 5
groups, and FIG. 3(b) illustrates the second 5 groups of 10 groups
of video sources;
[0031] FIGS. 4(a) and 4(b) are graphs of buffer occupancy and
unused link capacity;
[0032] FIG. 5 is a graph of a filtered 28-sec JPEG video sequence
which has been filtered by causal low pass filtering;
[0033] FIGS. 6(a) and 6(b) illustrate the ABR transmission rate
with a 70 ms filtering delay of the first 5 groups and the second 5
groups of 10 groups of video sources;
[0034] FIGS. 7(a) and 7(b) are graphs of buffer occupancy and
remaining link capacity with filtering delay;
[0035] FIG. 8 is a graph of buffer occupancy at 80% link capacity
utilization;
[0036] FIGS. 9(a) and 9(b) illustrate the ABR transmission rates
for the first 5 groups and the second 5 groups of 10 groups of
video sources with adaptation to balancing of the ABR
connections;
[0037] FIG. 10 is a graph of buffer occupancy behavior with random
round trip delays at 99% link capacity utilization;
[0038] FIG. 11 is a graph of buffer occupancy behavior with
aggregation of ten high priority JPEG sources with filtering;
[0039] FIG. 12 is a graph of buffer occupancy behavior with
aggregation of ten high priority MPEG sources with filtering;
[0040] FIG. 13 is a graph of buffer occupancy capacity for ten JPEG
without filtering;
[0041] FIG. 14 is a graph of buffer occupancy capacity in presence
often MPEG video sources without filtering;
[0042] FIG. 15 is a graph of aggregate ABR traffic showing a
comparison between the GPC method of the present invention and the
load factor approach of the prior art;
[0043] FIG. 16 is a graph of a single group of ABR traffic in the
presence of high priority traffic using the load factor approach of
the prior art;
[0044] FIG. 17 is a plot of congestion detection comparing the
bandwidth threshold scheme of the present invention and a queue
threshold scheme of the prior art;
[0045] FIG. 18 is a block diagram of an exemplary network
architecture, with a single congestion link and ten ABR connection
groups, in accordance with an aspect of the present invention;
[0046] FIGS. 19(a) and 19(b), respectively, are plots of buffer
occupancy of the EFCI and EFCI-ECD schemes for the 10 segment MPEG
case;
[0047] FIGS. 20(a) and 20(b), respectively, are plots of buffer
occupancy of the EFCI and EFCI-ECD schemes for the 100 segment-MPEG
case;
[0048] FIG. 21 is a plot of the aggregated ABR traffic rate for the
EFCI-ECD and EFCI schemes over a period of one second;
[0049] FIG. 22 is a plot showing the effect of the queue length at
time t on maximum/average queue for the EFCI scheme;
[0050] FIG. 23 is a plot showing the comparison of maximum/average
queue at different utilization rates;
[0051] FIG. 24 is a comparison of maximum/average queue for
different additive increase rates; and
[0052] FIG. 25 is a block diagram of an exemplary feedback control
design of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[0053] Referring now to the accompanying drawings, FIG. 1
illustrates a block diagram of an asynchronous transfer method
(ATM) switch with input buffer switch architecture. Although actual
implementation of the explicit forward congestion indicator, early
congest detection (EFCI-ECD) scheme of the present invention
depends on the type of ATM switch fabric, for purposes of
illustration, the features of the invention will be described with
reference to an input buffer switch architecture. Of course, the
same principles of the invention will apply for an output buffer
switch architecture or a shared buffer switch architecture.
Further, although the various features of the invention are
described herein with reference to ATM switches, the various
features and aspects of the invention may also be applied to other
types of high speed network switches.
[0054] FIG. 1 shows a block diagram of an ATM switch 10 utilizing
the EFCI-ECD scheme of the present invention. Incoming ATM cells
arrive at each input port 1, and then are temporarily stored in an
input buffer 2. Each input port 1 has one input or queue buffer 2
to receive the incoming ATM cells. A switch medium 3 directs the
ATM cells to an appropriate output port 5 based on a predetermined
routing derived from the header information contained within a
particular ATM cell to be routed. The switch medium 3 may be, for
example, a cross bar, or TDM (Time Division Multiplexing) bus and
the queue buffer 2 may comprise a SRAM or other memory
component.
[0055] A processor 4 is provided, which may comprise one or more
DSPs (digital signal processors) and/or general purpose processors.
The DSPs and/or general purpose processors of the processor 4 may
be any suitable combination or set of well known DSPs or general
purpose processors, such as those available from Texas Instruments,
Analog Devices or Motorola. Where one DSP is provided, each of the
input ports 1 is controlled by a single processor 4. If multiple
DSPs are provided, each of the input ports 1 may be controlled by
its own dedicated processor 4. In the multiple DSP configuration, a
master controller (not shown) may be provided for coordination,
control and synchronization of each of the DSPs. The processor 4 is
programmed to execute the EFCI-ECD method of the invention, as
described below. The functions of the processor 4, however, are not
limited to performing the described EFCI-ECD scheme, and may also
include other functions such as process call setup, and policing
input traffic, etc. Further, although a DSP has been described as
performing the functions of the processor 4, an application
specific integrated circuit (ASIC) may be used in place of a DSP,
which could be designed specifically to execute, for example, the
low pass filtering of the EFCI-ECD scheme.
[0056] To explain the operation of the ATM switch 10, the
processing for one input port 1 will now be described. The
processor 4 counts the number of arrival ATM cells from each
virtual channel of the input port 1 for a time interval T. Dividing
the cell arrival counts by the time interval T yields the input
arrival rate of the virtual channel. The arrival rates of all
virtual channels of the input port 1 is calculated by the processor
4 at each time interval T.
[0057] A pre-designed low pass filtering function may be stored in
the processor 4. Further, the processor 4 may be programmed by well
known techniques, i.e., storing the denominator and numerator
coefficients in a ROM or RAM, and downloading the coefficients on
power up. By inputting the arrival rates of all CBR/VBR/ABR virtual
channels to the low pass filtering function of the processor 4,
filtered CBR/VBR/ABR traffic arrival rates are obtained.
[0058] To detect a congestion condition at the input port 1, a
total of the filtered CBR/VBR/ABR virtual channel traffic arrival
rates is calculated by the processor 4, and if the total rate is
greater than the link speed of the input port, the link is
determined to be congested. Otherwise, the link is determined not
to be congested. Alternatively, filtered CBR/VBR arrival rates may
be used to determine if the link is congested.
[0059] If the link is determined to be congested, the EFCI bit of
the ABR data cell is set to indicate the congestion condition. Once
the EFCI bit is set, the congestion condition can be alleviated
using well known techniques.
[0060] 1. Dynamic Model of the Congested Node
[0061] In this section, network parameters are defined and the
dynamic equation of the present invention is derived. The object is
to minimize the unused link capacity in steady state subject to no
congestion.
[0062] 1.1 Network Parameters
[0063] Assume a single bottleneck link L within the network. There
are M number of ABR connections via link L. Denote the set of M
source-destination pairs by
S={(s,d).sub.1, . . . (s,d).sub.M}
[0064] Introduce the following notations for further
discussion:
[0065] r(t): aggregate high priority CBR/VBR traffic arrival rate
in link L at time t;
[0066] u.sub.k(t): ABR traffic transmission rate from the source
destination pair (s,d).sub.k at time t;
[0067] t.sub.c: control update period;
[0068] t.sub.k: round trip delay of the k's source-destination
pair;
[0069] x(t): unused link capacity.
[0070] In the congestion control apparatus and method of the
present invention, u.sub.k(t), .A-inverted.k, are the input
variables, r(t) is the external disturbance, and x(t) is the
controlled variable. The objective is to minimize x(t) in steady
state subject to no congestion.
[0071] The round trip delay t.sub.k consists of the following
components: the packetization and depacketization delay,
propagation delay, switch processing delay and queuing delay. As
described in M. D. PRICIKER, "Asynchronous Transfer Mode--Solution
for the B-ISDN, Ellis Horwood Press (1993), the disclosure of which
is expressly incorporated herein by reference in its entirety, only
the queuing delay is random, which is expected to be less than ten
percent of the overall round trip delay in wide area networks. For
simplicity, the control design assumes that each ABR connection has
a fixed round trip delay.
[0072] In every t.sub.c second, the controller at node L estimates
the link capacity requirement of the present r(t) via the low pass
filter operation. The remaining link capacity is then properly
divided among all ABR connections by the congestion control
algorithm. For practical control implementation, each round trip
delay needs to be quantized in units of t.sub.c: 1 t k = n k x t c
+ k , for k < t c 2 ; k = 1 , , M ,
[0073] where .epsilon..sub.k represents the quantization error and
n.sub.k represents the number of connections in group S.sub.k
(described below). By approximation,
t.sub.k.apprxeq.n.sub.k.times.t.sub.c, for k=1, . . . ,M.
[0074] Further, the number of ABR connections at each node in wide
area networks, M, tends to be very large. Since M is the size of
the input vector, a large input gain matrix may be obtained. The
control solution with large M may not be feasible in real time
operation. One alternative approach is to partition S into subsets
by the round trip delay grouping. That is, all connections with
round trip delay equal to kt.sub.c will be grouped into subset
S.sub.k. There are N such subsets:
S.sub.1, S.sub.2, . . . S.sub.N.
[0075] In practice, N may not be very large. For example, taking
N=10 allows the maximum round trip delay equal to 10t.sub.c. If
t.sub.c=7 ms, the maximum round-trip delay 70 ms is longer than the
United States coast to coast round trip propagation delay. The
aggregated ABR transmission rate in each subset S.sub.k is denoted
by u.sub.k. The grouped input vector is therefore described by:
u=[u.sub.1, u.sub.2, . . . , u.sub.k, . . . , u.sub.N].sup.T.
[0076] Once u is computed by the control algorithm, its individual
u.sub.k will be evenly divided among all the ABR connections in
S.sub.k. Such a division within each subset S.sub.k is completely
separate from the computation of u; its execution only requires the
present number of ABR connections in S.sub.k.
[0077] 1.2 Congestion Control Model
[0078] Because of the discrete time control operation, all system
variables r(t), u.sub.k(t) and x(t) are changed into r(n),
u.sub.k(n) and x(n) in units of t.sub.c, respectively. The system
dynamic equation can then be expressed by 2 x ( n + 1 ) = x ( n ) +
( r ( n ) - r ( n + 1 ) ) + , k = 1 N b k ( u k ( n - n k - 1 ) - u
k ( n - n k ) ) , ( 1 )
[0079] where r(n)-r(n+1) represents the one-step variation of
high-priority traffic and u.sub.k(n-n.sub.k-1)-u.sub.k(n-n.sub.k)
is the one-step variation of ABR traffic. Note that n.sub.k in (1)
takes account of the n.sub.k-step loop delay on the k-th connection
group. Further define b.sub.k=0 for empty subset S.sub.k and
b.sub.k=1 otherwise. In wide area networks, each subset S.sub.k is
expected to contain a certain number of active ABR connections. The
chances for S.sub.k to become empty are therefore negligible. One
can generally assume
b.sub.1= . . . =b.sub.k= . . . =b.sub.N=1.
[0080] In the system disclosed herein, the controller will keep
track of the number of ABR connections in each subset S.sub.k. For
fairness, the rate assigned to each subset should be proportional
to the number of its connections. For the sake of simplicity,
assume the fairness to be achieved is given by
u.sub.1(n).apprxeq.u.sub.2(n).apprxeq. . . .
.apprxeq.u.sub.N(n).
[0081] The fairness problem will be discussed in further detail
below.
[0082] To convert the dynamic equation (1) to its Z-domain
expression, define
A(z.sup.-1)=1-z.sup.-1,
u=[u.sub.1, . . . u.sub.N].sup.T,
B(z.sup.-1)=[b.sub.1(z.sup.-1), . . . b.sub.N(z.sup.-1)],
b.sub.k(z.sup.-1)=z.sup.-k(z.sup.-1-1), .A-inverted.k. (2)
[0083] Applying them to (1) results in:
A.sub.(z.sup.-1)x(n+1)=B(z.sup.-1)u(n)+(z.sup.-1-1)r(n+1), (3)
[0084] For control purposes,
x(n+1)=P(z.sup.-1)u(n)-r(n+1), (4)
[0085] where 3 P ( z - 1 ) = B ( z - 1 ) A ( z - 1 )
[0086] is the transfer function of the controlled system.
[0087] The control input u(n) must be non-negative, i.e.,
u.sub.k(n).gtoreq.0, .A-inverted.k. Since r(t) is highly
unpredictable, r(n) in the system design is treated as an external
disturbance with two main advantages. One is for simplicity of the
control model whose complexity order is independent of the
disturbance. The other is for stability of the control model where
the stability condition is also independent of the disturbance.
[0088] The frequency domain queuing analysis in LI (II) et al.
indicates that the momentary link capacity requirement of r(t) is
essentially captured by its filtered low frequency rate denoted by
r.sub.L(t). In other words, it is the low frequency behavior of
r(t) that can possibly drive the nodal congestion; the high
frequency portion of r(t) is perfectly transmitted using limited
buffering. For effective congestion control, replace r(n) by
r.sub.L(n) in the dynamic equation (1): 4 x L ( n + 1 ) = x L ( n )
+ ( r L ( n ) - r L ( n + 1 ) ) + k = 1 N b k ( u k ( n - n k - 1 )
- u k ( n - n k ) ) ( 5 )
[0089] where r.sub.L(n) is the filtered r(n) in a properly selected
low frequency band. A detailed discussion of the cut off frequency
selection for filtering can be found in LI (11) et al., and J. D.
PRUNESKI and S. Q. LI, "The Linearity of Low Frequency Traffic
Flow: An Intrinsic I/O Property in Queuing System," Proc. IEEE
Infocom '95 Conference, April 1995, pp. 613-623, the disclosure of
which is expressly incorporated herein by reference in its
entirety. Therefore, x.sub.L(n) corresponds to the unused low
frequency link capacity. Similar to (4), the low frequency dynamic
equation in the Z-domain is:
x.sub.L(n+1)=P(z.sup.-1)u(n)-r.sub.L(n+1). (6)
[0090] The difference between the original dynamic model (4) and
the low frequency one (6) is given by:
x(n)-x.sub.L(n)=r(n)-r.sub.L(n),
[0091] where r(n)-r.sub.L(n) represents the high frequency portion
of r(n). Since the transport of high frequency traffic does not
require extra link capacity, the two models are basically
equivalent except that the control of u(n) by x.sub.L(n) is much
simpler and more effective than that by x(n) as described in the
following.
[0092] The major advantages of using r.sub.L(n) are high stability,
high efficiency and low complexity. Without filtering, the
high-frequency variation of r(n) could cause the unnecessary high
frequency fluctuations in the input rate u(n). As a result, all the
ABR sources would have to be designed with complexity for frequent
adaptations of their transmission rate, which after all is
ineffective to reduce the nodal congestion. Further, the high
frequency variation of r(n) would easily mislead the direction of
link capacity adaptation, which can cause a substantial reduction
of link efficiency and even destroy the whole stability condition
as explained below. Similar problemsexist when the queue length at
node L is chosen to be the controlled variable as in BOLOT et al.,
and BENMOHAMED et al. Since the queue length is not linearly
related to the link capacity assignment, it is always difficult to
design a link capacity allocation algorithm without inducing the
unnecessary ABR rate fluctuations. In contrast, because of the
filter operation in the present invention, all the ABR transmission
rates change smoothly along with the slow time variation of the low
frequency high priority traffic.
[0093] Accordingly, one can avoid congestion by ensuring the low
frequency link capacity constraint 5 k = 1 N u k ( n ) + r L ( n )
C , n ,
[0094] where C represents the link capacity at node L. The control
objective is to minimize x.sub.L(n) is steady state subject to no
congestion.
Blank
[0095] 2. Feedback Control Design
[0096] The feedback loop control is achieved through the adaptation
of the ABR transmission rate u(n) to the unused link capacity
x.sub.L(n). In other words, a feedback controller design
K(z.sup.-1) is need such that the ABR input rate vector u(n) is
adapted by
u(n)=-K(z.sup.-1)x.sub.L(n). (7)
[0097] FIG. 25 illustrates, in block diagram form, an exemplary
feedback control design of the invention, where the notations, u,
x, x.sub.L and r are used to represent the Z-transform of u(n),
x(n), x.sub.L(n) and r(n). Substituting u(n) into (4),
x.sub.L(n+1)=-P(z.sup.-1)K(z.sup.-1)x.sub.L(n)-r.sub.L(n+1),
[0098] Let F(z.sup.-1) be the low pass filter of the high priority
traffic,
r.sub.L(n)=F(z.sup.-1)r(n).
[0099] Let 6 S ( z - 1 ) = 1 1 + P ( z - 1 ) K ( z - 1 )
[0100] Resulting in:
u(n)=-K(z.sup.-1)S(z.sup.-1)r.sub.L(n). (8)
[0101] Hence, the ABR transmission rate under this feedback control
law contains no high frequency component.
[0102] Notice that many control schemes can be applied here for the
solution K. In accordance with an aspect of the invention, a
Generalized Predictive Control (GPC) scheme may be utilized for its
simplicity in real time implementations and flexibility for systems
with different orders. A GPC method was proposed in CLARK et al.
and it has been applied to real chemical engineering control
problems. An example of a GPC method, as applied to chemical
engineering control, is described in D. W. CLARK, C. MOTHADI and P.
S. TUFFS, "Generalized Predictive Control--Part I, The Basic
Algorithm," Automatica, Vol. 23, No. 2, pp. 137-148 (1987), the
disclosure of which is expressly incorporated herein by reference
in its entirety.
[0103] The GPC method of the present invention may be used to solve
the ABR feedback control problem. There is a close relation between
GPC and the Linear Quadratic Regulation (LQR) problem. A brief
description of the GPC method follows.
[0104] A preferred technique for designing the GPC controller is to
solve the so called Diophantine equation which is in polynomial
form:
Ek(z.sup.-1).DELTA.(z.sup.-1)A(z.sup.-1)+Fk(z-1)z.sup.-k=1 (9)
[0105] where k is an integer. A is the original control system
descriptor, which in this case is given by A(z.sup.-1)=1-z.sup.-1
defined in (2). The integral function .DELTA.(z.sup.-1)=1-z.sup.-1
is embedded in the controller to ensure the zero-error performance
in steady state, i.e., lim.sub.n.fwdarw..infin.x.sub.L(n)=0, when
r.sub.L(n+1)-r.sub.L(n) becomes a step function (the worst case
external disturbance). E.sub.k and F.sub.k are the polynomial
solution at each given k. There are many ways to solve (9). One
efficient algorithm can be found in CLARK et al. The solution
F.sub.k and E.sub.k are related to A and k, independent of the
system variables x.sub.L, u and r.sub.L, and can be obtained by off
line computation.
[0106] Multiplying x.sub.L(n+k) on both sides of (9) and then
replacing A(z.sup.-1)x.sub.L(n+k) by B(z.sup.-1)u(n+k-1) from (3),
we readily obtain
x.sub.L(n+k)=E.sub.k(z.sup.-1).DELTA.(z.sup.-1)B(z.sup.-1)u(n+k-1)+F.sub.k-
(z.sup.-1)x.sub.L(n). (10)
[0107] Hence, given the current unused link capacity x.sub.L(n),
its k-step ahead value, x.sub.L(n+k), can be computed from the
(k-1) step ahead input rate u(n+k-1). Taking k=1, . . . , H for a
total of H steps, define 7 X L ( n + 1 ) = [ x L ( n + 1 ) x L ( n
+ H ) ] R H ( 11 ) U ( n ) = [ u ( n ) u ( n + H - 1 ) ] R HN , (
12 )
[0108] and further introduce a weighting matrix A 8 = 1 2 H [ d g d
g d g ] R HN .times. HN , ( 13 )
[0109] where N is the number of source destination groups S.
.lambda..sub.k, which must be positive, is the penalty factor for
the adaptation of the input rate u.sub.k, .A-inverted.k.
[0110] Define the optimal criterion by
J[U(n)]=X.sub.L.sup.T(n+1)X.sub.L(n+1)+U.sup.T(n).LAMBDA.U(n).
(14)
[0111] where
[0112] X.sub.L.sup.T(n+1)X.sub.L(n+1) represents the accumulation
of squared unused link capacities in consecutive H steps. As in
most control analyses, the primary reason to include
U.sup.T(n).LAMBDA.U(n) in (14) is to ensure the non-singularity of
the control problem. It is also used to achieve the fairness for
link capacity allocation among the N groups of ABR connections,
through the weighting matrix .LAMBDA.. Increasing penalty factor
.lambda..sub.k has the effect of reducing the k-th group
transmission rate u.sub.k.
[0113] The control problem is therefore formulated as to find the
solution U(n) for the minimization of J[U(n)] at each n. Although
U(n) contains H step control inputs [n(n), . . . , u(n+H-1)], only
the most current one u(n) is used. From the solution u(n) and the
present disturbance r.sub.L(n+1), the system dynamic equation (6)
is used to compute the next step output x.sub.L(n+1). Recursively,
from x.sub.L(n+1) the above control procedure is used to compute
the next step solution u(n+1).
[0114] Here the basic steps for the computation of u(n) are briefly
outlined. Refer to CLARK et al. for the detailed computation
procedure. Rewrite (10) in terms of x.sub.L(n+1) and U(n) after
taking the H consecutive steps:
X(n+1)=GU(n)+f(n) (15)
[0115] where G is a lower triangular matrix with
G.epsilon.R.sup.NH.times.- NH From (10) the matrix G is expressed
from the combination of E.sub.k and F.sub.k, .A-inverted.k.
Similarly, the vector f(n) can be expressed as a function of u(n-1)
and x.sub.L(m) for some m<n. Substituting (15) into (14),
results in: 9 J U = 2 g T ( GU ( n ) + f ( n ) ) + 2 U ( n ) . ( 16
)
[0116] The optimal solution U.sub.opt is derived at 10 J U = 0 :
U.sub.opt(n)=[.LAMBDA.+G.sup.TG].sup.-1G.sup.Tf(n),
[0117] While the matrix G can be singular, it is the weighting
matrix .LAMBDA. that ensures the non-singularity of
(.LAMBDA.+G.sup.TG). The one step input vector u(n) is then
obtained by 11 u ( n ) = 1 ( z - 1 ) Q 1 T U opt ( n ) , ( 17 )
[0118] where Q.sub.1=[I.sub.N, 0, . . .
0].epsilon.R.sup.NH.times.NH takes the first component of U(n) and
.DELTA.(z.sup.-1)=1-z.sup.-1 is the integral embedded in the
controller. Note that an equivalent closed form of the feedback
controller K(z.sup.-1) can be found in a similar way. The only
computational complexity of the control is to derive the inverse
matrix [.LAMBDA.+G.sub.TG].sup.-1. Since G is fixed for a given
control system, the inverse matrix is computed each time when
.LAMBDA. is meant to change. This occurs when the number of ABR
connections in each group is significantly changed, so that a new
.LAMBDA. is required to achieve the fairness. In practice, the
number of ABR connections can be requantified in each group and a
set of possible A's can be designed. The solution
[.LAMBDA.+G.sup.TG].sup.-1G can then be computed in advance and
stored in the system for real time operation.
[0119] The fairness performance is an important issue for traffic
management. Recall that the transmission rate of each individual
ABR connection is assigned at two levels. At the first level, the
total available link capacity is properly divided among
[u.sub.1,u.sub.2, . . . , u.sub.N], where the relative magnitude of
u.sub.k should be proportional to the number of ABR connections in
the k-th group. At the second level, u.sub.k is evenly divided
among all the ABR connections of the group. With the GPC control
scheme, the relative magnitude of u.sub.k's can be tuned by
adjusting the relative value of the penalty factor
.lambda.'s.sub.k. Regrettably, there is no direct quantitative
relation between .lambda..sub.k and u.sub.k. The design of
.lambda..sub.dg is not only related to the numbers of ABR
connections among the N groups, but also dependent on their round
trip delay difference. In practice, some rules of thumb may be
observed. For example, one can set 12 k k + 1 2
[0120] to achieve u.sub.k.apprxeq.u.sub.k+1, given that the round
trip delay is approximated by kt.sub.c and (k+1)t.sub.c with
respect to the k-th and (k+1)-th groups. The off line trial and
error approach can always be adopted here by adjusting
.lambda..sub.dg till the fairness of u is obtained. The selection
of .lambda..sub.dg is independent of the high-priority traffic.
[0121] 3. EFCI-ECD Control Scheme
[0122] It is commonly known that the current EFCI scheme takes
large buffer resources with severe oscillation of the ABR traffic.
As seen in the next subsection, these two key phenomena are closely
related to the congestion detection mechanism used by the EFCI
scheme.
[0123] 3.1 Early Congestion Detection
[0124] As mentioned above, nodal congestion occurs whenever the
filtered rate of aggregate traffic exceeds the link capacity. Using
the queue threshold detection scheme, the detection of congestion
occurrence has to be delayed by the amount of time required to
build up the queue. Similarly, the detection of congestion
resolution is also delayed by the amount of time required to bring
down the queue.
[0125] The sample path of a queue and its associated filtered input
rate is examined in FIG. 17. The input traffic consists of
CBR/VBR/ABR. The CBR/VBR traffic are generated from 10 real time
MPEG videos using Bellcore's collection, which are transmitted with
high priority, as described in M. W. GARRETT, and. W. WILLINGER,
"Analysis, Modeling and Generation of Self-Similar VBR Video
Traffic," Proc. ACM Sigcomm, London, September 1994, pp. 269-280,
the disclosure of which is expressly incorporated herein by
reference in its entirety. The ABR traffic consists of ten
connection groups, which are controlled by the EFCI scheme with
queue threshold detection. Detailed configuration of the simulation
is provided in the next subsection. The queue threshold is properly
adjusted and set at 200 cells to achieve the target link
utilization of 90%. As detected by the queue threshold in FIG. 17,
the first congestion period starts at t=0.527 sec and ends at
t=0.681 sec, lasting for 0.154 sec. In contrast, the bandwidth
threshold detection scheme is used and the bandwidth threshold is
set equal to 90% link capacity for comparison with the filtered
input rate. As also shown in FIG. 17, the first congestion period
starts at t=0.513 sec and ends at t=0.597 sec, lasting for 0.084
sec. For comparison purposes, the two thresholds in FIG. 17 are
overlapped after properly scaling the filtered input rate on the
left side Y-axis and the queue length on the right side Y-axis.
This example clearly shows the shortcoming of the queue threshold
scheme.
[0126] It is not difficult to understand why the bandwidth
threshold detection scheme significantly outperforms the queue
threshold detection scheme. First, the early nodal congestion
detection will lead to the early feedback control reaction by ABR
sources to improve the performance. Second, the much reduced
congestion period will significantly reduce the oscillation periods
in each of the ABR control loops and hence result in much reduced
oscillation magnitude. (The second aspect of the improvement plays
a more important role than the first one.) These advantages of
bandwidth threshold detection are indeed verified by the following
studies in the proposed EFCI-ECD scheme.
[0127] 4. Simulation Study of Feedback Control of Multiloop ABR
Traffic
[0128] For the simulation study, refer to FIG. 18. A single
congested node 20 within the network 10, supporting ten groups of
ABR connections 12 {S.sub.1, S.sub.2, . . . , S.sub.10}, i.e.,
taking N=10 in (1) is considered. The control updating period
t.sub.c=7 ms is chosen. The feedback loop delay of each connection
in S.sub.k is fixed at kt.sub.o unless otherwise stated. The
multiple loop delays within the network are then in the range of 7
ms to 70 ms, which is equivalent to one to ten control steps.
[0129] The CBR/VBR high-priority traffic r(t) at the node 20 is
generated from real JPEG/MPEG video segments of the movie Star
Wars, which are highly bursty and strongly correlated, as described
in GARRETT et al. The original JPEG video files were recorded in
bytes in 1.4 ms slice time units and the MPEG files were in 42 ms
frame time units. The bytes are converted into cells; each cell
consists of 48 bytes of video and 5 bytes of header. In computer
simulation, the queuing process is evolved at every 0.14 ms in
discrete time. Converting the input slice/frame time unit into the
queuing simulation time unit, all cells generated in each
slice/frame unit are assumed to be randomly allocated among the
corresponding simulation time units by uniform distribution.
[0130] The filtered high priority traffic is measured periodically
at the control interval t.sub.c, denoted by r.sub.L(n) at the n-th
interval. At each control step, the controller uses r.sub.L(n) and
(8) to compute the optimal input rate vector u(n)=[u.sub.1(n),
u.sub.2(n), . . . , u.sub.10(n)], which will feedback to each
individual ABR source with its defined loop delay. In the GPC
design 40 steps of prediction may be utilized, i.e. H=40 in
(11).
[0131] The simulation study in the following subsections also
considers the effect of random feedback loop delays and non-uniform
ABR rate distributions. The total volume of the underlying high
priority traffic changes from a single video source to the
aggregation of 10 video sources.
[0132] 4.1 With Non-Causal Filter
[0133] One major issue in design of low frequency control is the
selection of a low pass filter (LPF). A good LPF not only captures
the low frequency characteristics but also requires less filtering
delay. Intuitively, the filtering delay will postpone the network
control response to burst arrivals of the high priority traffic.
Note that the burst arrivals are typical low frequency behavior of
the traffic. As a result, a longer filtering delay is more likely
to mistrack burst arrivals which may cause nodal congestion. In
practice, a prediction scheme to minimize the effect of the
filtering delay in evaluation of r.sub.L(n) may be designed.
[0134] For simplicity, first consider a non-causal LPF which has no
filtering delay. Although non-causal filters cannot be implemented
in real systems, its control performance can be thought as the
ideal case of the low frequency control. Also assume a fairness
condition u.sub.1.apprxeq.u.sub.2 . . . u.sub.10, which is
approximately achieved by the following .lambda..sub.dg
assignment:
[.lambda..sub.1,.lambda..sub.2, . . . , .lambda..sub.10]=[150, 100,
80, 50, 30, 20, 10, 5, 2.5, 1] (18)
[0135] Note that .lambda..sub.k declines inversely with its loop
delay.
[0136] The high priority traffic is represented by a 28-sec JPEG
video sample path in FIG. 2(a). Its low frequency counterpart,
filtered with a non-casual LPF at the cut off frequency
.omega..sub.c=45 rad/sec, is plotted in FIG. 2(b) for comparison
purposes. While the original peak arrival rate is 14 Mbps, the
filtered rate is only 8 Mbps. The average rate of the single video
source is 3.0 Mbps. Assign the link capacity equal to C=10 Mbps,
which is greater than the filtered peak rate of the video to ensure
the delay quality of the high priority traffic transmission. FIGS.
3(a) and 3(b) illustrate the ABR rate time evolution of the ten
groups, wherein FIG. 3(a) illustrates the first five groups and
FIG. 3(b) illustrates the second five groups. Obviously, the ABR
rate variation is caused by the low frequency variation of the high
priority video. Unlike most proposed ABR control schemes, the ABR
transmission rates using the new scheme contain neither high
frequency variations, nor low frequency oscillations. The former
has been removed by the filtering operation of the high priority
traffic; the latter has been eliminated by the GPC method.
[0137] In this example, the link capacity utilization is 30% for
video and 69% for ABR traffic, which leads to the total utilization
.rho.=99%. Under such a high utilization, the aggregate queuing
process in FIG. 4(a) is found surprisingly small, with respect to
the maximum queue length q.sub.max=95 cells. The advantages of
low-frequency control and the GPC method are clearly seen.
[0138] From FIG. 4(b) the behavior of the unused low frequency link
capacity x.sub.L(t) can also be observed. For convenience, the
solution x.sub.L(t) in FIG. 4(a) has been normalized by the total
link capacity C. First, x.sub.L(t) converges rapidly from the
initial worst case condition to zero. Second, the variation of
x.sub.L(t) is insensitive to the bursty high priority traffic.
Ideally, x.sub.L(t)=0 is achieved.
[0139] 4.2 With Causal Filter
[0140] Now the effect of filtering delay on the control performance
is examined using the same example except the non-causal filter is
replaced with a causal filter. Here a moving average LPF with
hamming window is chosen. The window size is designed at 140 ms;
the filtering delay is equal to 70 ms (one-half of the window
size). Note that taking 140 ms window size in the time domain
filter design is somewhat equivalent to taking 45 rad/sec cut off
frequency in the frequency domain filter design. For the discrete
time implementation, each window consists of 100 steps with 1.4 ms
per step. The filtered video sequence shown in FIG. 5 is basically
identical to the one by the non-causal filter in FIG. 2(b) except
with 70 ms filtering delay.
[0141] To identify the effect of filtering delay, assume the same
link capacity C=10 Mbps as in the non-causal filtering case. The
ABR transmission rate behavior of the ten groups in FIGS. 6(a) and
6(b) (where FIG. 6(a) is the first five groups and FIG. 6(b) is the
second five groups), is basically identical to that of the
non-causal filter in FIGS. 3(a) and 3(b), which are smoothly
adapted to the variation of the filtered high priority traffic.
Similarly in FIG. 7(b), the unused link capacity basically stays at
zero. As a result, the total link utilization also reaches 99%. The
introduced filtering delay, however, requires much more buffer
space as shown in FIG. 7(a), where q.sub.max=950 cells in contrast
to 95 cells without filtering delay.
[0142] Note the rapid queue build up at the 17th sec, which
corresponds to the worst burst arrival of the low frequency video
in FIG. 5. Because of the 70 ms filtering delay, the ABR rate
controller will not be able to immediately respond to such a burst.
As a result, the high priority burst arrival will cause the buffer
accumulation for the consecutive 70 ms period. From FIG. 5 it is
seen that the low frequency burst jumps from 1.7 Mbps to 8.5 Mbps,
causing the queue increment at 5.8 Mbps rate for the next 70 ms. A
simple calculation will show the equivalent queue built up equal to
958 cells (i.e., 5.8 Mbps.times.70 ms/53 bytes/8 bits), which is
exactly what is seen in FIG. 7(a).
[0143] Clearly, the filtering delay is inevitable with the low
frequency control approach. The amount of the filtering delay is
related to the low frequency characteristics of the high priority
traffic and also to the selection of the LPF. In practice, a
traffic prediction scheme may be applied to reduce the effect of
the filtering delay. Once the filtering delay is fixed, the network
must be designed with the capability to absorb the worst case low
frequency burst arrivals for the filtering delay period. This can
be achieved by the reservation of sufficient buffer space and/or
link capacity. The actual amount of the reservation can be
quantitatively identified once the filtering delay and the
allowable worst case burst arrivals are provided in the network
design.
[0144] For instance, more link capacity can be reserved instead of
taking more buffer space to accommodate the filtering delay. In the
previous example, the unused link capacity is targeted at zero for
optimal control, which leads to .rho.=99% and q.sub.max=950. On the
other hand, the link utilization can be reduced for less buffer
space. Change the target value of the unused link capacity from
zero to 20% link capacity. Correspondingly, the design link
utilization is changed from 100% to 80%. For the same example,
q.sub.max is reduced to 180 cells at .rho.=80% in FIG. 8.
[0145] 4.3 With Variation of ABR Connections
[0146] In real networks, the number of ABR connections at each
group is subject to change. For control fairness, the aggregate ABR
transmission rate at each group, u.sub.k, should be adapted
accordingly. Denote the number of connections in group S.sub.k by
n.sub.k. For example, when n.sub.k is reduced by 10%, the relative
value of u.sub.k in u should also be reduced by 10%. Under the GPC
control, such fairness can approximately be achieved by tuning the
associated penalty factor .lambda..sub.k. So far no rigorous
relation has been established between the penalty factor
.lambda..sub.k and the relative weight of u.sub.k in u.
[0147] Use the same 28-sec JPEG video sequence for the high
priority traffic. For the first 5 ABR groups, suppose that n.sub.k
at k=1, . . . , 5 changes in every 2.8 sec interval, consecutively
for the whole 28 sec period. The changes in every 2.8 sec interval
are represented by -3% for n.sub.1, +2% for n.sub.2, +3% for
n.sub.3, -1% for n.sub.4 and -2% for n.sub.5, respectively. The
positive sign in percent represents the relative increment of
n.sub.k and vice versa for the negative sign. The corresponding
change of .lambda..sub.k at every 2.8 sec is assumed to be
inversely proportional to the variation of n.sub.k. That is, +3%
for .lambda..sub.1, -2% for .lambda..sub.2, -3% for .lambda..sub.3,
+1% for .lambda..sub.4 and +2% for .lambda..sub.5, respectively.
The initial values of .lambda..sub.k are assigned by (18) as in the
previous examples for the uniform fairness: n.sub.1=n.sub.2= . . .
, =n.sub.10. The corresponding ABR traffic rate adaptations are
shown in FIGS. 9(a) and 9(b). The comparison between FIGS. 6(a) and
9(a) for the first 5 groups indicates the effectiveness of
.lambda..sub.dg adaptation for balancing the ABR connections. The
main purpose of this example is to show the robustness of the
proposed control algorithm to the changing environment of the ABR
connections.
[0148] 4.4 With Random Round Trip Delays
[0149] The analysis and simulation described so far have been based
on the assumption of deterministic round trip delays, which is not
realistic once the queuing process is involved. Here the effect of
random delays on the control performance is examined. In high speed
networks, assume that about 10% of the round trip delay is
attributed to the random queuing delay. Note that the control
update period at the congested node is always fixed regardless of
the randomness of round trip delays. The queuing process can cause
delay variations of nodal feedback information to ABR sources and
also delay variations of ABR traffic to the congested node.
[0150] Express the round trip delay of the k-th connection group
by
t.sub.k(n)=kt.sub.c+x.sub.k(n) (19)
[0151] at the n-th control time interval tC and t is fixed at 7 ms.
x.sub.k(n) represents the accumulated random queuing delay of the
k-th loop. Knowing that the queuing delay process should be
strongly autocorrelated, the variation of x.sub.k(n) may be
characterized as follows:
x.sub.k(n+1)=0.9x.sub.k(n)+b.sub.k.omega.(n),
[0152] where .omega.(n) is a Gaussian white noise and the parameter
b.sub.k is directly related to the variance of x.sub.k. The
coefficient 0.9 is chosen to reflect the strong correlation of
queuing delays in adjacent time units. Also E[x.sub.k(n)]=0 because
the average delay has already been taken into account by kt.sub.c
in (19). The distribution of x.sub.k is Gaussian in steady state.
The parameter b.sub.k is designed by the following tail
distribution constraint:
Pr(.vertline.x.sub.k(n).vertline..ltoreq.kms)=0.98.
[0153] Such a constraint design ensures that the random delay
portion in each ABR connection is proportional to its average round
trip delay. For instance, at k=5 the average delay of t.sub.k(n) is
fixed at 35 ms and the random delays x.sub.5(n) fall in the range
of [-5 ms, +5 ms] with 98 percentile.
[0154] Using the above random delay model, the simulation study
based on the same example as in Section 4.2 shows virtually no
impact of the random delays on the queuing process (by comparison
of FIG. 10 and FIG. 7(a)). In general, as long as the random delays
are kept in a small portion of their round trip delays, the impact
of the random delays on control performance is expected to be
small. This is because the ABR transmission rates are smoothly
adapted to the slow time variations of the low frequency high
priority traffic. The time scale of such slow time variations is
expected to be significantly longer than the round trip delays.
Hence, the relatively small time varying scales of the round trip
random delays should not have significant impact on the overall
control performance.
[0155] 4.5 With Aggregate High Priority Traffic
[0156] In all of the above examples, a single JPEG video source
represents the underlying high priority traffic. In reality, a
large number of CBR/VBR sources are likely to be multiplexed on a
high speed link. By the law of large numbers, the aggregate high
priority traffic is expected to become less bursty, which will
improve the ABR control performance.
[0157] For instance, randomly select ten independent 2 minute JPEG
video sequences from the movie Star Wars. The average of the
aggregate high priority traffic is 51 Mbps. The link capacity C=67
Mbps is allocated, which is sufficient to transport the high
priority traffic without significant queuing delays. The link
utilization of the high priority traffic is then given by 76%. The
aggregate sequence is then filtered by the same moving average LPF
with 70 ms filtering delay. The simulation study in FIG. 11 shows
q.sub.max=1,600 cells at the total utilization .rho.=96%. The ABR
transmission rates behave similarly to what is already observed in
the previous subsections. Note that the maximum queuing delay in
this case is 10 ms whereas it is equal to 40 ms in the previous
single source case.
[0158] Another example has been conducted with the aggregation of
ten independent 2 minute MPEG video sequences from the same movie
Star Wars. The average high priority traffic is 28 Mbps and the
link capacity is assigned at C=60 Mbps. While the link utilization
of the high priority traffic is 46%, the total link utilization
reaches 93% at q.sub.max=830 as shown in FIG. 12. Again, the
relative large queue length behavior in FIGS. 11 and 12 are mainly
caused by the 70 ms filtering delay.
[0159] 4.6 On Control Stability and Traffic Oscillation
[0160] As described above, feedback control schemes which do not
consider round trip delays may induce low frequency high magnitude
oscillations in ABR connections. To illustrate the side effect of
such oscillations, the load factor approach of the OSU scheme for
ABR traffic adaptations is examined. As in JAIN et al., the load
factor is defined as the ratio of the present aggregate ABR arrival
rate to its desired rate, where the desired rate is defined as the
remaining link capacity after the transmission of high priority
traffic. The load factor is computed at 7 ms intervals. The next
ABR rate is equal to its present rate divided by the load factor.
In the subsequent discussion, refer to this method as the load
factor approach. To avoid queue congestions, set the desired link
utilization p at 80% rather than 100% as in the previous
subsections. In other words, 20% of the total link capacity is kept
unused when computing the load factor. For comparison purposes,
take the same two examples as in FIGS. 11 and 12 with the
aggregation of ten JPEG/MPEG video sources. The same link
capacities are assigned here, but no filtering operation is
implemented on the high priority traffic.
[0161] In the case of the aggregate JPEG traffic, the simulation
study of the load factor approach shows that the link utilization
reaches .rho.=90%, rather than 80% as desired, while the maximum
queue length is q.sub.max=9,500 cells as shown in FIG. 13. In
contrast, using the GPC method provides the solution
q.sub.max=1,600 cells at .rho.=96% in FIG. 11. More importantly,
the control stability of the load factor approach is shown to be
highly sensitive to the unpredicted behavior of the high priority
traffic. For instance, when the same load factor approach is
applied in the aggregate MPEG traffic case, the queuing solution
soon becomes unstabilized as found in FIG. 14. Comparatively, using
the GPC method provides the solution q.sub.max=830 cells at
.rho.=94% as shown in FIG. 12, which is close to that of the JPEG
case.
[0162] Since the CBR/VBR traffic in high speed networks is expected
to be highly bursty and unpredictable, it is of paramount
importance for the stability of the ABR control scheme to be
insensitive and robust to a wide range of CBR/VBR traffic
characteristics. In the control model design of the present
invention, because the high priority traffic has been treated as
the external disturbance, the ABR control stability is independent
of the high priority traffic. This should be one of the most
desirable ABR control properties.
[0163] In order to further isolate the effect of round trip delays
from that of the high priority traffic, consider a case without
high priority traffic. The link capacity is fixed at C=6 Mbps for
transport of ten ABR connection groups. The aggregate ABR rate is
set at zero initially. In the ideal control case, the aggregate ABR
rate shall soon reach the total link capacity and stay there ever
since. This is exactly what is achieved by the GPC method as
illustrated by the solid line in FIG. 15, where the ABR rate is
normalized by the link capacity C. In contrast, the strong low
frequency high magnitude oscillations of the aggregate ABR rate is
seen when using the load factor approach (illustrated by the dotted
line in FIG. 15). The oscillation frequency is directly associated
with the round trip delays; the oscillation magnitude can be as
high as 2.5C. It is obvious that the ABR rate will never converge
to C. The oscillation behavior is expected to get even worse in the
presence of high priority traffic. This is well explained in FIG.
16 where the ABR transmission rate in one of the ten groups is
plotted using the load factor approach. One JPEG video source has
been used to represent the high priority traffic. The corresponding
solution by the GPC method was previously studied in FIG. 7.
[0164] 5. Simulation Study of EFCI-ECD Control Scheme
[0165] The new EFCI-ECD scheme of the invention replaces the queue
threshold detection of the prior art with the bandwidth threshold
detection. All the end to end feedback control protocol functions
remain unchanged as the existing ones. In most simulation examples
of this study, more than 60% buffer capacity can be saved as
compared to the existing EFCI scheme for the same link utilization.
Note that the traffic filtering operation can easily by implemented
by digital signal processing (DSP) chips. Using today's technology,
a common DSP chip only costs a few U.S. dollars whereas the high
speed SRAM chips for buffer capacity are relatively much more
expensive. Moreover, a single DSP chip can be shared by many links
for multiple traffic measurement purposes.
[0166] Computer simulation is used to study the ABR performance. As
shown in FIG. 18, a single bottleneck link 20 with ten active ABR
connection groups is considered. The underlying CBR/VBR traffic
with high priority transmission are represented by the
superposition of different MPEG video segments collected from the
movies Star Wars, which are highly bursty and strongly correlated
(see, e.g., GARRETT et al.). Due to the delay time constraint on
real time services, it is assumed that the CBR/VBR traffic alone
cannot cause the network congestion, which should be ensured by a
proper design of call admission control. In the simulation design,
the link utilization of CBR/VBR traffic is always set at 33%. The
purpose of the ABR control scheme is to effectively adjust the
transmission rate of the ten ABR connection groups for a high
utilization of the remaining link capacity.
[0167] Let the source destination pair of each ABR connection be
denoted by (S.sub.1,D.sub.1), . . . , (S.sub.10,D.sub.10),
respectively. The round-trip delay for the (S.sub.k,D.sub.k)
connection is assumed to be fixed and equal to 7*kms for k=1, . . .
, 10, such that the round-trip delay of different connections
ranges from 7 ms to 70 ms. Moreover, all sources are assumed to be
located right at the front of the link, such that there is no delay
between the sources and the link. Resource Management (RM) cells
are periodically generated by the sources at every .DELTA.T=7 ms.
The original MPEG video files were recorded in bytes in 42 ms frame
time units. The bytes are converted to cells; each cell contains 48
bytes of video and 5 bytes of header. In the computer simulation,
the queuing process is evolved at every 1.4 ms in discrete time. To
convert the input frame time unit of 42 ms into the simulation unit
of 1.4 ms, all cells generated in each frame time unit are assumed
to be randomly allocated among the corresponding simulation time
units by uniform distribution.
[0168] Throughout the application, two CBR/VBR traffic streams are
considered. The first one is taken by the superposition of 10
randomly selected 2 minute MPEG segments to represent the CBR/VBR
traffic on a low speed link. The second one is the superposition of
100 randomly selected 2 minute MPEG segments to represent the
CBR/VBR traffic on a high speed link. By the law of large numbers,
the latter traffic is much smoother than the former one. For the 10
MPEG video traffic, the aggregate average rate is equal to
3.9(Mbps); the overall link speed is set at C=11.8(Mbps) for the
link utilization .rho..sub.MPEG=33%. For the 100 MPEG video
traffic, the aggregate average rate is equal to 38(Mbps); the
overall link speed is set at C=112.6(Mbps) for
.rho..sub.MPEG=33%.
[0169] The EFCI scheme is first applied to the above single-node
network. The control parameters Additive Increase Rate (AIR), Rate
Decrease Factor (RDF), and the queue threshold Q.sub.1 are properly
adjusted to achieve the target overall link utilization .rho.=90%.
For the 10 MPEG case, (AIR, RDF)=(0.2 Mbps, 0.5) for Q.sub.t=200
cells. For the 100 MPEG case, (AIR, RDF)=(1.8 Mbps, 0.5) for
Q.sub.1=2000 cells. In both cases, .rho..sub.MPEG=0.33 and
.rho..sub.ABR=0.56. Illustrated in FIG. 19(a) and FIG. 20(a) are
the resulting buffer occupancy behavior of a 2 minute period. In
the 10 MPEG case, the average queue is 550 and the maximum is
1,800. In the 100 MPEG case, the average queue is 4,500 and the
maximum is 14,000. The sample path used in FIG. 17 is taken from
this simulation of the 10 MPEG case.
[0170] Now apply the EFCI-ECD scheme of the present invention to
the same network. The values of the source control parameters AIR
and RDF are kept unchanged as used for the EFCI scheme. The low
pass filter, which is required to obtain the filtered CBR/VBR rate,
is designed by a simple 100 step moving average operation with the
time step unit 1.4 ms. Note that the low pass filtering operation
at the node requires some filtering delay in CBR/VBR traffic
measurement. Such a filtering delay was considered above.
[0171] To achieve the same target utilization .rho.=90%, the
bandwidth threshold is simply set at 90% of the link capacity in
both 10 MPEG and 100 MPEG cases. The resulting buffer occupancy
behavior are shown in FIG. 19(b) and FIG. 20(b). For the 10 MPEG
case, the average and maximum queues are found equal to (115, 700),
as reduced from (500, 1800) of the EFCI scheme. Similarly for the
100 MPEG case, the average and maximum queues are (830, 4000), as
reduced from (4500, 14000) of the EFCI scheme.
[0172] The aggregate ABR traffic of both schemes for the one second
period from t=99 sec to t=100 sec are shown in FIG. 21. It is easy
to see that the ABR oscillation amplitude of the EFCI-ECD scheme is
about half of the EFCI scheme. This explains why the queuing
performance of the EFCI-ECD of the invention is significantly
better than that of the EFCI scheme. Since the source control
parameters in both schemes are identical, the EFCI-ECD improvement
is mainly achieved through the much accelerated ABR traffic
response. As seen in FIG. 21, the oscillation period of the
EFCI-ECD is only about one half the oscillation period of the EFCI.
As described above with reference to FIG. 17, this is attributed to
the much reduced congestion periods achieved by the bandwidth
threshold detection.
[0173] The above comparison is made for a given control parameter
AIR with a fixed queue threshold Q.sub.t. Now examine the effect of
AIR and Q.sub.t on performance. Taking the 10 MPEG case, first fix
(AIR, RDF) at (0.2 Mbps, 0.5) and adjust Q.sub.t.epsilon.[5, 200].
The corresponding average and maximum queuing performance of the
EFCI scheme is plotted in FIG. 22. Note that every adjustment of
Q.sub.t will yield a different ABR link utilization .rho..sub.ABR.
The queuing performance in FIG. 22 is replotted in FIG. 23 as a
function of .rho..sub.ABR. For comparison purposes, also in FIG. 23
the average and maximum queuing performance of the EFCI-ECD scheme
as a function of the same .rho..sub.ABR is shown. In the design of
the EFCI-ECD scheme, the bandwidth threshold is assigned by
.rho..dbd..rho..sub.ABR+.rho..sub.MPEG at each given .rho..sub.ABR.
The same degree of 60% buffer capacity saving is achieved by the
EFCI-ECD scheme for different .rho..sub.ABR's (so as for different
Q.sub.t's of the EFCI scheme).
[0174] Similarly, (Q.sub.1, RDF) can be fixed at (200, 0.5) while
AIR .epsilon.[0.2 Mbps, 2 Mbps] is adjusted. The maximum and
average queuing solutions of the two schemes are compared in FIG.
24. At each given AIR, first .rho..sub.ABR of the EFCI scheme is
identified. The same AIR and .rho..sub.ABR are then used in the
design of the EFCI-ECD scheme for the comparison. In other words,
the queue comparison in FIG. 24 is based on equal link utilization
for the two schemes. Again, about the same degree of buffer
capacity savings has been achieved. Note that RDF is not a
sensitive parameter for both schemes as long as RDF.ltoreq.0.5. Its
effect on the queuing performance comparison has been omitted.
[0175] As compared to the existing queue threshold scheme, the
bandwidth threshold scheme of the present invention has the general
effect of alleviating ABR traffic oscillations, resulting in a
significant saving of buffer resources.
6. CONCLUSION
[0176] The present invention comprises an explicit rate ABR
feedback control scheme where the effects of multiloop delays and
underlying high priority traffic are fully considered. Two distinct
techniques are used to significantly improve the ABR control
performance. First, the ABR traffic in the dynamic model design is
only adapted to the low frequency variation of high priority
traffic. As a result, not only is the variation of the ABR traffic
much smoother, but the control stability is remarkably improved.
Secondly, the GPC-control method has been successfully applied to
eliminate the low frequency, high magnitude ABR traffic
oscillations. Compared to the existing ABR control schemes, the
control scheme of the present invention can achieve a significantly
higher link utilization with much less buffer space
requirement.
[0177] Thus, according to the features and aspects of the present
invention, a new bandwidth threshold detection scheme is provided
to modify the original EFCI scheme for early congestion detection.
More than 60% of buffer resource savings is observed in the
simulation study using the proposed EFCI-ECD scheme.
[0178] Although the embodiments of the present invention have been
described with reference to the accompanying drawings, many
modifications and changes may be made by those skilled in the art
without departing from the scope of the invention.
* * * * *