Purdue University: Aggregate - Flow Scheduling: Theory and Practice
Purdue University: Aggregate - Flow Scheduling: Theory and Practice
(R evised 7/94)
PURDUE UNIVERSITY
GRADUATE SCHOOL
Thesis Acceptance
This is to certify that the thesis prepared
By
_________________________________ H uan
R en___________________________________
Entitled
of P h ilo so p h y _____________________________
Approved by:
Department Head
This thesis ^
Date
or
Chair, Final Examining Committee
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
A Thesis
Submitted to the Faculty
of
Purdue University
by
Huan Ren
December 2002
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
Copyright 2004 by
Ren, Huan
INFORMATION TO USERS
The quality of this reproduction is dependent upon the quality of the copy
submitted. Broken or indistinct print, colored or poor quality illustrations and
photographs, print bleed-through, substandard margins, and improper
alignment can adversely affect reproduction.
In the unlikely event that the author did not send a complete manuscript
and there are missing pages, these will be noted. Also, if unauthorized
copyright material had to be removed, a note will indicate the deletion.
UMI
UMI Microform 3105011
Copyright 2004 by ProQuest Information and Learning Company.
All rights reserved. This microform edition is protected against
unauthorized copying under Title 17, United States Code.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
ii
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
ACKNOWLEDGMENTS
I would like to show my sincere gratitude to my advisor Professor Kihong Park for
his guidance during my Ph.D. study. The hundreds of hours th at we spent together in
the past four years are still vivid in my memory. His devotion to science, enthusiasm
for perfection, and creative thinking provide an example of researcher th at I shall
follow in my life. I thank him not only for giving me copious amounts of insightful
criticism on my research but also for his far-reaching advices on my professionalism
and future career.
I would like to thank Professors Sonia Fahmy, Ness Shroff, and Wojciech Szpankowski for being on my advisory committee. The computer networking seminar
course I took from Professor Fahmy helped me start working on the topic of this
dissertation. Prof. Shroff is a true mentor to his students; I was fortunate to get
many wise advices from him on various subjects throughout my Ph.D. study. Prof.
Szpankowski always encourages students to explore unknown world, and I benefited
greatly from the algorithm analysis course he taught. I also thank Professor Steven
Low at California Institute of Technology for serving on my final examining commit
tee. He made a long trip to attend my final defense and provided insightful comments
on this dissertation. I thank Dr. Gorman for all his help in the department.
Special thanks should be given to my wife, Xin Liu, for her love, support, encour
agement, and for being an intelligent colleague as well. The past four and a half years
th at we studied together at Purdue are the happiest and most memorable time in my
life. Both of us get our Ph.D. degrees from Purdue with Eric Rucheng Ren as our
another accomplishment. It is her th at makes this long journey of pursuing Ph.D. so
enjoyable.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
Finally, I would like to thank my parents for their selfless love and support. I also
thank my brother Kun for sharing my experiences, his sense of humor, and being my
soul mate.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
TABLE OF CONTENTS
Page
LIST OF F I G U R E S .....................................................................................................
ABSTRACT
viii
..................................................................................................................
xi
1.1
M otivation........................................................................................................
1.2
Key Is s u e s ........................................................................................................
1.3
1.4
1.5
Related W o r k .................................................................................................
10
2.1
10
2.2
Basic Definitions
...........................................................................................
12
2.3
12
2.3.1
12
2.3.2
13
Edge C o n t r o l .................................................................................................
14
2.4.1
Access Control
.................................................................................
14
2.4.2
15
16
2.5.1
...........................................................
16
2 .5 .2
N o n c o o p e r a tiv e G a m e ...................................................................................
17
18
20
2.4
2.5
2.6
3.1
20
3.1.1
20
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
vi
Page
3.1.2
26
3.1.3
31
3.1.4
34
39
3.2.1
39
3.2.2
40
3.3 C onclusion.........................................................................................................
42
........................................................................................
44
44
4 Performance Evaluation
4.1.1
44
4.1.2
46
4.1.3
Scaling Function
...............................................................................
47
4.1.4
48
Performance R e s u l t s .....................................................................................
50
4.2.1
50
4.2.2
51
4.2.3
4.2.4
........................................................
59
4.2.5
61
4.2.6
62
4.3 C onclusion.........................................................................................................
69
70
70
4.2
5.1.1
Key is s u e s ............................................................................................
70
5.1.2
Overall S tr u c tu r e ...............................................................................
71
5.1.3
74
5.1.4
75
75
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
v ii
Page
5.3 Benchmarking R e s u l t s ..................................................................................
76
5.3.1
QoS D ifferentiation............................................................................
76
5.3.2
79
5.4 C onclusion.........................................................................................................
80
82
82
6.1.1
........................
83
6.1.2
84
86
89
6.3.1
89
6.3.2
91
6.3.3
Conservation L a w ...............................................................................
92
6.3.4
93
94
6.4.1
Main R e s u lt.........................................................................................
94
6.4.2
Decomposition
..................................................................................
95
6.4.3
C lu s te rin g ............................................................................................
97
6.4.4
98
100
6.5.1
101
6.5.2
104
112
114
............................................................................................
114
115
LIST OF R E F E R E N C E S .............................................................................................
117
VITA
123
.................................................................................................................................
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
viii
LIST OF FIGURES
Figure
Page
Overall QoS provisioning architecture. Network exports per-hop and
edge control, user exercises scalar QoS control (77 -control), and service
provider exports QoS cost to user.................................................................
11
13
15
3.1
28
4.1
45
4.2 Left: Equal spacing QoS separation achieved by optim al aggregateflow classifier when L = 16. Right: Scaling function a affecting nonuni
form stretching and contraction....................................................................
48
49
49
51
52
53
2 .1
2 .2
2.3
4.3
4.4
4.5
4.6
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
ix
Figure
Page
54
56
4.10 Impact of bounded label set size L on QoS exported by the service
classes as a function of bottleneck bandwidth for L = 1, 4, 8 , 32. . . .
57
4.11 The combined impact of L and v on QoS shaping. Left: QoS exported
in L service classes as a function of L for v = 0.5. Right: Corresponding
plot for v 0.1.................................................................................................
58
59
60
60
61
4.16 Impact of finite label set size L on QoS for VBR traffic. Left: L=4;
Right: L=16......................................................................................................
62
63
4.18 Time evolution of adaptive label control and end-to-end QoS. Top row:
Evolution of label values shown for three user groups with common QoS
requirements (0.1, 0.3, and 0.5). Bottom row: Corresponding trace of
measured end-to-end QoS for user flows belonging to the three QoS
groups.................................................................................................................
64
4.8
4.9
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
Page
Figure
65
4.20 Time evolution of adaptive label control and end-to-end QoS in manyswitch topology (Figure 4.5 (right)) with many flows. Top row: Evo
lution of label values shown for three user groups with common QoS
requirements (0.1, 0.3, and 0.5). Bottom row: Corresponding trace of
measured end-to-end QoS for user flows belonging to the three QoS
groups.......................................................................................................
66
4.21 QoS distribution on multi-hop path with three medium-loaded
switches. Left: Switch loads. Middle: Static QoS distribution. Right:
67
Dynamical QoS distribution................................................................
4.22 QoS distribution on multi-hop path with one heavy-loaded switch and
two light-loaded switches. Left: switch loads. Middle: static QoS
distribution. Right: dynamical QoS distribution............................
68
4.23 To satisfy given QoS target, the actual QoS achieved at each switch
with respect to different load imbalance patterns...........................
69
5.1 Structure of optimal aggregate-flow per-hop control module imple
mented in Cisco routers
72
5.2 Network topology of Q-bahn t e s t b e d ..............................................
76
77
78
....
81
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
ABSTRACT
Ren, Huan. Ph.D., Purdue University, December, 2002. Aggregate-flow Scheduling:
Theory and Practice. Major Professor: Kihong Park.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
1
1.1
INTRODUCTION
M otivation
Architecting networks capable of providing scalable, efficient, and fair services to
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
performing a many-to-one mapping from the large space of individual flows to the
much smaller space of aggregate-flow labels, scalability of per-hop control is achieved
at the expense of introducing uncertainty and possible volatility by flow-aggregation
and aggregate-flow packet scheduling.
1.2
K ey Issues
A number of works have studied the behavioral characteristics of specific in
stances of differentiated services networks. In previous work [8, 9, 63], the authors
introduced aggregate-flow per-hop control mechanisms motivated by game theoretic
considerationsa router performs class-based label switching which emulates user
optimal service class selection with respect to selfish userswithout considering the
space of all aggregate-flow per-hop controls which is carried out in this dissertation. In
[52] simplified models of Assured Service [37] and Premium (or Expedited) Service [38]
are presented and analyzed with respect to their performance when compared with
simulations. In [24], an adaptive 1-bit marking scheme is described, and the resulting
bandwidth sharing behavior is demonstrated via simulations when the priority level
is controlled end-to-end. In [18], the authors describe the proportional differentiation
model which seeks to achieve robust, configurable service class separationi.e., QoS
differentiationwith the support of two candidate packet schedulers. They use simu
lation to study the behavioral properties. Other related works include [8, 12, 50, 56].
In spite of these efforts, a comprehensive understanding of the power and limita
tion of aggregate-flow QoS provisioning is still in its infancy. Little is known about
how to select good aggregate-flow per-hop controlsincluding optimal onesand
per-flow end-to-end (or edge) controls, and what criteria to apply when designing
these components. Following the divide-and-conquer approach to network design, we
would like to reduce the scalable QoS provisioning problem to subproblems and solve
them individually without worrying about the details of other subsystems except
through well-defined interfaces and black box function definitions. Although the
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
same approach is undertaken in this work, we find th at there are intim ate relationships
between the selection of per-hop and end-to-end controls. Thus the key problem of our
study is the formulation and solution of optimal aggregate-flow scheduling for scalable
QoS provisioning with regard to individual user requirement and performance.
1.3
Theoretical Contributions
Our theoretical study has three parts.
scalable QoS provisioning using aggregate-flow scheduling where packet labels can
be set from a finite label set and routers provide differentiated treatm ent of packets
based on the labels enscribed. We define the meaning of optimal per-hop control
within this context and find the optimal solution for aggregate-flow control. We show
th a t the optimal per-hop control satisfies certain propertiesdenoted (A l), (A2),
and (B), and defined in Section 2.3which relate how label values impact the service
a flow receives at a router. We augment the general result by presenting optimal
solutions when restricting the packet scheduling disciplines to variants of GPS, and
the consequences on the core properties.
Second, we expand the framework by introducing selfish users who can influence
QoS provisioning behavior by regulating the label values assigned to their traffic
streams. Based on the properties exported by the network control (A l), (A2), and
(B)we show how a population of selfish users with diverse QoS requirements setting
their packet labels can arrive at a global allocation of resources th a t is stable (Nash
equilibrium) and efficient (system optimal). We show th at even in situations when
network resources are scarce such th at no resource allocationaggregate-flow differ
entiation, per-flow reservation, or otherwisecan satisfy all users QoS requirements,
the system is stable and reaches a Nash equilibrium. We show th at the optimal perhop control is also optimal in the noncooperative game context in the sense that
when network resources are configurable such th at all users QoS requirements can
be satisfied, then there exists a Nash equilibrium th at is system optimal.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
1.4
Im plem entation
In addition to the theoretical analysis, We design efficient algorithm to achieve
optimal aggregate-flow per-hop control and implement the algorithm in Cisco routers.
We carry out a comprehensive performance evaluation study of QoS provisioning
using optimal aggregate-flow per-hop control by both simulation and benchmarking
over real network testbed.
In chapter 4, we investigate implementation issues of QoS provisioning using opti
mal aggregate-flow per-hop control derived in Chapter 3, and carry out a performance
evaluation study by simulation. We design a system th at implements the optimal per-
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
hop control and end-to-end control, and propose a practical enhancement by introduc
ing a scaling function which is applied to the TOS field label value in the IP header at
each router. The scaling function allows the service provider to configure the per-hop
control so as to export customized QoS separationessential when shaping end-toend absolute QoS over per-hop relative QoScommensurate with the QoS profiles of
the service providers user base. Using simulation, we show th a t the scaling function
enhances system efficiency in the sense th at less bandwidth is needed to achieve the
same QoS requirements. We also complement the theoretical framework introduced
by carrying out a performance evaluation study of QoS provisioning using optimal
aggregate-flow per-hop control. We use simulation to study both the dynamical and
structural properties of aggregate-flow QoS provisioning as they relate to stability and
optimality. We provide comprehensive and detailed quantitative performance results
and evaluations under aggregate-flow interactions. We dem onstrate the QoS shaping
prowess of optimal aggregate-flow per-hop control, QoS separation and efficiency at
matching diverse QoS requirements, the impactwith respect to service resolution
and loss of QoS shaping powerstemming from discrete and bounded label values in
TOS field, the effectiveness of end-to-end adaptive label control over optimal per-hop
control, dynamical properties of adaptive label control with respect to convergence
and stability, and QoS distribution across multiple routers on an end-to-end path in
a wide area network.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
1.5
R elated Work
The early approach to QoS provisioning uses resource reservation and admis
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
of shaping end-to-end absolute QoS over per-hop relative QoS, th a t is studied in this
dissertation.
Several works have addressed the performance evaluation side of differentiated
services, both quantitatively and qualitatively. In [52], the authors advanced simpli
fied models of Assured Service and Premium Service and analyzed them with respect
to their performance when compared with simulation-based evaluations. In [47] the
authors investigated enhanced mechanisms th at improve the throughput and fairness
properties exhibited by Assured Service. Feng et al. [24] describe an adaptive 1-bit
marking scheme and demonstrate the resulting bandwidth sharing behavior using
simulations when the priority level is controlled end-to-end. In [18], the authors de
scribe a proportional differentiation model which seeks to achieve robust, configurable
service class separationi.e., QoS differentiationwith the support of two candidate
packet schedulers. They use simulation to study the behavioral properties.
Some other works has been carried out in formulating resource allocation problems
spanning a number of different domains in the context of microeconomics and game
theory [13, 25, 26, 36, 41, 43, 44, 49, 57, 66, 74, 77, 81, 83]. In Smart Market [50],
pricingin the form of packets carrying bidsis used to resolve scheduling conflicts
of packets at switches inside a network implementing priority queues. Paris Metro
Pricing [56] provides a framework and argument for discussing the role of service
differentiation through pricing, even if network resources are plentiful. In [34], the
authors study the efficiency properties of RIO which is used as the scheduler in
Assured Service. Although the concerns raised with respect to RIO being an efficient
scheduler are well-founded, the authors contribution is restricted on performance
analysis of a packet scheduler and does not relate in an essential way to aggregateflow scheduling which is at the heart of differentiated services.
Prior to stochastic optimal aggregate-flow scheduling framework, optimal per-flow
scheduling with stochastic input has been intensively studied, with focus on charac
terizing the per-flow performance space satisfying strong conservation laws [76]a
weaker form being Kleinrocks conservation law [39, 40, 75]under different assump
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
tions on the input and scheduler space. Several other aspects of optimal schedul
ing, in contexts relevant to network control, have also been investigated.
These
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
10
NETWORK ARCHITECTURE
In this chapter, we present a scalable QoS provisioning architecture using aggregateflow scheduling. The architecture, Scalar QoS Control, generalizes per-hop and edge
control achievable by setting a scalar value in packet headers, e.g., the TOS field
of IP. Our control framework incorporates assumptions, albeit weak, about selfish
user behavior and service provider behavior. This is necessitated by the essential
role they play in influencing end-to-end QoS, without which an effective evaluation
of aggregate-flow QoS provisioning remains incomplete.
2.1
edge control, user control, and service provider controlwhere the first two make
up the network system proper, and the latter two are incorporated to evaluate the
goodness of the first two components. Figure 2.1 depicts the overall system struc
ture. A users traffic flow, upon entering the network, is assigned a label from a set of
L values, e.g., enscribed in the TOS field of IPv4. The routers provide differentiated
treatm ent of packets based on their enscribed labels, and end-to-end QoS is deter
mined by the treatm ent of an users flow on all hops along a given path. The label
values are set at the edge on a per-flow basiseither once-and-for-all (open-loop),
or dynamically as a function of network state (closed-loop)facilitating end-to-end
control as part of edge control. A second component of edge control is access control
which prevents users from arbitrarily assigning labels to their packet flows without
consequences. Access control may be achieved by policing, traffic shaping, and pric
ing. We assume th a t the network (in general, service provider) exports a cost to each
user which increases with service quality, or equivalently, with the resources received.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
11
The system is completed by incorporating selfish users who can regulate the label
values on their packet streams to satisfy their QoS requirements at least cost, and
a selfish service provider who sets priceswhich determines user costto maximize
profit.
Control
A ccess
Control
P r ic in g
Per-Hop
Control
Figure 2.1. Overall QoS provisioning architecture. Network exports per-hop and
edge control, user exercises scalar QoS control (tj-control), and service provider
exports QoS cost to user.
xIf an end-to-end delay of 30ms is desired but the route assigned has a propagation latency of 50ms,
then clearly no amount of class-based label switching can achieve the target QoS.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
12
2.2
Basic Definitions
Assume there are n flows or users. A user i e [1, n] sends a traffic stream at
average rate A; > 0 (bps). In the following, we will assume A; is given and fixed
( fixed bandwidth demand ). The case when Aj is variable ( variable bandwidth
demand) is considered separately. Let x* = (x\, x l2, . . . , x la) denote the vector of
end-to-end QoS rendered to user i. For example, x\ may represent mean delay, x \
packet loss rate, x \ delay jitter (e.g., as measured by some second-order statistic),
and so forth. We assume th at all QoS measures are represented such th at a smaller
magnitude means better QoS. A packet belonging to user i is enscribed with a scalar
T}i <E ( 1 , 2 , . . . , }
taking on L distinct values. Unless otherwise specified, we will use [a, b], for a < b,
to denote the set of integers between a and b. Typically, the number of users is very
large vis-a-vis the range of rji, i.e., n
Tjiis lost as soon as a packet enters the network. Thus by the many-to-one mapping
implied by n > L, aggregate-flow QoS control is imposed on per-hop behavior and
executed per-hop at routers on an end-to-end path. In our implementation design
(Chapter 4, 5) we use a number of bits in the DS field of IPv4 (and IPv6) to carry
the r) value (i.e., DSCP).
2.3
Per-hop Control
2.3.1
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
13
T)n )
| PS |
2 [
| PS |
Per-H op
Figure 2.2. Left: Aggregate-flow QoS control affected by two stages of information
loss via many-to-one coarsificationat edge and per-hop. Right: r) value in DS
field of IP datagram is used by the classifier to select service class in GPS packet
scheduler.
2.3.2
There are three properties of the per-hop control, listed below, which are of interest
and deemed desirable from a QoS control perspective. Let e* = ( 0 , . . . , 0 , 1 , 0 , . . . , 0)
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
14
denote the unit vector whose ath (i [1, n]) component is 1, and 0, otherwise. In
the following, i [l,n] refers to the end user, and x l(-) denotes the individual users
performance function. The properties are:
(A l) for each flow i and configuration 77, x l (rf +
e i)
(A2) for any two flows i ^ j and configuration rj, x^ (v+ ei) > x j (rj) and
<
a;-7 f a - e * )
xi{ri);
(B) for two flows i ^ j and configuration rj, rji > r]j implies x %(rj) < x J(r]).
In the definitions, the range of rj is such th at the perturbations remain in the ndimensional lattice, i.e.,
77
things being equal, increasing the label value of flow %improves the QoS received
by flow i (recall th at small means better QoS in our representation). Property
(A 2 ) states th a t increasing r]i will not increase the QoS received by any other flow j.
Property (B) states th a t if flow i has a higher
77
x^ tj)
rji
rjj.
Thus there is no absolute, a priori QoS level attached to the rii values. It is the
magnitude of rji relative to other flows label valuesth a t will determine the QoS
received by a flow i. We will show th at the three properties, collectively, facilitate
effective QoS differentiation and control via
77
furthermore, allow selfish users to share resources efficiently when setting their
77
2.4
Edge Control
2.4.1
Access Control
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
15
in accordance with user needs. We assume th at the network exercises access control
at the edge such th at users are not perm itted to assign rj values to their packets at
willif every user assigns the maximum rj value L to their flows, then QoS control
via rj loses its meaning (degenerates to FIFO-based best-effort service by property
(B)). This can be done by performing per-flow policing, traffic shaping, or assigning
costs via pricing. Open-loop control is used in the Assured Service and Expedited
Service instantiations of differentiated servicesalso called absolute differentiated
services [18]and is generally suited for short-lived flows for which feedback control,
when subject to long round-trip times (RTT), is ineffective. Figure 2.3 depicts the
overall structure of the end-to-end control framework.
T) Feedback Loop (User Control)
Accounting Loop
Receiver
Network Control
Per-flow Control
Aggregate-flow Control
Per-flow Control
Figure 2.3. Structure of forward QoS control path. Lower path comprised of
admission control, policing/shaping, per-hop controlopen-loop control. Upper
control path comprised of dynamic rj control, pricing, receiver QoS monitoring, QoS
feedbackclosed-loop control.
2.4.2
End-to-end Control
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
16
<
if x* > 0 \
if x l <
(2.4.1)
otherwise,
where 0%represents user zs QoS requirement vectori.e., expressed as a threshold
with delay less than 9\, packet loss rate less than 6\ and r > 0 represents the next
update, is asymptotically stable with respect to a single user3. Properties (A2) and
(B) reflect the resource-boundedness property of a router, and come into play when
considering a collection of selfish users engaged in end-to-end scalar QoS control, and
the dynamics this induces as a result of interaction.
2.5
U se r C o n tro l
2.5.1
U se r U tility a n d Selfishness
User i 's QoS requirement can be represented by a utility function Ui which has
the form /j(Aj, x \p j) where Aj is the traffic rate, x* the end-to-end QoS received, and
Pi the unit price charged by the service provider. The total cost to user i is given by
Pi A;. We assume th at Ui satisfies the monotonicity properties 4
dUi/dXi > 0, DUi/dx* < 0, and dUi/dpi < 0.
(2.5.1)
Other things being equal, an increase in the traffic rate is favorably received by a
user, so is an improvement in QoS, but an increase in the price charged by the
service provider has a detrimental effect on user satisfaction. These are minimal,
2In general, under flow conservation for (A l) and (A2), or certain packet loss dominance conditions.
3This assumes a total order on the union of reachable and required QoS vectors. See [10] for a
discussion of QoS ordering.
i Ui need not be differentiable, nor even be continuous. We use continuous notation here for notational clarity; monotonicity is the only property required.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
17
(2.5.2)
me[i,L]
where rjiinfluences
We
min XiPi(xl)
m
subject to
(2.5.3)
x* < 0l
2.5.2
N oncooperative Game
User i's QoS is influenced by the actions (rjj values) of other users j
%via x* =
x l {rj) as captured by properties (A2) and (B). If all users engage in self-optimization,
this leads to a noncooperative game. The first point-of-interest is stability. In a
noncooperative game, a configuration rj = (rji,. . . ,rjn) which determines the global
QoS allocation is stable if no user, under (unilateral) selfish actions, can improve her
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
18
G [1, n ],
(2.5.4)
A similar
characterization holds for (2.5.3). Existence of Nash equilibria and their efficiency
properties are of im port since they characterize the behavioral aspect of a differenti
ated services network when put into action in a noncooperative environment such as
the Internet. We will show th at the global resource allocation properties in a nonco
operative network environment are intimately tied with the properties exported by
the per-hop control.
2.6
is
x* < xJ => P
i > Pj.
(2.6.1)
T hat is, the better the QoS received at a shared resource (i.e., router), the higher the
per unit flow cost charged to the user receiving superior QoS. Since x* < x J if, and
only if, the relative resources (in the present framework, bandwidth) allocated to flow
i is greater than th at of flow j , relation (2 .6 . 1 ) just says th at the more resources a flow
consumesthus receiving superior QoSthe higher the cost it incurs vis-a-vis a flow
th at consumes comparatively less resources. Relation (2.6.1), due to its generality,
leaves open the degree of freedom of setting the magnitude of the prices which we
assume is under the control of a service provider. The service provider can be treated
as yet another player in the gameassigned the index zeroand, if selfish, will try to
maximize his individual utility Uq. Uo is assumed to have the form of revenue minus
cost (i.e., profit) given by Uo(rj,X) =
cost incurred by the service provider in delivering the services. The service provider
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
19
max
AiPi(xl)
(2 .6 .2 )
p(,)
assuming fixed Costo. Closing the system by incorporating the actions of a selfish
ISP leads to a (n + l)-player noncooperative game.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
20
In this chapter, we present a theoretical framework for reasoning about aggregateflow QoS provisioning, constrained to be implementable in IP networks. We develop
a theory of optimal aggregate-flow per-hop control and the properties they exhibit
which facilitate end-to-end QoS via the joint action of aggregate-flow control perhop and per-flow control at the edge.
properties of the overall network system when users are allowed to influence the
choice of scalar values in the DS field at the edge, and service providers export costs
to users commensurate with the QoS received. The results in this chapter are also
published in [69,
3.1
68
].
defining what optimal per-flow control is when packets are enscribed with a value from
L possible choices. Aggregate-flow control can then be viewed as an approximation to
the QoS achieved by per-flow control in a well-defined sense. Comparability between
aggregate-flow and per-flow control is facilitated by the fact that, even in aggregateflow control, an end users QoS remains well-defined, and the loss in power due to
coarsification affected by flow aggregation can be exactly quantified.
3.1.1
Consider the per-flow control or classifier problem for n users who choose packet
labels from integer set [1, L]. Technically, per-flow classification means n = m (each
flows service can be individually configured), and L is either greater or smaller than
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
21
n. In general, the range L may be finite or unbounded, and the variable rji discrete
or continuous. The influence of boundedness and discreteness can be subtle, and its
effect is shown in Section 3.1.4 with respect to system optim ality where we quantify
the negative performance impact of boundedness and discreteness affected by loss
of resolution. When n users mark their flows with a value rji [1 , L] drawn from
the metric space [1 ,L] with property (Al) satisfiedlarger rji values, other things
being equal, result in a greater apportionment of resources and thus better QoS rji
can be viewed as codifying a users QoS or resource demand with respect to some
measurement unit. For example, rji may represent bandwidth demand in units of
Mbps. If network resources are infinite, then a flows request can be satisfied based
on the rji value specified, without consideration of the needs specified by other flows
(except, possibly, for pricing issues). That is, independence or decoupling holds. If,
on the other hand, resources are finitean OC-12 link is shared among bandwidth
insensitive usersthen, in general, the users collective resource demand may exceed
the available bandwidth.
, ]T]/t=i
apportioned by the per-flow classifier to i [1 , n], and let u>j = ctj/Aj denote the
fraction of resources allocated to i per unit flow. Under the above semantics, given
rj (and A), the optimization
n
min
Y2(Vi
~ Ui)2
at
/-*
(3.1.1)
i= 1
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
22
accordingly. For general % K+, including the discrete and bounded case rji e
which is of special interest, define the normalization
{1
Vi =
- Z
i n
l f
^ m ax
^ m in >
2 ^
otherwise,
where 77mjn, ?7 max are the minimum and maximum values of {vi, V2 , , Vn}, respec
tively. Note th at rji
[0,1], and unless all rji values are equal, rjmin = 0 and fjmax = 1 .
Let Qi denote the normalization of Ui via (3.1.2). Given rj, the optimization corre
sponding to (3.1.1) is
n
min
rv
a
7f
- u;*)2.
(3.1.3)
i= 1
(3.1.3) realizes the same semantics as (3.1.1), however, generalized by the function or
code (it is not 1-1) given by (3.1.2) to Vi values not restricted to the real unit interval
[0,1]. If L is bounded, then the 1-1 function rji = iji/L achieves a similar purpose.
(3.1.3) possesses the same desirable properties as (3.1.1), which are characterized by
the following two results.
< v <
+ V
x ,
2-jj=i AjVj
2^,j=i Aj
* e [ l ,n ] ,
(3.1.5)
To achieve this, we just need to show th at such a satisfies rji = i2>i for i [1, n}.
(a) If vmax = Vmin, then rji = 1, i <E [l,n\. From (3.1.5), we have
oii =
(1
u)
+ v
l~,j=i Ai
l ^ j =i Ai
nA*
2 ^j=i
* e [ l,n ] ,
Aj
and
1
t -
Ai
v -^ n
r - i
r-l
i G [1 , n j .
l ~ / j = 1 Aj
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
23
[1, n].
_
\
Ai
( 1 - u) rji
v-'n \ "
2~/j=i ^jVj
v
V 'n \ !
z^j=i Aj
^ ^ [1j
>
and
l i/
wmm
\r^ n
w m ax
2 ^ j = 1 Aj
+1
2 w j= l AjTfj
2 w j= l A?
. ri ]
z G [ l,n j.
/o i >\
(3.1.6)
Substitute tu*, tumjn and ojmax in (3.1.6), we will get cu* = rji, i G [l,n].
(ii)
Next we show th at (3.1.5) represents a complete solution set for (3.1.3). Sup
such that
I
^i
(1
l\
XiVi i /
Ai
^ ) v='n
I ^
L - / j = 1 A j Vj
F mSr~ )
_ ri
ZG
[1, Zl] .
A-ij=l Aj
From the first part of the proof, we have seen th at some a i , , a n can achieve
rji = u){. Since a i, ,a'n is an optimal solution to (3.1.3), rji =
(a) If r}max = rjmin, then rji = 1, and u- = 1, i G [1, n]. We have
ai =
Ai
= <
A
and
ai H
1-
a'n =
1 .
E ]U V
In (3.1.5), let v' = c, 0 < c < 1, then we get the same a i, , a'n
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
24
(b) If r]max Vmin, then u'min = fjmin = 0, and u max = fimax = 1. Thus
>
min*
mm
max
= rjt,
(3.1.7)
[ l,n ] ,
mm
and
Ai + ----- 1- u'nXn 1
(3.1.8)
Therefore,
"F ( 1
In (3.1.5), let u' = u>'min Y^j=i
mm
y
j= i
< y > ; . A , i.
j =i
The param eter v, which stems from the dimension reduction associated with (3.1.2),
has an appealing interpretation. The second term in (3.1.5) corresponds to the pro
portional share achieved by FIFO scheduling, whereas the first term corresponds to
proportional share of the corresponding virtual flows Aifji, which are the original flow
rates weighted by their relevancy variable rji derived from rji. Thus, if v 1, then
the per-hop control effectively ignores the label values and behaves as a FIFO queue.
If v = 0, then the router acts like a GPS scheduler with service weights given by the
first term. For any other value of v, (3.1.5) represents a convex combination of the
two behavioral modes.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
25
Proof.
rj + e* by fji(r) + e*), i [1, n\. Similarly, we will use notations 0Ji(rj) and ufirj + e*),
i [l,n].
(i) Property A l .
- v)
Wi ------
E"=IAy(|)
Because
j [l,n]. Hence, wfirj + e*) > cofirj). Furthermore, x %is a monotone function of cu*,
so x>(ri + ei) < x {(rj). Similarly, we will get x %{r\ e{) > x^rj).
(ii) Property A2.
Consider Uj =
j ^ i.
.,
< ufirj)-,
(I-*')
Ai(|-) +
M f^ )
E L iA fc
Because rji rjmax for configuration rj, rji + 1 = rjmax for configuration rj + e^. By
(3.1.2),
> | M , and
= $$, M
i- Hence,
+ e() < u , ( , ) .
Therefore, in both cases, Uj(rj + e*) < ojfirj). From the monotonicity of x \ we get
^ (* 1
+ ei) > x (rj). Similarly, we can also get x^{rj d ) < xj (rj).
(iii)
Property B.
For i / j , rji > rjj implies rji > fjj. By (3.1.5), uii > ojj if rji > rjj.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
26
3.1.2
W ith the semantic set-up of optimal per-flow classification, let us consider the
aggregate-flow classifier problem where n > m. The original aggregate-flow classifier
problem, n > L = m, is subsumed by the more general set-up where L can take on
any value. From a QoS provisioning perspective, the ultim ate goal of a differenti
ated services network comprised of aggregate-flow per-hop controls is the provision
ing of end-to-end QoS commensurate with each users needs. Aggregate-flow control,
whether it has many or few labels, must service n flows using m < n service classes
which results in a reduced ability to effectively shape end-to-end QoS with respect
to the performance criterion (3.1.3) when compared to per-flow control. T hat is, the
minimum value of (3.1.3) achieved by optimal per-hop control is smaller than th at of
optimal aggregate-flow control. This is a consequence of a more general result given
by Proposition 3.1.12.
We give a formal definition of aggregate-flow per-hop control. An aggregate-flow
per-hop control with parameter (m, n) is a function
$ m ,n
where : [l,n]
[1
: (?, A )
(3.1.10)
(, a ) ,
service weights assigned to the m service classes. W ith respect to end users, $ TO>n
inducesexplicitly or implicitlya performance function (plm n for each user i [1 , n]
: (*? A)
where a* = (p%
>
(3.1.11)
ah
Since the traffic rate A is fixed, we will omit it from the argument list. The two-stage
interpretation of aggregate-flow per-hop control is depicted in Figure 2.2.
The resource share received by individual flows under <hmi can be computed as
follows. Let
Uk = {i G [1 , n) : (t) = k},
h e [1 , m],
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
27
Then (3.1.3)
achieves a smaller value with more service classes, i.e., for all m' satisfying m +
<
m' < n,
n
{ min
< { m m ^ W , - * ) 2}.
i= 1
Proof.
Let
i 1
except
a k2
a kl + a k 2 = a k,
iieukj ^
z-,ieuk2
We have
<P%
m ,nin) = V m + l M ,
* G [l, n].
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
28
if 3i e Uk, fji = 0 ;
1,
if 3i E Uk, 7ji = 1;
'EieUkVi/lUkl
otherwise.
vk -
m
finfce[i,m]
E iet/fc
E fi-w
t3-1-14)
Let
and
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
Hence the
29
ojk
0,
if 3i GUk, rji = 0;
1,
if 3 i e 4 , ^
'Eiuk Vi/\u k l
otherwise.
= 1;
(3-1.15)
TO
]C(* j =i ieu'j
^ ) 2
< X!
k=i ieuk
_ ^ fe)2>
= k,
7 ^ k,
- Vk)2
and hence
TO
J2
k= 1 ieuk
TO
< X! X !^
k 1 iUk
^ )2>
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
30
Thus optimal
label values are mapped to the same service class, then all r] values sandwiched
in-between must be mapped to the same service class. can be represented by wellformed parentheses on the totally ordered set rji < ij2 < < Vm where adjacent
values are grouped into the same partition except, possibly, at boundaries.
T h e o re m 3.1.16 (G ro u p in g )
Proof.
< rji < iji2 < Vmax- We then construct another aggregate-
, u /m))
as follows:
(i) Suppose cbk = u k'. Because fj^ < fji2, either 77^ ^ Cjk or fji2 ^ u k. Suppose
77 (l
= u k and U'k, = {h }, Cj ^
= %.
(ii) Suppose Cok < u>k'. For class k and k1, do the following:
(a) If Vmin ^
Cj(k'} = u)k' .
(b) If u k' < fj^axl then U'k = Uk - { i ^ ax}, u (k) - u k and U'k, = Uk>U {ikmax},
oj(k') = Cjk' .
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
31
(c) If U)k
< f}*in, 'tjkmax < uik' , and C m < v L x , then U'k = Uk U {ikmin} - {ikmax},
\ f ^ ax - u k\ and
when w* = 0,
&{h) = 'E ieu'k Vi/\U'k\ when u k 0, and U'k, = Uk>u {k,) = E ie/', f)i/\U'kl\ when u)k> #
; If
,(*) = w* when w* = 0,
uj(k') = cDfc/ when Cjk' =
j / k '. We have
Y ^ iV i ~ w(/ )2 + Y ^ (fc,))2 <
k*)2 + S ^
%.Uy
~ ^ )2-
(3-1-17)
Hence
m
j=i ieUj
(3 . 1 .1 8 )
which is contradictory to the hypothesis th at 4>m>n is optimal. Therefore is wellformed in ?)-space. Because rji < rjj O- rji < rjj, is also well-formed in ?7 -space.
3.1.3
Although optimal per-flow classifiers satisfy properties (A l), (A2), and (B), the
same is not necessarily true of optimal aggregate-flow classifiers.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
32
An
optimal
aggregate-flow per-hop control satisfies property (B), but need not satisfy properties
(Al) and (A2).
Proof.
(i) Property B.
Consider two flows i / j and rji > rjj. Let k\ = (rji) and
k2 = (rjj). Since an optimal aggregate-flow classifier is well-formed, rji > rjj implies
fjkl > fjk2. Thus u ki > ujk\ Therefore, uji > ujj and property B follows.
(ii) Property A l .
Property
+ e*, let
' be the classifier and a ' = (ct^\ , a ^ ) be the weight vector computed by $ m,.
Property A l requires u;' > cjj. If = ', then
77 ^ W
> f j ^ . Thus
oj[
i-e- th e change of rji leads to regrouping , then it is possible th at a;' < u>i.
if 7 ^
Here is an example.
Let n 5, m 3. Let A = (1,10,1,1,1), rj = (0 ,2 ,4 ,6 ,9 ), and rj' = rj + e 4 =
(0 ,2 ,4 ,7 ,9 ).
The results of $ m,n for (A, rj) are: fj = (0, | , | , , 1), Ui = {1,2},
U2 = {3,4}, U3 {5}, and Cb = ( 0 , ^ , ^ ) ; The results of $ m,n for (A, 77') are:
= (0, , f , 5 , 1 ), U[ = {1}, U'2 = {2,3}, UI = {4,5}, and u ' = (0,
4, (4) = 2, '(4) 3, and W4 = o>2 =
(iii) Property A2.
Thus
<
^ ) . For user
oj4 .
be the classifier and a ' = (a^1), , of1^ ) be the weight vector computed by $ m,n.
Property A2 requires Vj 7 ^ i, ui'j <
Suppose (i) = k and Vj
Theorem 3.1.13, u k =
ujj.
Following is a counterexample.
^ If
proof of
=
*/
Cjk +
Property (A2) is more subtle than (Al) and (B), but of im port in influencing the sta
bility and dynamical structure of noncooperative networks built on top of aggregateflow scheduling.
P ro p o s itio n 3.1.20 (C lassifier P r o p e rtie s w ith m L)
A n optimal aggregate-
flow per-hop control with parameters m = L satisfies properties (A l), (A2), and (B).
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
33
Proof. Let
Given A and rj, because rji, i G [1, n], ranges over [1, L], is computed as:
(*) = Vi,
*7C(,) = Vi,
* e [1, n],
(3.1.21)
(3.1.22)
* = ( ! - ')
\k
Ei=i AV
Ei=iA
* [ 1 ,L ] ,
From (3.1.21) and (3.1.22), we can derive users share of bandwidth allocated by $L,n'Q = aiW T
M = t1 ~
A?w
22 j=i
y E j= i A;
xj Vj
i l1 n l'
<3 1 '23>
Compare (3.1.23) with (3.1.5), we can see th at $L,n is equal to an optimal per-flow
classifier. According to proposition (3.1.9),
(B).
The next result shows th at the optimal aggregate-flow per-hop control with m = L
not only differentiates services among classes, i.e. satisfying property (B), but also
preserves an even, uniform QoS separation: the performance difference (in terms of
bandwidth per unit flow) between flows is proportional to their r] value difference.
Let
be an optimal
(3.1.25)
Proof
(i) If rjmax - Vmin, then V*, j G [l,n], rji = rjj and Ui = Uj. Thus (3.1.25) is
T ;
2-jk= 1 XkVk
1/
b
T- ,
2^=1 Ak
* ^ [1)
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
34
Hence,
Ui-Uj
V i ~ Vj
( 1 - 1 / ) = ; ----
l^,k= 1 AlcVk
^
V i~ 'n m in
Vj ~V rnin
Vm ax Umin_____V m ax ~~Vmin
Vk V m in
' ^mca: V m in
E L i x k-,
Sfe=1 ^k{Vk
iVi-Vj),
i,je[l,n}.
Vmin)
3.1.4
To satisfy user i s QoS requirement 0l, the per-hop controlwhatever its specific
formmust apportion a fraction a* > 0 of the available bandwidth. Let a* denote the
minimal such bandwidth. We will find it more convenient to work in the service weight
space ( a : a > 0 and Y^i=\a i < !} We will use </?*() to denote the performance
function corresponding to *() which allocatesexplicitly or implicitlya service
weight to user i for a given input rj.
Given per-hop control 4>mi, let A represents the set of configurations where all
users QoS requirements are satisfied, i.e.
A* = {rj: ip'fa) > a*,i G [l,n]}.
A configuration rj is system optimal if rj ^4*, and for all rj' rj, <p(r}') > <p(rj)
does not hold. In a system optimal configuration, the users QoS requirements are
met while expending the minimal amount of resources. In an overloaded system, i.e.,
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
35
E "= i a i >
For all per-hop control $ m>n satisfying (B), if a* < Aj/]T ) " = 1 Aj for all users
For any r) E V , rji = rjj, for all i, j [1, n\. By property (B), rji = rjj implies
^ = =
and
= 1- Thus a* =
which
Let n = m, and let be the optimal per-flow classifier. Then A* ^ 0 if, and only if,
(a) 3 i E [ l , n ] such that a* < ^Aj/
= 1
Aj, and
(i) First we show th at A ^ 0 when both (a) and (b) are satisfied. Given
ot* = (a*, , a*) satisfying (a) and (b), we will construct an rj such th at ^ ( r j ) > a*,
i E [l,n]. Let a[ = max{a*,
construct rj as rji = ^
We
A. , i E [l,n].
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
36
We need to check whether ipl(rj) > a*, i [1, n\. Because of (a), we get t]min = 0.
Hence /h =
*f m a x
. Using (3.1.5),
we have:
'
li
v)
(1
(1
him.
EU
+ v
" E"=i ^
u)
- E J .^ A .-(ti - m "
Wmax
^7
j= 1
E?=fJ-" + u E ^ A
' x.
f 1 7/^ ------- Izzl-_1_ 7 / ----- Al__
11
v>
1-v
E?=i Aj
^ _ ^
o'.
(ii) Second we show th at .4 = 0 when either (a) or (b) are violated.
(a) Suppose Vi [1 , n], a* >
Suppose fjk = fjmin, then according to (3.1.5), a*, = v ^ k , and a*, < a. Therefore
2 _,j=i Aj
.4 = 0.
(b) Suppose ]C = 1 niaxjaj*, ^ n A* A, } > 1. We can show A = 0 by contradiction.
Suppose > 1 / 0 , then
3 7 ,
Here v > 0 is the solution parameter of the optimal per-flow classifier which de
termines how much proportional sharing to inject in the service weight allocation
{y = 1 degenerates per-hop control to FIFO). Theorem 3.1.27 is a tight characteriza
tion of .4*s nonemptiness in the unrestricted case where properties (a) and (b) stem
from the particular form of the optimal per-flow classifier solution given by Proposi
tion 3.1.4. Note th a t as v > 0, (b) becomes
I f A* = 0 in the unre
stricted case, then A* = 0 in the restricted case where T]i (1,2, . . . , L } fo r all
i [1, n], and L < oo.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
37
7^
Let
7^
control with m L.
Proof.
Given the relationship of nonemptiness of A* between the per-flow and aggregateflow case under 77, G {1, 2, . . . , L}, what remains is a quantitative characterization of
the loss of power due to discreteness and boundedness of the label set [1, L] in the
aggregate-flow case.
if there exists
Let L m < n.
7
For
= (7 1 , 7 2 , , 7 n) with
( v) E U h i i
"
- i E U V r ,
L optimal aggregate-flow per-hop control with classifier f and weight vector & =
( a 1, , a L). If there exists
= (7 1 , , 7 n) with
min = 0,
max = 1, 0 <
.. ^*(7* l - 1 ) ,
v)
v
V
l^j=l
2^j=l *j
{7 7
: fji = 0,
71
n 1
Z G [l, Tlj.
^ Qft* 5
= 0, 7 =
7
max = 1. Define
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
*< 1
38
(1
(1
x*
^ n
vZ^j=i
1 \A? (
\ ^*(7* i - l ) .
V 'n TjTj
\
xi
V*
\
2-q=i
*
0ii'
l( L
i) 7<+
lj,
t [ l , n ] .
The left-hand-side of inequality (3.1.31) just denotes a valid service weight vector with
respect to the optimal aggregate-flow classifier. The second term in the right-handside of (3.1.31) of Theorem 3.1.30 quantifies the loss of power due to coarsification.
If L > 0 0 , then the loss-of-power term drops out. In practice, L is a small finite
value (e.g., using 4 bits in the precedence field of IP, L = 16). The next result shows
th at n
bound.
i E [1, n],
(1
Proof.
_ y)
X*7l
+ v
x > a* + (1 2^=1 Af7j
L , j = 1 Aj
^ --------- .
E fc=1 k T,j:dj=k Xi
(3.1.33)
We have
L 1
kj:dj
E k =jE
k
1
= 1
S (i - i) E
j
= 1
Hence,
/1
X i
(! - y) ^ L - i
E E *
1 -
r ^
_ L_
1/
Ai
E "= l AJ7,
L, we can expect
L_t
0.
Ejfe = 1 * Z ~ i j : d j = k 7?
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
39
3.2
3.2.1
Basic Definitions
77.
We will call the pair (7 7 , rf') of control vectors a selfish move of user i E [1, n\ with
respect to a* if 7 7 ' = rf e, and the following two conditions are satisfied:
< a* implies
77'
77
77'
77
(i)
Thus an unhappy user tries to improve his happiness by increasing rji, while an
overly satisfied user tries to reduce the satisfaction level to match his actual needs.
We will call a pair of control vectors (7 7 , 7 7 ') a concurrent selfish move (in the
negative direction) if for some J C [1, n],
77
77
move for all i J. An analogous definitions holds for concurrent selfish moves in
the positive direction. We will sometimes refer to selfish moves as sequential selfish
moves to distinguish from concurrent ones. The definition of selfish move describes
an efficient or cost conscious user who only consumes just enough resources to satisfy
her QoS needs.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
40
For user i, let A {f) (pl(rj) > a*}. Thus Ai represents the set of configuration
where user i's QoS requirement is satisfied. Let
n
A* = f ] A i .
i= 1
A configuration rj is
does not hold. In a
system optimal configuration, the users QoS requirements are met while expending
the minimal amount of resources. In an overloaded system, i.e., Yhi=ia i > 1, by
definition, there cannot exist a way of allocating network resources such th at all
users QoS requirements are satisfied, rj A* is a comer point of A* if the set of
selfish moves from rj is empty.
3.2.2
A>
let
Proof.
771
= (r}[,
7n) A - By a
second application of (A2) to rj1, rj2 = (ij[, rf2, 7 7 3 , . . . , rji,. . . , ijn) A By a repeated
application of (A 2 ), the procedure eventually yields rj' where membership in A is
preserved at every step.
rent. That is, for rj A* and any subset of users J C [l,n] such that (7 7 , 7 7 e*) is
a selfish move for all i J ,
r j - J 2 e i e A *'
ieJ
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
41
Proof.
case of closure with respect to concurrent selfish moves. We will show the lemma for
the sequential case and then use it to prove the general case.
(i) Sequential case.
hence this contracts (7 7 , rj e,) being a selfish move. A similar argument holds for
77+
e*.
(ii) Concurrent case.
Let rj' = rj Y liej e* G .A*. For any i G [1, n], we will show
Thus selfish users, even when making simultaneous selfish changes to their
77
values,
cannot escape from the set A* where their QoS requirements are all satisfied, some
more than necessary.
A concurrent selfish move, with respect to users in J C [l,n] and intersection set
D iej Ai, can be represented by a subset of J' C J th at shows the users making a
move since selfish moves within
Proof
77* for
all i G J. By closure of A*
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
42
Thus a corner point of A* is a fixed point under the dynamics of selfish moves within
A*, from which users cannot escape by selfish actions due to closure. Theorem 3.2.3
also shows th a t A* always possesses a corner point, not necessarily unique.
A corner point rj represents an efficient allocation of resources for all users in the
sense th a t each user Ps QoS requirement is satisfied by rj, i.e., a* = cpl(tj) > a*.
Furthermore, any incremental action by i will either violate his QoS requirement or
increase the apportioned resources beyond what is needed to satisfy the users QoS
requirement. We will show th at a nonincremental action by user i will have the same
consequences (Theorem 3.2.4). If <pl(rj) = a* then rj is efficient in an absolute sense.
rj is a Nash equilibrium.
Proof.
77
property (AI), (pl {rj ce*) < (p%(rj e*) for c > 1, and part two of condition (i) is
satisfied. P art one of the same condition is satisfied by (A l).
3.3
Conclusion
In this chapter, we provide a general theoretical framework of scalable QoS pro
visioning using aggregate-flow scheduling where packet labels can be set from a finite
label set and routers provide differentiated treatm ent of packets based on the labels
enscribed. We define the meaning of optimal per-hop control within this context and
find the optimal solution for aggregate-flow control. We show th at the optimal perhop control satisfies certain propertiesdenoted (A l), (A2), and (B)which relate
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
43
how label values impact the service a flow receives at a router. We augment the
general result by presenting optimal solutions when restricting the packet scheduling
disciplines to variants of GPS, and the consequences on the core properties.
Next, in Section 3.2, we expand the framework by considering selfish users who
can influence QoS provisioning behavior by regulating the label values assigned to
their traffic streams. Based on the properties exported by the network control
(A l), (A2), and (B)we show how a population of selfish users with diverse QoS
requirements setting their packet labels can arrive at a global allocation of resources
th a t is stable (Nash equilibrium) and efficient (system optimal). We show th at even
in situations when network resources are scarce such that no resource allocation
aggregate-flow differentiation, per-flow reservation, or otherwisecan satisfy all users
QoS requirements, the system reaches a Nash equilibrium. We show th at the optimal
per-hop control is also optimal in the noncooperative game context in the sense
th a t when network resources are configurable such th at all users QoS requirements
can be satisfied, then there exists a Nash equilibrium th at is system optimal.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
44
PERFORMANCE EVALUATION
4.1
4.1.1
In our design, the optimal per-hop control consists of a classifier and a packet
GPS scheduler which is configured to have m service classes. We set m = L (cf.
Section 2.3) where L is the total number of label values. For each incoming packet,
the optimal aggregate-flow per-hop control does the following:
The classifier inspects the i) value carried in the TOS field of the packets IP
header, and puts the packet with value rj into service class rj { 1 , 2 , . . . , L } .
Based on a fixed time interval Ts (Ts is set at 100ms in the results reported in
Section 4.2):
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
45
The packet GPS scheduler then schedules the packets based on the new service
weights. The scheduler uses the current weights to compute the finish time of
backlogged packets.
(1
.
- v)
\ kTjk
E L
Xk
+ v I ----A V
E t i A*
In Section 4.2.2, we verify the above design by confirming the QoS separation and
adaptive label control properties of optimal aggregate-flow per-hop control. Further
fine-tuning of its components and parameters can yield additional performance gains.
xWe remark that the original weighted fair queue implementation of ns is a rough approximation of
ideal GPS: it uses real-time, instead of virtual time, which can dilate the fairness bound of PGPS.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
46
4.1.2
monotonicity properties: increasing with A;, decreasing with x*, and decreasing with
Pi. If jy-control is allowed to be exercised by the user, then a selfish user i can be
defined as performing the self-optimization
max U i{\i,x.l,pi).
Vi[l,L]
rji influences user Vs utility Ui via its effect on the QoS received x \ We assume Pi(x*)
is a monotone (non-increasing) function of x*better QoS incurs higher costwhich
corresponds to the price function exported by the service provider. Consider threshold
utilities where user preferences are specified as bounds on QoS measurese.g., bounds
on delay, packet loss rate, jitter, and so forthand user zs QoS requirement is given
by the vector of QoS upper bounds 0 \ The control law
^
= ( - l ) V ||x ( ) - 0 ||
(4.1.1)
, otherwise.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
47
Thus, the end-to-end adaptive label control performs the following two tasks:
Measurement and feedback: the receiver measures the QoS received over a fixed
window of length Tu (Tu = Is in our simulation results reported in Section 4.2),
and sends feedback control packets using UDP with label value L.
(control
Adaptive label control: after the /cth feedback is received, the sender compares
measured end-to-end performance with the QoS target and sets a new rj value
based on (4.1.1).
4.1.3
Scaling Function
From an absolute QoS shaping perspective, the optimal relative QoS exported
by routers according to the procedure in Figure
weakness. Assume a service provider, over time, observes th at its customer base and
corresponding QoS requirement profile varies, but includes as stable subpopulations
user groups requiring 0.0001, 0.001, 0.005, 0.05, 0.1, 0.3, and 0.6 packet loss rates.
Consider Figure 4.2 (left) which shows the packet loss rates exported by the optimal
aggregate-flow scheduler specified in Section 4.1.1 with m = 16 service classes as link
bandwidth is varied2. We observe th at optimal aggregate-flow scheduling exports
relative QoS with equal spacing . The QoS spacing between service classes has a
finite resolution Ac 0.06, or 0 (degenerate case), as affected by m. For 0.0001-,
0.001-, 0.005-packet loss rate user flows, the consequent coarseness forces them to
choose label values th at map them essentially to the same service class whose QoS
for the three user groups to be satisfiedis dominated by the most stringent QoS
requirement 0.0001. Thus 0.001- and 0.005-packet loss flows become oversatisfied
or overprovisioned which, in turn, implies th at resources are inefficiently utilized.
2The performance results are taken from Section 4.2.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
48
Label Value
0(T1)
O
.OOOl
0.001
0.8
0.005
0.6
0.4
0.2
0
10
11
12
13
14
15
16
Scaling Function
bandwidth (Mbps)
Performance
Function
To solve the potential inefficiency and structural lim itation pointed out above, we
introduce a scaling function
<7
: [l, Lj\ ^ R+
where a is monotone increasing in its argument. This scaling function can be config
ured by the service providerwe envision this to be done at larger time scalesto
apply nonuniform scaling to the TOS field label values commensurate with its ob
served customer QoS profile before the IP packets are passed to the classifier proper.
This is illustrated in Figure 4.2 (right).
The modified classifier with scaling function is depicted in Figure 4.3.
The performance gain brought by the scaling function is demonstrated and further
discussed in Section 4.2.3.
4.1.4
Another practical concern for aggregate-flow per-hop control is the efficiency and
QoS shaping properties across multiple routers on an end-to-end path in a wide area
network. To motivate the problem, consider a flow i with end-to-end delay require
ment 30ms whose traffic is routed through a 6 -hop path shown in Figure 4.4. Assume
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
49
A):
1. Set r f = a(r)i) for k G [1, L} if for some i G [1, n], rji = k.
Set r f =
(1
- u)
Xkfjk
E L
Xk
a^
' "
L V
,____________________________ A____________________________ ,
Load Distribution
*0
Uniform QoS
Responsibility
5ms
5ms
5ms
5ms
Sms
5ms
Nonmiform QoS
Responsibility
13ms
1ms
1ms
1ms
13ms
1ms
Figure 4.4. Uniform vs. nonuniform local QoS responsibility distribution to satisfy
30ms end-to-end delay requirement for a given load imbalance.
induced by flow is choice of label value rjiwould impose the same 5ms (ignoring, for
simplicity of exposition, link latencies) as the local QoS responsibility at each router
irrespective of its load. A more desirableand, in general, efficientallocation is one
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
50
where heavily loaded routers are given less responsibility than lightly loaded ones3.
This is illustrated in the nonuniform QoS distribution in Figure 4.4 where the highly
loaded routers export 13ms local queueing delay whereas the lightly loaded hops
achieve 1ms delays for a total of 30ms. The aforementioned property is not difficult
to satisfy. A more subtleand, from a control perspectiveim portant property for
end-to-end QoS shaping is the change in local QoS responsibility as a function of rj.
For example, if flow i increases its label value rji because the current delivered QoS
is deficient vis-a-vis its requirement, other things being equal, it is desirable th at the
lightly loaded routers take on a greater share of the burden for improved QoS than
heavily loaded ones. In Section 4.2.6, we show th at both properties are satisfied by
the optimal aggregate-flow scheduler.
4.2
Performance Results
4.2.1
3One can formally attribute this property by using congestion pricing and utilization as cost mea
sures [9].
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
51
Network Configuration
We use two benchmark network topologies, a 2-switch dumbbell topology shown
in Figure 4.5 (left) which isolates a bottleneck link, and a 4-switch caterpillar topology
shown in Figure 4.5 (right) which is comprised of multiple bottleneck links.
receiver2
switcl.
swilcl.
S w it c h !
Figure 4.5. Benchmark network topology. Left: 2-switch single bottleneck link
shared by n flows. Right: 4-switch multiple bottleneck link caterpillar topology.
Most of the performance results reported in this chapter are from the bottleneck
topology shown in Figure 4.5 (left) whose results are extended by those carried out
for the topology shown in Figure 4.5 (right). The number of service classes varied
from 1 to 32, and the number of user flows varied from 16 to 450. For the convenience
of (3.1.2), the r/ value we used in simulation ranges from 0 to L 1.
4.2.2
Service Differentiation
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
52
class (the number of flows, in this instance, is irrelevant since their impact is sub
sumed by volume). Each flow is CBR. Figure 4.6 shows the QoS separation achieved
0.8
eta = 15
e t a s 13
e ta 11
0.6
eta s 3
e ta = 1 5 -----
I
2
%
</>
0.4
0.2
20
11
10
12
14
13
bandwidth (Mbps)
15
16
10
11
12
14
13
bandwidth (Mbps)
15
16
in the L = 16 service classes when the scheduler executes the optimal aggregateflow service weight assignment. The left figure shows the shape of the performance
function for packet loss rate and its QoS separation across the 16 service classes (all
classes are nonempty) as bottleneck bandwidth is increased from
Mbps to about
77
shows the corresponding performance results for end-to-end delay (in m s). We ob
serve th a t the performance function for delay is less uniformthe performance gap
decreases as
77
in part, by the fact th at the waiting time Wk in service class k is its queue length
divided by its service rate
> fJ'j the shape of the end-to-end delay curve is consistent with the
waiting time dependence on service rate.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
53
0.4 1fc
+... +.
--Q-
Q -E- Q .Q ...|
-+ - 4 -
.-*-3
0.2 r * i
10
12
14
Figure 4.7. Manifestation of properties (Al) and (A2). End-to-end QoS shaping as
a function of label value 7716 of singular user flow. Left: 16 users (originally each
group has one user). Right: 48 users (average group population size of 3).
QoS of the user who is increasing his rj value is monotonically improving, and property
(A2) can be confirmed by the slight positive slope of the service class performance
curves as a function of
7716-
service classes since class 0 becomes empty. Figure 4.7 (right) shows the corresponding
performance curves when the initially service class 0 is populated by three user flows,
and one of the flows increases its label value from 0 to 15 as before. Bottleneck
bandwidth is set at 15 Mbps. We observe th at properties (A l) and (A2) are satisfied.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
54
< v <
e ta = 1 5 ----e ta = 1 3 .......
eta=11
eta=9 .......
eta=7 ......
e ta = 5 ----e ta = 3 ......
eta-1
0.8
0.6
M
0.4
0.2
11
12
13
14
bandwidth (Mbps)
15
10
11
12
14
13
bandwidth (Mbps)
15
16
Figure 4.8. Impact of v on QoS separation for L = 16. Left: QoS exported by
service classes as a function of bottleneck bandwidth when v = 0.9. Right:
Corresponding plots when v = 0.1.
The left figure shows QoS separation as a function of bottleneck bandwidth for
L = 16 when u 0.9 which makes the system resemble a FIFO scheduler. Fig
ure 4.8 (right) shows the corresponding plot when the weighting param eter is set
to v = 0.1, thus amplifying the contribution of the differentiation component. We
observe th at the range of QoS differentiation is significantly larger for v = 0.1 than
v = 0.9the QoS spacing between rj = 0 and t] = 15 is about 0.1 for the latter,
whereas it is about 0.8 for the former. However, this occurs at the cost of reduced
resolution with respect to fine-granular QoS spacing. Thus, when viewing L as a re
source, v influences how QoS is to be shaped at the switchto achieve fine-granular
QoS spacing or coarse-granular QoS separation. From a network management per
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
55
spective, v is a control param eter th at the service provider may engage to reflect the
overall needs of its customer base and their QoS profile.
4.2.3
The major part of our performance evaluation study focuses on the structural and
dynamical properties of differentiated services as affected by optimal aggregate-flow
per-hop control. We first study the structural properties of optimal aggregate-flow
per-hop control with respect to its efficiency and optimality indicated by the existence
and Size of A* (cf. Section 3.2), the impact of bounded and discrete label values
{ 1 , 2 , . . . , L }, and the benefit of scaling function. Then we show the dynamical and
convergence properties of adaptive label control running over the optimal aggregateflow per-hop substrate.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
56
Q-'-Ejv
"Jfc-'-A '"X X\'
14
0.01
0.05
0.10
0.15
0 0 7 -Q
12
0.20
0.30
0.40
10
8
6
4
2
10
10.2 10.4 10.6
bandwidth (Mbps)
10.8
11
10
1 0 .2
1 0 .4
1 0 .6
1 0 .8
11
1 1 .2
1 1 .4
Figure 4.9. Structure of A*. Left: The change in Nash equilibria as we increase
bottleneck bandwidth for user population with QoS requirement profile
(0.01,0.05,0.1,0.15,0.2,0.3,0.4,1.0). At 10 Mbps, Nash equilibria become corner
points of A*. Right: Corresponding landscape for more stringent user population
QoS profile shown in the legend.
10 Mbps, A* is empty but Nash equilibria nonetheless exist (cf. Section 3.2). User
flows with packet loss requirements 0.01, 0.04, and 0.07 are not satisfied (their actual
packet loss rates received exceed their respective bounds), and their r) values have
saturated at the maximum value 15. At 10 Mbps bottleneck bandwidth, however,
A* 7 ^ 0, and the distribution of seven label values correspond to the corner config
uration. We observe th at the range of individual label values is large (from 5 to 13
for a distance of 8 ), and then subsequently shrinks as bandwidth is increased. The
optimal aggregate-flow classifier, is also efficient in the sense th at if an aggregate-flow
resource assignment exists th at satisfies all user requirements, then it is apt to find
it. Figure 4.9 (right) shows the plots for a more stringent user population profile
(0.01,0.04,0.07,0.1,0.15,0.2,0.3,1.0). Nash equilibria turn into corner points at a
higher bottleneck bandwidth 10.7 Mbps, but the reduction in the distance between
label values at corner point configurations persists.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
57
degenerates to FIFO scheduling. Thus small L diminishes the QoS resolution achiev
able by the classifier and increasing L amplifies it. Figure 4.10 shows this dependence.
For n = 32 user flows, we show the QoS exported by L service classes as a function
of bandwidth as L is increased L =
, 4,
erates to per-flow control. The weighting parameter v of the optimal classifier (cf.
equation (3.1.5)) is set to 0.5.
eta=31
eta=27
eta=23
eta=19
eta=15
eta=11
eta7
0.6
0.8
0.6
w
0.4
0.4
0.2
0.2
10
11
12
13
14
bandwidth (Mbps)
15
eta=31
eta=27 - - eta=23 .......
eta=19
e t a - 1 5 ......
eta=11 .......
e ta = 7 .......
eta=3 -----
0.8
0.6
10
16
11
12
14
13
bandwidth (Mbps)
15
16
08
0.6
v>
a.
0.4
0.4
0.2
0.2
10
11
12
14
13
bandwidth (Mbps)
15
16
10
11
12
13
14
bandwidth (Mbps)
15
16
Figure 4.10. Impact of bounded label set size L on QoS exported by the service
classes as a function of bottleneck bandwidth for L = 1, 4, 8 , 32.
Figure 4.10 (top row, left plot) shows QoS shaping when L =
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
58
closed continuous interval [a,b], a < b, maps onto [0,1] by the action of (3.1.2), and
Z+ is mapped to a dense subset of [0,1]. Thus L translates to QoS resolution in a
straightforward fashion.
o.e
0.8
B
1
0.4
Ia
0.2
0.4
0.2
0
2
3
range of labels (log L)
2
3
range of labels (log L)
Figure 4.11. The combined impact of L and v on QoS shaping. Left: QoS exported
in L service classes as a function of L for v = 0.5. Right: Corresponding plot for
i/ = 0 . 1 .
Figure 4.11 shows the joint influence of L and u on QoS shaping. The left figure
shows the QoS exported by L service classes as a function of L (actually its logarithm)
for L = 1, 2, 4,
function of L, this generates a binary QoS tree whose leaves at level logL show
the range and values of QoS covered by the L service classes. Figure 4.11 (right)
shows the corresponding plot when v 0.1.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
59
12.5
I
I
11
10.5
9.5
5
10
15
20
25
30
r a n g e of lab e ls (L)
other things being equal, too small an L value incurs a high QoS shaping penalty
with respect to the network system being able to satisfy the QoS requirements of all
users, even if sufficient bandwidth were available. On the other hand, the marginal
or incremental benefit of increasing L diminishes for given user QoS requirements,
which points toward the possibility th at with not-too-large L (perhaps a subset of
the TOS bits) the QoS requirements of a multitude of users can be met.
4.2.4
In this section, we study the performance impact of the scaling function. Fig
ure 4.13 shows how the scaling function can affect the QoS differentiation among
service classes. Comparing it with Figure 4.6, we see th at the scaling function can
achieve non-uniform QoS differentiation.
Next we show th at the scaling function can improve system efficiency. As in Sec
tion 4.2.3, system efficiency is represented by the minimum bottleneck bandwidth
needed to achieve A* / 0. Configure users into
ments. Figure 4.14 shows the minimum bottleneck bandwidth needed to achieve all
users QoS targets as a function of L. The top curve is obtained without the scaling
function. This is essentially the same curve described in Figure 4.12. The bottom
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
60
e t a s 15
e t a s 15
e ta = 1 3 .......
eta = 1 3 ......
eta 11 ----eta = 9 .......
0.8
0.6
0>
=3
E,
eta
eta
eta
eta
40
=9
=7
*5
=3
.......
.......
.......
>.
0.4
0.2
25
10
11
12
13
14
bandwidth (Mbps)
15
16
10
11
12
13
14
bandwidth {Mbps)
15
16
curve is obtained with an optimal scaling function, i.e., for a given L, if we are
allowed to choose a, what is the minimal bandwidth needed.
n o scalin g
with sc alin g n .
12.5
11.5
IE
11
10.5
9.5
5
10
15
20
25
30
We observe the following: First, with a scaling function, the system achieves its
maximum efficiency when L > 8 , i.e., for the bottom curve, the minimum bottleneck
bandwidth required to satisfy all the users QoS targets does not further decrease when
L >
. Second, the scaling function does not help when L 1,2. This is because the
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
61
difference of the minimal bottleneck bandwidths in the two curves, is large when
L = 4 , 8 . However, it becomes smaller when L > 8 .
4.2.5
Impact of Burstiness
The previous sections have shown the structural QoS provisioning properties of
the optimal aggregate-flow per-hop control when input traffic is CBR. In this section,
we inject burstinessan ever-present orthogonal dimension to traffic control and QoS
provisioningand show th at the qualitative behavior of the aggregate-flow QoS pro
visioning remains the same. Figure 4.15 shows QoS separation results across m = 16
aggregate-flow service classes for the same network configuration as Figure 4.6 (see
Section 4.2.2) except for the difference th at the traffic sources are VBRPoisson
with the same average d ata rates.
60
e ta = 15
e ta = 13
e ta * 11
eta = 9
eta = 7
eta = 5
eta = 3
0.8
0.6
----.......
.......
......
.......
......
e ta = 15 ----e ta 13 .......
55
50
45
40
35
0.4
30
25
0.2
20
10
11
12
14
13
bandwidth (Mbps)
15
15
16
10
11
12
14
13
bandwidth (Mbps)
15
16
Both the packet loss and delay plots show th at QoS separation is achieved, and
moreover, burstiness im parts a more gradual (or smooth) change in the overall QoS
as a function of bottleneck bandwidth due to the absence of threshold effect charac
teristic of CBR traffic.
Figure 4.16 shows the impact of bounded, discrete label set size L under VBR
traffic which corresponds to the set-up in Figure 4.10 (Section 4.2.3) for CBR traffic.
As with the CBR traffic case, we observe an increased power of QoS resolution as L is
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
62
increased (only shown for L 4 and 16 due to space constraints). The principal qual
itative difference, as with Figure 4.15, is the more gradual change of the performance
curve which is affected by burstiness. In essence, burstiness does not add additional
complications to QoS provisioning above and beyond its usual impact with respect
to queuing, multiplexing gain, and so forth, which can be immensely subtlein their
own rightdepending on the traffic properties.
eta = 3 ----eta * 2 ----eta * 1 .......
0.8
eta = 0
e ta * 16 ----e ta * 1 3 .......
e ta 11 -----
0.8
0.6
(0
S.
0.4
0.4 >
0.2
0.2
10
12
14
16
bandwidth (Mbps)
10
11
12
13
14
bandwidth (Mbps)
15
16
Figure 4.16. Impact of finite label set size L on QoS for VBR traffic. Left: L=4;
Right: L=16.
4.2.6
Tim e Evolution
In this section, we show th at end-to-end adaptive label controlin conjunction
with the optimal aggregate-flow per-hop control network substrateleads to stable
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
63
1
eta * 15
56
6 ta 13
eta = 11
0.6
e ta 13
e ta 11
e ta = 5
0.6
0.4
0.2
0
10
11
12
13
14
bandwidth (Mbps)
15
16
10
11
12
13
14
bandwidth (Mbps)
15
16
time evolutions. The QoS exported by the service classes and the end-to-end QoS
received by individual user flows is commensurately stable.
Figure 4.18 (top row) shows the label value dynamics of adaptive label control for
an L = 16 system with n = 25 users grouped into
rate requirements 0.1 (users 0 and 1), 0.15 (users 2-4), 0.2 (users 5-7), 0.3 (users 8-10),
0.4 (users 11-14), 0.5 (users 15-18), 0.6 (users 19-21), and best-effort (users 22-24).
We show the rj value traces for three of the eight user groups. First, we observe th at
in spite of each individual user flow executing its end-to-end adaptive label control
independently of all other user flowsincluding those in the same group to which each
flow is oblivioususer flows with the same QoS requirement aggregate to the same
service class. Second, the
77
period. The length of the transient period is a function of feedback control parameters
th a t are not specific to optimal aggregate-flow scheduling. Third, the brief label value
perturbations in the groups comprised of users 0 , 1 , and users 15-18 show th at QoS is
not guaranteed. Figure 4.18 (bottom row) shows the corresponding measured packet
loss rate traces observed at the receiver. We observe th at the rendered end-to-end QoS
is stable, with the label perturbations reflecting the corresponding QoS perturbations
in the packet loss trace.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
64
1
U8f0 ----- *
14
14
ueerlS -
userl ......
user 16
userlO
12
user17 -
12
user 18
10
8
6
j
a la AW
~ r ........
tb m
W lm
/ \ r
20
40
60
80
(see)
100
120
J __ LL
ml
'
i
40
time
'
60
lime (eeo)
80
100
120
60
60
100
120
0.6
0.6
0 .4
0.2
1 M
i L
time (sec)
0
time (sec)
20
40
lime (sec)
Figure 4.18. Time evolution of adaptive label control and end-to-end QoS. Top row:
Evolution of label values shown for three user groups with common QoS
requirements (0.1, 0.3, and 0.5). Bottom row: Corresponding trace of measured
end-to-end QoS for user flows belonging to the three QoS groups.
Figure 4.19 shows the impact of increased stringency in the QoS requirement
profile on QoS provisioning performance.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
65
requirementswith fine-granular QoS spacing (note th at the ordinate has been scaled
accordingly).
0.8
0.10
0 .1 5
0 .7
0 .0 5
0 .2 0 -B--
0 .3 0 -*
0 .4 0
0 .5 0 -*0 .6 0
0.6
0 .4
0.5
0 .4
0 .3
0.2
^ Q *...
*--- ::
bandw idth (M bps)
0 .4
0 .3
0.01
0 .3 5
0 .2 5
0 .3
0.2
0 .2 5
&
0.2
0 .1 5
0.1
0.1
0 .0 5
0 .0 5
10.1
1 0 .2 1 0 .3
1 0 .4
1 0 .5
1 0 .6
1 0 .7
1 0 .6
1 0 .9
11
01 0 .5
1 0 .6
1 0 .7
b a n d w id th
1 0 .8
1 0 .9
11
bandw idth
11 .1
1 1 .2
1 1 .3
1 1 .4
Figure 4.19. End-to-end QoS achieved under adaptive label control as a function of
bottleneck bandwidth for successively more stringent QoS requirement profiles
(shown in the legends).
0 .1
and best-effort. Figure 4.20 (top) shows the label value dynamics and convergence
for a subset of three user groups, and Figure 4.20 (bottom) shows the corresponding
end-to-end QoS achieved. The qualitative dynamics are analogous to the previous
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
66
benchmark results with one noticeable quantitative performance difference being the
longer transient period required for convergence. This is, in part, due to the larger
number of flowsmore inter-flow interactions which can impede convergenceand
the increased round-trip time (RTT) of the feedback loop.
14
14
12
12
10
10
50
100
150
lim e
200
260
0
300
50
100
160
tim e
200
260
300
u s e rS
u se rlO u se rll -
jsen
*****
ISO
tim e
200
250
300
SO
100
150
tim e
200
260
300
Figure 4.20. Time evolution of adaptive label control and end-to-end QoS in
many-switch topology (Figure 4.5 (right)) with many flows. Top row: Evolution of
label values shown for three user groups with common QoS requirements (0.1, 0.3,
and 0.5). Bottom row: Corresponding trace of measured end-to-end QoS for user
flows belonging to the three QoS groups.
In addition to the increased noise factor and time lag influence (in general, func
tional or delay-differential equations used in the analysis of feedback congestion con
trol can cause oscillatory behavior [65]), another pertinent factor is the inter-flow
interaction due to property (A2). The latter can make one user flows label control
action adversely affect another flows end-to-end QoS thus increasing the time needed
to quiescence.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
67
Load Imbalance
In Section 4.1.4, we indicated th at an efficient way to provide QoS across multiple
switches on an end-to-end path is to give more responsibility to the lightly loaded
switches than to the heavily loaded ones. In this section, we dem onstrate th at the
optimal aggregate-flow per-hop control exports such properties both statically and
dynamically.
The simulation set-up is as follows: let user flows traverse multiple hops where
they share the bandwidth with cross traffic. The cross traffic sources are configured
such th at each class of the switches receives some amount of cross traffic. Therefore,
by varying the volumes of cross traffic injected into all the classes, we can effectively
control the load of the switches.
w tto h 1
o R
'0
1/ CrossTraffic y
00
I
/"\ "0 "
Cross Trafficy
V'
00
0.8
0.8
0.6
.6
0 .4
0 .4
0.2
.2
w itc h 3 - a -
10
12
14
We first consider the scenario when all the switches are evenly loaded. Figure 4.21
shows the QoS distribution pattern of the system. The left figure depicts the topology
and the load on each switch. The middle figure shows the QoS achieved by each class
at each switch. Since all the switches have similar load, the QoS experienced by the
same class at different switches are comparable. The right figure shows the change
in end-to-end QoS and the QoS achieved at each switch when one user changes its
r] value from 0 to 15. As expected, since all switches are offered similar loads, the
switches take the same responsibilities to improve the QoS of the user.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
68
08
i
0.4
sw itc h ID
10
12
14
e ta
Figure 4.22. QoS distribution on multi-hop path with one heavy-loaded switch and
two light-loaded switches. Left: switch loads. Middle: static QoS distribution.
Right: dynamical QoS distribution.
Next we study the QoS distribution among switches when they are under different
load conditions as depicted in Figure 4.22 (left). Figure 4.22 (middle) shows the static
QoS distribution among the switches by plotting the QoS of all the classes at each
switch. As stated in Section 4.1.4, the classes in the lightly-loaded switches experience
better QoS than the corresponding classes in the heavily-loaded switch. Figure 4.22
(right) shows the more subtle feature, the dynamic QoS distribution among switches.
It depicts the change of the end-to-end QoS and the QoS achieved at each switch when
one user changes its r\ value from 0 to 15. In Section 4.1.4, we stated th at when one
user increases rj value to improve its QoS, an efficient way is to put more responsibility
on the lightly-loaded switch. Figure 4.22 (right) verifies th at our optimal aggregateflow per-hop control exhibits this property. As rj increases, we observe the packet loss
rate at the lighted-loaded switch decreases faster than it does at the heavily-loaded
switch.
The QoS distribution over load imbalance system is further dem onstrated by Fig
ure 4.23 where the switches along the path are configured with four different patterns
of loads: (High, low, low), (low, high, low), (low, low, high), and (medium, medium,
medium) respectively. The Figure describes the actual QoS achieved at each switches
under these four different load imbalance patterns to satisfy a given QoS target (packet
loss rate = 0.15). We see th at the system adaptively distributes QoS responsibility
among the switches to meet the end-to-end QoS requirement.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
69
0 .2
high-low-low
low-high-low
low-low-high
m ed ium -m edium -m edlum
0.18
0.16
_
-----....... .
.......
0.14
0.12
a.
0.1
0.08
0.06
0.04
0.0 2
olj
1
L.ii.1
2
it
3
sw itch ID
Figure 4.23. To satisfy given QoS target, the actual QoS achieved at each switch
with respect to different load imbalance patterns.
4.3
Conclusion
In this chapter, we advance previous theoretical work on optimal aggregate-flow
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
70
5.1
System Design
5.1.1
K ey issues
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
71
We also expect the optimal per-hop control may coexist with other QoS solutions
in practice. Thus our design reuses many existing QoS mechanisms provided in Cisco
routers and provides interface for flexible user configuration.
The platforms we use are Cisco 7200 series routers with Cisco Internetwork Op
erating System (IOS) version 12.2. The optimal per-hop control implementation can
also be transplanted to other platforms with minor change.
5.1.2
Overall Structure
In our design, the optimal per-hop control is built upon class based weight fair
queue (CBWFQ) mechanism in Cisco routers (cf. [80] for an overview) and its func
tionality can take effects on individual output interfaces. If enabled, the optimal
per-hop control intercepts and processes packets in Cisco express forwarding (cf. [78]
for more information) which is the default packet process mode in Cisco 7200 series
routers.
In express forwarding mode, packets are handled by interrupt when received.
Following is a general description of the packet process procedure during express
forwarding when CBWFQ is configured on the corresponding output interface [80, 79].
1. The interface processor first detects there is a packet on the network media,
and transfers this packet to the input/output memory on the router.
2. The interface processor generates a receive interrupt. During this interrupt, the
central processor determines what the type of the packet (IP), and then begins
to switch the packet.
3. The processor searches the route cache to determine if the packets destination
is reachable, what the output interface should be, what the next hop towards
this destination is, and finally, what MAC header the packet should have to
successfully reach the next hop. The processor uses this information to rewrite
the packets MAC header.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
72
4. When CBWFQ is enable on the outbound interface, the processor decides which
class to put the packet and copies the packet to the queue of the class. The
receive interrupt then returns, and the process th at was running on the processor
before the interrupt occurred continues running.
5. After the transmission of the current outgoing packet is completed, the output
interface processor generates an interrupt. During the interrupt, the central pro
cessor determines which packet to send next based on the CBWFQ algorithm,
copies the packet to the transm it queue of the interface, then returns.
6
. The output interface processor detects the packet on its transm it queue, and
transfers the packet onto the network media.
In the above procedure, after determining the output interface of the packet and
before putting the packet into the output queue of the interface, the IOS detects
th at the optimal per-hop control is enabled, and then passes control to the optimal
per-hop control module (referred as OPC module from now on).
Figure 5.1 depicts the overall structure of optimal per-hop control module.
LTimer,
W e ig h t'
C o n tro lle r
C la s s
M a p p in g
C o u n te r
C la s s
C o n tro l
C la s s
W e ig h ts
B u ffe r
cm
W FQ
S c h e d u le r
C la s s ifie r
mu
Figure 5.1. Structure of optimal aggregate-flow per-hop control module
implemented in Cisco routers.
The OPC module has two components: classifier, which is packet-driven, and
weight controller, which is timer-driven. The data abstraction used and/or updated
by OPC module are:
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
73
Class mapping table: determines the mapping from DSCP values to class in
dices.
Counters: records the traffic characteristics of classes during the last time pe
riod, including number of packets received and number of packets dropped.
Class weights: the weight assignment (bandwidth sharing percentage) of classes
in CBWFQ.
Class control table: the most im portant data structure in OPC module. It
contains the control parameters used to calculate the class weights (cf. Fig
ure 4.1.1). Our design supports the scaling function enhancement (cf. Sec
tion 4.1.3), thus the scaling function results of DSCP values are contained. The
parameters in class control table can be flexiblely configured through Command
Line Interface (CLI) of Cisco routers. For this purpose, link list is a preferred
implementation.
When a packet is passed to OPC module, the classifier first looks up the DSCP
value at the packet header and decides which class this packet should go to based on
the information in the class mapping table, then updates the corresponding counters
and puts the packet into the buffer of the target class. In the simplified casethe
number of DSCP used is equal to the number of class configured at CBWFQthe
mapping from DSCP to class index is one to one (cf. Section 4.1.1). To reduce over
head, we use simple counters, together with existing traffic measurement mechanism
provided by IOS, to record the traffic characteristics of classes.
The weight controller is a timer-driven module whose time interval can be set
through CLI. When triggered, the weight controller first computes the weights of the
classes based on the counter values and the information stored in class control table
following the algorithm described in Figure 4.1.1 (or Figure 4.1.3 if scaling function
is used), then updates the weights for CBWFQ, and finally resets the counters. To
reduce overhead, we use a back-end process to act as weight controller. The timer
inaccuracy is handled accordingly. Section 5.1.3 provides further details.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
74
5.1.3
We further simplified the algorithm described in Figure 4.1.1 (or Figure 4.1.3
when scaling function is used) to improve system efficiency. First, rewrite the weight
computation equation in Figure 4.1.1 as follows:
Oik =
,
(1 - V)
(1 -
Akfjk
: +
i
t f
T .U x
u) i
+ v -
Yr
\j
1
Xk
V
Yt
~~7iin
Y )m ax~ t)m in
\j
1
A*(* - mi)
+y_ ^ _
E f= ,
- )
E i= ,v
* e [j.z,].
1,1
In practice, best-effort traffic exists and rjmin 0. Thus, we dont need to keep
track of 77mjn which takes 0 ( n ) time and the above equation can be simplified as
\k
\fc~Jc
* 611,4
(511)
Ak
+ '/
L ^
|1 ,4
(5' 1'2)
Equation (5.1.2) is used by weight controller module. Note th at the tim er inaccuracy
due to weight controller being back-end process does not influence the final weight
calculation results. When scaling function is used, the corresponding equation will
be
Oik = (1 V)
+ u ^~ ,
A3a(rfi)
Z U AJ
k e [1,L\.
(5.1.3)
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
75
Pk, let B be the integer representing the maximum range of (3k, k [1,L], then
ftk = oikB. Our simulation results show th at B > 512 suffices in terms of accuracy
it achieves the same performance results as float weights are used in CBWFQ. The
order of operation in Equation (5.1.3) and (5.1.2) is arranged in the way such that
round-off errors are minimized.
When updating CBWFQ, ftk, k [1 ,L] needs to be converted into bandwidth
share, the d ata format used by CBWFQ.
5.1.4
The parameters of OPC module can be configured through CLI using existing
Cisco QoS configuration framework class-map and policy-map. Class-map defines
the recognized DSCP values or DSCP sets. Policy-map defines the behavior of perhop control including number of classes used, the mapping from DSCP values (or sets)
to classes, and the scaling function values for classes. Policy-map is set on interface
basis, thus an ISP can enforce different per-hop control policies on different interfaces.
There are also some parameters global to all interfaces, including the tim er inter
val of weight controller. This simplifies the weight controller designaddition data
structure (delta list) is not needed to keep track of timer and the recalculation of the
class weights can be done uniformly for all interfaces.
5.2
Lab at Purdue University collectively built optimal per-hop control in Cisco routers.
The collaboration protocol is as follows: First both parties jointly design the overall
structure of optimal per-hop control (OPC module). Next, Network System Lab
provides the pseudo code of OPC module, and Cisco team incorporates the module
with the rest of IOS and compiles a prototype IOS image. The prototype images is
then downloaded and tested by Network System Lab over Q-bahn testbed at Purdue.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
76
The testing results are sent back to Cisco team for debugging. The modified images
will be tested and debugged in the same way repeatedly until a final version is reached.
The network configuration for testing follows the ones used in simulation (Figure
5.2)to verify testing results. Some software tools are developed to autom ate the tests.
The whole system development process took
5.3
Benchmarking Results
This section presents the benchmarking and performance evaluation results ob
5.3.1
QoS Differentiation
In this section, we examine the QoS differentiation behavior, the most basic prop
erty, of optimal per-hop control.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
77
classes,
and send different traffic volume to different classes while keeping the total arriving
traffic constant. We measure the average QoS experienced at classes 1-8 and examine
the QoS ordering among these classes under different load distribution.
i
i-----------1
i
i i---------1
i
lo ad s h a r e ------------------
p i s -------------
class index
olass Index
Figure 5.3. QoS separation among classes under different load distribution
Figure 5.3 shows load distribution and the average QoS achieved at different
classes. The load distribution is depicted by the percentage of traffic received at
each classes out of the total traffic arrived at the router. The QoS is measured as the
average packet loss rate at each class during the period. Each figure of 5.3 represents
a different load distribution. Class indices are marked on the X-axis. For each class,
the left box represents the load percentage and the right box represents the packet
loss rate. In top left figure, all classes receive same traffic volume thus the load per
centage is 1/8 for all classes. In top right figure, higher classes get more traffic. In
particular, the ratio of load at class 1-8 are 1 : 2 : 3 : 4 : 5 : 6 : 7 : 8 .
left figure, higher classes get less traffic where ratio of load at class
1 -8
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
In bottom
are in reverse
78
order: 8 : 7 : 6 : 5 : 4 : 3 : 2 : 1 .
: 8 : 7 : 5 : 3 : 1. In all the
e ta = 0
e ta = 2
0.8
0.8
0.6
0.6
0 .4
0 .4
0.2
0.2
0
30
28
26
24
22
20
bandw idth (M bps)
18
16
e ta = 6
e ta = 8
e ta = 1 0
e t a s 12
e ta = 1 4
15
14
13
12
11
10
bandw idth (M bps)
Figure 5.4. QoS separation among classes under different congestion level
Next, as a complement to the above setup, we vary the total amount of arriving
traffic at the router, which determines the congestion level and overall QoS at the
router, while keeping the load distribution among the classes constant. Figure 5.4
shows the QoS achieved at different classes under different congestion level. The traffic
load is evenly distributed among the classes, i.e. all classes receive same percentages of
total traffic, and the congestion level is increased/decreased by increasing/decreasing
the traffic sending to individual classes simultaneously. Figure 5.4 (left) demonstrates
the result when
classes are used and Figure 5.4 (right) demonstrates the result when
16 classes are used. The X-axis represents the traffic rate (M b/s) received per class
and the Y-positions of the points mark the QoS (packet loss rate) achieved at the
classes. We observe the following: although the overall QoS is getting better/w orse
as the congestion level (traffic rate per class) is decreased/increased, the semantics
higher class gets better QoS is preserved.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
79
5.3.2
Dynamic Environment
depicts the total number of active sessions over the testbed as time evolves. The left
middle figure depicts the percentage of sessions generated on each end host. The left
bottom figure depicts the sessions distribution among the end host as time evolves. At
any given time, the average number of sessions over all hosts and the corresponding
standard deviation are displayed.
The right figures in 5.5 demonstrates the class assignment and QoS achieved. The
right top figure depicts the percentage of sessions selecting different classes. The
right middle figure depicts the percentage of sessions th at achieve different levels
of QoS satisfaction. The right bottom figure, which is the most im portant figure,
demonstrates the relation between QoS satisfaction level and the class selected. The
average QoS satisfaction ratios for sessions selecting different classes are shown in the
right bottom figure.
The experiment results confirms th at the optimal per-hop control achieve higher
classes get better QoS semantics in any scenarios including dynamic environments.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
80
5.4
Conclusion
This chapter describes our experience on building the optimal per-hop control in
Cisco routers and benchmarking over Q-bahn testbed. Our results shows th at the
optimal per-hop control is a practical and implementable scheme which can provide
predictable services in realistic and dynamic network environments.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
81
140
I n j o s histogram
120
100
80
60
40
20
0 1
11/12
10:00:00
11/12
10:20:00
11/12
10:40:00
11/12
11:00:00
11/12
11:20:00
11/12
11:40:00
11/12
12:00:00
11/12
12:20:00
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.65 0.9 0.95 1
Q o S Satisfaction Ratio
E n d S y stem ID
T o S v s. Q o S Satisfaction Ratio
std. dev.
a vg se ssio n s
a v e ra g e q o e ratio
0.9
06
0.7
0 .6
97^7
0.4
i
02
0.1
1 0 :00:00
11/12
11:0 0 :0 0
11/12
11:20:00
00 1
10 11 12 13 14 15 16 17
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
82
6
6.1
In this chapter, we study the stochastic modeling and optimization of aggregateflow scheduling in multi-class G / G / l queueing systems, where each user flow has
a QoS requirement and schedulers allocate resources such th at user satisfaction for
the whole system is maximized. This work is motivated by our results in Chapter 3
on optimal per-hop control design which did not consider the impact of stochasticity of the input: arrival processes with general interarrival and service times. For
certain scheduler spacesin particular, work conserving, non-preemptive and nonanticipative schedulersvarious forms of Kleinrocks conservation law [40] can be
shown to hold. The optimum scheduling problem then asks: Given a target per
formance or quality of service (QoS) requirement associated with the input, find a
scheduler th a t comes closest, in a suitable sense, to achieving the desired performance.
Kleinrocks conservation law has the effect of making the optimal scheduling problem
constrained, as the performance space of the input flows must lie on a hyperplane
defined by the conservation law.
The optimal per-flow scheduling problem in multi-class queueing systems with n
flows or types was pioneered by Coffman and M itrani [19], with a string of works
(cf. Section 6.2 for related work) th at have focused on characterizing the structure of
the performance space. Our work can be viewed as extending Coffman and M itranis
per-flow scheduling framework by introducing aggregate-flow schedulers th at capture
the constraint th at a router may only have mn, m < n, service classes at its disposal.
In Chapter
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
83
(i). The resultant m (or less) aggregated super-flows are then treated as input to
an m-flow per-flow scheduler, which, in conjunction with the classifier , defines the
aggregate-flow scheduler. The goodness of an aggregate-flow scheduler is evalu
ated with respect to the QoS received by individual flows, hence the criterion of
optimality remains unchanged. Since m = n and = identity map corresponds to
per-flow schedulers, the optimal aggregate-flow scheduling framework can be viewed
as a generalization of Coffman and M itranis per-flow scheduling framework.
6.1.1
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
84
6.1.2
N ew Contribution
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
85
conservation law hyperpJane
performance space
aggregate-flow subspace
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
86
point toward the applicability of the hardness result to general queueing systems,
even for very simple queueing systems such as M /M /1 whose performance space sat
isfies (i) and (ii)i.e., they are not assumptionsoptimal aggregate-flow scheduling
remains NP-hard.
The rest of the chapter is organized as follows. In the next section we discuss re
lated works. In Section 6.3, we introduce a multi-class queueing framework including
assumptions on the stochastic input and scheduler space. We then define the optimal
aggregate-flow scheduling problem for multi-class G / G / l systems. In Section 6.4, we
describe the structure of optimal aggregate-flow scheduling and state the main result.
Section 6.5 proves hardness of one-dimensional clustering with linear constraints, a
key component in the proof of the main result. The results in this chapter are also
presented in [71].
6.2
R elated Work
The problem of finding an optimal scheduler for a given performance target under
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
87
11
polynomial in n. For linear objective functions where the optimal solution must be a
vertex of the base polytope of the polymatroid, this dependence of the input size on
a compact representation of the constraints is removed. This is due to the fact that
an optimal solution can be recovered from the n coefficients of the objective function.
Poly-time solvability of linear objective functions extends to generalized conservation
laws. An im portant negative result was proved by Papadimitriou and Tsitsiklis [58]
for optimal control of closed multi-class queueing networks which they showed to be
EXP-complete. The queueing system considered, however, is significantly different in
th at it is a closed queueing network where stochasticity only arises from the (expo
nential) service time distribution, and combinatorial hardness is built in at multiple
levels including routing and scheduling. Thus, it is not surprising th at the stochas
tic control problem considered is computationally hard, although the degree of its
hardness (EXP-complete) is interesting.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
88
k > 2, unconstrained clustering under MMSE remains an open problem [6 , 35, 28].
Gal and Klots [27] solved a form of one-dimensional unconstrained clustering where
the objective is to maximize the sum of average group weights over all groups.
Statistical multiplexinga form of flow aggregationhas been studied with the
aim of characterizing the multiplexing gain via envelop curves and effective band
width [4, 21, 33,
86
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
89
6.3
System M odel
The system model is comprised of four parts. The first part describes the stochas
6.3.1
Consider an n-flow (or type) G / G / l system with general interarrival and service
times. Let U = (14), 14 = [Tk, *4, 14], k G Z, be a sequence of random variables rep
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
90
resenting the input, where Tk R+ (the positive reals excluding 0) is the interarrival
time between the A;-th and (k + l)-th arriving packets, Sk K+ is the service time
of the k-th packet, and Ck
Following [5], the evolution of the system at arrival instants may be described by a
recursive stochastic equation
X k+1 = f ( X k, Uk) = f ( X k, [Tk, Sk, Ck}),
ke Z
(6.3.1)
where X k denotes the state of the system seen by the A;-th arriving packet, and / is a
measurable function on the joint probability space and captures the scheduling disci
pline. For stochastic schedulers, an additional random input is needed to represent the
behavior of / . For strictly stationary input, (6.3.1) can be shown to have well-defined
solutions [5]. For our purposes, it suffices to have a stochastic framework wherein
Kleinrocks conservation law holds, which need not be restricted to strictly stationary
input. For example, this applies to second-order self-similar processes which are used
to model long-range dependence in Internet traffic.
Recall in Chapter 2, we specify aggregate-flow schedulers by assuming a many-toone function, : { 1 , . . . , n} > { 1 , . . . , m}, m < n, called a classifier, and requiring
th at a scheduler maps each flow i G { 1 , . . . , n} to one of m service classes as specified
by (i). The resultant m (or less) aggregated super-flows are then treated as input to
an m-flow per-flow scheduler, which, in conjunction with the classifier , defines the
aggregate-flow scheduler.
D e fin itio n 6.3.2
f ( X k,[Tk, S k, t ( C k) ]),
kez.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
91
6.3.2
n = { w : 3f e S , w = M U ) } -
Thus, % is the set of performance vectors th at are achievable by some schedulers in the
scheduler space. We use Ha to denote the corresponding aggregate-flow performance
space when / is restricted to be an n-to-m aggregate-flow scheduler.
Let 0 (0i, , 9n) be a desired target performance vector where 0* > 0 repre
sents the performance or QoS requirement of flow i. Under the minimum mean-square
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
92
error criterion of goodness, the per-flow optimal scheduling problem in n-flow multi
class G / G / l systems given input U and scheduler space S is defined as
inf ||w - 0 | | 2
weH
(6.3.3)
6.3.3
Conservation Law
i=
queueing system
in steady state,
where c >
^ P iW i = c
i~ l
is a constant that depends on the input.
, pp. 202).
dimensional hyperplane
H* { w : p o w c}
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
(6.3.6)
93
Jointly with (6.3.6), the inequalities lead to a polytope whose vertices are static
priority schedulers. In our work, the weaker form (6.3.6) suffices.
6.3.4
where the union is over all n-to-m classifiers . Thus, Qm denotes the set
= wt;(i),
* = 1, , n
(6.3.7)
where flows belonging to the same service class experience the same performance, it
holds th at
nac n n gm.
(6.3.8)
Let q > 0 denote the performance vector achieved by the FIFO scheduler. Note
th at in the definition of classifier, need not be surjective. Hence, for 1 < m < n,
FIFO is an n-to-m aggregate-flow scheduler and q E'Ha- By work conservation and
assumption (6.3.7), we have qx q2 = = qn = c/p. The following assumption
( open ball containment property) provides an interface between the stochastic and
algorithmic components of optimal aggregate-flow scheduling:
3r >
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
(6.3.9)
94
where Br(q) C Kn is the open ball of radius r centered around q. We will show that
assumption (6.3.9) suffices to make the main complexity result hold for any multi-class
G / G / l system when Kleinrocks conservation law holds.
6.4
6.4.1
M ain Result
Theorem 6.4.1
vector
assume Kleinrocks conservation law (6.3.6) holds and the open ball containment prop
erty (6.3.9) on 'Ha is satisfied.
Theorem 6.4.1 says th at for multi-class queueing systems with general input where
Kleinrocks conservation law holds and containment of a well-structured ball in Ha
is satisfied, the problem of optimally grouping n input flows into m service classes
such th a t the realized performance comes closest to users target performance in the
mean-square sense is computationally hard. In fact, our proof shows th at a special
case of the main result with m 2 is already NP-hard. For strong conservation laws,
H is convex and (6.3.9) is more easily satisfied.
The decision problem corresponding to Theorem 6.4.1 is given by the following.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
95
P ro b le m 6.4.2 [OPT-AGG]
6.4.2
D e c o m p o sitio n
i.e., 9 is the unique solution to m in^e^. ||i 0 O f . For any A C %*, w* is a solution
to
inf I|i0 O f
weA
wA
(6-4-4)
6
A we have
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
96
P ro p o s itio n 6.4.5
satisfies
wi - 0\ _
Pi
_ wn - 6n
(6.4.6)
Pn
0 Br/2(q)nn*
where r >
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
97
6.4.3
Clustering
~ ^(*)>
* =
!)
i^-
Proposition 6.4.8
solution.
Proof. We can consider two cases: (i) K > ( r / 2 ) 2 and (ii) K < ( r j 2)2. In case (i),
w q, and (i) = 1 for i = 1 , . . . , n and d\ = q\ are solutions to OPT-AGG,; and
OPT-CLUST, respectively.
Consider case (ii). Assume OPT-AGG" has a solution w . The radius of the open
ball in the definition of OPT-AGG" implies th at w G Br(q). Since w G Tta, by (6.3.9),
w G Qm. Thus there exist and d such th at w = 1r(, d), and , d is a solution to
OPT-CLUST. In the reverse direction, w = 1r(, d) is a solution to OPT-AGG".
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
98
6.4.4
To prove NP-completeness of OPT-CLUST, we first put OPT-CLUST into a polynomially equivalent form OPT-CLUST'.
%*.
7t ( ,
Lemma 6.4.10
Before proving Lemma 6.4.10, we give Proposition 6.4.11 which is needed in the
proof of the lemma. The proposition says: performing optimal clustering, given a
target performance vector on li* th at is far away from q, is equivalent to performing
optimal clustering with respect to a target performance vectoractually, a continuum
of vectors on the line connecting the original target vector and qarbitrarily close
to q. The scaling is determined by the parameter c > 0 in the proposition.
Proposition 6.4.11
where qi y>n0p
tt(', d!) o p = 0 o p
Rm such that
) I I 2 < 4cL'
for * = ! , , n.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
99
for i = 1, ,m where q =
. Then
id ) q
_ i
n? , a ) = q + ------------
We have
IWc",d")-(9 + ^
? )ll2 =
~(g + ^ p ) l l 2
iW
H ,,
<
~
( q + - - - ** ^ - ) o p = ( g +
c2
and
tt(", d ) o p =
) P
We have 0
0' - q
0 = q + -------2
c
o
p= q
p and
Thus
tt(', <) O p =
O' O p
(6.4.12)
d) - O f < K ,
tt( , d) G
H a.
(6.4.13)
Suppose ' and dl satisfy (6.4.12). By Proposition 6.4.11, 3" and d" such th at
||tt(", d") - 0 | | 2 < K ,
tt(", d") o p = 0 o p .
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
(6.4.14)
100
distance r of q. We have
M C , d*)~ q f
<
<
2 ||9 -
9 ||2
\\2
|r ,
(ii)
OPT-CLUST
OPT-CLUST'
Theorem 6.4.15
OPT-CLUST1 is NP-complete.
6.5
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
101
6.5.1
, , m , and
= [r|, , r] as r | =
R f and 6
P* ^or 3 ~
>m Let
= n ( t,r () .
, e] as
Lemma 6.5.2
Lemma 6.5.2 is proved with the help of the next proposition which states th at for
a given classifier , the optimal performance vector
Given , 0
P ro p o s itio n 6.5.3
K" , p
7 t( ,
d) o p
(6.5.4)
o p is given by
E . i s | K r | - E UOiPi
d( = e ( - r *
Furthermore, let
- . I W
'
o p 0 o p
* *1
,1-Rf" 2
(6.5.6)
and
\B -
||0
- B { | | 2 + (E i
P)
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
(6-5.7)
102
Proof.
7 t(,
Given , we can use Lagrange multipliers to get d^. Rewrite (6.5.4) and
d )o p = 0 o p a s
m
mj n X
m
(6i ~
pi ~ 0 p = 0
X dJ X
j = 1 f(*)=j
i= l
(t)=j
m
X (
0 * - ^ ) 2
+ a (X ^
j = l (i)=j
j=1
Y ,P * - 0
o p )-
(*)=7
We have
A T-
- ^ 2 ( 0 i - d i ) + A ^ ft = O,
f(0 =J
C(*)=J
^
7-
aT
j = 1, , m,
(6.5.8)
XI
i=i
X I pi ~ 0 p = CW=i
(6-5,9)
From (6.5.8),
^ = ^
- * ^
=4-54.
'
<6-5-10>
E " ,e |E WWf t - 2 g P
E = 1 >1 , ) = , f t
E " , I ^ K - j -
E " =1^
E J ., |s |l ( i ) J
Thus
(6-5.il)
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
103
Note th at (6.5.5) is a vector version of (6.5.11). By the definition of 7r, (6.5.6) follows
from (6.5.5). For (6.5.7),
lie - E { | | 2 + l|.{ll2( ^ f n ^ |p P ) 2
+ 2(9 - E ^ o R f
Et 0 0 -0 0 0
^
for a given
and w o p = 0 o p,
\\0 w\\2 = \\0 w^\\2 + ||iO tn | | 2
where
is defined by (6.5.6).
Es)
(w t -
w) = ^ 2 ^ 2
j = 1 (i)=j
~ e\ ) i d\ ~ dj) = 0
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
104
since
- e|) =
m
and
m
r l ( d l ~ d j) = Y j J 2
R s(w s - w ) = J 2
j= 1 (i)= j
p i (d l - d j ) = p w ( i - p w
Q.
j = l (i)= j
Thus,
(0 - w s ) o (ti> - w )
- .E* +
(0
|)
E ^o p 0 o p
g 0| | ^ | | 2 P )
(lU
w)
E ^o p 0 o p
iu) H-----^ H p [|2------ R$ O (w
w)
R>
0
We have
6.5.2
\0 w \\2 =
||0
||0
w\\2
Theorem 6.5.13
OPT-CLUST" is NP-complete.
Given X \, , X n, X i G N, i 1, ,n , n
5 >
ies
= sX >
i= i
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
105
P ro p o s itio n 6.5.15
Given real numbers w[, , w'k, pi, , p'k and w", , w",
p'/, , p with mean ui', p', w", p", respectively, and k, >
, define wi, - ,w n,
w'i
< i < k,
Wi
w"_k ,
k+
p'i
< i < n,
<i<k,
Pi
Pi-k > k + 1 < * < n Let w, p be the mean of the Wi and p is, respectively. Then
k
j^(Wi - w)2 =
izz 1
kl
k+
<sS
>.
1
^ 2 ( Wi ~ ) Pi
i1
i1
ii
Y l w - ')2 + E
')p'i
k
k + {
+ Y lW
i-1
(6.5.17)
Proof.
J 2 (w i - w ) 2
i= 1
^ 2 ( wi - w)2 +
i =1
i =1
~ w ^2
^ 2 ,(W'i ~
i=l
+ k ^ )>~
^ ) 2
^ Ifa i ~
*i-= 1
k
k2
'
5 > - - ') 2 + e
- ")2 +
')2
<=1
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
^ ) 2
106
] P ( W i - w )pi
i =1
_ w )p'i + i , ( wi ~
i =1
i
1
k
w ) p '1
- ')p'i + J 2 ( wi - w")pi
i =1
i =1
+ 5 3 ^ ~ ^P i +
i =1
i=l
i=l
* ,
i=l
i =1
kt
e m
i =1
- * v .+ E w
i=l
- ft
Proof of Theorem 6.5.13. It is easy to check th at the problem is in NP. We will reduce
EVEN-PARTITION to OPT-CLUST". Given an instance of EVEN-PARTITION
specified by Ai , - - - ,X i, let X max, X min denote the maximum and minimum, k =
| { 1 ) +
, and let
2(fc + | )
C = max
^(44))
(fc+^)(fe+^)^ _ ^ (4 > 4 ) )
+ 1.
Construct an instance of OPT-CLUST" specified by n, m, K , p, 0 as follows:
n
2k + ,
AT =
kt
*; +
1,
0i =
Pi
= P i/A
3,
k + + 1 < i < n,
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
107
where
I
1 < i < k,
C + -Xj-fc ,
/c + l < i < A ; + T ,
A; + + l < * < n .
Yies X i = \ Yl=i X u
if and oniy if 3
such th at
lie - w 5 | | 2 = ye - y i 2 + ( Ef '
<
x u
Define as
%e { l , - - - ,k } U{i : i - k e S},
i {k + + 1,
n} U { i : i k 51}.
A; +
Let y =
, then
2
0 oP - Et op
| +| |Ae: - B ||2
7 = k + l - e)2 +
ies\
= U- Using (6.5.17), we have
A^l
r( 2 - l ) 2 + - ^r ( 3 - 2 ) 2 -
- e)2
ies|
.o
I A:
( * , - e\)Pi + ^ 2 ( 0i ~ e\)pi
ie,S'l
ies|
1,
*- *
,1}
th at satisfies |5 | = | and
Y ie s X i
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
(6 .5.18)
108
where S aUS'a = {1, , k}, S bl)S'b = { k + 1, , k+}, and SCUS'C= {k+ + 1 , , n}.
Thus, all must fall into one of the following cases:
(a) S 0 =
(b) Sa =
{ l , - . . , f c } , S e = 0, \Sb\ ^ f;
(d) 0 C 5 a C { l , . . . , A } , 5 c = 0;
(e) Sa =
Note th a t (d) follows from (c), and (e) follows from (a), (b) and (c). We will show
th a t ||0 u>f| | 2 > K holds for (a), (b), and (c).
Case (a).
Let yl =
y2 =
j f f l - - , and rb =
P' =
X > - e)2 + E w
- e(>2
ie s |
and
O o p - E f : o p
^ (0 * -
e\)pi + ^ ( 0 * -
ies\
e\)pi
ies%
r f i < 2 - i><rs -
T - r r ( n - K) /
fc +
1) +
- 2 ) d - >i)
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
109
Let |S,| = t u
Case (b).
P' =
/>, =
|SJ| = l 2, Vl = s + y t * , y2 =
and
rj, =
- 2= i r k + ^
By the definition of C,
C >
+fcy2 +fcyi +
Since k |( 1) +
, k A ( li , l 2) > 0. Hence,
* * (4 -4 0
v\
* + < j"
kh
fc + f i
,,
. >
(Jfe-Mi)(k + / a) 1
2,1
= j ^ t ~ M b "'e have
k l 2 \ (n
k +lj(
k + L Vl
m
fc 2
k + lo V2
- l 2)
> (* + <,)(* + 4 )
H tjjJ k lM (r , y
, .V
V
2(* + I)
lt + A + <:''
Divide both sides by C + X ma;r + A: > 0 and square them. Since l\ l 2 > 0,
((g fe - F fe H C - 1 ) + g U
(C + X ^ + k ) 2
>
k2( h - l 2)2
( ^ + ^)fc + W
(k + h Y i k + l t f
2(k + I)
k2(l1 - 2)2
P2
-).
k + l 2t /
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
(6.5.21)
110
Thus
{ O o p - E ^ o p )2
m *
E te s i( r } ) 2 + E eS|( r | )
r b)2
(* + < a r a
fc+ ^ l
fe+ < 2
(^ r(g + i - D - ^ ( g + ift-i))3
l(C + l)+ fla
(^ 2 (C + !!/2 )+ fc )2
fc+l
fc+f2
( ( & ~ jfifeXC ~ 1 ) + F f e y ~ g f c ^
>
< ? (C + !+ fc )2
k+ ii
k+t2
>
) 2
^ (C + 3 /2 + fc )2
k 2( i - 2) 2
The second equality follows from Proposition 6.5.15. The last inequality follows from
(6.5.21).
Prom (6.5.20) and (6.5.22), we get
||* - * ||
k + 2
2(k + h ) ( k + 2)(k + I)
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
Ill
Case (c).
By (6.5.16),
1 1 0 -jy 2 =
' ( 0 i- 4 ) 2+ Y , & - 4 ) 2
iesi
*esf
k iji 2 2
(fcl+Jl)^l a
2ji y
k\ + j i
k\ + ji + l\ \
k\ + j i )
^2 j 2 ^ 2
( ^ 2 + J2 K 2 A
2 fc2
\ 2
k2 + j 2
k2 + j 2 + 2 '
k2 + j 2 )
1 feiJi
|
h
(ki ~ j i ) 2 | 1 k2j 2 |
k\ + i i
&i + j i -M i ki + ji
k2 + ,72
I
k2 +
O 2 k2)2
+ ^ 2 ^2 + J 2
Noting k \ j\ j 2k2
since ki + k2 = ji + j 2 = k, we have
ii9 _ B t ii. >
-
i P ~ + u l \ } kr h ? +
ki + ji
k\ + ji + k\ + ji
i ^ - + u
k2 + j 2 ki + j\ + ki + ji
. * '* +
1 .....+ i - M L r .
k\ + j\
k\ + ji + k \+ j 1
k2 + j 2
(6.5.23)
.
>
\ \ 0 - E e \\2
> a
(ki~ji)2
k2{ + 2 jl )2
4 , kljl. + t,
T - t t tt
rr +
ki+ji
(k\ + j\ + ){k\ + j\)
(k + j i + )(ki + j i + )
4 k \ji + (ki + j\)
k2( + 2 j i ) 2
k\ + j\ +
(k + ji + ){ki + j i + )
_ (k + ji) + 4kji
k + ji +
>
kt
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
112
6.6
In this chapter, we have extended Coffman and M itranis optimal per-flow schedul
ing framework [19] by considering aggregate-flow schedulers for general stochas
tic input under work-conserving, non-preemptive and non-anticipative schedulers.
Whereas optimal per-flow scheduling subject to conservation laws is poly-time
solvableas is optimal aggregate-flow scheduling without conservation lawswe show
th a t optimal aggregate-flow scheduling in multi-class G /G /l systems subject to Kleinrocks conservation law is NP-hard.
There remain a number of open problems. They include:
Approximation. A natural question to explore is the approximability property
of optimal aggregate-flow scheduling. The optimization version of PARTITION
more precisely, EVEN-PARTITION, which was used to show th at OPT-CLUST" is
NP-completeis known to have a polynomial time approximation scheme [1 ]. A
heuristic approach is to solve the unconstrained optimization problem which can be
done in cubic time using dynamic programming. We conjecture th at OPT-CLUST"
is much harder to approximate than PARTITION, perhaps even not constant factor
approximable.
Objective function. This chapter considered an MMSE objective function for both
its practical relevance and its common use in optimization and control. Other objec
tive functions of interest include the Li-norm ||m 0 ||, signed optimization problems
corresponding to w < 0 including one th at counts how many user requirements are
satisfied, proportional fairness, and linear objective functions. For a subset of these
objective functions, we can show equivalence of optimal solutions in the per-flow per
formance space. In the aggregate-flow case, the optimal solution for linear objective
functions depends on the right-hand-side of the inequalities of the strong conserva
tion law. This stands in contrast with per-flow optimization of linear functions via
linear programming which only depends on the n normalized coefficients of the objec
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
113
requires th at all flows within a service class receive the same performance. It may
be interesting to explore if the equality constraint can be meaningfully relaxed, for
example, by requiring th at any two flows belonging to the same service class receive
performance th at is at most e apart. The hardness result would not be affected by an
e-relaxation as we have already proved NP-completeness for the more difficult special
case e = 0. However, for approximability relaxation may play a role.
Two-dimensional clustering. When transforming one-dimensional clustering with
linear constraint into an unconstrained form enabled by Proposition 6.5.3, the con
sequent two-dimensional clustering problem bears resemblance to a simpler twodimensional MMSE clustering problem: Given 0 Rn x Rn , find : {1 , . . . , n} >
{1, . . . , m} and d Rm x Rm that minimizes ||7t(, d) 0\\2 where 7 r is the correspond
ing two-dimensional extension. The complexity of unconstrained two-dimensional
MMSE clustering remains open. We believe th at the methods used in this chapter
may be applied to show th at the problem is NP-complete.
Aggregation and efficiency. In addition to optimality, another im portant aspect of
aggregate-flow scheduling involves characterizing the loss of efficiency stemming from
flow aggregation. In previous chapters where stochasticity of the input and conser
vation laws were not considered, a quantitative result on the loss of performance as
a function of the degree of flow aggregation was given (cf. Chapter 3, 4). A similar
exploration may be of interest for the generalized framework. The computational
hardness of optimal aggregate-flow scheduling may have implications on finding effec
tive characterizations of the performance loss, however, this needs not be necessarily
the case.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
114
7
7.1
Thesis Summary
This dissertation studies providing QoS to individual flows using aggregate-flow
scheduling. Our work is carried out on both theoretical and practical sides.
In theory part, we present a theoretical framework to analyze network architec
tures based on aggregate-flow scheduling and study optimal aggregate-flow schedul
ing problem. We show th at the optimal aggregate-flow scheduling problem in general
queueing systems with stochastic input is NP-hard under MMSE QoS provisioning
criterion. The comlexity comes from the combination of conservation law and aggre
gation. Under relative QoS differentiation objective function, we show the optimal
aggregate-flow scheduling problem is poly-time solvable by dynamic programming and
efficent linear algorithm exists in practical scenario where user QoS requirements are
coded in the ToS field of IP header. We study quantitative properties of the induced
optimal aggregate-flow scheduling solution th at are related to class differentiation and
end-to-end QoS provisioning. The optimal solution and its properties jointly build
theoretical fundation for PHB design in Diff-serv networks.
In practice part, we design an optimal aggregate-flow per-hop control th at achieves
the induced optimal aggregate-flow scheduling solution and implement the optimal
per-hop control in Cisco routers. We conduct a comprehensive performance evaluation
by both simulation and experiments over Q-bahn testbed comprised of Cisco routers
running the implemented optimal per-hop control. The benchmarking results confirm
our theoretical framework and analysis, and reveal further quantitative features of
both structural and dynamical properties of the system. Our results, collectively, show
th at user-specified services can be efficiently and effectively achieved over networks
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
115
with optimal aggregate-flow per-hop control substrate when coupled with either openloop or closed-loop (adaptive label control) edge control.
7.2
Future Work
Our study focuses on the core of networks with aggregate-flow scheduling as build
ing blocks. There remain a number of open problems related to other components
and system-wise properties of our QOS provisioning architecture. They include:
Many switch system. The properties A l, A2, and B imposed on per-hop control
play an essential role in our QoS provisioning framework. As discussed in Chapter 2 ,
these three properties are extensible to WAN environment since if a property holds for
any single per-hop control, it also holds for a sequence of hops as a composite function
of individual hops. Thus our results based on the properties apply to both single
switch and many-switch systems. On the other hand, the quantitative features related
to the three properties have only been studied in single switch case. The extension of
quantitative analysis to many switch case will further charecterise system behaviour
and help design more effective and efficient end-to-end control schemes.
End-to-end control. The close loop end-to-end QoS control dynamically adjusts
label values carried in the ToS fields of IP headers to meet users QoS requirements.
Our current scheme increases/decreases label values in accordance with congestion
level without changing d ata rate. Another direction of end-to-end control is to adjust
data rate during congestion. This can be achieved either by using TC P congestion
control or by adding this functionality into close loop end-to-end QoS control. Setting
label value and data rate are both necessary in real networks. Thus, in addition to
studying individual control schemes, we need to analyze interaction between these
two control schemes and design coordinating mechanism between them.
Game theory analysis. We study global resource allocation properties of the sys
tem in the non-cooperative game environment where each user is changing its lable
value independently to maximized its utility. Our stability and optim ality results are
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
116
based on the nonemptyness of A*, the set of configurations where all users QoS re
quirements are satisfied (cf. Section 3.2). The dynamical properties inside A* is also
characterized. The remaining issues on game theory analysis include system stability
when A* is empty, system dynamics outside A*, and the extended game theoretic
structure with selfish service provider as an additional player.
Edge control implementation. In system building part, the most im port task is to
implement a QoS agent th at performs edge control functionality (end-to-end control
and access control). The QoS agent may reside at the edge of the network or in
the end host on behalf of network. The desire feature of QoS agent is application
transparent, i.e. legacy applications can run without knowing QoS agent is setting
the ToS fields of its outgoing packets. The development of QoS agent is the ongoing
work carried out in the network system lab at Purdue University.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
117
LIST OF REFERENCES
[1] G. Ausiello, P. Crescenzi, G. Gambosi, V. Kann, A. Marchetti-Spaccamela, and
M. Protasi. Complexity and Approximation Combinatorial Optimization Prob
lems and Their Approximability Properties. Springer, 1999.
[2] D. Bertsimas. The achievable region method in the optimal control of queueing
systems; formulations, bounds and policies. Queueing Systems, 21(3-4):337-389,
1995.
[3] S. Blake, D. Black, M. Carlson, E. Davies, Z. Wang, and W. Weiss. An archi
tecture for differentiated service. RFC 2475, 1998.
[4] R. Boorstyn, A. Burchard, J. Liebeherr, and C. Oottamakorn. Effective en
velopes: Statistical bounds on multiplexed traffic in packet networks. In Proc.
IEE E INFOCOM 00, 2000.
[5] A. Brandt, P. Franken, and B. Lisek. Stationary Stochastic Models. John Wiley
& Sons, 1990.
[6 ] P. Brucker. On the complexity of clustering problems. In R. Henn, B. Korte,
and W. Oletti, editors, Optimierung und Operations Research, Lecture Notes in
Economics and M athematical Systems. Springer, Berlin, 1978.
[7] H. Chen and D. Yao. Fundamentals of Queueing Networks. Springer, 2001.
[8 ] S. Chen and K. Park. A distributed protocol for multi-class QoS provision in
noncooperative many-switch systems. In Proc. IEEE International Conference
on Network Protocols, pages 98-107, 1998.
[9] S. Chen and K. Park. An architecture for noncooperative QoS provision in
many-switch systems. In Proc. IEEE INFOCOM 99, pages 864-872, 1999.
[10] S. Chen, K. Park, and M. Sitharam. On the ordering properties of GPS routers
for multi-class QoS provision. In Proc. SPIE International Conference on Per
formance and Control of Network Systems, pages 252-265, 1998.
[11] Shaogang Chen. Stratified Best-effort QoS Provisioning in Noncooperative Net
works. PhD thesis, Purdue University, 2000.
[12] D. Clark and W. Fang. Explicit allocation of best-effort packet delivery service.
IE E E /A C M Trans. Networking, 6(4):362-373, 1998.
[13] R. Cocchi, S. Shenker, D. Estrin, and L. Zhang. Pricing in computer networks:
motivation, formulation, and example. IE E E /A C M Trans. Networking, 1(6):614627, 1993.
[14] R. L. Cruz. A calculus for network delay, part I: network elements in isolation.
IEE E Trans. Inform. Theory, 37(1):114131, 1991.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
118
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
119
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
120
[47] W. Lin, R. Zheng, and J. Hou. How to make assured services more assured?
In Proc. IEE E International Conference on Network Protocols, pages 182-191,
1999.
[48] J. Little. A proof for the queueing formula L XW .
9:383-387, 1961.
Operations Research,
[49] S. Low and P. Varaiya. An algorithm for optimal service provisioning using
resource pricing. In Proc. IEEE INFOCOM 94, pages 368-373, 1994.
[50] J. MacKie-Mason and H. Varian. Economic FAQs about the Internet. In L. McKnight and J. Bailey, editors, Internet Economics, pages 27-63. MIT Press, 1996.
[51] Peter Marbach. Pricing differentiated services networks: Bursty traffic. In Proc.
IEEE INFOCOM 2001, pages 650-658, 2001.
[52] M. May, J. Bolot, A. Jean-Marie, and C. Diot. Simple performance models of
differentiated services schemes for the Internet. In Proc. IE E E INFOCOM 99,
pages 1385-1394, 1999.
[53] John-Francis Mergen. Personal communication.
[54] R. Nagarajan and J. Kurose. On defining, computing and guaranteeing qualityof-service in high-speed networks. In Proc. IEE E INFOCOM 90, pages 20162025, 1992.
[55] K. Nichols, V. Jacobson, and L. Zhang. A two-bit differentiated services archi
tecture for the Internet. Internet Draft, 1997.
[56] Andrew Odlyzko. Paris Metro Pricing: The minimalist differentiated services
solution. In Proc. IE E E /IF IP International Workshop on Quality of Service,
1999.
[57] A. Orda, R. Rom, and N. Shimkin. Competitive routing in multiuser communi
cation networks. IE E E /A C M Trans. Networking, 1(5):510521, 1993.
[58] C. Papadim itriou and J. Tsitsiklis. The complexity of optimal queueing network
control. Mathematics of Operations Research, 24(2):293-305, 1999.
[59] A. Parekh and R. Gallager. A generalized processor sharing approach to flow
control in integrated services networks: the single-node case. IE E E /A C M Trans.
Networking, l(3):344-357, 1993.
[60] A. Parekh and R. Gallager. A generalized processor sharing approach to flow
control in integrated services networks: the multiple node case. IE E E /A C M
Trans. Networking, 2(2) :137150, 1994.
[61] K. Park, G. Kim, and M. Crovella. On the relationship between file sizes, trans
port protocols, and self-similar network traffic. In Proc. IEE E International
Conference on Network Protocols, pages 171-180, 1996.
[62] K. Park, G. Kim, and M. Crovella. On the effect of traffic self-similarity on
network performance. In Proc. SPIE International Conference on Performance
and Control of Network Systems, pages 296-310, 1997.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
121
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
122
[79] Cisco Systems. How to choose the best router switching path for your network.
http://w w w .cisco.com /w arp/public/105/20.htm l.
[80] Cisco Systems. Qc: Cisco ios quality of service solutions configuration guide,
release 12.2. http://w w w .cisco.com /en/U S/products/sw /iossw rel/index.htm l.
[81] C. Waldspurger, T. Hogg, B. Huberman, J. Kephart, and W. Stornetta. Spawn:
a distributed computational economy. IEE E Trans. Software Engineering,
18(2):103-117, 1992.
[82] S. Webster and K. Baker. Scheduling groups of jobs on a single machine. Oper
ations Research, 43(4):692-703, 1995.
[83] Michael P. Wellman. A market-oriented programming environment and its ap
plication to distributed multicommodity flow problems. Journal of Artificial
Intelligence Research, 1:1-23, 1993.
[84] W. W hitt. A review of L AW and extensions. Queueing Systems, 9(3):235-268,
1991.
[85] W. Willinger, M. Taqqu, R. Sherman, and D. Wilson. Self-similarity through
high-variability: statistical analysis of Ethernet LAN traffic at the source level.
In Proc. AC M SIGCOMM 95, pages 100-113, 1995.
[8 6 ] Z. Zhang, D. Towsley, and J. Kurose. Statistical analysis of the general
ized processor sharing scheduling discipline. IEEE J. Select. Areas Commun.,
13(6):1071-1080, 1995.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
123
VITA
Huan Ren received his B.S. and M.S. degrees ip electrical engineering from Xian
Jiaotong Univerisity, Peoples Republic of China. Since 1998 he has been working
toward a Ph.D. degree in the Department of Computer Sciences at Purdue Univer
sity. His research interest include scalable quality of service provisioning, network
modeling, network protocols and algorithms design, and scheduling.
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.