Title: Mixed Criteria Packet Scheduling
1Mixed Criteria Packet Scheduling
- Eric Torng and Chad Meiners
- Department of Computer Science and Engineering
- Michigan State University
2Motivation
3Simplified View
S1
?
A
B
S2
4Scheduling Interpretation
S1
A
B
S2
5Packet Weights
S1
4
1
5
A
B
2
S2
3
7
6Single Criterion Packet Scheduling
Maximize weight of transmitted packets
7Where do Weights Come From?
- Price per packet
- Corresponds to maximizing networks profit
- But there may not be prices
- Weights should then correspond to users needs
- Problem users have different needs
8Weights?
Skype video call
iTunes song download
What are the users needs? How do they measure
success?
9Users Goals
- Skype video call
- Each packet must be delivered in a timely manner
to avoid jitter - Each packet has a deadline
- iTunes song download
- Goal is to have entire file downloaded as quickly
as possible - User wants to minimize flow time/completion time
of entire download
10Weights?
Skype video call
iTunes song download
If iTunes download does not hurt Skype call, give
priority to iTunes packets.
11Weights?
Skype video call
iTunes song download
If iTunes download will cause one or both calls
to have poor performance, prioritize skype calls.
12Mixed Criteria Packet Scheduling
Skype video call
iTunes song download
Rather than use weights, measure each clients
goal exactly. Skype packets have deadlines.
iTunes user worries about final packet arrival
time.
13DeadFlow Problem
- Input I Id union If
- Id Real time jobs with deadlines
- Goal meet all deadlines (assuming this is
possible) - If Flow time jobs without deadlines
- Goal minimize average flow time
- We assume preemption is allowed
- Jobs are not all unit size
- Model entire flow, not individual packets
14Single Criterion Problems
- Each set of jobs can be handled if alone
- Given only flow jobs SRPT is optimal
- Given only deadline jobs EDF, LLF, and several
other algorithms are optimal
15Related Work
- Some work on mixed criteria scheduling that
focuses on non-preemptive setting - Baker Smith, 2003
- Agenetis, Mirchandani, Pacciarelli, 2004
- Real-time scheduling with hard periodic jobs and
soft aperiodic tasks - Chetto and Chetto, 1989
- Lehoczky and Ramos-Thuel, 1992
- Spuri and Buttazo, 1996
16Our Results
- DeadFlow is weakly NP-hard
- Reduction from Partition/Knapsack
- Unit DeadFlow where the flow jobs have unit size
is solvable in polynomial time - Schedule deadline jobs as late as possible
- Move up only to fill holes unused by flow jobs
(and possibly speed up later flow jobs)
17Hardness Proof
- Selection instances
- Canonical schedules for selection instances
- Knapsack model
18Selection Instances
One deadline job release time is 0, deadline is
d, processing time is p
- Flow jobs do not overlap (ignoring deadline job)
- ri pi ri1
19Canonical Schedules
- In interval 0,d), a flow job j runs only during
rj, rj pj). - If not finished by rj pj,it completes after d.
20Knapsack Interpretation
- Deadline job
- Let p be processing time of deadline job after
all gaps between flow jobs have been filled - Goal Choose p units of flow jobs to displace of
minimum total cost
21Polynomial Time Algorithm
- Unit Deadflow Problem
- All flow jobs are unit size
- Deadline jobs may have different deadlines and
different sizes - Slacker Algorithm
- Schedule deadline jobs as late as possible
- Use EDF on reversed input instance
- Move up jobs into holes not used by flow jobs
22Open Problems
- Lots!
- Online algorithms
- Need to consider maximization problems for
deadline jobs - Maximize value of jobs that complete by their
deadlines (still need to compute values) - Maximize number of jobs that complete by their
deadlines