Analysis of a Window-Constrained Scheduler for Real-Time and Best- - - PowerPoint PPT Presentation

analysis of a window constrained scheduler for real time
SMART_READER_LITE
LIVE PREVIEW

Analysis of a Window-Constrained Scheduler for Real-Time and Best- - - PowerPoint PPT Presentation

Analysis of a Window-Constrained Scheduler for Real-Time and Best- Effort Packet Streams Richard West & Christian Poellabauer Boston University & Georgia Institute of Technology Rich West (2000) Introduction Certain distributed, RT


slide-1
SLIDE 1

Rich West (2000)

Analysis of a Window-Constrained Scheduler for Real-Time and Best- Effort Packet Streams

Richard West & Christian Poellabauer

Boston University & Georgia Institute of Technology

slide-2
SLIDE 2

Rich West (2000)

Introduction

■ Certain distributed, RT applications can tolerate lost /

late info transferred across a network.

■ e.g., streaming multimedia applications. ■ Restrictions on: ■ numbers of consecutive late / lost packets. ■ Need: ■ real-time scheduling of packets (info carriers). ■ guarantees that no more than x out of y packets

are late / lost.

slide-3
SLIDE 3

Rich West (2000)

Contributions

■ Dynamic Window-Constrained Scheduling (DWCS): ■ Can guarantee at most x late / lost packets every

fixed window of y packets.

■ (x,y)-hard as opposed to (x,y)-firm deadlines!

■ Bounded service delay, even in overload. ■ 100% utilization bound for fixed-length packets. ■ Fast response & low jitter for best-effort packet

streams.

slide-4
SLIDE 4

Rich West (2000)

DWCS Packet Scheduling

■ Two attributes per packet stream, Si: ■ Request period, Ti.

■ Defines interval between deadlines of

consecutive pairs of packets in Si.

■ Window-constraint, Wi = xi/yi.

■ Essentially, a “loss-tolerance”.

slide-5
SLIDE 5

Rich West (2000)

“x out of y” Guarantees

■ e.g., Stream S1 with C1=1, T1=2 and W1=1/2 ■ Feasible schedule if “x out of y” guarantees are met.

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 s1 s1 s1 time, t s1

Sliding window

slide-6
SLIDE 6

Rich West (2000)

Scheduling Granularity

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 S1 S2 2 T = 2K 1 T = 3K τ 1 Time Slot, K time, t

slide-7
SLIDE 7

Rich West (2000)

Pairwise Packet Ordering Table

Precedence amongst pairs of packets

  • Earliest deadline first (EDF)
  • Same deadlines, order lowest window-

constraint first

  • Equal deadlines and zero window-constraints,
  • rder highest window-denominator first
  • Equal deadlines and equal non-zero window-

constraints, order lowest window-numerator first

  • All other cases: first-come-first-serve
slide-8
SLIDE 8

Rich West (2000)

Original Pairwise Packet Ordering Table

Precedence amongst pairs of packets

  • Lowest window-constraint first
  • Same non-zero window-constraints, order EDF
  • Same non-zero window-constraints &

deadlines, order lowest window-numerator first

  • Zero window-constraints and denominators,
  • rder EDF
  • Zero window-constraints, order highest window-

denominator first

  • All other cases: first-come-first-serve
slide-9
SLIDE 9

Rich West (2000)

Window-Constraint Adjustment (A)

■ For stream Si whose head packet is serviced before

its deadline:

■ if (yi’ > xi’) then yi’=yi’-1; ■ else if (yi’ = xi’) and (xi’ > 0) then

■ xi’=xi’-1; yi’=yi’-1;

■ if (xi’=yi’=0) or (Si is tagged) then

■ xi’=xi; yi’=yi;

■ if (Si is tagged) then reset tag;

slide-10
SLIDE 10

Rich West (2000)

Window-Constraint Adjustment (B)

■ For stream Sj whose head packet misses its

deadline:

■ if (xj’ > 0) then

■ xj’=xj’-1; yj’=yj’-1; ■ if (xj’=yj’=0) then xj’=xj; yj’=yj;

■ else if (xj’=0) and (yj > 0) then

■ yj’=yj’+ε; ■ Tag Sj with a violation;

slide-11
SLIDE 11

Rich West (2000)

DWCS Algorithm Outline

■ Find stream Si with highest priority (see Table) ■ Service head packet of stream Si ■ Adjust Wi’ according to (A) ■ Deadlinei = Deadlinei + Ti ■ For each stream Sj missing its deadline:

■ While deadline is missed: ■ Adjust Wj’ according to (B) ■ Drop head packet of stream Sj if droppable ■ Deadlinej = Deadlinej + Tj

slide-12
SLIDE 12

Rich West (2000)

EDF versus DWCS

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 s1 s2 s1 s1 s1 s1 s1 s1 s1 s3 s2 s3 s2 s3 s2 s3 time, t s1 s2 s3 3/4(1),2/3(2),2/2(3),1/1(4),3/4(5),2/3(6),2/2(7),1/1(8),3/4(9)... 1/2(1),1/1(2),1/2(3),1/1(4),1/2(5)... 6/8(1),5/7(2),4/6(3),3/5(4),3/4(5),2/3(6),1/2(7),0/1(8),6/8(9)... s s s s s s s s s s s s s s s2 s1 3 1 2 3 1 2 3 1 2 3 1 1 EDF DWCS 2 3

slide-13
SLIDE 13

Rich West (2000)

DWCS Delay Characteristics

■ If feasible schedule, max delay of service to Si is: ■ (xi + 1)Ti - Ci ■ Note: Every time Si is not serviced for Ti time units

xi’ is decremented by 1 until it reaches 0.

■ If no feasible schedule, max delay of service to Si is

still bounded.

■ Function of time to have: ■ Earliest deadline, lowest window-constraint,

highest window-denominator.

slide-14
SLIDE 14

Rich West (2000)

Possible Change in Window- Denominators

Service Order Time, t k y Fastest rate of increase is 1/K l 1 1 K Gradient 1/T <=1/K i Path of yi' δ Possible path of y Possible path of yl' m' i m m S S S φ yi ' y φ m ' φ l ', y

slide-15
SLIDE 15

Rich West (2000)

Bandwidth Utilization

■ Minimum utilization factor of stream Si is: ■ i.e., min req’rd fraction of bandwidth. ■ Least upper bound on utilization is min of utilization

factors for all streams that fully utilize bandwidth.

■ i.e., guarantees a feasible schedule. ■ L.U.B. is 100% in a slotted-time system.

i i i i i i

T y )C x (y U − =

slide-16
SLIDE 16

Rich West (2000)

Least Upper Bound on Utilization

■ Why 100%? ■ If all Wi’s are 0, all deadlines must be met. DWCS

schedules packets in EDF order - optimal.

■ If all Wi’s > 0, DWCS schedules EDF then lowest Wi

first.

■ If all Wi’s are normalized to same denominator,

intuitively worst-case tolerable delay of a stream with lowest Wi is less than one with higher Wi.

■ This is like scheduling in EDF order, which is

  • ptimal.
slide-17
SLIDE 17

Rich West (2000)

Scheduling Test

■ If:

and Ci=K, Ti=qK for all i, where q is 1,2,…etc, then a feasible schedule exists.

■ For variable length packets: ■ let Ci<=K for all i or fragment/combine packets &

translate service constraints.

■ e.g., ATM SAR layer.

1.0 T ).C y x (1

n 1 i i i i i

≤ −

∑ =

slide-18
SLIDE 18

Rich West (2000)

Simulation Scenario

■ 8 classes of packet streams: ■ (Wi,Ti) = {1/10,400}, {1/20,400}, {1/30,480},

{1/40,480}, {1/50, 560}, {1/60, 560}, {1/70,640}, {1/80,640}

■ Varied number of streams n, uniformly distributed

amongst traffic classes.

■ Total of a million packets serviced.

slide-19
SLIDE 19

Rich West (2000)

Simulation Scenario

■ 8 classes of packet streams: ■ Varied number of streams n, uniformly distributed

amongst traffic classes.

■ Total of a million packets serviced.

W i 1/10 1/20 1/30 1/40 1/50 1/60 1/70 1/80 Ti 400 400 480 480 560 560 640 640

slide-20
SLIDE 20

Rich West (2000)

Bandwidth Utilization Results

n D V U 480 0.9156 0.9518 496 0.9461 0.9835 504 0.9613 0.9994 512 15152 0.9766 1.0152 520 30990 0.9919 1.0311 528 46828 7038 1.0071 1.047 544 78528 31873 1.0376 1.0787 560 110240 53455 1.0681 1.1104 640 268800 148143 1.2207 1.269

∑=

8 1 i i i

T C . 8 n

slide-21
SLIDE 21

Rich West (2000)

Heterogeneous Packet Streams

■ Minimize mean delay (or jitter) to best-effort packets. ■ Maintain service guarantees to real-time packets. ■ For best-effort packets: ■ calculate pseudo values, WBE and TBE and treat

like RT packets, or

■ service best-effort packets when all RT packets

serviced in current request periods.

slide-22
SLIDE 22

Rich West (2000)

Heterogeneous Packet Streams

  • Simulated Results (1)

100 200 300 400 500 600 700 800 900 200 400 600 800 1000

Best-Effort Packets Serviced (x1000) Total Packets Serviced (x1000)

  • Min. Utilization of Window-Constrained Streams:

15.3% 30.5% 45.8% 61.0% 76.3% 91.5%

slide-23
SLIDE 23

Rich West (2000)

Heterogeneous Packet Streams

  • Simulated Results (2)

10 20 30 40 50 60 70 80 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

Mean Delay Between Best-Effort Packets Total Utilization Factor of Window-Constrained Streams

(T,W) Pairs for Window-Constrained Streams: T=400, W=1/10 T=400, W=1/20 T=400, W=1/30 T=400, W=1/50 T=300, W=1/10

slide-24
SLIDE 24

Rich West (2000)

Conclusions

■ Presented a modified version of DWCS from that in

RTAS’99:

■ Support for (x,y)-hard deadlines as opposed to

(x,y)-firm deadlines.

■ Bounded service delay, even in overload. ■ 100% utilization bound for fixed-length packets. ■ Fast response for best-effort packet streams. ■ DWCS aimed at servicing packets with delay and

loss-constraints.

slide-25
SLIDE 25

Rich West (2000)

Current and Future Work

■ Switch / co-processor implementation of DWCS. ■ Scheduling variable-length packets. ■ Replacement CPU scheduler in Linux kernel. ■ www.cc.gatech.edu/~west/dwcs.html ■ “Guarantee” minimum quantum of service every

fixed window of service time to competing threads.

slide-26
SLIDE 26

Rich West (2000)

Scheduling Related Work

■ Fair Scheduling: WFQ/WF2Q (Shenker, Keshav,

Bennett, Zhang etc), SFQ (Goyal et al), EEVDF/Proportional Share (Stoica, Jeffay et al).

■ (m,k) Deadline Scheduling: Distance-Based Priority

(Hamdaoui & Ramanathan), Dual-Priority Scheduling (Bernat & Burns), Skip-Over (Koren & Shasha).

■ Pinwheel Scheduling: Holte, Baruah etc. ■ Other multimedia scheduling: SMART (Nieh and

Lam).

slide-27
SLIDE 27

Rich West (2000)

Related Research Papers

■ Experimentation with Event-Based Methods of

Adaptive QoS Management, GIT-CC-99-25.

■ Analysis of a Window-Constrained Scheduler for

Real-Time and Best-Effort Traffic Streams, RTSS’2000.

■ Dynamic Window-Constrained Scheduling for

Multimedia Applications, ICMCS’99.

■ Scalable Scheduling Support for Loss and Delay-

Constrained Media Streams, RTAS’99.

■ Exploiting Temporal and Spatial Constraints on

Distributed Shared Objects, ICDCS’97.