290 likes | 390 Views
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
E N D
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. Power law Waxman
How much is gained by optimal flow distribution? Power law Waxman • 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. 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 • 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 • = the total flow along e=(u,v) that has been routed from s to u through paths with a total length of l. u w v
Pseudo-Polynomial Solution (Linear Program) • Objective function: • Minimize α • Constraints: • α is the network congestion factor i.e., for each eE • Nodal flow conservation constraint i.e., for each vV\{s,t}
Pseudo-Polynomial Solution (Linear Program) • Constraints (cont.): • Demand constraint: • The complete linear program:
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 is O(|E|·L).
Approximation Scheme • Goal:reduce the number of variables to be polynomial in |V| and |E| instead of L. • Scaling: • 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 KDifferent 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: Original constraint New constraint • The demand is routed along at most K paths. • The flow over each path is a multiple of /K. fe=0 fe=0 =3 =3 fe=2 fe=1 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 mosttwice the congestion of the optimal solution. • Proof • Each /K- integral flow satisfies the requirement to ship the demand on at most Kpaths. • 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/K-integral flow belongs to . • The flow over each link is integral in /K and is at most . • Hence, for each eE it holds that • Thus, for each eE it holds that • In particular, • Sufficient to find the /K-integral flow that has the minimum network congestion factor in
Computing optimal /K-integral flows (cont.) Goal: Find a /K-integral flow that has the minimum network congestion factor in . Solution: • Multiply all link capacities by a factor of . • 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. • Apply a maximum flow algorithm. • Since all capacities are integral in /K, the algorithm returns a /K-integral flow. • If the /K-integral flow fails to transfer flow units repeat the process with a larger ; otherwise repeat the process with a smaller • Output the flow that transfers flow units and has the smallest
Computing optimal /K-integral flows • Since the set A is polynomial the complexity of the solution is polynomial. • 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 pathsAND the length of each path. • Distributed implementation of both algorithms. • Heuristic schemes with lower complexity.
Proof (Sketch) Step 1: Find a flow that minimizes congestion while routing traffic along K paths • Step 2:Double the flow over each path • By construction, is a /K-integral flow. • In step 3 the total flow is reduced by at most units. • There are K paths, each “looses” at most /K units. • Hence, transfers at least flow units. • Step 3:Round down the flow over each path to a multiple of /K.
Nodal flow conservation constraint for each vV\{s,t} v
The end-to-end delay restriction is intractable S(a2n-1) S(a5) S(a1) S(a3) S T S(a2) S(a4) S(a2n) S(a6) • 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 ∑aA’ s(a)=∑aA\A’ s(a)? • 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 ½∑aA s(a)iffthere is a subset A’A such that A’ contains exactlyone element of a2i-1, a2i for 1≤i≤n and ∑aA’s(a)=∑aA\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, a2ifor 1≤i≤n and ∑aA’s(a)=∑aA\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 ½∑aAs(a). => • There is a path flow that transfers two flow units over paths that are not larger than ½∑aAs(a). • Let p be a path that carries a positive flow; by construction, p contains exactly one element of a2i-1, a2ifor 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) ≤½∑aA s(a) and D(p’) ≤½∑aA s(a). • Therefore, since D(p)+ D(p’)=∑aA s(a) it follows that ∑aps(a)=∑ap’s(a)=½∑aA 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≤kdemand Di is routed over a single path without violating the capacity constraints? • Claim: There exists a path flow that transfers = D1+ D2 +…+ Dk flow units from S to T over at most K pathsiffit 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. S tk t1 t2 D2 Dk D1 T