Methods and apparatus for predictive delivery of content over a network
First Claim
1. A computerized method of determining which of a plurality of digitally rendered content elements to distribute over a content delivery network at a given time, said computerized method comprising:
- receiving, at a content server within said content delivery network, viewership data from a plurality of computerized devices serviced by said content server, said viewership data comprising at least data relating to historical bandwidth demand;
generating, utilizing a computerized process and based at least in part on said viewership data, data relating to bandwidth demand at a future period of time;
determining whether to deliver, at said future period of time, first ones of said plurality of digitally rendered content elements to said plurality of computerized devices in place of second ones of said plurality of digitally rendered content elements, said determination based at least in part upon said data relating to bandwidth demand and data indicative of available bandwidth in said content delivery network; and
delivering said first ones of said plurality of digitally rendered content elements to said plurality of computerized devices;
wherein said generating and determining occur prior to said delivering of any of said first ones of said plurality of digitally rendered content elements to said plurality of computerized devices.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus for optimizing bandwidth utilization in a cable network. In one embodiment, the method comprises predicting which content will be requested by a set of users based upon the exhibited viewing habits of those users (and/or others). A server process gathers viewership data comprising a listing of programs requested by users at various times of the day. The server process aggregates the viewership data, identifies patterns within the aggregated data, and extrapolates a schedule of programs likely to be requested. In certain embodiments, the server process additionally gathers the capabilities of each cable device in an associated subnetwork. Based upon these capabilities, and based upon the total bandwidth predicted to remain available in the network over a target broadcast period, the server process may also select an optimal compression scheme and video quality level before broadcasting a certain program.
-
Citations
28 Claims
-
1. A computerized method of determining which of a plurality of digitally rendered content elements to distribute over a content delivery network at a given time, said computerized method comprising:
-
receiving, at a content server within said content delivery network, viewership data from a plurality of computerized devices serviced by said content server, said viewership data comprising at least data relating to historical bandwidth demand; generating, utilizing a computerized process and based at least in part on said viewership data, data relating to bandwidth demand at a future period of time; determining whether to deliver, at said future period of time, first ones of said plurality of digitally rendered content elements to said plurality of computerized devices in place of second ones of said plurality of digitally rendered content elements, said determination based at least in part upon said data relating to bandwidth demand and data indicative of available bandwidth in said content delivery network; and delivering said first ones of said plurality of digitally rendered content elements to said plurality of computerized devices; wherein said generating and determining occur prior to said delivering of any of said first ones of said plurality of digitally rendered content elements to said plurality of computerized devices. - View Dependent Claims (2, 3, 4, 5)
-
-
6. Computer-readable apparatus comprising a non-transitory storage medium comprising at least one computer program having a plurality of instructions, said plurality of instructions configured to, when executed by a processor apparatus:
-
evaluate viewership data associated with a plurality of computerized client devices in data communication with a content delivery network, said evaluation comprising identification of at least one recurring temporal period that exhibits a prescribed activity or behavior by at least a portion of said plurality of computerized client devices; identify one or more of a plurality of unrequested digitally rendered content elements to be delivered over said content delivery network to said plurality of computerized devices at a plurality of future times, said identification based at least in part upon (i) a bandwidth predicted to be available in said content delivery network at said plurality of future times, and (ii) said identification of at least one recurring temporal period; and cause delivery of said one or more of said plurality of unrequested digitally rendered content elements in a multiplexed stream to said plurality of computerized devices at said plurality of future times. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A computerized method of determining which of a plurality of digitally rendered content elements to distribute over a content delivery network at a given time, said computerized method comprising:
-
receiving, at a content server within said content delivery network, viewership data associated with a plurality of computerized devices serviced by said content server, said viewership data comprising at least data relating to historical bandwidth demand; generating, utilizing a computerized process and based at least in part on said viewership data, data relating to bandwidth demand at a future period of time; determining to deliver, at said future period of time, first ones of said plurality of digitally rendered content elements to said plurality of computerized devices in place of second ones of said plurality of digitally rendered content elements, said determination based at least in part upon;
(i) said data relating to bandwidth demand at a future period of time, and (ii) data indicative of available bandwidth in said content delivery network; anddelivering said first ones of said plurality of digitally rendered content elements to said plurality of computerized devices; wherein said generating and determining occur prior to said delivering of any of said first ones of said plurality of digitally rendered content elements to said plurality of computerized devices. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A computerized network apparatus configured to determine which of a plurality of unrequested digitally rendered content elements to distribute over a content delivery network, said computerized network apparatus comprising:
-
a storage device; and processor apparatus in communication with said storage device and configured to execute at least one computer program thereon, said computer program comprising a plurality of instructions which are configured to, when executed by said processor apparatus; analyze one or more historical data records to identify an interval over which to consider a plurality of viewership data, said plurality of viewership data aggregated over said interval, said aggregation comprising; generation of data representative of a list of digitally rendered programs available over said interval; retrieval of data representative of a list of said plurality of computerized devices in a portion of said content delivery network; determination of individual ones of said digitally rendered programs that were requested by one or more said plurality of computerized devices when said digitally rendered programs were available during said interval; and creation of a data structure, said data structure comprising data configured to indicate which of said digitally rendered programs were requested, said creation based at least in part on said determination; determine which of said plurality of unrequested digitally rendered content elements are to be delivered over said content delivery network to a plurality of computerized devices at a future recurring time based at least in part upon consideration of said plurality of viewership data over said interval, said plurality of viewership data comprising data configured to indicate one or more recurring times of day; and transmit said plurality of unrequested digitally rendered content elements in a multiplexed stream to said plurality of computerized devices at said future recurring time; wherein said future recurring time comprises a time period correlated to said one or more recurring times of said plurality of viewership data.
-
-
24. Computer-readable apparatus comprising a non-transitory storage medium comprising at least one computer program having a plurality of instructions, said plurality of instructions configured to, when executed by a digital processor apparatus:
-
algorithmically evaluate viewership data associated with a plurality of computerized client devices in data communication with a content delivery network, said evaluation comprising identification of at least one recurring temporal period that exhibits a prescribed activity or behavior by said plurality of computerized client devices; identify one or more of a plurality of unrequested digitally rendered content elements to be delivered over said content delivery network to said plurality of computerized devices at a plurality of future times, said identification based at least in part upon (i) bandwidth predicted to be available in said content delivery network at said plurality of future times, and (ii) said identification of at least one recurring temporal period; and cause delivery of said one or more of said plurality of unrequested digitally rendered content elements to said plurality of computerized devices at said plurality of future times, said delivery being via a multiplexed transport. - View Dependent Claims (25, 26, 27, 28)
-
Specification