Dynamic hierarchical network resource scheduling for continuous media
First Claim
1. A method of playing back continuous media data comprising the steps of:
- performing job admission based on loading of a server;
performing hierarchically scheduling of a plurality of resources based on an estimate of consumption of a plurality of data streams from each of said plurality of resources with respect to available time during a single schedule cycle of a plurality of schedule cycles substantially ensuring completion of at least one of said plurality of data streams within a particular time frame of said single schedule cycle;
dynamically monitoring actual resource consumption to improve utilization of said plurality of resources with conservative admission at beginning of said single cycle and slack filling additional available time during said particular time frame of said single cycle;
degrading a first part of one of said plurality of data streams with respect to a second part of one of said plurality of data streams deemed less important according to an application specified prioritization policy of said server.
11 Assignments
0 Petitions
Accused Products
Abstract
An apparatus and method is provided that supports continuous media for conventional networked workstations and PC'"'"'s. Described are user-level mechanisms and policies designed to give good, efficient multimedia service under the mild assumption that the operating system provides a preemptive real-time scheduling class that can be used to give CPU cycles to the multimedia processes in preference to other processes that are not time sensitive. There are no modifications to the operating system kernel and isochronous networks are not required. It suffices for an application to state that it wants to play a particular stream of a type known to the server (e.g. a file containing MPEG-1 video 320×240 pixels, 8-bit color, 30 frames per second), or for the application to specify a frame rate and an index describing the offset of each frame in a file.
-
Citations
16 Claims
-
1. A method of playing back continuous media data comprising the steps of:
-
performing job admission based on loading of a server; performing hierarchically scheduling of a plurality of resources based on an estimate of consumption of a plurality of data streams from each of said plurality of resources with respect to available time during a single schedule cycle of a plurality of schedule cycles substantially ensuring completion of at least one of said plurality of data streams within a particular time frame of said single schedule cycle; dynamically monitoring actual resource consumption to improve utilization of said plurality of resources with conservative admission at beginning of said single cycle and slack filling additional available time during said particular time frame of said single cycle; degrading a first part of one of said plurality of data streams with respect to a second part of one of said plurality of data streams deemed less important according to an application specified prioritization policy of said server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method of playing back continuous media comprising the steps of:
-
performing hierarchical scheduling of a plurality of resources based on estimating the resource consumption and determining that at least one data stream will fit within a schedule cycle among a collection of data streams for each of said plurality of resources; dynamically monitoring actual resource consumption to improve utilization of said plurality of resources with conservative admission at beginning of said single cycle and by comparing actual resource consumption with predictions of hierarchical resource scheduling and serving additional data streams from said collection of data streams from a plurality of waiting queues when said actual resource consumption is smaller as a means of slack filling any available time during said schedule cycle; and degrading parts of said at least one data stream deemed less important than remaining data streams of said collection of data streams according to an application specified prioritization policy.
-
-
15. An apparatus to play back continuous media comprising:
-
schedule means for performing hierarchical scheduling of a plurality of resources based on estimating resource consumption for determining that at least one data stream will fit within a schedule cycle of a plurality of schedule cycles among a collection of data streams for each of said plurality of resources; means for dynamically monitoring actual resource consumption to improve utilization of said plurality of resources with conservative admission at beginning of said single cycle and for comparing actual resource consumption with predictions of hierarchical resource scheduling and serving additional data streams from said collection of data streams from a plurality of waiting queues when said actual resource consumption is smaller as a means of slack filling any available time during said schedule cycle; and degrading means for degrading parts of said at least one data stream not fully served and deemed less important than remaining data streams of said collection of data streams according to an application specified prioritization policy. - View Dependent Claims (16)
-
Specification