160 likes | 296 Views
Optimal Oblivious Routing in Polynomial Time. Yossi Azar Amos Fiat Haim Kaplan Tel-Aviv University. Harald Räcke Paderborn. Edith Cohen AT&T Labs-Research. Routing, Demands, Flow, Congestion. Routing: a unit s-t flow for each origin-destination pair:
E N D
Optimal Oblivious Routing in Polynomial Time Yossi Azar Amos Fiat Haim Kaplan Tel-Aviv University Harald Räcke Paderborn Edith Cohen AT&T Labs-Research STOC 2003
Routing, Demands, Flow, Congestion • Routing: a unit s-t flow for each origin-destination pair: fab(i,j)>=0 routing for OD pair a,b on edge (i,j) • Demands:Dab >= 0 for each OD pair a,b • Flow on edge e=(i,j) when routing D with f: • flow(e,f,D)=Sab fab(i,j)Dab • Congestion on edge e=(i,j) when routing D with f: cong(e,f,D)=flow(e,f,d)/capacity(e) STOC 2003
Congestion, Oblivious Routing • Congestion of demands D with routing f: cong(f,D)= maxe cong(e,f,D) • Optimal routing for D: min possible congestion: opt(D) = minf cong(f,D) • Oblivious ratio of f: obliv(f)= maxD cong(f,D)/opt(D) • Optimal Oblivious Ratio of G: obliv-opt(G)=minf obliv(f) STOC 2003
Example 2 1 3 4 Routing f: Route each OD pair on direct edge Demands D: unit demand for all pairs cong(e,f,D)=2 for all edges Thus, cong(f,D)=2 (f is optimal for D) STOC 2003
2 1 3 4 Example Routing f: Route each OD pair on direct edge Demands D: unit demand for ONE pair cong(e,f,D)=1 for used edge, 0 otherwise. Thus, cong(f,D)=1 (f is NOT optimal for D) STOC 2003
Example 2 1 3 4 Routing f: Route each OD pair on the 3 1,2 hop paths Demands D: unit demand for one pair cong(e,f,D)=1/3 for used edges cong(f,D)=1/3 “direct” routing has oblivious ratio >= 3 STOC 2003
Example 2 1 3 4 Routing f: Route each OD pair on the 3 1,2 hop paths Demands D: unit demand for all pairs cong(e,f,D)=10/3 for all edges (10 pairs use each edge) cong(f,D)=10/3 (f is NOT optimal for D) 2-hop routing has oblivious ratio >= 5/3 STOC 2003
Optimal oblivious routing • Balances performance across all demand matrices. • Why is it interesting? • Demands are dynamic • Changes to routing are hard • Sometimes we don’t know the demands STOC 2003
History • Specific networks, VC routing • Raghavan/Thompson 87…Aspnes et al 93 • Valiant/Brebner 81: Hypercubes • Räcke 02: Any undirected network has an oblivious routing with ratio O(log^3 n)!! • Questions: • Poly time algorithm. • Get an optimal routing. • Directed networks? STOC 2003
LP for Optimal Oblivious Ratio • Minimize r s.t. fab(i,j) is a routing (1-flow for every a,b) For all demands Dab >= 0 which can be routed with congestion 1: For all edges e=(i,j) : (cong(e,f,D) <= r) Sab fab(i,j)Dab/capacity(e) <= r But… Infinite number of constraints use Ellipsoid STOC 2003
Separation Oracle • Given a routing fab(i,j), find its oblivious ratio and a demand matrix D which maximizes the ratio (the “worst” demands for f). For each edge e=(i,j) solve the LP (and then take the maximum over these LPs): • Maximize Sab fab(i,j)Dab/capacity(e) • gab(i,j) is a flow of demand Dab >= 0 • For all edges h,Sgab(h) <= capacity(h) ** Need to insure that the numbers don’t grow too much STOC 2003
Directed Networks (Asymmetric link capacities) • Our algorithm computes optimal oblivious routing for undirected and directed networks. • Räcke’s O(log^3 n) bound applies only to undirected networks. • We show that some directed networks have optimal oblivious ratio of W(sqrt(n)). STOC 2003
{i,j} ( ) k 2 k/2 i j k Any flow from {i,j} to t is split on the two possible paths. Thus, a routing is determined by the split ratio for each {i,j}. t For any routing f, there is at least one mid-layer node i that routes >= half the flow for >= k/2 pairs. “Bad” demands for f: 1 on pairs {i,*} to t, 0 otherwise. congestion is >= k/4 with f. But optimal is 1 (via alternate paths) STOC 2003
Extensions • Subset of OD pair demands • Ranges of demands • Node congestion • Limiting dilation STOC 2003
Follow up/subsequent work • Polytime construction of a Räcke-like decomposition (two SPAA 03 papers: Harrelson/Hildrum/Rao Bienkowski/Korzeniowski/Räcke) • More efficient polynomial time algorithm (Applegate/Cohen SIGCOMM 03) • Oblivious routing on ISP topologies (Applegate/Cohen SIGCOMM 03) • Online oblivious routing (Bansal/Blum/Chawla/Meyerson SPAA 03) STOC 2003
Open Problems • Tighten Räcke’s bound O(log^3 n) W(log n) (Currently, O(log^2 n log log n) by Harrelson/Hildrum/Rao 03) • Single source demands: Is there a constant optimal oblivious ratio ? STOC 2003