US5768681A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Channel conservation for anticipated load surge in video servers
Assignee: Google LLC
•
Filing: 1995-08-22
•
Granted: 1998-06-16
•
Expires: 2015-08-22
Abstract
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.
Inventors
- 👤 Asit Dan
- 👤 Perwez Shahabuddin
- 👤 Dinkar Sitaram
- 👤 William H. Tetzlaff
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-06 03:53
CPC Classifications
H; H04; H04N; H04N7/00; H04N7/10; H04N7/16; H04N7/173; H04N7/17309; H04N7/17336
Claims Analysis
Total Claims: 25
Claim 1
Independent Claim
105 words
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.
Claim 2
Independent Claim
105 words
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.
Claim 3
Dependent Claim
31 words
The method of claim 1, wherein the anticipated load on the system is determined as a function of at least anticipated new requests and anticipated completions of requests currently being served.
Claim 4
Dependent Claim
39 words
The method of claim 1, wherein the attributes are selected from a group including: a number of requests for a common video, waiting time for each of the requests, expected reneging threshold for the users and class of service.
Claim 5
Dependent Claim
71 words
The method of claim 1 wherein the determining a time at which a next playing of a video by the video-on-demand system will occur includes the step of determining whether a time period between a desired scheduling of a video and a previous scheduling of a video has exceeded a predetermined threshold; and, when the time period has not exceeded the threshold, postponing the playing until the threshold has been exceeded.
Claim 6
Dependent Claim
12 words
The method of claim 4 wherein the threshold is a fixed number.
Claim 7
Dependent Claim
23 words
The method of claim 4 wherein the threshold is determined based on a rate at which the load on the system is changing.
Claim 8
Independent Claim
130 words
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.
Claim 9
Independent Claim
130 words
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.
Claim 10
Dependent Claim
12 words
The method of claim 7 wherein the threshold is a fixed number.
Claim 11
Dependent Claim
23 words
The method of claim 7 wherein the threshold is determined based on a rate of which the load on the system is changing.
Claim 12
Independent Claim
113 words
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.
Claim 13
Dependent Claim
119 words
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.
Claim 14
Dependent Claim
119 words
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.
Claim 15
Dependent Claim
33 words
The computer readable memory of claim 11, wherein the anticipated load on the system is determined as a function of at least anticipated new requests and anticipated completions of requests currently being served.
Claim 16
Dependent Claim
41 words
The computer readable memory of claim 11, wherein the attributes are selected from a group including: a number of requests for a common video, waiting time for each of the requests, expected reneging threshold for the users and class of service.
Claim 17
Dependent Claim
73 words
The computer readable memory of claim 11 wherein the determining a time at which a next playing of a video by the video-on-demand system will occur includes the step of determining whether a time period between a desired scheduling of a video and a previous scheduling of a video has exceeded a predetermined threshold; and, when the time period has not exceeded the threshold, postponing the playing until the threshold has been exceeded.
Claim 18
Dependent Claim
14 words
The computer readable memory of claim 14 wherein the threshold is a fixed number.
Claim 19
Dependent Claim
25 words
The computer readable memory of claim 14 wherein the threshold is determined based on a rate at which the load on the system is changing.
Claim 20
Dependent Claim
145 words
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.
Claim 21
Dependent Claim
145 words
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.
Claim 22
Dependent Claim
14 words
The computer readable memory of claim 17 wherein the threshold is a fixed number.
Claim 23
Dependent Claim
25 words
The computer readable memory of claim 17 wherein the threshold is determined based on a rate of which the load on the system is changing.
Claim 24
Dependent Claim
189 words
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.
Claim 25
Dependent Claim
189 words
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.
References Cited (Backward Citations)
EP0617563A1
Cited
EP0673160A1
Cited
EP0673159A1
Cited
EP0696872A2
Cited
US5561456A
Cited
US5586264A
Cited
US5631694A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2001-06-15 | 2001-12-15 | 2002-06-16 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2005-06-15 | 2005-12-15 | 2006-06-16 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2009-06-15 | 2009-12-15 | 2010-06-16 | $7700.00 | Window Closed / Lapsed |