Channel conservation for anticipated load surge in video servers
First Claim
Patent Images
1. A method of scheduling videos in a video-on-demand system, comprising the steps of:
- receiving a plurality of requests from users of the system, for playing of the videos;
determining a time at which a next playing of a video by the video-on-demand system will occur based on present availability of system resources and anticipated load on the system;
selecting a particular video to play based at least in part on attributes of the requests which have not yet been serviced; and
,after the selecting and when the time for the next playing arrives, playing the particular video to service at least some of the requests.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and method for scheduling the number of channels in video-on-demand servers so as to deal with time varying load. The scheduling process is hierarchical. A higher level scheduler controls the rate of channel consumption based on anticipated load, and a lower level scheduler selects the waiting client requests to be served when a channel is allocated by the higher level scheduler.
77 Citations
20 Claims
-
1. A method of scheduling videos in a video-on-demand system, comprising the steps of:
-
receiving a plurality of requests from users of the system, for playing of the videos; determining a time at which a next playing of a video by the video-on-demand system will occur based on present availability of system resources and anticipated load on the system; selecting a particular video to play based at least in part on attributes of the requests which have not yet been serviced; and
,after the selecting and when the time for the next playing arrives, playing the particular video to service at least some of the requests. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of scheduling videos in a video-on-demand system, comprising the steps of:
-
receiving requests for playing of videos from users of the system; tracking the requests in a queue structure; requesting use of system resources for playout of at least one of the videos identified by the requests in the queue; responsive to the requesting, comparing an elapsed time between a last playing of a video and the requesting of the use of system resources to a threshold value; when the comparing indicates that the elapsed time does not exceed the threshold value, postponing allocation of system resources to the request; when the comparing indicates that the elapsed time exceeds the threshold value, allocating system resources to the request and playing out the at least one of the videos. - View Dependent Claims (8, 9)
-
-
10. A method of scheduling physical resources in an on-demand customer service system of a type wherein a single resource can be used to satisfy multiple requests and wherein allocated resources can not be reclaimed until service completion, comprising the steps of:
-
receiving, from a user of the system, requests for allocation of the physical resources to the customer requests; tracking the requests for allocation in a queue structure; determining a time at which at least one of the physical resources will be next allocated based on both present availability of system resources and anticipated load on the system; selecting a particular resource to allocate based on attributes of the requests in the queue.
-
-
11. A computer readable memory that can be used to direct a computer to schedule videos in accordance with a particular method when used by the computer, the method comprising the steps of:
-
receiving requests for playing of videos from users of the system; tracking the requests in a queue structure; determining a time at which a next playing of a video by the video-on-demand system will occur based on present availability of system resources and anticipated load on the system; selecting a particular video to play based on attributes of the requests in the queue; when the time arrives, playing the particular video; and
,removing at least some of the requests served by the playing from the queue structure. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A computer readable memory that can be used to direct a computer to scheduling video in accordance with a particular method when used by the computer, the method comprising the steps of:
-
receiving requests for playing of videos from users of the system; tracking the requests in a queue structure; requesting use of system resources for playout of at least one of the videos identified by the requests in the queue; comparing an elapsed time between a last playing of a video and the requesting of the use of system resources to a threshold value; when the comparing indicates that the elapsed time does not exceed the threshold value, postponing allocation of system resources to the request; when the comparing indicates that the elapsed time exceeds the threshold value, allocating system resources to the request and playing out the at least one of the videos. - View Dependent Claims (18, 19)
-
-
20. A video on demand system, comprising the steps of:
-
a network interface coupled to receiving requests for playing of videos from users of the video-on-demand system; a memory having a queue structure formed therein, the queue structure including information indicative of the requests; a first schedular instantiated in the memory, the first scheduling including;
(i) means for selecting at least one of the videos for playout based on attributes of the requests indicated in the queue structure, and;
(ii) means for requesting use of system resources for playout of at least one of the videos selected by the means for selecting;a second scheduler instantiated in the memory the second scheduling including;
(i) means responsive to the requesting, for comparing an elapsed time between a last playing of a video and the requesting of the use of system resources to a threshold value, and;
(ii) means for allocating system resources to the request made by the means for requesting, when the comparing indicates that the elapsed time exceeds the threshold value; and
,a video player coupled to the second schedular for playing the at least one of the videos.
-
Specification