Title: Optimal Oblivious Routing in Polynomial Time
1Optimal Oblivious Routing in Polynomial Time
Yossi Azar Amos Fiat Haim Kaplan Tel-Aviv
University
Edith Cohen ATT Labs-Research
2Routing, Demands, Flow, Congestion
- Routing a unit s-t flow for each
origin-destination pair - fab(i,j) gt 0 routing for OD pair a,b on
edge (i,j) - Demands Dab gt 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)
3Congestion, 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)
4Example
2
1 2 3 4
1 1 1 1 1
2 1 1 1 1
3 1 1 1 1
4 1 1 1 1
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)
5Example
1 2 3 4
1 0 0 1 0
2 0 0 0 0
3 0 0 0 0
4 0 0 0 0
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)
6Example
2
1 2 3 4
1 0 0 1 0
2 0 0 0 0
3 0 0 0 0
4 0 0 0 0
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 gt 3
7Example
2
1 2 3 4
1 1 1 1 1
2 1 1 1 1
3 1 1 1 1
4 1 1 1 1
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 gt 5/3
8Optimal oblivious routing
- Balances performance across all demand matrices.
- Why is it interesting?
- Demands are dynamic
- Changes to routing are hard
- Sometimes we dont know the demands
9History
- Specific networks, VC routing
- Raghavan/Thompson 87Aspnes et al 93
- Valiant/Brebner 81 Hypercubes
- Räcke 02
- Any undirected network has an oblivious
routing with ratio O(log3 n)!! - Questions
- Poly time algorithm.
- Get an optimal routing.
- Directed networks?
10LP for Optimal Oblivious Ratio
- Minimize r s.t.
- fab(i,j) is a routing (1-flow for every a,b)
- For all demands Dab gt 0 which can be routed
with congestion 1 - For all edges e(i,j) (cong(e,f,D) lt r)
- Sab fab(i,j) Dab/capacity(e) lt r
But Infinite number of constraints ? use
Ellipsoid
11Separation 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 gt 0
- For all edges h, S gab(h) lt capacity(h)
Need to insure that the numbers dont grow too
much
12Directed Networks (Asymmetric link capacities)
- Our algorithm computes optimal oblivious routing
for undirected and directed networks. - Räckes O(log3 n) bound applies only to
undirected networks. - We show that some directed networks have optimal
oblivious ratio of W(sqrt(n)).
13(No Transcript)
14Extensions
- Subset of OD pair demands
- Ranges of demands
- Node congestion
- Limiting dilation
15Follow 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)
16Open Problems
- Tighten Räckes bound
- O(log3 n) ?? W(log n)
- (Currently, O(log2 n log log n) by
- Harrelson/Hildrum/Rao 03)
- Single source demands
- Is there a constant optimal oblivious ratio ?