universal packet scheduling - peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · universal packet...

49
Universal Packet Scheduling Radhika Mittal, Rachit Agarwal, Sylvia Ratnasamy, Scott Shenker UC Berkeley

Upload: others

Post on 15-Oct-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Universal Packet Scheduling

Radhika Mittal, Rachit Agarwal, Sylvia Ratnasamy, Scott Shenker

UC Berkeley

Page 2: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Packet Scheduling

• Active research literature with many – Algorithms • FIFO, DRR, virtual clocks, priorities…

– Goals •  fairness, small packet delay, small FCT…

– Contexts • WAN, datacenters, cellular…

Page 3: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Is there a universal packet scheduling algorithm?

We are asking a new question…..

Page 4: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

UPS: Universal Packet Scheduling Algorithm

A single scheduling algorithm that can imitate the network-wide output

produced by any other algorithm.

Page 5: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

How can a single algorithm imitate all

others?

Page 6: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Network-wide Model

Input Traffic

INGRESS

CORE NETWORK

Page 7: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Scheduling Algorithm

Network-wide Model

Input Traffic

INGRESS

CORE NETWORK

Page 8: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Network-wide Model

INGRESS

Input Traffic

(Optional) Header

Initialization

Scheduling Algorithm

Output Traffic

CORE NETWORK

EGRESS

Page 9: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Network-wide Model

INGRESS

Input Traffic

(Optional) Header

Initialization

Scheduling Algorithm

Output Traffic

CORE NETWORK

EGRESS

Output Traffic tied to Scheduling Algorithm

Page 10: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Network-wide Model

INGRESS

Input Traffic

(Optional) Header

Initialization

Priority Scheduling

Output Traffic

CORE NETWORK

EGRESS

Goal: Minimize Mean FCT

Priority Value

Flow Size

Page 11: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Network-wide Model

INGRESS

Input Traffic

(Optional) Header

Initialization FQ Output Traffic

CORE NETWORK

EGRESS

Goal: Fairness

Page 12: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Network-wide Model

INGRESS

Input Traffic

(Optional) Header

Initialization WFQ Output Traffic

CORE NETWORK

EGRESS

Goal: Weighted Fairness

Flow Weights

Page 13: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Network-wide Model

* Uses packet header state to make scheduling decisions

INGRESS

Input Traffic

Header

Initialization

Scheduling Algorithm* Output Traffic

CORE NETWORK

EGRESS

Output Traffic tied to Header Initialization

Header Initialization

Page 14: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Network-wide Model

INGRESS

Input Traffic

Smart Header

Initialization UPS?   Output Traffic

CORE NETWORK

EGRESS

Header Initialization

Page 15: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Universality vs

Programmability

Page 16: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Programmability: •  Single hardware for multiple algorithms

to meet multiple goals

Universality:

•  Single algorithm with varying header initializations for multiple goals

Page 17: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

How do we formally define and evaluate

a UPS?

Page 18: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Defining a UPS

Theoretical Viewpoint: Can it replay a given schedule?

Practical Viewpoint:

Can it achieve a given objective?

Page 19: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Theoretical Viewpoint Can it replay a given schedule?

Page 20: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Original Schedule

Input Traffic

(Optional) Header

Initialization

INGRESS CORE NETWORK

State Oracle

* *

* *

Arbitrary Scheduling Algorithm

 

Output Timings

o(p) for a packet p EGRESS

Page 21: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Replaying the Schedule, given o(p)

Input Traffic

Header Initialization (using o(p))

INGRESS CORE NETWORK

Output Timings

o’(p) for a packet p EGRESS

For every packet p, o’(p) ≤ o(p)

UPS Header Initialization

Page 22: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Pragmatic Constraints on a UPS

Input Traffic

Output Timings Header

Initialization (using o(p)) o’(p) for a packet p

Obliviousness: For initializing p’s header, use only o(p) and path(p)

INGRESS CORE NETWORK EGRESS

UPS Header Initialization

Page 23: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Pragmatic Constraints on a UPS

Input Traffic

Output Timings Header

Initialization (using o(p)) o’(p) for a packet p

Obliviousness: For initializing p’s header, use only o(p) and path(p)

INGRESS CORE NETWORK EGRESS

UPS Header Initialization

Page 24: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Pragmatic Constraints on a UPS

Input Traffic

Output Timings

o’(p) for a packet p

Obliviousness: For initializing p’s header, use only o(p) and path(p)

INGRESS CORE NETWORK EGRESS

UPS Header

Initialization (using o(p))

Header Initialization

Page 25: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Pragmatic Constraints on a UPS

Input Traffic

Output Timings

o’(p) for a packet p

Obliviousness: For initializing p’s header, use only o(p) and path(p)

INGRESS CORE NETWORK EGRESS

UPS Header

Initialization (using o(p))

Header Initialization

Page 26: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Pragmatic Constraints on a UPS

Input Traffic

Output Timings

o’(p) for a packet p

Obliviousness: For initializing p’s header, use only o(p) and path(p)

Limited State: Scheduling can use only header state and static information

INGRESS CORE NETWORK EGRESS

UPS Header

Initialization (using o(p))

Header Initialization

Page 27: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Pragmatic Constraints on a UPS

Input Traffic

Output Timings

o’(p) for a packet p

Obliviousness: For initializing p’s header, use only o(p) and path(p)

Limited State: Scheduling can use only header state and static information

INGRESS CORE NETWORK EGRESS

UPS Header

Initialization (using o(p))

Header Initialization

Page 28: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

We call this Blackbox Initialization

Input Traffic

Output Timings

o’(p) for a packet p

Limited State: Scheduling can use only header state and static information

INGRESS CORE NETWORK EGRESS

Obliviousness: For initializing p’s header, use only o(p) and path(p)

UPS Header

Initialization (using o(p))

Header Initialization

Page 29: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Basic Existence and Non-existence Results

There exists a UPS under Omniscient Initialization

when scheduling time at every hop is known

No UPS exists under Blackbox Initialization

when only the final output time is known

Page 30: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

How close can we get to a UPS?

Page 31: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Key Result: Depends on congestion points

No. of Congestion Points per Packet General

1 ✓

2 ✓

3 ✗

Page 32: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Can we achieve this upper bound?

Yes, LSTF!

Page 33: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Can we achieve this upper bound?

Yes, LSTF!

Page 34: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Least Slack Time First

•  Packet header initialized with a slack value –  slack = maximum tolerable queuing delay

•  At the routers – Schedule packet with least slack time first

– Update the slack by subtracting the wait time

Alternate EDF-based implementation: Static deadlines in packet headers with

additional state in the routers.

Page 35: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Key Results

No. of Congestion Points per Packet General LSTF

1 ✓ ✓

2 ✓ ✓

3 ✗

Page 36: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Not all algorithms achieve upper bound

No. of Congestion Points per Packet General LSTF Priorities

1 ✓ ✓ ✓

2 ✓ ✓ ✗

3 ✗

Page 37: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

How well does LSTF perform empirically?

Page 38: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Empirically, LSTF is (almost) universal

•  ns-2 simulation results on realistic network settings -  Less than 3% packets missed their output times

-  Less than 0.1% packets are late by more than one transmission time

 

Page 39: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Summarizing the theoretical viewpoint

•  Evaluate the ability to replay a schedule, given its final output times

•  Analytical Results: -  No UPS exists -  LSTF comes as close to a UPS as possible

•  Empirical Results: LSTF is almost universal!

Page 40: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Practical Viewpoint Can it achieve a given objective?

Page 41: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Achieving various network objectives

•  Slack assignment based on heuristics •  Comparison with state-of-the-art •  Three objective functions -  Tail packet delays -  Mean Flow Completion Time -  Fairness

Page 42: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Tail Packet Delays

Slack Assignment: Same slack for all packets State-of-the-art: FIFO, FIFO+

Smaller Tail Packet Delays with LSTF (FIFO+)

Page 43: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Mean Flow Completion Time

Slack Assignment: Proportional to flow size State-of-the-art: SJF, SRPT

Mean FCT with LSTF comparable to SRPT and SJF

Page 44: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Fairness

Slack Assignment: Based on Virtual Clocks

State-of-the-art: Fair Queuing

Result: Eventual convergence to fairness

Page 45: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Results Summary

•  Theoretical results show that -  There is no UPS under blackbox initialization -  LSTF comes as close to a UPS as possible -  Empirically, LSTF is very close

•  LSTF can be used in practice to achieve a variety of network-wide objectives

Page 46: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Implication

•  Less need for many different scheduling algorithms.

•  Can just use LSTF, with varying initializations.

Page 47: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

There are still a bunch of

open questions!

Page 48: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Open Questions •  What is the least amount of information

needed to achieve universality?

•  Are there tractable bounds for the degree of lateness with LSTF?

•  What is the class of objectives that can be

achieved with LSTF in practice?

Page 49: Universal Packet Scheduling - Peopleradhika/ups-hotnets.pdf · 2016. 5. 18. · Universal Packet Scheduling! Radhika Mittal, Rachit Agarwal, ! Sylvia Ratnasamy, Scott Shenker!!! UC

Summary

•  Theoretical results show that -  There is no UPS under blackbox initialization -  LSTF comes as close to a UPS as possible -  Empirically, LSTF is very close

•  LSTF can be used in practice to achieve a variety of network-wide objectives