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
Model � network: links { l }, capacities { c l } � sources S: ( L(s ) , U s (x s )) , s ∈ S � L(s) - links used by source s � U s (x s ) – utility, strictly concave function U s (x s ) of source rate x s x s User 1 U 1 x ( 1 ) c A c B User 0 U 0 x ( 0 ) U 2 x ( 2 ) User 2
Kelly’s System Problem subject to
Optimization Problem ∑ U ( x ) max s s “system” problem ≥ x s 0 s ∑ ≤ ∀ ∈ subject to x c , l L s l ∈ s S ( l ) � 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
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 {x r } max-min fair if for any other feasible rates {y r }, if y s > x s , then ∃ p, such that x p ≤ x s and y p < x p
Proportional fairness � rates {x r } are proportionally fair if for any feasible {y r }, − y x ∑ ≤ r r 0 x ∈ S r r � corresponds to U r (x r ) = log x r � weighted proportional fairness if U r (x r ) = w r log x r − y x ∑ ≤ r r w 0 r x ∈ S r r
Minimum potential delay fairness � rates {x r } are minimum potential delay fair if U r (x r ) = -w r /x r Interpretation: if w r is file size, then w r /x r is transfer time; optimization problem is to minimize sum of transfer delays
Max-min Fairness rates {x r } max-min fair if for any other feasible rates {y r }, if y s > x s , then ∃ p, such that x p ≤ x s and y p < x p What is corresponding utility function? − α 1 x = r U ( x ) lim → 1 α ∞ − α r r
Computing Source Rates
Remove constraints � consider following problem ∑ ∑ ∑∫ x = − s V ( x ) U ( x ) f ( y ) dy r r l 0 ∈ r l L � f l (y) – penalty function � f l () non decreasing, continuous and ∫ y → ∞ → ∞ f ( x ) as y l 0
max V( x ) ∂ V = ∈ 0 , r S ∂ x r ∑ − = ∈ U ' ( x ) f ( y ) 0 , r S r r l l ∈ l : l r ∑ = ∈ y x , l L l s ∈ s : l s
� p l (t) price of link l at time t p l (t) = f l (y l (t)) U’ r (x r ) – q r = 0, r ∈ S
Source Algorithm � source needs only its path price: = − & x k ( x )( U ' ( x ) q ) r r r r r r � k r () nonnegative nondecreasing function � above algorithm converges for any initial condition to unique solution � example: q r – 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
Computing Source Rates
Computing Lagrange Multipliers � define � dual problem:
Dual Algorithm • p l delay at link l • TCP-Vegas: modify source rates in response to measured delay
Dual algorithm � converges to optimum rates
Primal-Dual Algorithm � source can be TCP-Reno � feedback generated by active queue management algorithms
Active Queue Management � feedback function of queue length b l
Random Early Detection (RED) � Simplified view:
Random Early Marking (REM)
Exponential-RED
Pricing � can network choose pricing scheme to achieve fair resource allocation? � suppose network charges price q r ($/bit) where q r = ∑ p l � user’s strategy: spend w r ($/sec.) to maximize
Optimal User Strategy � equivalently,
Distributed Computation � with optimal choice of w r , 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:
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
TCP-Reno � condition for optimality is − p = U ' ( x ) 0 i i or − = ' 1 x U ( p ) i i if we have an expression for x i , we can use to obtain U i
TCP-Reno � TCP-Reno in equilibrium: � utility function:
Simplified TCP-Reno � suppose � then, � interpretation: minimize (weighted) delay
Price versus Probabilistic Feedback � price: q i = ∑ l 2 i p l � loss probability: q i =1- ∏ l 2 i (1-p l ). If the p l ’s are small, they are approximately equal � else, TCP solves a modified version of the resource allocation problem
Explicit Congestion Notification (ECN) � Instead of dropping packets, mark packets to indicate incipient congestion � Marking: Router flips a bit in the packet header from 0 to 1 to indicate congestion � Destination echoes the ECN bit back to the source in the ack
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
Recommend
More recommend