Dynamic window-constrained scheduling of real-time streams in media servers

We describe an algorithm for scheduling packets in real-time multimedia data streams. Common to these classes of data streams are service constraints in terms of bandwidth and delay. However, it is typical for real-time multimedia streams to tolerate bounded delay variations and, in some cases, finite losses of packets. We have therefore developed a scheduling algorithm that assumes streams have window-constraints on groups of consecutive packet deadlines. A window-constraint defines the number of packet deadlines that can be missed (or, equivalently, 'must be met) in a window of deadlines for consecutive packets in a stream. Our algorithm, called dynamic window-constrained scheduling (DWCS), attempts to guarantee no more than re out of a window of y deadlines are missed for consecutive packets in real-time and multimedia streams. Using DWCS, the delay of service to real-time streams is bounded, even when the scheduler is overloaded. Moreover, DWCS is capable of ensuring independent delay bounds on streams, while, at the same time, guaranteeing minimum bandwidth utilizations over tunable and finite windows of time. We show the conditions under which the total demand for bandwidth by a set of window-constrained streams can exceed 100 percent and still ensure all window-constraints are met. In fact, we show how it is possible to strategically skip certain deadlines in overload conditions, yet fully utilize all available link capacity and guarantee worst-case per-stream bandwidth and delay constraints. Finally, we compare DWCS to the "distance-based" priority (DBP) algorithm, emphasizing the trade-offs of both approaches.

[1]  J. Michael Harrison,et al.  Dynamic Scheduling of a Multiclass Queue: Discount Optimality , 1975, Oper. Res..

[2]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[3]  Anthony Ephremides,et al.  Optimal scheduling with strict deadlines , 1989 .

[4]  Scott Shenker,et al.  Analysis and simulation of a fair queueing algorithm , 1989, SIGCOMM '89.

[5]  Louis E. Rosier,et al.  The pinwheel: a real-time scheduling problem , 1989, [1989] Proceedings of the Twenty-Second Annual Hawaii International Conference on System Sciences. Volume II: Software Track.

[6]  Don Towsley,et al.  Optimal scheduling policies for a class of Queues with customer deadlines to the beginning of service , 1990, PERV.

[7]  Domenico Ferrari,et al.  Client requirements for real-time communication services , 1990, IEEE Communications Magazine.

[8]  Hui Zhang,et al.  Comparison of rate-based service disciplines , 1991, SIGCOMM '91.

[9]  Nsf Ncr,et al.  A Generalized Processor Sharing Approach to Flow Control in Integrated Services Networks: The Single Node Case* , 1991 .

[10]  Jon M. Peha,et al.  A cost-based scheduling algorithm to support integrated services , 1991, IEEE INFCOM '91. The conference on Computer Communications. Tenth Annual Joint Comference of the IEEE Computer and Communications Societies Proceedings.

[11]  ZhangHui,et al.  Comparison of rate-based service disciplines , 1991 .

[12]  Francis Y. L. Chin,et al.  General Schedulers for the Pinwheel Problem Based on Double-Integer Reduction , 1992, IEEE Trans. Computers.

[13]  Abhay Parekh,et al.  A generalized processor sharing approach to flow control in integrated services networks: the single-node case , 1993, TNET.

[14]  Christer Carlsson,et al.  DIVE - A platform for multi-user virtual environments , 1993, Comput. Graph..

[15]  S. Jamaloddin Golestani,et al.  A self-clocked fair queueing scheme for broadband applications , 1994, Proceedings of INFOCOM '94 Conference on Computer Communications.

[16]  Saul Greenberg,et al.  Real time groupware as a distributed system: concurrency control and its effect on the interface , 1994, CSCW '94.

[17]  Dennis Shasha,et al.  Skip-Over: algorithms and complexity for overloaded systems that allow skips , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[18]  Parameswaran Ramanathan,et al.  A Dynamic Priority Assignement Technique for Streams with (m, k)-Firm Deadlines , 1995, IEEE Trans. Computers.

[19]  QueueingJon,et al.  WF 2 Q : Worst-case Fair Weighted Fair , 1996 .

[20]  Hui Zhang,et al.  WF/sup 2/Q: worst-case fair weighted fair queueing , 1996, Proceedings of IEEE INFOCOM '96. Conference on Computer Communications.

[21]  Harrick M. Vin,et al.  A hierarchial CPU scheduler for multimedia operating systems , 1996, OSDI '96.

[22]  H. Vin,et al.  Start-time fair queueing: a scheduling algorithm for integrated services packet switching networks , 1996, SIGCOMM '96.

[23]  Hussein M. Abdel-Wahab,et al.  A proportional share resource allocation algorithm for real-time, time-shared systems , 1996, 17th IEEE Real-Time Systems Symposium.

[24]  Sandeep Kishan Singhal,et al.  Effective remote modeling in large-scale distributed simulation and visualization environments , 1996 .

[25]  Guillem Bernat,et al.  Combining -Hard deadlines and Dual Priority Scheduling , 1997 .

[26]  Jason Nieh,et al.  The design, implementation and evaluation of SMART: a scheduler for multimedia applications , 1997, SOSP.

[27]  Karsten Schwan,et al.  Adaptive variation of reliability , 1997, HPN.

[28]  Alan Burns,et al.  Combining (/sub m//sup n/)-hard deadlines and dual priority scheduling , 1997, Proceedings Real-Time Systems Symposium.

[29]  Sanjoy K. Baruah,et al.  Pfair Scheduling of Generalized Pinwheel Task Systems , 1998, IEEE Trans. Computers.

[30]  Azer Bestavros,et al.  Statistical rate monotonic scheduling , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[31]  D. Stiliadis,et al.  Rate-proportional servers: a design methodology for fair queueing algorithms , 1998, TNET.

[32]  Anujan Varma,et al.  Efficient fair queueing algorithms for packet-switched networks , 1998, TNET.

[33]  Steve Goddard,et al.  A theory of rate-based execution , 1999, Proceedings 20th IEEE Real-Time Systems Symposium (Cat. No.99CB37054).

[34]  Christian Poellabauer,et al.  Scalable scheduling support for loss and delay constrained media streams , 1999, Proceedings of the Fifth IEEE Real-Time Technology and Applications Symposium.

[35]  Karsten Schwan,et al.  Dynamic window-constrained scheduling for multimedia applications , 1999, Proceedings IEEE International Conference on Multimedia Computing and Systems.

[36]  Christian Poellabauer,et al.  Analysis of a window-constrained scheduler for real-time and best-effort packet streams , 2000, Proceedings 21st IEEE Real-Time Systems Symposium.

[37]  Guillem Bernat,et al.  Guaranteed on-line weakly-hard real-time systems , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[38]  Aloysius K. Mok,et al.  Window-constrained real-time periodic task scheduling , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[39]  Alan Burns,et al.  Weakly Hard Real-Time Systems , 2001, IEEE Trans. Computers.

[40]  Harrick M. Vin,et al.  A hierarchial CPU scheduler for multimedia operating systems , 1996, OSDI '96.

[41]  Wei Hong,et al.  Proceedings of the 5th Symposium on Operating Systems Design and Implementation Tag: a Tiny Aggregation Service for Ad-hoc Sensor Networks , 2022 .

[42]  Karsten Schwan,et al.  Window-Constrained Process Scheduling for Linux Systems , 2002 .

[43]  Richard J. Lipton,et al.  On fundamental tradeoffs between delay bounds and computational complexity in packet scheduling algorithms , 2002, SIGCOMM 2002.

[44]  Aaron Striegel,et al.  Dynamic class-based queue management for scalable media servers , 2003, J. Syst. Softw..

[45]  Karsten Schwan,et al.  On Network CoProcessors for Scalable, Predictable Media Services , 2003, IEEE Trans. Parallel Distributed Syst..

[46]  Karsten Schwan,et al.  Leveraging block decisions and aggregation in the ShareStreams QoS architecture , 2003, Proceedings International Parallel and Distributed Processing Symposium.