300 likes | 487 Views
Optimization-based approach to congestion control. Resource allocation as optimization problem: how to allocate resources (e.g., bandwidth) to optimize some objective function may not possible that optimality exactly obtained but…
E N D
Optimization-based approach to congestion control Resource allocation as optimization problem: • how to allocate resources (e.g., bandwidth) to optimize some objective function • may not possible that optimality exactly obtained but… • optimization framework as means to explicitly steer network towards desirable operating point • practical congestion control as distributed asynchronous implementations of optimization algorithm • systematic approach towards protocol design
User 1 cA cB User 0 Us(xs) User 2 xs Model • network: links {l}, capacities {cl} • sources S:(L(s), Us(xs)), sS • L(s) - links used by source s • Us(xs) – utility, strictly concave function of source rate xs
Kelly’s System Problem subject to
Optimization Problem • maximize system utility (note: all sources “equal) • constraint: bandwidth used less than capacity • centralized solution to optimization impractical • must know all utility functions • impractical for large number of sources • we’ll see: congestion control as distributed asynchronous algorithms to solve this problem “system” problem
Issues • will users truthfully reveal their utility functions? • if not, can we design a pricing scheme (mechanism) to induce truth-telling? • is there a distributed algorithm to compute the prices? • what are good choices for utilities?
Max-min Fairness rates {xr} max-min fair if for any other feasible rates {yr}, if ys > xs, then p, such that xp xs and yp < xp
Proportional fairness • rates {xr} are proportionally fair if for any feasible {yr}, • corresponds to Ur (xr) = log xr • weighted proportional fairness if Ur (xr) = wr log xr
Minimum potential delay fairness • rates {xr} are minimum potential delay fair if Ur (xr) = -wr/xr Interpretation: if wr is file size, then wr/xr is transfer time; optimization problem is to minimize sum of transfer delays
Max-min Fairness rates {xr} max-min fair if for any other feasible rates {yr}, if ys > xs, then p, such that xp xs and yp < xp What is corresponding utility function?
Solve optimization problem: remove constraints • consider following problem • gl(y) – penalty function • gl (y) non decreasing, continuous and gl (y) ∞ as y ∞ • fl (y) = dgl (y)/dy
pl (t) price of link l at time t pl (t) = fl(yl(t)) U’r(xr) – qr = 0, rS
Source Algorithm • source needs only its path price: • kr() nonnegative nondecreasing function • above algorithm converges to unique solution for any initial condition • example: qr – loss/marking probability
Proportionally-Fair Controller • If utility function is then a controller that implements it is given by
Proportionally-Fair Controller If utility function is then a controller that implements it is given by
TCP-Reno • condition for optimality is or if we have an expression for xi, we can use to obtain Ui
Simplified TCP-Reno • suppose • then, • interpretation: minimize (weighted) delay
Solve optimization problem (method 3): primal-dual algorithm
Another angle: Pricing • can network choose pricing scheme to achieve fair resource allocation? • suppose network charges price qr ($/bit) where qr=pl • user’s strategy: spend wr ($/sec.) to maximize
Pricing: Optimal User Strategy • equivalently,
Pricing: Distributed Computation • with optimal choice of wr, controller becomes • we have already seen that this solves
Price Takers vs. Strategic Users • Kelly Mechanism: users are price takers, i.e., user does not know the impact of its action on the price • strategic users:
Price Takers vs. Strategic Users: Efficiency and Competition • price takers: selfish users can maximize social welfare • strategic users: competition leads to loss of efficiency, i.e., social welfare is not maximized
Multicast • single rate • sender determines rate • U(x) = |R|V(x) preferred • multirate • each rcvr determines rate • each rcvr has own utility function
Other issues • joint congestion control and routing • high performance environments
Optimization-based congestion control: summary • bandwidth allocation as optimization problem: • practical congestion control (TCP) as distributed asynchronous implementations of optimization algorithm • optimization framework as means to explicitly steer network towards desirable operating point • systematic approach towards protocol design