dynamic window constrained scheduling for multimedia
play

Dynamic Window-Constrained Scheduling for Multimedia Applications - PowerPoint PPT Presentation

Dynamic Window-Constrained Scheduling for Multimedia Applications Richard West and Karsten Schwan Georgia Institute of Technology Rich West (1999) Introduction Real-Time media servers need to support 100s (even 1000s) of clients with


  1. Dynamic Window-Constrained Scheduling for Multimedia Applications Richard West and Karsten Schwan Georgia Institute of Technology Rich West (1999)

  2. Introduction ■ Real-Time media servers need to support 100s (even 1000s) of clients with individual RT (QoS) constraints. ■ Need fast/efficient scheduling on such servers. ■ We describe Dynamic Window-Constrained Scheduling (DWCS): ■ DWCS limits the number of late packets over finite windows of arrivals requiring service. ■ DWCS can be both fair and unfair when necessary - Performs Fair-Queueing, SP and EDF. ■ We demonstrate DWCS using a streaming video application. Rich West (1999)

  3. DWCS Packet Scheduling ■ Two attributes per packet: ■ Deadline (max inter-packet gap). ■ Loss-tolerance, x/y . ■ x late/lost packets every y arrivals for service from same stream. ■ At any time, all packets in the same stream: ■ Have the same current loss-tolerance. ■ Have deadlines offset by a fixed amount from predecessors. Rich West (1999)

  4. DWCS - Conceptual View Network Pipe Higher Priority . = . Lower . Loss-Tolerance EDF-ordered queues Rich West (1999)

  5. Heterogeneous Scheduling 0 loss-tolerance queue EDF-ordered queues Network Pipe Higher Priority . = . Lower . Loss-Tolerance (Time-constrained traffic) Compare first packet with packet at head of 0 loss-tolerance queue to see if schedulable. Lowest loss-tolerance first (Non-time-constrained traffic) Rich West (1999)

  6. Pairwise Packet Ordering Table Precedence amongs t pairs of packets • Lowest loss-tolerance first • Same non-zero loss-tolerance, order EDF • Same non-zero loss-tolerance & deadlines, order lowest loss-numerator first • Zero loss-tolerance and denominators, order EDF • Zero loss-tolerance, order highest loss- denominator first • All other cases: first-come-first-serve Rich West (1999)

  7. Example: L1=1/2, L2=3/4, L3=6/8 D=1, Service Time (C)=1 s1 s2 s1 s3 s s2 s1 s3 s1 s2 s1 s3 s1 s2 s s3 1 1 time, t 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 s1 1/2(0), 1/1(1),1/2(2),1/1(3),1/2(4)... s 3/4(0),2/3(1),2/2(2),1/1(3),3/4(4),2/3(5),2/2(6),1/1(7),3/4(8)... 2 s3 6/8(0),5/7(1),4/6(2),3/5(3),3/4(4),2/3(5),1/2(6),0/1(7),6/8(8)... Rich West (1999)

  8. Example: L1=1/2, L2=1/2, C1=5, C2=3, D1=5, D2=3 s1 s2 s2 s1 time, t 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 s2 s2 s1 s2 time, t 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 s1 1/2(0),1/1(5),1/2(10),0/1(15),1/2(20),0/1(25),1/2(30)... s2 1/2(0),0/1(3),1/4(6),1/3(9),1/2(12),0/1(15),1/4(18), 1/3(21),1/2(24),0/1(27),1/2(30)... Rich West (1999)

  9. Loss-Tolerance Adjustment (A) ■ For stream i whose head packet is serviced before its deadline: ■ if ( y i ’ > x i ’ ) then y i ’ = y i ’ -1; ■ if ( x i ’ = y i ’ =0) then x i ’ = x i ; y i ’ = y i ; ■ Where: ■ x i =Original loss-numerator for stream i ■ y i =Original loss-denominator for stream i ■ x i ’ =Current loss-numerator for stream i ■ y i ’ =Current loss-denominator for stream i Rich West (1999)

  10. Loss-Tolerance Adjustment (B) ■ For stream j whose head packet misses its deadline: ■ if ( x j ’ > 0) then ■ x j ’ = x j ’ -1; y j ’ = y j ’ -1; ■ if ( x j ’ = y j ’ =0) then x j ’ = x j ; y j ’ = y j ; ■ else if ( x j ’ =0) and ( y j > 0) then ■ x j ’=2 x j -1; y j ’ =2 y j +( y j ’ -1); ( method 1 ) ■ x j ’ = x j ; y j ’ = y j ; ( method 2 ) ■ if ( x j > 0) then y j ’ = y j ’ + ( y j - x j )/ x j  ; ( method 3 ) ■ if ( x j =0) then y j ’ = y j ’ + y j ; Rich West (1999)

  11. DWCS Algorithm Outline ■ While TRUE : ■ Find stream i with highest priority (see Table) ■ Service packet at head of stream i ■ Adjust loss-tolerance for i according to (A) ■ Deadline( i ) = Deadline( i ) + Inter-Pkt Gap( i ) ■ For each stream j missing its deadline: ■ While deadline is missed: ■ Adjust loss-tolerance for j according to (B) ■ Drop head packet of stream j if droppable ■ Deadline( j ) = Deadline( j ) + Inter-Pkt Gap( j ) Rich West (1999)

  12. Video Server MPEG-1 active stream s1 c 1 s2 ATM c Scheduler 2 Network c sn n Exponential idle time VIDEO SERVER Rich West (1999)

  13. Fair Scheduling: W=1,2 L=2/3,1/3 (b) 1.1e+06 DWCS (s1) DWCS (s2) 1e+06 SFQ (s1) SFQ (s2) 900000 800000 Bandwidth (bps) 700000 600000 DWCS (s2) & SFQ (s2) 500000 400000 DWCS (s1) & SFQ (s1) 300000 200000 0 20000 40000 60000 80000 100000 120000 140000 160000 Time (mS) Rich West (1999)

  14. Fair Scheduling: W=1,1,2,4 L=7/8,14/16,6/8,4/8 (a) 1.4e+06 DWCS (s1) DWCS (s2) DWCS (s3) 1.2e+06 DWCS (s4) SFQ (s1) SFQ (s2) 1e+06 SFQ (s3) SFQ (s4) Bandwidth (bps) DWCS (s4) & SFQ (s4) 800000 600000 DWCS (s1,s2) & SFQ (s1,s2) 400000 DWCS (s3) & SFQ (s3) 200000 0 0 5000 10000 15000 20000 25000 30000 35000 40000 45000 50000 Time (mS) Rich West (1999)

  15. Mixed Traffic: L1=1/3,L2=2/3, L3=0/100,D1=1,D2=1,D3= ∞ (a) 1.4e+06 s1 s2 s3 1.2e+06 1e+06 Bandwidth (bps) 800000 600000 400000 200000 0 0 50000 100000 150000 200000 250000 Time (mS) Rich West (1999)

  16. Mixed Traffic: L1=1/3,L2=2/3, L3=0/1500,D1=1,D2=1,D3= ∞ (b) 1.2e+06 s1 s2 s3 1e+06 800000 Bandwidth (bps) 600000 400000 200000 0 0 50000 100000 150000 200000 250000 Time (mS) Rich West (1999)

  17. Mixed Traffic: L1=1/3,L2=2/3, L3=0/100,D1=1,D2=1,D3= ∞ (a) 160000 s1 s2 140000 s3 120000 100000 Delay (mS) 80000 60000 40000 20000 0 0 200 400 600 800 1000 1200 1400 1600 Number of Packets Sent Rich West (1999)

  18. Mixed Traffic: L1=1/3,L2=2/3, L3=0/1500,D1=1,D2=1,D3= ∞ (b) 120000 s1 s2 100000 s3 80000 Delay (mS) 60000 40000 20000 0 0 200 400 600 800 1000 1200 1400 1600 Number of Packets Sent Rich West (1999)

  19. Missed Deadlines: W=1,2 L=2/3,1/3 (a) 1600 DWCS (s1) DWCS (s2) 1400 SFQ (s1) SFQ (s2) 1200 Deadlines Missed 1000 DWCS (s1) & SFQ (s1) 800 600 400 DWCS (s2) & SFQ (s2) 200 0 0 20000 40000 60000 80000 100000 120000 140000 160000 Time (mS) Rich West (1999)

  20. Mean Packet Delay: W=1,2 L=2/3,1/3 (b) 60000 DWCS (s1) DWCS (s2) SFQ (s1) 50000 SFQ (s2) 40000 Delay (mS) 30000 DWCS (s1) & SFQ (s1) 20000 SFQ (s2) 10000 DWCS (s2) 0 0 200 400 600 800 1000 1200 1400 1600 Number of Packets Sent Rich West (1999)

  21. DWCS Summary ■ Aimed at servicing packets with delay and loss- constraints. ■ Attempts to service each stream so that at most x packets are lost/late for every y packets requiring service. ■ DWCS minimizes the number of consecutive late packets over any finite window of packets in a given stream. ■ DWCS can perform fair scheduling, SP, and EDF scheduling. ( It can be unfair when necessary ). Rich West (1999)

  22. DWCS - Current Work ■ DWCS is currently being adapted for use as a CPU scheduler (using Linux), for hard real-time threads, so that (y-x) out of y deadlines can be met. ■ Leads to bounded service delay, and guaranteed service in any finite window of service time. ■ Aim is to support coordinated thread/packet scheduling. Rich West (1999)

  23. Scheduling Related Work ■ Fair Scheduling : WFQ/WF 2 Q (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). Rich West (1999)

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend