370 likes | 571 Views
Resource Allocation and Pricing. R. Srikant University of Illinois. References. The Mathematics of Internet Congestion Control , Birkhauser, 2004. Pricing: Kelly Distributed Resource Allocation: Kelly, Mauloo and Tan, Low and Lapsley, Kunniyur and S., Wen and Arcak, Liu, Basar and S.
E N D
Resource Allocation and Pricing R. Srikant University of Illinois
References • The Mathematics of Internet Congestion Control, Birkhauser, 2004. • Pricing: Kelly • Distributed Resource Allocation: Kelly, Mauloo and Tan, Low and Lapsley, Kunniyur and S., Wen and Arcak, Liu, Basar and S.
Resource Allocation • How much bandwidth should each user get? • Constraints: x0+x1· cA; x0+x2· cB User 1 cA cB User 0 User 2
Utility Functions • Associate a utility function with each user • Strictly concave, increasing functions • Maximize system utility, i.e., the sum of the utilities of all the users User 1 cA cB User 0 User 2
Kelly’s System Problem subject to
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?
Source Algorithm • Source needs only its path price:
Computing Lagrange Multipliers • Dual problem:
Link Algorithm • Gradient algorithm • Link needs to only know its arrival rate
Network Solution • Network doesn’t know the utility function • Choose Ur(xr)=wr log xr • Allow users to choose wr
Proportional Fairness • If the utility function is of the form Ur(xr)=wr log xr, then the optimal allocation satisfies
Pricing • Can the network choose a pricing scheme to achieve fair resource allocation? • Suppose that the network charges a price qr ($/bit) where qr=l2 rpl • User’s strategy: spend wr ($/sec.) to maximize
Optimal User Strategy • Equivalently,
Distributed Computation • With the optimal choice of wr, the 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 • Question: by how much? • Answer: Workshop
Recap • Goal: Maximize social welfare • Hard code programs into computers to achieve proportional fairness based on user bids {wr} • Selfish, price-taking users naturally bid to maximize social welfare • Reasonable for the Internet • Small number of resources: strategic users
Convergence • Approximate computation of Lagrange multipliers • Associate a price function with each link: fl(yl), where yl is the arrival rate into the link
Solution • User r’s depends only on its path price • Link price depends only on the total arrival rate into the link
Stability • Note that • V(x) is the resource allocation objective • V(x) is a Lyapunov function:
Recall Primal-Dual Algorithm • Is this algorithm also stable?
Vickrey-Clarke-Groves (VCG) Mechanism • Seller asks for {Ur(xr)} • Computes x*=arg maxxr Ur(xr) • The presence of user r reduces the utility to other users. Charge this reduction as the price to user i:
Truth-Telling is optimal • Net utility for user i: • If truth-telling is not optimal, we have a contradiction:
Comparing Kelly and VCG • VCG requires each user to give the entire utility function • Kelly requires each user to submit a bid • VCG: computation is not decentralized • Kelly: computation of prices is distributed among users and resources
Other Pricing • Maximize revenue, with little or no regard for social welfare • Peering, transit and access charge arrangements across multiple ISPs • Resource allocation and pricing in wireless networks (both cellular and ad hoc networks)
Modeling Delays • Delay in receiving congestion feedback • Tr: RTT (round-trip time)
Window Flow Control • W: Window size of a source • W is the number of unacknowledged packets that can be in the network • x: Transmission rate (packets/sec.) • T: Round-trip time. Amount of time it takes to receive an ack for a packet
Differential Equation - I • q(t): Probability of packet loss at time t
Differential Equation - II • Additive Increase-Multiplicative Decrease (AIMD)
Delays Delay from source r to link l Delay from link l to source r
Network Stability? x y yl=r xr(t-df(r,l)) Links Sources p q qr=l pl(t-db(r,l))
Arrivals and Departures • The number of sources has been assumed to be a constant • On a slower time-scale, files (sources) arrive and depart • If the fast time-scale algorithms are designed well, congestion control can be viewed as an instantaneous resource allocation process
Connection-Level Model • Files arrive according to some point process • Each file brings a random amount of work (bits) • File departs when the work is finished • Between arrivals and departures, resources allocated to each flow according to the system problem described earlier • Is the connection-level model (stochastically) stable?
Part II • Resource allocation and control • Stability conditions for a network with delays • Connection-level stability