Traffic Engineering with AIMD in MPLS Networks
description
Transcript of Traffic Engineering with AIMD in MPLS Networks
Traffic Engineering with AIMD in Traffic Engineering with AIMD in MPLS NetworksMPLS Networks
Jianping Wang* Stephen Patek** Haiyong Wang* Jorg Liebeherr*
*Department of Computer Science**Department of Systems and Information Engineeri
ngUniversity of Virginia
http://mng.cs.virginia.edu
MPLSMPLS
Multiprotocol Label Switching (MPLS) offers opportunities for improving Internet services through traffic engineering
– MPLS makes it possible for network engineers to set up dedicated label switched paths (LSPs) with reserved bandwidth for the purpose of optimally distributing traffic across a given network
MPLS NetworkMPLS Network
• Flows (traffic between source/destination pairs) may make use of multiple LSPs.– Primary vs. Secondary Paths
Cloud
source 1
destination 2source 2
source 3
source 4
IngressNodes
destination 4
destination 3
destination 1
EgressNodes
primary path
secondary paths
source1
source2
source4
LSP 1
LSP 2
LSP 4
source3
LSP 3
Simplified MPLS NetworkSimplified MPLS Network
• N sources and N LSPs• LSP i is the primary path for source i. Other LSPs (i j) are secondary paths• Source i has a load of i and a throughput of i • LSP i has a capacity of Bi
primary path
secondary path
secondary path
source1
source2
source4
LSP 1
LSP 2
LSP 4
source3
LSP 3
Simplified MPLS NetworkSimplified MPLS Network
• Problem: Given load i and capacity Bi
Assign flow from source i to primary path and secondary paths by satisfying a given set of objectives
primary path
secondary path
secondary path
Objectives for Flow AssignmentObjectives for Flow Assignment
• Efficiency: – all resources should be consumed or all
sources should be satisfied• Fairness:
– Satisfy given fairness criteria
• Primary Path First:– Minimize traffic on secondary paths
• Simple and Distributed Allocation:– Binary Feedback, Stability
BackgroundBackground
• Binary feedback rate control schemes (AIMD)– Jacobson (1988), Jain and Ramakrishnan
(1988, 1990, 1996), Chiu and Jain (1989)
• MATE, MPLS Adpative Traffic Engineering– Elwalid et al. (2001)
• Optimization-based end-to-end congestion control and fairness– Le Boudec (1999), Kelly (1997, 1998),
Massoulie and Roberts (1999), Vojnovic et al. (2000)
OutlineOutline
1. Fairness and Efficiency2. PPF Criterion3. AIMD algorithms4. NS-2 Experiments5. Conclusions
Bandwidth allocationBandwidth allocation
• Two allocation schemes
• Owned Resources: Each source can consume the entire capacity of its primary path (Bi), and it can obtain bandwidth on its secondary paths
• Pooled Resources: The aggregate capacity on all LSPs ( iBi) is distributed across all sources, without regard to the capacity on primary paths
Rate AllocationRate Allocation
• A rate allocation is a relation R = {i, ,i} (1 i N) such that both i i and 0 i i iBi
• A rate allocation is efficient if the following hold:
a) If i i < iBi then i i = i i
b) If i i iBi then i i = i Bi
If case b) holds, we say that the rate allocation is saturating
Fairness for pooled resourcesFairness for pooled resources
• A rate allocation for pooled resources is fair if there exists a value p > 0 (fair share) such that for each source i it holds that
i = min {i, p }
• The fair share p in a network with pooled resources is given by
where U = {j | j< p } and O = {j | j p }
otherwise
if
N
i j jp
,
0,1 OO
BUi
Fairness for owned resourcesFairness for owned resources
• A rate allocation for owned resources is fair if there exists a value o > 0 (fair share) such that for each source i it holds that
i = min {i, Bi+ o }
• Interpretation: Each source can use all of its primary bandwidth and a fair share of the surplus capacity
• Define:U’ = {j | j< Bi } O’ = {j | j Bi }C' = iU’ (Bi- i ) (total surplus
capacity) i' = i- Bi , if iO’
Fair share for ownedFair share for owned resources resources
• The fair share of the surplus is given by
where U” = {j O’ | ’i< o } and O” = {j O’ | ’i
o }
• The rate allocation is given by
otherwise
ifj jo
,
0,'
O"O"
C'U"
O"
U" U'
i
ioriifo
ii
,
,
iB
Example Example
source1
source2
LSP 1
LSP 2
source3
LSP 3
1= 5 Mbps
2= 20 Mbps
3= 25 Mbps
B1 = 10 Mbps
B2 = 10 Mbps
B3 = 20 Mbps
1= 5
2= 17.5
3= 17.5
pooled resource
s
p =17.51= 5
2= 12.5
3= 22.5
owned resource
s
o =2.5
Primary Path First (PPF) Primary Path First (PPF)
source1
source2
LSP 1
LSP 2
2 Mbps
2 Mbps
5 Mbps
5 Mbps
Sources “spread” the traffic on secondary paths even though there is enough capacity on primary paths
source1
source2
LSP 1
LSP 2
7 Mbps
7 Mbps
Traffic is concentrated on primary paths
The PPF objective maximizes traffic on primary paths
Primary Path First (PPF) Primary Path First (PPF)
• Define routing matrix Xxij amount of traffic sent by source i on path j.
ij xij : secondary traffic xii : primary traffic
• A saturating rate allocation is PPF-optimal if it solves the linear program
min i ij xij
subject to j xij = i , i= 1,2,…,N
i xij = Bj , j= 1,2,…,N
xij 0 , i,j= 1,2,…,N
Characterizing PPF Solutions Characterizing PPF Solutions
source1
source2
source4
LSP 1
LSP 2
LSP 4
source3
LSP 3
x12
x23
x34
• Chain: < i1 i2 … ik >, k >2
xi1i2 > 0, xi2i3 >0,
xi3i4 > 0, …,
xik-1ik > 0
• Cycle: < i1 i2 … ik >, k > 2, i1 = ik
xi1i2 > 0, xi2i3 >0,
xi3i4 > 0, …,
xik-1ik > 0
x12
x23
x31
Proposition: A routing matrix X is PPF-optimal if and only if there is no chain and no cycle
Distributed Rate Allocation: Multipath Distributed Rate Allocation: Multipath AIMD AIMD
source1
source2
LSP 1
LSP 2
Binary Feedback from LSPs:Each LSP j periodically sends messages to all sources containing a binary signal fj = {0,1} indicating its congestion state
• Utilization = Bj fj = 1
• Utilization < Bj fj = 0
Sources adapt rate using AIMD:
• fj = 1 multiplicative decrease (0 kr 1)
• fj = 0 additive increase (ka
0)
f1=0
f1=1
Additive increase on LSP 1Multiplicative decrease on LSP2
Multipath-AIMDMultipath-AIMD
For pooled resources:
1,1
0,
0,
1
1
jrij
jilij
jilaij
ij
fkx
fxx
fxkx
x
if
andif
andif
i
N
l
i
N
l
Multipath-AIMDMultipath-AIMD
For owned resources:
i = j:i Bi
i> Bi
i j:
1,,1
0,,,
0,,,
1
1
jiiirij
jiliiiaij
jiliiiiiiij
ij
fBxkx
fxBxkx
fxBxBxx
x
if
if
orif
i
N
l
i
N
l
i
ii
if
if
iirii
iiaiiii xkx
xkxx
,1
,,min
iaiiii Bkxx ,min
Feedback for PPF correctionFeedback for PPF correction
Extra feedback is required to enforce PPF
• Sources exchange bit vectors
• Exchange is asynchronous
• Bit vector of source i : mi = < mij, mij, …, miN>
mij = 0, if xij = 0mij = 1, if xij > 0
source1
source2
source4
LSP 1
LSP 2
LSP 4
source3
LSP 3
x34
x31
<1,0,0,1>
PPF correctionPPF correction
• After each multipath-AIMD adjustment, sources perform a PPF correction:
Conflict: PPF correction tends to push flow onto primary paths, interfering with the natural tendency of AIMD to arrive at a fair distribution of the load
otherwise
ifil
,
0,0,
ij
liijij
x
mKx maxx
ijiiii xK minxx ,
ij
ns-2 simulationns-2 simulation
• Packet level simulation• 5 sources, 5 LSPs• LSP Capacities
Bi=(50,40,30,30,30) Mbps
Access link bandwidth: 100 MbpsPropagation delay: 5 msFrequency of
congestion feedback LSP =5mssource update SRC =5ms
Packet size: 50 BytesAIMD parameters:
ka = 0.1 Mbps
kr = 0.01
B1
B2
B4
B3
S1
S2
S3
S4
I1
I2
I3
I4
I5 B5S5
Experiment 1: Experiment 1: Basic Multipath-AIMD with Basic Multipath-AIMD with Pooled ResourcesPooled Resources
• All sources are always backlogged (“Greedy Sources”)
• All sources converge within 90 seconds to the fair-share allocation
• The final routing matrix is not PPF optimal
Experiment 2: Basic Multipath-AIMDExperiment 2: Basic Multipath-AIMD
Initial scenario0 t < 80 sec
Final scenario80 t < 200 sec
Source i
Load i
Tput i
pooled
Tput i
owned
Load i
Tput i
pooled
Tput i
owned
1 10 10 10 10 10 10
2 30 30 30 50 46.7 50
3 50 50 50 50 46.7 45
4 60 60 60 60 46.7 45
5 30 30 30 30 30 30
Experiment 2: Pooled ResourcesExperiment 2: Pooled Resources
• Note convergence to new after load change of source 2 at 80 sec
• Solution not PPF optimal
Experiment 2: Owned ResourcesExperiment 2: Owned Resources
• Note convergence to new after load change of source 2 at 80 sec
• Solution is not PPF optimal
Experiments with PPF CorrectionExperiments with PPF Correction
• Loadsi=(50,40,30,30,30) Mbps
• Resources are pooled
• Sources exchange bit vector over a full-duplex link– Bandwidth: 100 Mbps– Propagation delay: 1 ms– Frequency PPF =5ms
• PPF parameters:K = 0.00001 Mbps
K=0.01 Mbps
Experiment 3: Experiment 3: Multipath-AIMD with PPFMultipath-AIMD with PPFcorrection with K = 0.00001 Mbpscorrection with K = 0.00001 Mbps
• Final allocation is fair, but not PPF-optimal
Experiment 3: Experiment 3: Multipath-AIMD with PPFMultipath-AIMD with PPFcorrection with K = 0.01 Mbpscorrection with K = 0.01 Mbps
• Final allocation is PPF-optimal, but not fair
ConclusionsConclusions
• We have proposed multipath-AIMD to achieve a fair and PPF-optimal rate allocation to flows in an MPLS network– Multipath-AIMD seeks to provide a fair allocation of
throughput to each source– Multipath-AIMD with PPF Correction seeks to
reduce the volume of secondary path traffic• Both algorithms rely upon binary feedback information
• Observation: Difficult (impossible?) to achieve PPF and fairness objectives simultaneously
• Open issues:– Relax restrictions on topology– (When) is it possible to be both fair and PPF optimal?