Title: A Closedloop Scheme for Expected Minimum Rate QoS Service
1A Closed-loop Scheme for Expected Minimum Rate
(QoS) Service
- David Harrison, Yong Xia, Shiv Kalyanaraman,
Arvind Venkatesan - Rensselaer Polytechnic Institute
- shivkuma_at_ecse.rpi.edu
- http//www.ecse.rpi.edu/Homepages/shivkuma
2Acknowledgement Students
- David Harrison (PhD graduated)
- Yong Xia (PhD)
- Arvind Venkatesh (MS)
- Rahul Sachdev (MS)
- Kishore Ramachandran (MS)
- Sthanunathan Ramakrishnan (MS)
3Overview of Talk
4Big Picture Overlay Network Services
- Lightweight network svcs (eg QoS, multi-paths)
can dramatically enhance application-perceived
performance - Overlay such services in a multi-provider
environment, or - Reduced complexity of network services in a
single provider - (eg edge-based distributed parameter
provisioning, no admission control)
Network
(core)
(core)
ISP 2
edge
(edge)
ISP 3
ISP 1
End-to-end Apps
5Traditional QoS Model Control/Data Planes
6What is Closed-loop QoS? (Qualitatively)
7Expected Min Rate (EMR) Service Sample Steady
State Behavior
Flow 1 with 4 Mbps assured 3 Mbps best effort
Flow 2 with 3 Mbps best effort
Note Old simulation newer work has much shorter
transients
8Architectural Advantages of Closed Loops
- Traffic management consolidated at edges
- (placement of functions in line with E2E
principle)
- Architectural Potential
- Edge-based (distributed) QoS services,
- Edge plays in application-level QoS
9Diff-Serv vs Closed-loop QoS
vs
10Outline
Our goal expected minimum rate service that
gracefully degrades into a weighted proportional
fair service
11Kellys Optimization Formulation
Network N optimizes
Maximize
subject to capacity constraints
Each user s optimizes
Maximize
Resulting System optimizes
Maximize
subject to capacity constraints
12Concave User Utility Functions
U(xs) log(xs)
- utility must be increasing, strictly concave, and
continuously differentiable.
13Two User Utility Functions
Maximize
optimum
14Issue QoS Non-concave User Utility Functions
- A single user with a minimum rate QoS expectation
(gracefully degrading into a weighted service)
can be modeled with a non-concave utility
function. - But this kind of U-function cannot be plugged
directly into Kellys non-linear optimization
formulation!
log(xs)
log(xs-0.4)
10log(xs)
expected minimum 0.4
15Luckily, the Sum of Non-Concave U-fns is not what
we want to Optimize!
- U(z) log(z-0.6) if z 0.6 (expected
minimum rate) - 10logz if z degradation to weighted svc)
Two maxima
16No Over-Subscription Case Auxiliary Problem
- Let i.e. flow i two virtual sub-flows on
same path - Think of a modified network with modified
link capacities - Provide proportional
fairness on residual - network capacity
?xie
Capacity, C1
Capacity,
17Handling both under- and over-subscription
- For ai, xi (primary problem)
18Accumulation-Based Congestion Control
Key idea develop a notion of accumulation (ai
or aip) as a steering parameter for
QoS Why accumulation? Why not just use weighted
AIMD? - Loss-based CC fails to provide
large range of QoS capabilities -
Couples transient dynamics of CC with equilibrium
specification - Interacts with TCP
reliability mechanisms (eg timeout) Why not ECN
or AQM schemes? - Want to keep AQM
support as optional, not mandatory Why not use
just Vegas? - Accumulation is an
abstract dynamical concept. - Vegas
and Monaco attempt to provide estimators for
accumulation. - Vegas accumulation
estimator is not robust
19Why not packet-loss based closed-loops?(Ans
dynamic range of services)
Eg simple weighted fairness QoS service
20Why not TCP Vegas ? (Ans estimation robustness)
20
21Accumulation Per-flow Backlog in a Series of
Routers
- Assuming
- Define accumulation
- which is a time-shifted, distributed sum of
buffered bits of flow i at all routers 1 through
J - Note accumulation is an abstract dynamical
concept. Vegas and Monaco attempt to provide
estimators for accumulation.
22Accumulation Definition Physical Meaning
23Accumulation vs Queuing
- queue qij(t) -- num of bits of flow i queued in
a fifo router j
- accumulation ai(t) -- num of bits of flow i
queued in a set of fifo routers 1J
is the forward direction propagation delay.
- the collective queuing behavior of a series of
fifo routers looks similar to that of one single
fifo router (note the time shift dif )
24Accumulation-based Control Policy
- control objective keep
- if goal , no way to probe
increase of available b/w
- Example control algorithm
25Monaco Robust Accumulation Estimation
time
1
j
j1
J
26Monaco Accumulation Estimator
1
jf
Jf
jf1
djf
fi
data
µij
?i,j1
µi
?i
ctrl
Jb
jb1
jb
1
djb
ctrl
Interior routers provide two priority fifo queues
1) high priority queue for out-of-band control
packet 2) low priority queue for in-band control
packet and data packet Can be done w/ IP
precedence on existing routers in Internet!!
27ACC Fairness Linux Implementation Results
28Accumulation as a Steering Parameter for QoS
29Compare to Non-Linear Optimization
1.ACC schemes solve nonlinear optim. problem with
Ui(xi) ai lnxi 2. ai ?pl (the lagrange
multiplier!)
30Summary Key Notion Accumulation
- Accumulation-based congestion control (ACC) is a
nonlinear optimization, where user i maximizes
Ui(xi) ai lnxi - Accumulation (ai) is the weight (wi) of the
weighted prop. fair allocation - Accumulation is hence a steering parameter
- Equilibrium accumulation allocation
Equilibrium rate allocation! - Dynamics of CC scheme decoupled from equilibrium
spec (unlike AIMD) - Accumulation has a physical meaning sum of
buffered bits of the flow in the path - Accumulation is related to the lagrange
multiplier, I.e., ai ?pl - For two flows i,k sharing the same path, ai / ak
xi / xk - FIFO queues arrival order decides departure
order - buffer occupancy decides rate allocation
q1
q2
x1
x2
31Handling Over-subscription Admission Control
- EITHER
- (S) No over-subscription
- AND/OR
- (B) Finite Buffer
- (A) Graceful degradation
- Weighted Proportional Fair Accumulation Target
- (B) (A) can limit the range of services
provided - No need for explicit admission control !!
32Recall Handling both under- and
over-subscription
- For ai, xi (primary problem)
33Over-subscription Key Idea
- The virtual sub-flows xi, xie, xip are on the
same path (same real flow!)
(I)
(II)
- Since aip constant, eqn (II) implies that ?xi,
?ai unboundedly - But ai
- The auxiliary problem drops out for some flows
(eg bronze flows) and - Their rate is determined by the primary problem
- (I.e. gracefully degraded to a weighted
proportional fair allocation)
34EMR Building Block
di
Accumulation limit
Target
Estimated accumulationin virtual network
35Virtual Accumulation (optional AQM)
physical queue
C
virtual queue
vc
- Use virtual queueing delay, vd.
- vdvq/vc. (eg by modifying AVQ)
- Communicate vd in probe packets (add vds on
path). - Accumulation physical virtual accumulation
- Both AQM and non-AQM nodes in same network.
36Single Bottleneck Topology
S0
D0
S0-D0 offered an expected minimum rate
37Range of Expected Minimum Rates
38Range of Expected Minimum Rates
AAccumulation Limit
A03000KB
A030KB
weight10 30/3
A1..93KB
Target(expectedfair)
Expected Minimum Rate
39Mean Queue Length for EMR
No AQM
RIO
A30KB
A3000KB
AVQVD
40Compared to Diffserv AF (TCPRIO)
- Size of TCP oscillations increases with send
rate. - Achieving high assurances requires
re-parameterizing bottleneck to permit large
queues.
Marker at ingress marks out above this rate.
4/3 target rate
TCPs average rate
41Service Multiplexing Topology
1,0 1,3
3,0 3,3
2,0 2,3
30M 60K
0,0
0,0
web B
web A
1ms
35M 75K
0,1
0,1
100M
100M
100M
34ms
R0
R1
R2
R3
67ms
50M 60K
0,2
1-100ms
1-100ms
0,2
1-100ms
100ms
10M 15K
0,3
500 web A users
500 web B users
0,3
3,0 3,3
2,0 2,3
1,0 1,3
2,0 has weight 3
- Bandwidth for all unlabelled links are 1Gbps
Delay 1ms - AQMVD at router R1, no AQM at other routers
42Service Multiplexing Expected Min Rate
43Service Multiplexing Weighted shares
44Non-AQM Router Queue Length
45AQMVD Router Queue Length
46In General Closed-Loop Better-than-Best-Effort
Services
- A weaker/broader view of QoS
- QoS Better performance (given fixed routes)
- Described a priori by a set of parameters AND/OR
- Measured a posteriori by a set of metrics.
- (extra slides on results if you are
interested) - QoS spectrum
Best Effort
Leased Line
47Summary Closed-Loop QoS
- QoS can be viewed as a congestion control problem
and posed in Kellys optimization framework - Allows distributed admission control, or even
services without admission control (distributed
parameter choices). - Tradeoff objectives achieved only in steady
state - Accumulation-based schemes (eg Monaco) provide a
physically meaningful steering parameter
(accumulation) relating to queue length - Which is also the lagrange multiplier, and
- Is the weight parameter in weighted proportional
fairness allocation - Requires an extra priority queue for control pkts
(IP precedence) - AQM support virtual accumulation 0 queues
48Summary (Contd)
- Convex constraints on accumulation, queue length
(I.e. in lagrange multiplier domain) - assures unique optimum and
- leads to graceful degradation of service
assurances - Current Future work
- Schemes implemented on Linux and tested in Utah
Emulab to be deployed in worldwide PlanetLab - Developing multimedia applications to leverage
these lightweight QoS capabilities along with
multi-path capabilities in an overlay network
49EXTRA SLIDES
50EMR Algorithm (for reference)
51No AQM and EMR Near Full Capacity
AAccumulation Limit
A1..93KB
52AVQVD EMR Near Full Capacity
AAccumulation Limit
A1..93KB
53Scalable Best-effort TCP Service
Without Overlay Scheme
With Overlay Scheme
Queue distribution to the edges can manage
more efficiently
CoV vs. No of Flows FRED at the core vs.
FRED at the edges with overlay control between
edges
54Weighted Sharing
- Proposed many times (MulTCP, TCP-SD, TCP-LASD,
IP-Trunking, Nonlinear Optimization-based
Congestion Control). - MulTCP and TCP-SD use loss-based differentiation.
MulTCP,TCP-SD loss
TCP-LASD loss
- Heavy weights ? more aggressive in response to
loss ? heavy loss - Timeouts limit range of weights achievable
(10-to-1 MulTCP, 100-to-1 TCP-LASD).
55Range of Weighted Services
56?(Flows Queue Contribution) at One FIFO Router
- flow i at router j
- arrival curve Aij(t)
- service curve Sij(t)
- cumulative
- continuous
- non-decreasing
- if no loss, then
57?(Accumulation) Series of FIFO Routers
57