Providing Near-Optimal Fair

Intro Modification scheme Computational cost Service guarantees 3 Motivation A very efficient fair-queueing packet scheduler exists: Deficit Round Rob...

0 downloads 126 Views 177KB Size
Providing Near-Optimal FairQueueing Guarantees at Round-Robin Amortized Cost Paolo Valente Department of Physics, Computer Science and Mathematics Modena - Italy

Workshop PRIN SFINGI – October 2013

Contributions 

A modification scheme for fair-queueing packet schedulers 



To reduce amortized computational cost

A scheduler obtained by applying this scheme to the Quick Fair Queueing (QFQ) Linux scheduler 

Quick Fair Queueing Plus (QFQ+ (QFQ+)) 

Intro

Replaced QFQ in Linux from 3.7

Modification scheme

Computational cost

Service guarantees

2

Motivation 



A very efficient fair-queueing packet scheduler exists: Deficit Round Robin (DRR (DRR)) But it suffers from high packet delay and jitter 



With respect to a perfectly fair, and smooth, ideal service

Fair-queueing schedulers providing much better service guarantees exist 



Intro

Optimal (i.e., minimum possible), or nearoptimal, deviation from ideal service But even the fastest of them, QFQ, QFQ, is at least twice as slow as DRR Modification scheme

Computational cost

Service guarantees

3

Demos 

Instead of diagrams and further explanations 



Downside 



QFQ+ in action ... Results shown imprecisely and incompletely

Notes 



Intro

QFQ+ named QFQ, because in Linux it replaced QFQ, retaining its same name QFQ not considered 

Lives now only in older versions of Linux



Different environment



Hard to port to newer kernels

Modification scheme

Computational cost

Service guarantees

4

Computational cost 1/2



Pair of VMs: a generator sending packets to a sink



Host





Intel Core i7-2760QM, 4 cores, 6MB cache



16 GB RAM

Guests 



1 CPU, 2 GB RAM

Bandwidth of output link on generator limited to 300Mb/s, to not saturate (virtual) CPU bandwidth

Intro

Modification scheme

Computational cost

Service guarantees

5

Computational cost 2/2

Intro

Modification scheme

Computational cost

Service guarantees

6

Service guarantees 1/2

Intro

Modification scheme

Computational cost

Service guarantees

7

Service guarantees 2/2

Intro

Modification scheme

Computational cost

Service guarantees

8

Unscheduled program ...  



In a virtualized environment With any pair of (existing) host-and-guest schedulers, and independently of how fast the code of, e.g., an interrupt handler is  



Intro

the latency of the handlers in the guest may be thousands of times as high as on bare metal (it happens if the host is not idle) Modification scheme

Computational cost

Service guarantees

9

Simple demo 



Realized in collaboration with Virtual Open Systems … Two clips 





Intro

Guest-latency statistics with an idle host Guest-latency statistics with a non-idle host (e.g., executing some other service or VM)

HW details 

ARM Versatile Express CoreTile



Cortex-A15x2 TC2 @ 1.0 GHz Modification scheme

Computational cost

Service guarantees

10

Any interest in collaborations? 

VoSys is a member of the ETSI NFV working group 

Working on the 



Intro

creation of a pool of partners (Vosys, system makers, operators, SoC's makers, universities ..) to propose an SDN/NFV Proof of Concept

Modification scheme

Computational cost

Service guarantees

11

The end

Thanks for your attention Questions?

Intro

Modification scheme

Computational cost

Service guarantees

12

Idea 





Group packet flows into aggregates Use the costly operations of the original schedulers to schedule aggregates and not single flows To reduce the frequency of costly operations: 

Serve each aggregate for a relatively long time 



Proportional to the number of flows in the aggregate

Inside aggregates, schedule flows with DRR 

Intro

Cheap operations Modification scheme

Computational cost

Service guarantees

13

Benefits and drawbacks 

The higher the number of flows in each aggregate is, ...  …, the less frequently costly operations are executed during overload periods  Hence the closer the amortized execution time becomes to DRR  …, the more the service of the modified schedulers deviate from the one of the original scheduler  Original per-flow guarantees are now provided to aggregates  Become coarser and coarser as the number of flows in each aggregate grows  Final, per-flow guarantees depend on DRR service properties

Intro

Modification scheme

Computational cost

Service guarantees

14

Computational cost: diagram 

Intro

For a more precise comparison, including also (the old) QFQ

Modification scheme

Computational cost

Service guarantees

15

Service guarantees: diagram 

Intro

For a more precise comparison, including also (the old) QFQ

Modification scheme

Computational cost

Service guarantees

16