ppt - Sahara

A General Auction-Based
Architecture for Resource Allocation
Weidong Cui, Matthew C. Caesar, and Randy H. Katz
EECS, UC Berkeley
{wdc, mccaesar, randy}@eecs.berkeley.edu
1
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.
2
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.
3
Related Work
• Economic based schemes
– SPAWN
– U-Mich. TAC
• Bandwidth allocation
– Weighted Fair Queuing:
– GAMA
– CSMA
• CPU scheduling
– Lottery scheduling
– Fair share
4
Resource Allocation Process
Auctioneer
Bidders
• Frame-based
• Single-round bids
• Synchronized
Consume
Resource
5
Architecture
App
App
Queue
Queue
Dispatcher
Dispatcher
App
App
Queue
Queue
App
App
Queue
Queue
App
App
Queue
Queue
Bidder
Bidder
Bidder
Bidder
App
App
Queue
Queue
App
App
Queue
Queue
Dispatcher
Dispatcher
Auctioneer
Auctioneer
Resource Pool
Resource Pool
Data Channel
Control Channel
6
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
7
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.
8
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
Asks
• Bidding Strategies
– Aggressive vs. Conservative
– Risky vs. Safe
– A major area of research
Token
Pool
Prediction
Engine
Bidding
Engine
Bids
9
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.
10
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
Now+1
Now+2
Now+3
Time
Now+4
Now+5
11
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
12
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
13
Overhead Analysis
(responsiveness vs. efficiency)
Slot size: 1Kbyte
Send Rate: 1Mbps
n: number of slots in a frame
m: number of nodes
: usage ratio
Utilization
0.984
utilization [percent]
•
•
•
•
•
• Example: 3 Asks, n = m,  = 1.0
0.982
0.98
0.978
0.976
0.974
0.972
0.97
a(4m  2)  n  log2 m  n 103
0
2000
4000
6000
8000
10000
# of node s
bytes
n  103
join delayno contention 
 n ms
6
10
Max Delay with no contention
10000
delay [milliseconds]
utilization 
  n 103
8000
6000
4000
2000
0
0
2000
4000
6000
8000
10000
# of nodes
14
Experimental Results
• Weighted proportional fairness
15
Experimental Results
• Response time
16
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
17