Optimal Multi-Path Routing and Bandwidth Allocation under Utility Max-Min Fairness Jerry Chou and Bill Lin University of California, San Diego IEEE IWQoS 2009 Charleston, South Carolina July 13-15, 2009 1
Outline Problem Approach Application to optical circuit provisioning Summary
Basic Max-Min Fair Allocation Problem Motivation: Bandwidth allocation is a common problem in several network applications Example: C1: AD C2: BD C3: CD Saturated flows Fully allocated link B C1 C2 C3 10 10 A D 10 5 Max increase 10 C
Utility Max-Min Fairness C1: AD C2: BD C3: CD 1 1 1 utility utility utility 0 BW 10 0 BW 10 0 BW 10 B Path of C1 Allocation Utilities ABD (5, 5, 10) (0.25, 0.85, 0.70) 10 10 A D 10 10 C Utility functions capture differences in benefits for different commodities
Utility Max-Min Fairness C1: AD C2: BD C3: CD 1 1 1 utility utility utility 0 BW 10 0 BW 10 0 BW 10 B Path of C1 Allocation Utilities ABD (5, 5, 10) (0.25, 0.85, 0.70) (6.8, 3.2, 10) (0.47, 0.47, 0.70) 10 10 A D 10 10 C Utility functions capture differences in benefits for different commodities
Utility Max-Min Fairness C1: AD C2: BD C3: CD 1 1 1 utility utility utility 0 BW 10 0 BW 10 0 BW 10 B Path of C1 Allocation Utilities ABD (5, 5, 10) (0.25, 0. 85, 0.70) (6.8, 3.2, 10) (0.47, 0.47, 0.70) Multi-path (8, 4, 8) (0.64, 0.64, 0.64) 10 10 A 6 D 10 10 2 C Freedom of choosing multi-path routing achieves higher min utility and more fair allocation
Prior Work Utility max-min fair allocation only considered fixed (single-path) routing Optimal multi-path routing only considered weighted max-min and max-min fairness
Why is the Problem Difficult? Why is optimal multi-path routing and allocation under utility max-min fairness difficult? Unlike conventional fixed (single) path max-min fair allocation problems Cannot assume a commodity is saturated just because a link that it occupies in the current routing is full Once a commodity is saturated, cannot assume its routing is fixed in subsequent iterations
If routing is fixed after iteration, AD would be at most 5 Example At iteration i, suppose we route both flows AD and AE with 5 units of demand If routing is fixed after iteration, AD would be at most 5 B 0/10 0/10 A D AD:5 5/10 10/10 E AE:5 C 5/5
Route of AD must change to increase Example At iteration i+1, suppose we want to route AD with 10 units of demand Route of AD must change to increase B 10/10 10/10 A D AD:10 0/10 5/10 E AE:5 C 5/5
Outline Problem Approach Application to optical circuit provisioning OPT_MP_UMMF ε-OPT_MP_UMMF Application to optical circuit provisioning Summary
OPT_MP_UMMF Step 1: Find maximum common utility that can be achieved by all unsaturated commodities Step 2: Identify newly saturated commodities Step 3: Assign the utility and allocation for each newly saturated commodity
Key Differences A commodity is truly saturated only if its utility cannot be increased by any feasible routing Requires testing each commodity for saturation separately To guarantee optimality, fix the utility, not the routing after each iteration Fix utility, not routing
Comments Although OPT_MP_UMMF achieves optimal solution, both Steps 1 & 2 require solving non-linear optimization problems Step 1 Step 2
ε-OPT_MP_UMMF Instead of solving a non-linear optimization problem, find maximum common utility by means of binary search Test if a common utility has feasible multi-path routing by solving a Maximum Concurrent Flow (MCF) problem
Maximum Concurrent Flow (MCF) Given network graph with link capacities and a traffic demand matrix T, find multi-path routing that can satisfy largest common multiple l of T If l < 1, means demand matrix cannot be satisfied If l > 1, means bandwidth allocation can handle more traffic than specified demand matrix MCF well-studied with fast solvers
Find Maximum Utility Determine demand matrix by utility functions Find feasible routing by querying MCF solver If l<1, decrease utility, otherwise increase utility 100 100 100 100 Utility(%) Utility(%) Utility(%) Utility(%) 80 80 80 80 60 60 60 60 40 40 40 40 20 20 20 20 10 20 30 40 50 10 20 30 40 50 10 20 30 40 50 10 20 30 40 50 BW BW BW BW Max utility Traffic (T) l 1 (50,50,50,50) 0.5 C = 100 0.5 (10,30,10,40) 1.25 . 0.6±ε (10,40,10,40) 1
Outline Problem Approach Application to optical circuit provisioning Summary
Optical Circuit Provisioning Application Provision optical circuits for Ingress-Egress (IE) pairs to carry aggregate traffic between them Goal is to maximize likelihood of having sufficient circuit capacity to carry traffic WDM links Optical circuit-switched long-haul backbone cloud Boundary routers Optical circuit switches
Optical Circuit Provisioning (cont’d) Utility curves are Cumulative Distribution Functions (CDFs) of “Historical Traffic Measurements” Maximizing likelihood of sufficient capacity by maximizing utility functions Route traffic over provisioned circuits by default Adaptively re-route excess traffic over circuits with spare capacity Details can be found in Jerry Chou, Bill Lin, “Coarse Circuit Switching by Default, Re-Routing over Circuits for Adaptation”, Journal of Optical Networking, vol. 8, no. 1, Jan 2009
Experimental Setup Abilene network Historical traffic measurements Public academic network 11 nodes, 14 links (10 Gb/s) Historical traffic measurements 03/01/4 – 04/21/04
Example Seattle NY has 90% acceptance probability 90% time ≤ 6Gb/s 50% time ≤ 4Gb/s Allocate: 6Gb/s Seattle Sunnyvale Indianapolis Denver Los Angeles Kansas City Chicago New York Washington Atlanta Houston SunnyvaleHouston: 90% time ≤ 6Gb/s 80% time ≤ 4Gb/s Allocate: 4Gb/s Seattle NY has 90% acceptance probability Sunnyvale Houston has 80% acceptance probability
Comparison of Allocation Algorithms WMMF: Single-path weighted max-min fair allocation Use historical averages as weights Only consider OSPF path UMMF: Single-path utility max-min fair allocation MP_UMMF: Multi-path utility max-min fair allocation Computed by our algorithm
Individual Utility Comparison Reduce link capacity to 1 Gb/s MP_UMMF has higher utility for most flows
Minimum Utility Comparison MP_UMMF has greater minimum utility improvement under more congested network
Excess Demand Comparison Simulate traffic from 4/22/04-4/26/04 MP_UMMF has much less excess demand
Summary of Contributions Defined multi-path utility max-min fair bandwidth allocation problem Provided algorithms to achieve provably optimal bandwidth allocation Demonstrated application to optical circuit provisioning
Thank You