Capacity Assignment in Bluetooth Scatternets – Analytical

Download Report

Transcript Capacity Assignment in Bluetooth Scatternets – Analytical

Multipath Routing Algorithms for
Congestion Minimization
Ron Banner and Ariel Orda
Department of Electrical Engineering
Technion- Israel Institute of Technology
Introduction

Traditional routing schemes route all traffic along a single
“optimal” path

Traffic is always routed over a single path
 High congestion
 Waste of network resources.

Multipath Routing split the traffic among several paths in
order to ease congestion.
Multipath Routing
 Multipath
routing can be fundamentally
more efficient than the traditional
approach.
 It
can significantly reduce congestion in
“hot spots” .
 As
congested links result in high variance, it
provides steady and smooth data streams.
Previous work mainly focused on heuristics

Equal Cost MultiPath (ECMP): Equal Distribution of traffic
along multiple shortest paths
 The shortest path and equal partition limitations considerably
reduce load balancing capabilities.

OSPF-OMP: Allows splitting traffic among paths unevenly.


Heuristic traffic distribution scheme that often results in an
inefficient flow distribution.
Proportionally split traffic among several “widest” paths
that are disjoint w.r.t. bottlenecks [Nelakuditi et al., 1xxx]
 Again: Heuristic and evaluated by way of simulations.
How much is gained by optimal flow distribution?

Experiment: Generated random networks that include 10,000 Waxman
topologies & 10,000 power-law topologies.
 r(L)= the ratio between the congestion of an optimal assignment of
traffic to paths (with a length restriction L) to the congestion produced
by OMP.
0.45
0.4
0.35
r(L)
0.3
Power law
0.25
0.2
Waxman
0.15
0.1
0.05
0
L*
1.1*L* 1.2*L* 1.3*L* 1.4*L* 1.5*L* 1.6*L* 1.7*L* 1.8*L* 1.9*L* 2*L*
Length Restriction (L* is the length of the shorest path)
How much is gained by optimal flow distribution?
r(L)= the ratio between the congestion of an optimal assignment of
traffic to paths (with a length restriction L) to the congestion produced
by ECMP.
0.5
r (L)
0.4
0.3
0.2
Power law
Waxman
0.1
0
1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2
Length Restriction
The full
potential of
multipath
routing is
far from
having been
exploited...
Problem formulation

Goals:
 Minimize network congestion
 Cope with constraints:
 Path Length: distribute traffic only among paths with satisfactory
quality (length).
 Number of paths: Too many paths per destination pose major
complication & considerable overhead.

Performance Objective: network congestion factor
 Minimizing
 fe 
max   .
eE
 ce 
 E.g.: [RFC 2702], [xxx].
 No link becomes over-utilized.
 More room for future traffic growth.
Computational Intractability

Minimizing the network congestion factor under path
length restrictions is NP- hard.
 Proof

.
Minimizing the network congestion factor while routing
traffic along at most K paths is NP-hard.
 Proof
.
Minimizing Network Congestion
Under length Restrictions



Pseudo-Polynomial Algorithm
є- Optimal Approximation Scheme
Extensions
Pseudo-Polynomial Solution

l
e
= the total flow along e=(u,v) that has
been routed from s to u through paths with
a total length of l.
f
w
le  2
u
v
fe0  0
fe0  0
f 3
fe1  0
fe2  7
fe2  0
fe3  0
fe3  3
fe4  0
fe4  7
1
e
Pseudo-Polynomial Solution (Linear Program)
 Objective
function:
 Minimize α
 Constraints:
 α is the network congestion factor i.e.,
for each eE
L
fe
fel


ce
l  0 ce
 Nodal flow conservation constraint i.e.,
for each vV\{s,t}

eOut ( v )
l
fe 

eIn ( v )
l le
fe
Pseudo-Polynomial Solution (Linear Program)
 Constraints
(cont.):
 Demand constraint:

f
eOut ( s )
 The
0
e

complete linear program:
Minimize 
s.t.

fel 

fel 

fe0  
eO ( v )
eO ( s )
eO ( s )
L
f
l 0
l
e
l le
e
 0 v V \ s,t,l 0, L
l le
e
0
f
eI ( v )
f
eI ( s )
 ce 
l 1, L
e  E
fel  0
e  E, l 0, L  le 
fel  0
e  E, l 0, L
 0
Pseudo-Polynomial solution

The linear program can be solved within time
complexity that is polynomial in the number of
variables.

Therefore, the complexity incurred by solving the
linear program is polynomial in L.
 Indeed, the number of variables
 f  is O(|E|·L).
l
e
Approximation Scheme

Goal: reduce the number of variables to be polynomial in |V| and

Scaling:
|E| instead of L.
 L
 le 
L
le    , L'=   , where  
.
N



Apply the linear program for the new instance.
 The new instance relaxes the original instance.
 Hence, congestion is not worse than the optimum.



Convert each non-simple path into a simple path.
Accumulating error for a path: (N-1)·.
New path length is at most: L+ N·=L∙(1+є).
Extensions
 Multi-commodity
 It is straightforward to extend the linear program to the
multi-commodity case.
 End-to-End
Reliability Constraints
 Multipath Routing has increased vulnerability to failures.
 A failure in each path causes the entire transmission to fail.
 The problem: Minimize congestion under end-to-end reliability
constraints.
 Our approximation scheme can be modified to solve this problem.
Minimizing Congestion while Routing
Along at Most K Different Paths.
 /K- integral flows that minimize congestion
 An optimal /K- integral flow is a 2-APX scheme.
Computing
optimal /K- integral flows.
/K- integral flows that minimize congestion

Minimize the network congestion factor such that:
The demand  is routed
along at most K paths.
 =3
fe=0
The flow over each path
is a multiple of /K.
 =3
fe=0
fe=2
fe 
3
2
fe=1
fe 
3
2
K=2
K=2
An optimal /K- integral flow is a 2-apx scheme

Theorem: The minimum congestion of a /K-integral
flow is at most
solution.
 Proof
twice
the congestion of the optimal

Each /K- integral flow satisfies the requirement to
ship the demand  on at most K paths.

Corollary: minimizing the congestion while restricting
the flow to be integral in /K is a 2-approximation
scheme for the original problem.
Computing optimal /K-integral flows
 The
network congestion factor of each /Kintegral flow belongs to  n   e  E , n   0, K  .
K  ce


 The flow over each link is integral in /K and is at most .
 Hence, for each eE it holds that
 Thus, for each eE it holds that

 
fe
 In particular, max

  n 
eE
 ce  
 Sufficient
 

fe  n  n  0, K .
 K


fe 

 n 
n   0, K .
ce  K  ce


e  E , n   0, K .
K  ce


to find the /K-integral flow that
has the minimum network congestion factor in



e  E , n   0, K  .
n 
K

c
e


Computing optimal /K-integral flows (cont.)
Goal: Find a /K-integral flow that has the minimum network


congestion factor in A  n   e  E , n   0, K. 

Solution:
K  ce

A. Multiply all link capacities by a factor of   A.

f e    ce

fe

ce

 f 
max  e   
eE
 ce 
B. Round down the capacity of each link to a multiply of /K.

Since the flow must be /K-integral, such a rounding has no affect.
C. Apply a maximum flow algorithm.

Since all capacities are integral in /K, the algorithm returns a /K-integral
flow.
D. If the /K-integral flow fails to transfer  flow units repeat the process
with a larger   A ; otherwise repeat the process with a smaller   A.
E. Output the flow that transfers  flow units and has the smallest   A
Computing optimal /K-integral flows
the set A is polynomial the complexity of
the solution is polynomial.
 Since
 Thus,
we established a polynomial algorithm
that admits at most K paths and has a network
congestion factor that is at most twice larger
than the optimum.
Future Work
A
unifying scheme that bounds the number of
paths AND the length of each path.
 Distributed
 Heuristic
implementation of both algorithms.
schemes with lower complexity.
Questions?
Proof (Sketch)


Step 1: Find a flow that minimizes
congestion while routing traffic
along K paths
f1*


2  f1* 2  f2*
f3*
Step 3: Round down the flow over
each path to a multiple of /K.
f1

 2  fe
Max 
eE

 ce
2
f2*
 f e* 


Max     *
eE

 ce 

 2  f e* 


Max 
 2*

eE

 ce 



f2


*
  2


Step 2: Double the flow over
each path

2  f3*
By construction, f
integral flow.
is a /K-
In step 3 the total flow is
reduced by at most  units.
 There are K paths, each
“looses” at most /K units.
f3

Hence, f transfers at least 
flow units.
Pseudo-Polynomial solution
Minimize 
s.t.

fel 

fel 

fe0  
eO ( v )
eO ( s )
eO ( s )

felle  0
v V \ s,t,l 0, L

felle  0
l 1, L
eI ( v )
eI ( s )
1 L l
  fe  
ce l 0
eE
fel  0
e  E, l 0, L  le 
fel  0
e  E, l 0, L
 0
Nodal flow conservation constraint
for each
vV\{s,t}f

eOut ( v )
l
e


eIn ( v )
fel le
f 1
2
e
le  4
v
le  3
f 1
3
e 
f 2
6
e
The end-to-end delay restriction is intractable


A special case of our problem: Is there a path flow that transfers  flow units
from s to t such that if path p transfers a positive amount of flow then
D(p)≤D?
The partition problem: Given an ordered set of elements a1, a2 ,…, a2n that
constitute a set A with a size s(a)+ for each a A, is there a subset
A’A such that A’ contains exactly one element of a2i-1, a2i for 1≤i≤n such that
∑aA’ s(a)=∑aA\A’ s(a)?
S(a1)
S(a3)
S(a5)
S(a2n-1)
S
T
S(a2)


S(a4)
S(a6)
S(a2n)
All link capacities are 1.
Claim: It is possible to transfer 2 flow units over paths whose end-to-end
delays are not larger than ½∑aA s(a) iff there is a subset A’A such that A’
contains exactly one element of a2i-1, a2i for 1≤i≤n and ∑aA’ s(a)=∑aA\A’ s(a).
The end-to-end delay restriction is intractable
<=





There is a a subset A’A such that A’ contains exactly one element of a2i-1, a2i for
1≤i≤n and ∑aA’ s(a)=∑aA\A’ s(a).
The selection of the links that correspond to the elements of A’ and the zero
delay links that connect these links constitutes a path p.
Path p is disjoint to the path that the complement subset A\A’ defines.
Since all capacities are equal to 1, we have two disjoint paths that can transfer
together 2 units of flow.
The end-to-end delay of each path is ½∑aA s(a).
=>






There is a path flow that transfers two flow units over paths that are not larger
than ½∑aA s(a).
Let p be a path that carries a positive flow; by construction, p contains exactly one
element of a2i-1, a2i for 1≤i≤n.
Since all the links have one unit of capacity p can transfer at most 1 flow unit.
Therefore, there exists a path p’ that is disjoint to p that transfers a positive
flow; by construction, p’=A\p
Hence, D(p) ≤½∑aA s(a) and D(p’) ≤½∑aA s(a).
Therefore, since D(p)+ D(p’)=∑aA s(a) it follows that ∑ap s(a)=∑ap’ s(a)=½∑aA
s(a).
The restriction on the number of paths is intractable


A special case of our problem: Is there a path flow that transfers  flow units
from s to t over at most K paths?
The single source unsplittable flow problem: Given a network G with a source s,
targets t1, t2 ,…, tk and corresponding demands D1, D2 ,…, Dk , is there an assignment
of traffic to paths such that for each 1≤i≤k demand Di is routed over a single path
without violating the capacity constraints?
S
t1
t2
D2
D1

Dk
tk
T
Claim: There exists a path flow that transfers = D1+ D2 +…+ Dk flow units from S
to T over at most K paths iff it is possible to find an assignment of the demands
D1, D2 ,…, Dk to paths such that Di, 1≤i≤k is routed over a single path without
violating the capacity constraints
 There is exactly one path from S to ti for each 1≤i≤k. Hence, there are exactly K paths from S to T
that carry a positive flows.
 There is at least one path from S to ti for each 1≤i≤k. However, since there are at most K paths there is
exactly one path from S to ti for each 1≤i≤k.