Title: How Fair is your Queue
1How Fair is your Queue
Hanoch Levy School of Computer Science, Tel Aviv
University
Jointly with Benjamin Avi-Itzhak, RUTGERS
University David Raz, Tel-Aviv University
March, 2004
2Why QUEUES?
Not Fair!!!
To provide FAIRNESS in waiting/service
Sophisticated queues ?to address fairness issues
3Queueing Theory, queues and fairness
- Queueing theory Decades of very deep and
elaborate research - Queueing structures / policies, distributions
- Focus on delay of individual Moments/
distribution / optimal operations, many more! - Practical Applications Efficient control /
operation of - Bank, computer system, web server, telecom
- Fairness in queues
- Many statements this is fair, that system is
unfair. - Very little analysis (job fairness)
- Larson (1988), Palm (1953), Mann (1969), Whitt
(1984) Discuss justice related / overtaking - Morris Wang (85).
- Avi-Itzhak Levy (96)
- Wierman Harchol-Balter (Sigmetrics 2003)
- ? We dont know how to quantify queue fairness!
4How Important is fairness in queues?
- FAIRNESS INHERENT/CRUCIAL part of queues
- Recent studies, Rafaeli et. al. 2003
(experimental psychology) - Experiments on humans in multi-queue and single
queue - Fairness in queue is very important to people
- Perhaps even more than delay itself!
- WFQ 10s of papers fairness among jobs whose
duration is O(1) microsecond
- Economic value of queues of humans
- O(1) of GNP?
5So What is the problem?
- Take social-science/economics
utility-fairness measures and apply to queues
- HOW??? What is the PIE? A moving target
- The problem in a nutshell Short vs. Long
The difficulty (A) Whom to compare a customer
against?
The difficulty (B) Size vs. seniority dilemma
6Motivation / Questions
- Should Long be served ahead of Short?
- How fair (how much fair) is it to serve Short
Ahead of Long?
- Quantify/ Measure Fairness in Waiting lines!
7Motivation / Questions (2)Do You like your
supermarket?
- How fair is a scheduling policy?
- Multiple Queue (Multi server)
- Single queue (multi server)
- Queues by job size?
8Motivation / Questions (3)and your airport?
- Multiple Queue (Multi server)
- Single queue (multi server)
- Smith Whitt (81), Larson (87), Rothkopf Rech
(87), Wolff (77, 87, 88)
9Applications (computer world)
- Internet revolution Service shift to computer
systems. - Responsibility of control shifts to computer
programmer/operator - Examples
- Call centers
- Web services
- How should I operate my web-server? FIFO? LIFO?
Priorities?
10Related Work(1)
- Avi-Itzhak Levy (96)
- Axiomatic approach
- Departure pointemphasis Seniority (Order of
service) - If service times are identical ? variance of
waiting time measures fairness - Extend to service times
- When is it good?
-
11Recent Related Work
- Wierman Harchol-Balter (Sigmetrics 2003)
- Propose a Fairness Criterion
- Class-based approach For job of size x compute
ET(x)/x - If this is bounded by 1/(1-rho) for all x ? FAIR.
- Results Analyze the classification for a large
variety of policies. - FIFO (FCFS) is Always UNFAIR
- LIFO (preemptive) is FAIR.
- When is it good?
12Conflicting (disturbing) Views
Fair (Fairest?) ?
Unfair ?
Unfair (most?) ?
Fair ?
13Basic Requirements of a Queue Fairness measure
- Aim for standard ? Have a consistent
view/intuition - Deal with individual, scenario, and system
- Account for both seniority and service
requirement - Seniority Service times are identical
- Fairness is a function of seniority
- FIFO most fair / LIFO most unfair
- Senior ahead of junior is more fair
- Service requirement Arrival times are identical
- Fairness is a function of service requirement
- Short ahead of long is more fair
- Yields to analysis
14RAQFM A Resource Allocation Queueing Fairness
Measure
- Aims at meeting these requirements
- In particular
- Long vs. Short
- Seniority vs. service times
15Approach individual discrimination
- To whom should a job be compared? (moving
target!) - Compare to the public.
- Focus on server resources (aim at equal division)
- Weigh the warranted service with the granted
service
16Basic Properties of RAQFM
- Resource allocation is proper zero-sum
discrimination (work conserving, non idling)
- Eliminate Expected discrimination
- Reasonable distance from mean, Var(D),
ED-ED. - Measure of Unfairness
17Property 1 Processor Sharing Ultimate Fairness
- Single server queue
- Processor sharing service policy (Kleinrock (64),
(67), Coffman, Muntz Trotter (70))
- ? VarD 0
- ? PS is the most fair policy!!
18Property 2 SENIORITY (identical service times)
- Single server queue
- Service times are all identical
- Arrival times are arbitrary
- Theorem 2
- Serving by order of seniority (FIFO) is most fair
- Serving in reverse order of seniority (LIFO) is
most unfair - Pushing a junior ahead of senior reduces fairness
19Property 3 Service Time (identical arrival
times)
- Single server queue
- Arrival times are all identical
- Service times are arbitrary
- Serving shortest job first (SJF) is most fair
- Serving Longest job first (LJF) is most unfair
- Pushing a large job ahead of small job reduces
fairness
20Property 4 More advancedThe Long vs. Short case
- Single server queue
- Long and short arrive at different times
- Fairness of two orders depends on relative
seniority and relative service times.
21Property 5 BoundsHow bad (good) can it be?
- Bound on individual discrimination
- Use for scale of reference / sanity check
- Bound on system discrimination
22Property 6 Locality of Comparison
- Measure can be evaluated by comparing all
customers (across busy periods) - Unique to RAQFM within a large function family.
- Important for fairness One should compare only
relevant customers (within busy periods).
23Property 7 Discrimination Monotonic in Service
time
- THM For an arbitrary system, if service decision
is independent of service time, then - Discrimination monotonically increases with
service time (deterministic) - Larger customers get preferential service
- Discrimination monotonically increases with
service time distribution - ? justification to the prioritization of short
jobs!
24RAQFM is Analyzable
- RAQFM yields to analysis via standard queueing
theory techniques - Can compute
- ED x (class discrimination)
- VarD (system unfairness)
- Conducted analysis for M/M/1 type Variety of
service orders (FIFO, LIFO, ROS, more). - Conducted analysis for Multi-queue / multi-class
systems.
25Individual discrimination under FIFO M/M/1(
conditioned on customers found ahead)
Indifferent
- Discrimination as a function of customers found
at queue
26System Unfairness Compare operation policies
PS Absolute Fairness!
LIFO Severe seniority discrimination
Empty system everyone is alone
FIFO no seniority discrimination
- System Unfairness as a function of system load
27How other measures relateBridging the gap
- Wierman Harchol-Balter (2003)
- FIFO (FCFS) is UNFAIR
- LIFO (preemptive) is FAIR
28RAQFM account for all factors - bridge the gap
Seniority service time differences play
role (MOST CASES!) ? RAQFM agrees with
ordinary person
Service time differences very radical (A few
cases) ? RAQFM agrees with Wierman Harchol
Balter
29Comparison of Methods
- AL96 (SENIORITY)
- Easy to compute
- Order fairness When the issue is ORDER
- WHB03 (SERVICE TIMES)
- Easy to compute
- When jobs do not see each other / do not care of
each other. - RAQFM (SENIORITY SERVICE TIMES)
- Somewhat harder to compute
- When issue is waiting time. Also for ORDER
fairness.
30Summary
- Fairness is fundamental for queueing systems
- No agreed upon measure exists
- RAQFM is a queueing fairness measure that
- Has a consistent view
- Deals with individuals, scenario, and system
- Accounts for both seniority and service
requirement - Admits logically to special cases
- Service times are identical
- Senior ahead of junior is more fair
- Arrival times are identical
- Short ahead of long is more fair
- Yields to analysis
- We analyzed a large variety of queueing systems
- Much more work is needed
31Closing Words
- Thank you
- If you have applications at which fairness is
relevant we will be glad to hear.
- Whenever you enjoy the queues of your
supermarket / bank / airport / give us a call