1 A General Auction-Based Architecture for Resource Allocation Weidong Cui, Matthew C. Caesar, and Randy H. Katz EECS, UC Berkeley {wdc, mccaesar,
2 Motivation Desired characteristics: –General: can be applied to different kinds of resources. –Flexible: components are application-aware and can adapt to a variety of workloads. –Efficient: high resource utilization with low overhead. –Responsive: adapt quickly to dynamic client demand. –Fair: fairness under contention Common techniques: –Brings applications into the control loop –Uses prediction to leverage traffic stationarity –Abstracts resource requirements as application queues and tokens –Support dynamic priority No single scheme implements all of them.
3 Auction-based Approach Our scheme: –Uses auction-based techniques to achieve good performance Why use auctions? –Brings applications into the control loop Bidders can place bids based on application requirements and contention level. –Uses prediction to leverage traffic stationarity Bidders can place bids for near future resource requirements based on recent history. –Abstracts resource requirements as application queues and tokens Bidder can express both utility and priority to auctioneer. Auctioneer can alter node priority by changing the token allocation rate. –Support dynamic priority Auctioneer can allocate resources to clients based on their dynamic needs.
4 Related Work Economic based schemes –SPAWN –U-Mich. TAC Bandwidth allocation –Weighted Fair Queuing: –GAMA –CSMA CPU scheduling –Lottery scheduling –Fair share
5 Resource Allocation Process Asks Allocs Bids AuctioneerBidders Consume Resource Asks Allocs Bids Frame-based Single-round bids Synchronized
6 Architecture Queue App Queue App Queue App BidderDispatcher Queue App Queue App Queue App Dispatcher Bidder Auctioneer Resource Pool
7 System Design Resource Abstraction –Multiple-unit time slots –Examples: wireless bandwidth, CPU, memory… Tokens –‘Fake’ money for bidding resources –Depleted and periodically disbursed Functional Entities –Auctioneer –Bidder –Application Queues An abstraction for client’s dynamic demand Techniques –Adaptation –Robustness
8 Auctioneer Design Multiple Unit First Price Auction –A bidder gets the amount left after all other bidders with higher bids, –and pays for it the price she bids. Progressive Second Price Auction –A bidder gets the amount left after all other bidders with higher bids, –and pays for her allocation so as to exactly cover the “social opportunity cost”. Break Ties –Assign random numbers to each bidder with ties. –The random numbers will determine the order of bids.
9 Bidder Design Bids are dependent on a few factors –Current application queue size; –Estimated resource request arrival rate; –Tokens left –Auction history –Amount of resources under auction Bidding Strategies –Aggressive vs. Conservative –Risky vs. Safe –A major area of research Prediction Engine Token Pool Bidding Engine Asks Bids
10 Adaptation techniques Token disbursement rate determines the ratio of each client’s share of resources in the long run. –Research issue: adaptively change the token disbursement rate with node priority. Frequency of auction rounds affects the tradeoff between resource utilization and latency. –Research issue: adaptively change the frequency of auction rounds based on bidding history.
11 Forward Allocation Put future resources into auctions –Leverage usage prediction –Prediction algorithms: exponential average, HMM, etc. Advantages –Average the risk of starvation. –Decrease latency. Disadvantages –Over estimation may decrease resource utilization. Now Time Now+1Now+2Now+3Now+4Now+5
12 Robustness Possible failures –Auctioneer failure –Bidder failure –Asks/bids/allocations may be dropped Research issues –Design a robust auctioneer-bidder communication protocol –Auctioneer election and failover protocol
13 Scenario: Wireless Spectrum Allocation Instances –Cellular Basestation-based centralized allocation –Ad-hoc / Peer to Peer networking Distributed allocation Etiquette rules in unlicensed bands Potential benefits –Prediction with dynamic allocation can improve utilization and response time –Policing protocols monitor usage Nodes can vote to penalize offender –Tokens allow nodes to express criticality and priority
14 Overhead Analysis (responsiveness vs. efficiency) Slot size: 1Kbyte Send Rate: 1Mbps n: number of slots in a frame m: number of nodes : usage ratio Example: 3 Asks, n = m, = 1.0
15 Experimental Results Weighted proportional fairness
16 Experimental Results Response time
17 Conclusion/Summary Simple strategies can provide “fair” resource allocations with low overhead. System can be tuned to give fast response time. Dynamic auction-based strategies offer significant advantages over static schemes. Limitations –Doesn't support combinatorial auctions –Can’t support very large numbers of nodes Future work –Improve prediction, bidding, and auctioning strategies –Make auction protocol resilient to losses and node failures. –Design techniques to dynamically adapt round frequency and token disbursion rate