|Publication number||US9578355 B2|
|Application number||US 14/493,122|
|Publication date||21 Feb 2017|
|Filing date||22 Sep 2014|
|Priority date||29 Jun 2004|
|Also published as||CA2572688A1, CA2572688C, US8843978, US20050289618, US20150046960, WO2006004772A2, WO2006004772A3|
|Publication number||14493122, 493122, US 9578355 B2, US 9578355B2, US-B2-9578355, US9578355 B2, US9578355B2|
|Original Assignee||Time Warner Cable Enterprises Llc|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (213), Non-Patent Citations (6), Classifications (27), Legal Events (1)|
|External Links: USPTO, USPTO Assignment, Espacenet|
This application is a divisional of and claims priority to co-owned U.S. patent application Ser. No. 10/881,979 filed Jun. 29, 2004 of the same title, issued as U.S. Pat. No. 8,843,978 on Sep. 23, 2014, which is incorporated herein by reference in its entirety.
1. Field of Invention
The present invention relates generally to the field of network bandwidth allocation, and specifically in one aspect to maximizing the utilization of available bandwidth on the network to support video services with various bit-rates (such as on-demand video) over a content-based network such as a cable television network.
2. Description of Related Technology
Providing “on-demand” (OD) services, such as e.g., video on-demand or VOD, is well known in the prior art. In a typical configuration, the VOD service makes available to its users a selection of multiple video programs that they can choose from and watch over a network connection with minimum setup delay. At a high level, a VOD system consists of one or more VOD servers that pass and/or store the relevant content; one or more network connections that are used for program selection and program delivery; and customer premises equipment (CPE) to receive, decode and present the video on a display unit. The content is typically distributed to the CPE over a Hybrid Fiber Coaxial (HFC) network.
Depending on the type of content made available and rate structure for viewing, a particular VOD service could be called “subscription video-on-demand (SVOD)” that gives customers on-demand access to the content for a flat monthly fee, “free video-on-demand (FVOD)” that gives customers free on-demand access to some content, “movies on-demand” where VOD content consists of movies only, and so forth. Many of these services, although referred to by names different than VOD, still share many of the same basic attributes including storage, network and decoder technologies.
Just as different varieties of VOD service offerings have evolved over time, several different network architectures have also evolved for deploying these services. These architectures range from fully centralized (e.g., VOD servers at a central location) to fully distributed (e.g., multiple copies of content distributed on VOD servers very close to customer premises), as well as various other network architectures there between. Since most cable television networks today consist of optical fiber towards the “core” of the network which are connected to coaxial cable networks towards the “edge”, VOD transmission network architectures also consist of a mixture of optical fiber and coaxial cable portions.
The CPE for VOD often consists of a digital cable set-top box (DSTB) that provides the functions of receiving cable signals by tuning to the appropriate RF channel, processing the received signal and outputting VOD signals for viewing on a display unit. Such a digital set-top box also typically hosts a VOD application that enables user interaction for navigation and selection of VOD menu.
While the architectural details of how video is transported in the core HFC network can be different for each VOD deployment, each generally will have a transition point where the video signals are modulated, upconverted to the appropriate RF channel and sent over the coaxial segment(s) of the network. Depending on the topology of the individual cable plant, this could be performed at a node, hub or a headend. The coaxial cable portion of the network is variously referred to as the “access network” or “edge network” or “last mile network.”
In U.S. cable systems for example, downstream RF channels used for transmission of television programs are 6 MHz wide, and occupy a 6 MHz spectral slot between 54 MHz and 860 MHz. Deployments of VOD services have to share this spectrum with already established analog and digital cable television services. For this reason, the exact RF channel used for VOD service may differ from plant to plant. However, within a given cable plant, all homes that are electrically connected to the same cable feed running through a neighborhood will receive the same downstream signal. For the purpose of managing VOD services, these homes are grouped into logical groups typically called Service Groups. Homes belonging to the same Service Group receive their VOD service on the same set of RF channels.
VOD service is typically offered over a given number (e.g., 4) of RF channels from the available spectrum in cable. Thus, a VOD Service Group consists of homes receiving VOD signals over the same 4 RF channels. Reasons for this grouping include (i) that it lends itself to a desirable “symmetry of two” design of products (e.g. Scientific Atlanta's MQAM), and (ii) a simple mapping from incoming Asynchronous Serial Interface (ASI) payload rate of 213 Mbps to four QAM payload rates.
In most cable networks, VOD programs are transmitted using MPEG (e.g., MPEG-2) audio/video compression. Since cable signals are transmitted using Quadrature Amplitude Modulation (QAM) scheme, available payload bitrate for typical modulation rates (QAM-256) used on HFC systems is roughly 38 Mbps. In many VOD deployments, a typical rate of 3.75 Mbps is used to send one video program at resolution and quality equivalent to NTSC broadcast signals. In digital television terminology, this is called Standard Definition (SD) television resolution. Therefore, use of MPEG-2 and QAM modulation enables carriage of 10 SD sessions on one RF channel (10×3.75=37.5 Mbps<38 Mbps). Since a typical Service Group consists of 4 RF channels, 40 simultaneous SD VOD sessions can be accommodated within a Service Group. These numbers work out very well for many deployment scenarios, such as the following example. A typical “service area” neighborhood served by a coaxial cable drop from the cable network consists of 2000 homes, of which about two-thirds are cable subscribers, of which about one-third are digital cable subscribers, of which about 10% peak simultaneous use is expected. Hence, the bandwidth required to meet VOD requirements is 2000×(⅔)×(⅓)×0.1=approximately 40 peak VOD sessions—the exact number supported by a 4 QAM service group.
From the discussion above, the need for a function called Service Resource Manager (SRM) is evident. When a new VOD session request is made, the SRM receives that request, allocates bandwidth on a downstream QAM channel, and sends the information back to the CPE that made the request so that it can tune to the right RF channel and the VOD program therein. Since the SRM controls mapping of incoming VOD session requests to QAM channels within the Service Group, it is an appropriate place for a Cable Operator to enforce RF channel usage policy. In general, SRM should maximize availability of bandwidth to VOD sessions (by efficiently recycling bandwidth from expired sessions) and by ensuring some level of redundancy in case of equipment failure (e.g. a QAM modulator goes down).
More and more US households are beginning to purchase High Definition (HD) televisions (HDTV). By one estimate, by the end of 2004, over 12 million US households will have HDTV displays. To keep up with the trend, MSOs have begun offering HD television programs to cable customers and have recently started looking into deploying HD VOD services.
Entertainment-quality transmission of HD signals requires about four times as much bandwidth as SD. For an exemplary MPEG-2 Main Profile—High Level (MP@HL) video compression, each HD program requires around 15 Mbps bitrate. Although revenues from HD VOD service may not be four times the revenue from SD VOD service, the ability to offer HD VOD service is often critical to cable operators' strategy to be a leader in digital television service offerings.
Use of MPEG HD compression technology for initial deployment of HD VOD services is a logical choice, as HD VOD shares the same MPEG-2 transport layer technology. This approach allows reuse of most of the infrastructure deployed for SD VOD services. By using MPEG multiplexing techniques, SD and HD video streams can be simultaneously carried over the fiber side of the VOD network and multiplexed onto the same QAM channel in a service group. Since roughly 37.5 Mbps bandwidth is available on one QAM-256 carrier, cable operators can mix and match HD and SD VOD sessions using 3.75 Mbps per SD and 15 Mbps per HD VOD stream. For example, on a single QAM carrier, maximum 2 HD VOD sessions can be offered adding up to an aggregate 30 Mbps, with the other 7.5 Mbps being used by 2 SD sessions.
It should be recognized that under prevailing network and CPE design practices, the bandwidth required by a video stream cannot be spread over two QAM carriers. For example, when a new HD VOD session request is granted, all 15 Mbps of bandwidth must be made available on a single QAM carrier.
The role of the aforementioned SRM becomes even more important when managing a Service Group for simultaneous HD and SD VOD sessions. It has the additional task to map VOD sessions to QAM carriers such that it can ensure sufficient bandwidth block for HD VOD session on a QAM carrier in that Service Group. The method used for this mapping should at the same time be able to maximize the amount of bandwidth used without leaving bandwidth stranded on a QAM carrier. Since HD VOD takes much more bandwidth that SD video, during the introduction phase, a cable operator may wish to limit maximum number of sessions of either kind (SD or HD) allowed within a Service Group. Clearly, this number should be easily changeable (upward or downward) if business economics or other considerations demand it.
The foregoing discussion makes no assumptions regarding specific implementation details of the SRM. It will be recognized that the SRM function can be implemented at the edge or core of the network, in a VOD server, or elsewhere. Depending on where this function is implemented, it is variously referred to as NSG (Network Services Gateway) and SRM (Service Resource Manager).
For example, in a Scientific Atlanta network, the VOD server acts as the session resource manager and asks the Digital Network Control System (DNCS) for specific resources. The DNCS responds with a negative or positive response to the request and the VOD server implements the appropriate logic based on the response.
The need for a function that assigns from an available pool of resources to an incoming resource requests is known in the prior art. Various methods have been proposed to perform this function.
For example, U.S. Pat. No. 6,434,141 to Oz, et al. issued Aug. 13, 2002 and entitled “Communication management system and method” discloses a broadband multimedia system including a communication bus, a router, connected to the communication bus and further between a plurality of media sources and a plurality of network transmitters, a session manager, connected to communication bus, where the session manager provides routing instructions to the router, for directing data received from the media sources to the network transmitters for transmitting over a broadband network. No disclosure regarding assignment of bandwidth to VOD session requests is provided.
U.S. Pat. No. 6,201,901 to Imajima, et al. issued Apr. 3, 2001 and entitled “Video data distributing device by video on demand” discloses a requested title recognizing mechanism recognizes the title of a video requested by the subscriber. A VOD service state monitoring mechanism determines whether or not the broadcast of the video is to be provided in the FVOD or the NVOD service, and if there is any available channel for the broadcast. If the broadcast has not been switched from the FVOD service to the NVOD service, then a busy state monitoring mechanism checks the number of the current simultaneous subscribers for the video. If the number is equal to or larger than a threshold, then the busy state monitoring mechanism instructs an NVOD service providing mechanism to broadcast the requested video in the NVOD service. If the number is smaller than the threshold, then the busy state monitoring mechanism instructs an FVOD service providing mechanism to broadcast the requested video in the FVOD service. The patent does not, however, disclose any details regarding RF channel selection from available channels, or assignment of channels to the VOD request.
U.S. Pat. No. 6,169,728 to Perreault, et al. issued Jan. 2, 2001 and entitled “Apparatus and method for spectrum management in a multipoint communication system” discloses an apparatus and method for spectrum management in a multipoint communication system that controls upstream channel usage for secondary stations transmitting information to a primary station and downstream channel usage for secondary stations receiving information from a primary station. The apparatus includes a processor arrangement having a master controller and a plurality of processors, with the processor arrangement connected to a channel interface. The apparatus and method controls channel load balancing, channel congestion, and channel assignment in a multipoint communication system, and controls upstream channels independently from downstream channels. Factors and parameters utilized in such channel control and allocation include error parameters, channel noise parameters, transmit and receive loading factors, and congestion parameters. The patent also discloses implementation of “Least-Loaded” algorithm to assign bandwidth for next session request to the Least-Loaded carrier.
U.S. Pat. No. 6,092,178 to Jindal, et al issued Jul. 18, 2000 and entitled “System for responding to a resource request” discloses a method wherein a trigger is provided in association with a network naming service, such as DNS (Domain Name Service) that handles client requests for an application. The trigger comprises a set of executable instructions referenced by a resource record associated with an identifier of the application. In response to a client request concerning the application, the resource record is retrieved and the instructions are executed. In one implementation of a trigger, a DNS server provides load balancing among a plurality of servers within a network name space (e.g., domain or sub-domain) offering an application program (or replicated service) that is known by a virtual server name. A policy is selected for choosing a preferred server from the plurality of servers according to a specified status or operational characteristic of the application instances, such as the Least-Loaded instance of the application or the instance with the fastest response time. The policy is encapsulated within multiple levels of objects or modules distributed among the plurality of servers and the DNS server. The objects collect and assemble the servers' status and operational characteristics. The information collected by the objects is analyzed to select the server that best satisfies the selected policy. A client request for the application is received by the DNS server, which retrieves a resource record corresponding to the virtual server name. Within the record is the name of a trigger. The trigger is executed to select, or retrieve an identity of, a server to which the client request is to be directed.
U.S. Pat. No. 6,687,735 to Logston, et al. issued Feb. 3, 2004 and entitled “Method and apparatus for balancing distributed applications” discloses a method and apparatus for balancing distributed applications within a client/server network, such as a cable television network. In one aspect, a method of balancing the load of distributed application client portions (DACPs) across various server portions (DASPs) and server machines is disclosed. Statistics are maintained by one or more software processes with respect to the available resources of the servers and their loading; new process threads and/or distributed application server portions are allocated across the servers to maintain optimal system performance as client device loading increases or changes. In another aspect of the invention, an object-oriented distributed application software architecture employing both vertical and horizontal partitions and “mutable” (i.e., transportable) objects is disclosed. The mutable objects may reside on either the server or client portions of the distributed application while maintaining at least one network partition. A runtime environment adapted for the operation of the foregoing object-oriented distributed application, including a message protocol useful for interprocess communication, is also disclosed. Methods for downloading the DACP from the servers, and scaling the DACP at download based on client device configuration, are further disclosed.
The SeaChange MediaCluster Server device manufactured by SeaChange International Corporation comprises a group of fault-resilient VOD servers connected over a network, in effect acting as one server. See, e.g., U.S. Pat. No. 5,862,312 to Mann, et al. issued Jan. 19, 1999 and entitled “Loosely coupled mass storage computer cluster” and its progeny. This patent discloses a method and apparatus redundantly store data, in particular video data objects, in a distributed computer system having at least three processor systems, each processor system being connected in point to point two way channel interconnection with each other processor system. The data is stored in a redundant fashion both at the computer system level as well as the processor system level. Accordingly, the failure of a single processor does not adversely affect the integrity of the data. The computer system can also overlay a switching system connected in a ring fashion for providing a fault tolerance to the failure of a single connected processor system at the switch level.
The SeaChange apparatus further includes a session resource manager (SRM), and associated connection manager (CM) and streaming service (SS). The CM ostensibly allocates bandwidth, selecting the best network delivery path over which to stream data to the requesting entity. The SS “optimizes” bandwidth and provides some level of fail-over behavior, such that software component failure will not necessarily cause loss or tear-down of the underlying sessions. No functionality relating to the selective evaluation of allocation of bandwidth based on different service levels (e.g., SD or HD) is provided within this apparatus, however.
Description and Limitations of Least- and Most-Loaded Algorithms
Consider now the case of SD only VOD requests as shown in
In case of the Least-Loaded algorithm, every next VOD session request is granted bandwidth on the QAM that has the least bandwidth being used by VOD services (i.e. most free bandwidth available) with the search starting in a fixed sequence. For example, in
In the case where HD VOD session requests occur earlier, the Least-Loaded algorithm will eventually leave bandwidth stranded for HD VOD sessions. This is shown in the example of
With reference to
When granting bandwidth using Most-Loaded algorithm, every next VOD session request is granted bandwidth on the QAM that has the least bandwidth available (but enough to accommodate the VOD session). In other words, the bandwidth is granted on the Most-Loaded QAM.
While prior art Most-Loaded algorithm does not exhibit the stranded bandwidth deficiency of the Least-Loaded algorithm previously described, it does have a salient drawback; specifically in the case of a QAM failure. Since the Most-Loaded algorithm unevenly loads up a QAM, a service outage can spread over multiple customers. Furthermore, when HD and SD VOD services are co-mingled, this assignment cannot effectively spread HD VOD sessions over multiple QAMs, thereby detracting from the failure performance that could be achieved if such spreading were utilized. This inadequacy is highlighted in
While the prior art referenced above has generally identified the “SRM” function and the use of Least- and Most-Loaded algorithms for allocation, it fails to provide any apparatus or method that minimizes or mitigates the stranding of bandwidth in a QAM channel for an HD VOD session when both HD and SD session requests are present, or addresses the other disabilities highlighted above including increased risk of VOD session outage. Furthermore, the prior art SRMs and algorithms do not allow selective implementation of one or more business policies with the network, or even within a single service group.
Hence, there is a need for improved apparatus and methods that both increase the likelihood of having the capacity to provide HD bandwidth within a Service Group to an HD VOD session request, and minimize the chances of stranding bandwidth. Ideally, such apparatus and methods would be adapted to optimize load balancing across QAM channels, as well as maximize HD session support. Such apparatus and methods would further be configured to spread HD VOD sessions across different QAM channels so as to minimize impact of QAM failures on VOD sessions. Mechanisms to manage the maximum allowed number of HD and sessions within a VOD Service Group, and implement business rules and guarantee service levels for both SD and HD sessions, would also be provided.
The present invention satisfies the foregoing needs by providing improved apparatus and methods for network bandwidth allocation and optimization, such as may be used in a cable or HFC network.
In a first aspect of the invention, an improved method of allocating bandwidth within a data network is disclosed. The method generally comprises: providing a session request for at least one of first data having a first encoding and second data having a second encoding; evaluating the session request to determine its relationship to at least one first parameter; and allocating bandwidth on the network based at least in part on the aforementioned evaluation. In one exemplary embodiment, the network comprises an HFC cable network having VOD capability and supporting both standard definition (SD) and high definition (HD) data encodings. Session requests for SD and HD sessions are received, identified as to service level, and then analyzed in light of one or more predetermined allocation variables which helps ascertain the proper allocation algorithm(s) to apply. Once selected, the proper algorithm(s) are utilized to allocate bandwidth to the various HD and SD session requests based at least in part on the allocation variables.
In a second aspect of the invention, an improved cable network apparatus adapted to allocate bandwidth to OD sessions is disclosed. The apparatus generally comprises a service manager adapted to receive a plurality of OD session requests for at least first and second levels of service, and assign bandwidth such that maximum opportunity is given to grant OD requests at the second (e.g., HD) level among OD requests at the first (e.g., SD) level, the service manager further being configured to: (i) minimize service disruption by spreading the sessions associated with the requests over multiple QAM channels; and (ii) limit the maximum number of active OD sessions associated with both the first and second levels of service. In one exemplary embodiment, the apparatus comprises a network VOD server apparatus comprising: a digital processor; a storage device operatively coupled to the processor; and a network interface operatively coupled to the processor. A computer program running on the server acts as the session manager.
In a third aspect of the invention, a method of allocating channel bandwidth between heterogeneous (e.g., SD and HD) sessions in a cable network adapted for on-demand (OD) content delivery is disclosed. In one exemplary embodiment, the channel bandwidth comprises a plurality of substantially similar channels formed within a service group, and the method comprises: receiving a plurality of OD session requests from other entities connected to the network, the plurality of requests comprising a first plurality of requests for data encoded according to a first scheme, and a second plurality of requests data encoded according to a second scheme; identifying each request as belonging to the first or second plurality; evaluating existing bandwidth allocation on the channels of the service group in relation to a first predetermined allocation variable relating to the maximum number of SD or HD sessions for that service group; determining if the lowest existing bandwidth allocation in the channels of the service group is below a second allocation variable relating to total bandwidth for a given channel; and allocating at least a portion of the requests to one or more of the channels using at least one of a Least-Loaded or Most-Loaded algorithm based at least in part on the acts of and evaluating and determining.
In a fourth aspect of the invention, an improved cable network apparatus is disclosed having a service manager and adapted to receive a plurality of OD session requests for at least first and second levels of service; and assign bandwidth such that maximum opportunity is given to grant OD requests at the second level among OD requests at the first level. In one embodiment, the service manager is further configured to minimize service disruption by spreading the sessions associated with the requests over multiple QAM channels, and limit the maximum number of active OD sessions associated with both the first and second levels of service.
In a fifth aspect of the invention, improved network server apparatus adapted for coupling to a data network is disclosed. In one embodiment, the server apparatus comprises: a digital processor; a storage device operatively coupled to the processor; a network interface operatively coupled to the processor, and a computer program stored at least partly on the storage device and operative to run on the processor, the computer program being adapted to: receive a request for at least one of first and second data having respective first and second encodings; determine the relationship of the at least one data to at least one first parameter; select one of a plurality of methods for allocating bandwidth based at least in part on the determination of the relationship; and allocate bandwidth to the at least one data on the network based at least in part on the one method.
In a sixth aspect of the invention, network apparatus adapted to selectively allocate bandwidth within a plurality of RF channels existing on a network is disclosed. In one embodiment, the apparatus comprises: a processor; a storage device in operative communication with the processor; a plurality of units adapted to selectively modulate data onto the RF channels; and a session manager adapted to receive a plurality of OD session requests from other entities connected to the network, the plurality of requests comprising a first plurality of requests for data encoded according to a first scheme, and a second plurality of requests data encoded according to a second scheme, the session manager further being adapted to: identify each request as belonging to the first or second plurality; evaluate existing bandwidth allocation on the channels in relation to a plurality of predetermined allocation variables; and allocate at least a portion of the requests to one or more of the channels based at least in part on the identifying and evaluating.
In a seventh aspect of the invention, a hub station for use in a content delivery network capable of supplying content on demand (COD) services is disclosed. In one exemplary configuration, the content delivery network comprises a central headend station coupled to the hub station using a network, and the hub station comprises a hub media server having at least one content port; a radio frequency management infrastructure, the radio frequency management infrastructure coupled to the at least one content port of the hub media server and adapted to receive a content stream from a content transport network. The radio frequency management infrastructure is adapted to transmit the content stream to a plurality of set-top boxes over a distribution network. The hub media server further comprises a session manager adapted to receive a plurality of COD session requests from the set-top boxes, the plurality of requests comprising a first plurality of requests for data encoded according to a first scheme, and a second plurality of requests data encoded according to a second scheme, the session manager further being adapted to: identify each request as belonging to the first or second plurality; evaluate existing bandwidth allocation on channels of the radio frequency management infrastructure in relation to a plurality of predetermined allocation variables; and allocate at least a portion of the requests to one or more of the channels based at least in part on the acts of identifying and evaluating.
In an eighth aspect of the invention, a method of allocating assets within a content-based network is disclosed, the method generally comprising: categorizing a plurality of users of the network according to a tiered service structure; receiving a plurality of service requests from at least a portion of the plurality of users; and selectively allocating the assets to the at least portion of users based on the tiered service structure. In the exemplary embodiment, the assets comprise RF channel bandwidth associated with one or more service groups, and the tiered service structure comprises a plurality of different service levels.
In a ninth aspect of the invention, an improved method of increasing the likelihood of having sufficient capacity to provide high definition (HD) sessions within a Service Group is disclosed. The method generally comprises: receiving a plurality of service requests, each request relating to one of at least HD or standard definition (SD) service; evaluating the plurality of requests in order to determine an allocation scheme; and allocating the bandwidth based at least in part on allocation scheme; wherein the scheme is adapted to minimize wasted or unused bandwidth within the one or more service groups, the minimizing substantially providing the increased likelihood. In one embodiment, the allocation scheme is accomplished at least in part based on least- or most-loaded algorithms.
In a tenth aspect of the invention, an improved session resource manager (SRM) entity for use in a content-based network is disclosed. The exemplary embodiment of the SRM is configured to: receive a plurality of session requests for at least first and second levels of service; and assign bandwidth such that maximum opportunity is given to grant session requests corresponding to the second level among session requests at the first level, the service manager further being configured to minimize service disruption by spreading the sessions associated with the requests over multiple QAM channels, and limit the maximum number of active sessions associated with both the first and second levels of service.
In an eleventh aspect of the invention, a method of spreading OD sessions across different QAMs so as to minimize the impact of QAM failures on VOD session is disclosed. The method generally comprises: receiving a plurality of session requests for at least first and second levels of service; and assigning bandwidth so as to spread the sessions associated with at least the requests for the first level of service over multiple QAM channels while simultaneously minimizing stranded or unused bandwidth within the QAMs. In one embodiment, the first level of service comprises an HD service, and the OD sessions comprise VOD sessions.
In a twelfth aspect of the invention, a method of conducting business via a cable network having a plurality of users is disclosed. In one embodiment the method comprises: receiving from the users a plurality of service session requests each relating to one of at least two different levels of service; identifying at least one criterion which is desired to be met; and allocating assets within the network to the session requests so as to satisfy the at least one criterion.
In a further aspect of the disclosure, a service manager apparatus for use in a content delivery network is disclosed. In one embodiment, the service manager apparatus is implemented to: (i) receive a plurality of on demand (OD) session requests for at least first and second levels of service; (ii) evaluate existing bandwidth allocation on multiple quadrature amplitude modulation (QAM) channels to identify one or more of the multiple QAM channels having at least a portion of a total bandwidth associated therewith being consumed, yet being able to accommodate a portion of the plurality of OD session requests; (iii) assign bandwidth within the multiple QAM channels to the plurality of OD session requests such that maximum opportunity is given to grant OD requests for the second level of service among OD requests for the first level of service and the second level of service; (iv) spread sessions associated with the plurality of OD session requests over the multiple QAM channels so as to minimize service disruption; and (v) limit a maximum number of active OD sessions associated with both the first and second levels of service.
In another aspect of the disclosure, hub station in a content delivery network configured to supply content on demand (COD) services is disclosed. In one embodiment, the content delivery network includes a central headend station coupled to the hub station, and the hub station includes: (i) a hub media server comprising at least one content port; (ii) a radio frequency management infrastructure (where, in one variant, the radio frequency management infrastructure is coupled to the at least one content port of the hub media server, and is implemented to receive a content stream from a content transport network and transmit the content stream to a plurality of client devices over the content delivery network).
In one variant, the hub media server further includes a session manager implemented to receive a plurality of COD session requests from the client devices, where, in one variant, the plurality of requests include a first plurality of requests for data encoded according to a first scheme and a second plurality of requests for data encoded according to a second scheme, where the session manager is further implemented to: (i) classify each request as belonging to the first or second plurality of requests; (ii) evaluate existing bandwidth allocation on channels of the radio frequency management infrastructure to identify one or more of the channels having used bandwidth yet being able to accommodate at least a portion of the plurality of requests; and (iii) allocate the at least the portion of the requests to the identified one or more of the channels based at least in part on the classification and evaluation.
In another aspect of the disclosure, a method of increasing a likelihood of having sufficient bandwidth to provide high definition (HD) video on demand (VOD) sessions within one or more service groups of a cable network is disclosed. In one embodiment, the method includes: (i) receiving a plurality of service requests, each request relating to one of at least HD or standard definition (SD) service; (ii) evaluating the plurality of requests in order to determine an allocation scheme, the evaluating comprising determining a demand for the HD VOD sessions within the one or more service groups based at least in part on the plurality of requests; and (iii) allocating bandwidth based at least in part on the allocation scheme.
In one variant, the scheme is implemented to minimize wasted or unused bandwidth within the one or more service groups by increasing available bandwidth within one or more service groups in a particular geographic region and decreasing available bandwidth within one or more other service groups in a different geographic region based at least in part on the determined demand for the HD VOD sessions, where the minimizing substantially increases the likelihood.
In another aspect of the disclosure, a service manager apparatus for use in a content delivery network is disclosed. In one embodiment, the service manager apparatus is implemented to: (i) receive a plurality of on demand (OD) session requests comprising at least standard definition (SD) requests and high definition (HD) requests; and (ii) assign bandwidth such that maximum opportunity is given to grant the HD requests from among the SD requests.
In one variant, the assignment includes: (i) evaluation of existing bandwidth allocation on the multiple QAM channels in relation to at least (i) a maximum number of SD sessions permitted, and (ii) a maximum number of HD sessions permitted for that service group; (ii) when the evaluation indicates that the maximum number of SD sessions and the maximum number of HD sessions are each not violated, identification of one or more of the multiple QAM channels as having a lowest amount of used bandwidth, and allocation of at least a portion of the requests to one or more of the identified multiple QAM channels based at least in part on a prescribed bandwidth threshold; and (iii) when the evaluation indicates that the existing bandwidth allocation exceeds the prescribed threshold, identification of a second one or more of the multiple QAM channels as having a highest amount of used bandwidth yet being able to accommodate the portion of the requests, and allocation of the portion of the requests to the identified second one or more of the multiple QAM channels.
In one implementation, the aid assignment of bandwidth is further implemented to minimize service disruption within the content delivery network.
These and other aspects of the disclosure shall become apparent when considered in light of the detailed description provided herein.
Reference is now made to the drawings wherein like numerals refer to like parts throughout.
As used herein, the term “on-demand” or “OD” is meant to include any service that enables real, quasi-real time (e.g. “trick” mode delivery) or even non-real time delivery of content such as audio and/or video programs at any resolution, or data. Such content may be, for example, stored or temporarily cached on a server, or streamed directly from a source, and may be in response to a user-initiated event, service profile or configuration, head-end event, or otherwise.
As used herein, the term “QAM” refers to modulation schemes used for sending signals over coaxial cable networks. Such modulation scheme might use any constellation level (e.g. QAM16, QAM64, QAM256 etc.) depending on details of a cable network.
As used herein, the term “Service Group” refers to either a group of service users (e.g. subscribers) or the resources shared by them in the form of entire cable RF signal, only the RF channels used to receive the service or otherwise treated as a single logical unit by the network for resource assignment.
As used herein, the term “MSO” refers to a cable, satellite, or terrestrial network provider having infrastructure required to deliver services including programming and data over those mediums.
As used herein, the terms “network” and “bearer network” refer generally to any type of telecommunications or data network including, without limitation, hybrid fiber coax (HFC) networks, satellite networks, telco networks, and data networks (including MANs, WANs, LANs, WLANs, internets, and intranets). Such networks or portions thereof may utilize any one or more different topologies (e.g., ring, bus, star, loop, etc.), transmission media (e.g., wired/RF cable, RF wireless, millimeter wave, optical, etc.) and/or communications or networking protocols (e.g., SONET, DOCSIS, IEEE Std. 802.3, ATM, X.25, Frame Relay, 3GPP, 3GPP2, WAP, SIP, UDP, FTP, RTP/RTCP, H.323, etc.).
As used herein, the term “head-end” refers generally to a networked system controlled by an operator (e.g., an MSO or multiple systems operator) that distributes programming to MSO clientele using client devices. Such programming may include literally any information source/receiver including, inter alia, free-to-air TV channels, pay TV channels, interactive TV, and the Internet. DSTBs may literally take on any configuration, and can be retail devices meaning that consumers may or may not obtain their DSTBs from the MSO exclusively. Accordingly, it is anticipated that MSO networks may have client devices from multiple vendors, and these client devices will have widely varying hardware capabilities. Multiple regional head-ends may be in the same or different cities.
As used herein, the terms “client device” and “end user device” include, but are not limited to, personal computers (PCs) and minicomputers, whether desktop, laptop, or otherwise, set-top boxes such as the Motorola DCT2XXX/5XXX and Scientific Atlanta Explorer 2XXX/3XXX/4XXX/8XXX series digital devices, personal digital assistants (PDAs) such as the Apple Newton®, “Palm®” family of devices, handheld computers such as the Hitachi “VisionPlate”, personal communicators such as the Motorola Accompli devices, Motorola EVR-8401, J2ME equipped devices, cellular telephones, wireless nodes, or literally any other device capable of interchanging data with a network.
Similarly, the terms “Consumer Premises Equipment (CPE)” and “host device” refer to any type of electronic equipment located within a consumer's or user's premises and connected to a network. The term “host device” refers generally to a terminal device that has access to digital television content via a satellite, cable, or terrestrial network. The host device functionality may be integrated into a digital television (DTV) set. The term “consumer premises equipment” (CPE) includes such electronic equipment such as set-top boxes, televisions, Digital Video Recorders (DVR), gateway storage devices (Furnace), and ITV Personal Computers.
As used herein, the term “network agent” refers to any network entity (whether software, firmware, and/or hardware based) adapted to perform one or more specific purposes. For example, a network agent may comprise a computer program running in server belonging to a network operator, which is in communication with one or more processes on a CPE or other device.
As used herein, the term “application” refers generally to a unit of executable software that implements a certain functionality or theme. The themes of applications vary broadly across any number of disciplines and functions (such as on-demand content management, e-commerce transactions, brokerage transactions, home entertainment, calculator etc.), and one application may have more than one theme. The unit of executable software generally runs in a predetermined environment; for example, the unit could comprise a downloadable Java Xlet™ that runs within the JavaTV™ environment.
As used herein, the term “computer program” is meant to include any sequence or human or machine cognizable steps which perform a function. Such program may be rendered in virtually any programming language or environment including, for example, C/C++, Fortran, COBOL, PASCAL, assembly language, markup languages (e.g., HTML, SGML, XML, VoXML), and the like, as well as object-oriented environments such as the Common Object Request Broker Architecture (CORBA), Java™ (including J2ME, Java Beans, etc.) and the like.
The term “component” in the context of software refers generally to a unit or portion of executable software that is based on a related set of functionalities. For example, a component could be a single class in Java™ or C++. Similarly, the term “module” refers generally to a loosely coupled yet functionally related set of components.
As used herein, the term “server” refers to any computerized component, system or entity regardless of form which is adapted to provide data, files, applications, content, or other services to one or more other devices or entities on a computer network.
The present invention comprises improved methods and apparatus for “intelligently” allocating bandwidth according to multiple different service levels or data rates in a network such as an HFC cable network. In the exemplary embodiment, a service resource manager (SRM) is provided which allocates bandwidth to session requests having different data rates (here, HD and SD) on two or more downstream channels (e.g., 4 RF QAM channels in a service group, although other numbers of channels might comprise a service group). This intelligent allocation scheme achieves multiple goals, including (i) increasing the likelihood of having the capacity to provide HD bandwidth within a Service Group to an HD VOD session request, and (ii) minimizing the chances of stranding bandwidth within a channel or service group. This provides great benefits in terms of both network operational efficiency and capacity, as well as user (customer) satisfaction in their on-demand experience.
Specifically, the invention optimizes load balancing across QAM channels, as well as maximizing HD session support through use of Least-Loaded and Most-Loaded allocation algorithms in conjunction with a plurality of user-definable variables which control operation of the SRM. The SRM and variables also allow for dynamic tuning of the network under varying service and load conditions in order to further its operation. Spreading of HD VOD sessions across different QAM channels within the service group also advantageously minimizes the impact of QAM failures on VOD sessions.
The present invention may also be utilized to provide load balancing and bandwidth allocation directly out of a server device (e.g., a head-end VOD server) if desired.
In the broader sense, the methods of the present invention can be used in literally any context where the allocation of limited network resources must be optimized according to one or more variables, and/or structured to meet desired service requirements. In this fashion, the invention treats these resources as a “floating pool” which can be dynamically allocated in order to optimize the desired variables.
Mechanisms to manage the maximum allowed number of HD and sessions within a VOD Service Group, and implement business rules and guarantee service levels for both SD and HD sessions, are also provided.
Detailed Description of Exemplary Embodiments
Exemplary embodiments of the apparatus and methods of the present invention are now described in detail. While these exemplary embodiments are described in the context of the aforementioned hybrid fiber coax (HFC) cable architecture having an multi-system operator (MSO), digital networking capability, and plurality of client devices/CPE, the general principles and advantages of the invention may be extended to other types of networks and architectures where bandwidth allocation is required or desirable, whether broadband, narrowband, wired or wireless, content or data, or otherwise. Hence, the following description is merely exemplary in nature. For example, the invention may be practiced over a fiber-to-the-home (FTTH) or fiber-to-the-curb (FTTC) system, or over a purely satellite or millimeter wave-based network.
It will also be appreciated that while described generally in the context of a network providing service to a consumer (i.e., home) end user domain, the present invention may be readily adapted to other types of environments including, e.g., commercial/enterprise, and government/military applications. Myriad other applications are possible.
It is also noted that while the following discussion is cast primarily in terms of two service levels (i.e., SD and HD), the methods and apparatus disclosed herein can be extended to other numbers and types of service levels. For example, it is foreseeable that yet even higher levels of definition may be employed in the future (e.g., “ultra-high definition” or UHD), thereby allowing intelligent bandwidth allocation between three service levels (SD, HD, and UHD). As another option, multiple levels or rates may be present with one of the aforementioned service levels, such as where the SD level includes levels SD1, SD2, . . . SDn, and the HD level similarly includes HD1, HD2, . . . HDn, with each of these sub-levels having different data rates and/or other characteristics. Alternatively, bandwidth allocation according to the present invention may be performed not based on definition level (data rate), but some other attribute such as for example type or level of service, or location or identity of service group. Various alternate allocation schemes are described subsequently herein in greater detail.
It is further noted that while described primarily in the context of 6 MHz RF channels, the present invention is applicable to literally any frequency/bandwidth, such as for example 8 MHz channels. Furthermore, as referenced above, the invention is in no way limited to traditional cable system frequencies (i.e., below 1 GHz), and in fact may be used with systems that operate above 1 GHz band in center frequency or bandwidth, to include without limitation so-called ultra-wideband systems.
The application origination point 702 comprises any medium that allows an application (such as a VOD based application) to be transferred to a distribution server 704. This can include for example an application vendor website, CD-ROM, external network interface, mass storage device (e.g., RAID system), etc. Such transference may be automatic, initiated upon the occurrence of one or more specified events (such as the receipt of a request packet or ACK), performed manually, or accomplished in any number of other modes readily recognized by those of ordinary skill.
The application distribution server 704 comprises a computer system where such applications can enter the network system. Distribution servers are well known in the networking arts, and accordingly not described further herein.
The VOD server 705 a computer system where on-demand content can be received from one or more data sources 702 and enter the network system. These servers may generate the content locally, or alternatively act as a gateway or intermediary from a distant source. The VOD server 705 includes the Session Resource Manager (SRM) functionality, and asks the Digital Network Control System (DNCS) for resources. The DNCS responds with negative or positive response to the request, and the VOD server implements the appropriate resource allocation logic, as discussed subsequently herein with respect to
The CPE 706 includes any equipment in the “consumers' premises” (or other locations, whether local or remote to the distribution server 704) that can be accessed by a distribution server 704. Such CPEs 706 comprise processors and associated computer memory adapted to store and run the downloaded or resident application, as well as receive the streamed in-band content. In the present context, at least a portion of the VOD application is typically downloaded to the CPE 706, wherein the latter executes the downloaded application(s)/components, although it will be recognized that all of applications may conceivably be uploaded to the server, or alternatively transferred to another device, such as other networked CPE or the like.
Referring now to
The architecture 750 of
Content (e.g., audio, video, etc.) is provided in each downstream (in-band) channel associated with the relevant service group. To communicate with the head-end, the CPE 706 uses the out-of-band (OOB) or DOCSIS channels and associated protocols. The OCAP 1.0 specification provides for networking protocols both downstream and upstream.
In another embodiment, the network infrastructure includes one or more on-demand file or “carousel” functions. Specifically, the present invention contemplates that not only will more traditional movie (e.g., MPEG) data be allocated and delivered though the bandwidth allocation mechanisms described herein, but also data for interactive applications or other types of applications. For example, in a fashion not unlike existing approaches to ordering an on-demand (OD) movie, an application would request data, images, links, audio files, video files, and the like in an on-demand fashion. These unique data types may comprise single files, or be combined into a single or multiple data carousels, with each carousel potentially having a different data rate. Upon receiving an OD service request, the allocation algorithm can optimize the placement of these sessions on QAM resources for delivery to the requestor. Hence, the OD downstream service can be considered a third and separate level of service (i.e., SD, HD, and OD), or alternatively can be considered as one or more subclasses within the existing levels; i.e., where SD includes SD-OD, and HD includes HD-OD. Myriad other organization schemes are also possible.
It will also be recognized that the multiple servers (VOD or otherwise) can be used, and disposed at two or more different locations if desired, such as being part of different server “farms”. These multiple servers can be used to feed one service group, or alternatively different service groups. In a simple architecture, a single server is used to feed one or more service groups. In another variant, multiple servers located at the same location are used to feed one or more service groups. In yet another variant, multiple servers disposed at different location are used to feed one or more service groups. One exemplary multi-server architecture particularly useful with the present invention is described in co-owned United States Patent Application Publication No. 20020059619 to Lebar published May 16, 2002, entitled “Hybrid central/distributed VOD system with tiered content structure”, and issued as U.S. Pat. No. 7,690,020 on Mar. 30, 2010, which is incorporated herein by reference in its entirety. Specifically, a hybrid central/distributed and tiered video on demand (VOD) service network with tiered content structure is disclosed. In particular, the system uses media servers located in both the headend and hub stations. Set-top boxes generally would be supplied VOD services from the high-demand content media servers located in the hub station nearest to the user. The central media server located in the headend would be used as an installed backup to the hub media servers; as the primary source for lower demand VOD services and as the source of the real time, centrally encoded programs with PVR (personal video recorder) capabilities. By distributing the servers to the hub stations, the size of the fiber transport network associated with delivering VOD services from the central headend media server is reduced. Hence, each user has access to several server ports located on at least two servers. Multiple paths and channels are available for content distribution to each user, assuring high system reliability and enhanced asset availability. Substantial cost benefits are derived from the reduced need for a large content distribution network and the reduced storage capacity requirements for hub servers.
Many other permutations of the foregoing system components and communication methods may also be used consistent with the present invention, as will be recognized by those of ordinary skill in the field.
Referring now to
Two scenarios are examined which illustrate the operation of various aspects of the present invention in terms of an OD service request. These scenarios are consistent with those previously described with respect to
VOD Service Request Scenario 1
This scenario consists of a first number (e.g., 28) consecutive SD VOD session requests, followed by a second number (e.g., 3) of HD VOD requests. For the sake of simplicity, no VOD session is assumed to terminate during the period that requests are generated. Therefore, re-allocation of bandwidth from terminated VOD sessions is not considered, although it will be appreciated that the invention can be adapted to re-allocate bandwidth from such terminated sessions in any number of ways.
VOD Service Request Scenario 2
This second scenario consists of a first number (e.g., 2) consecutive HD VOD session requests (session numbers 1 and 2) followed by a second number (here, 22) SD VOD requests, followed by a third number (here, one) of HD VOD requests (session number 25), followed by a fourth number (e.g., 2) of SD VOD requests, followed lastly by a fifth number (e.g., one) HD VOD request (session 28), at which point the entire bandwidth available in this 4 QAM service group is filled. Again, for the sake of simplicity, no VOD session is assumed to terminate during the period that requests are generated; hence, re-allocation of bandwidth from terminated VOD sessions is not explicitly considered.
When performing network traffic model analysis, certain key variables contribute to the performance of the system. They include the probability of the arrival of the session setup request, and the probability of the session hold-time. These variables contribute to the loading factor with respect to a blocking factor, which determines the number of resources required to serve a given population of users.
When working with a single service level (encode rate), the system-blocking factor is only based on the VOD Service Group. With the commingling of different encode rates/levels a new blocking factor is introduced into the system. This is the QAM blocking factor and it is based on the probability of the having enough bandwidth to support an HD session within a given QAM. While there may be enough bandwidth within the VOD Service Group to support an HD session if it is not all available on a single QAM channel, the HD session is blocked and the bandwidth is considered “stranded” with regard to its ability to support an HD session. As previously described, this occurs when the bandwidth consumption on a given QAM exceeds the maximum rate of the QAM minus the HD rate (e.g., 37.5 Mbps−15 Mbps=22.5 Mbps).
Additionally, the probability of whether the next session request to arrive is either a SD or HD session factors into the allocation algorithm. This probability is based on multiple factors including HD DSTB penetration rates, buy rates, demographics and content availability. The hold-time of a session will also be impacted based on the length of HD content offered.
It will be appreciated that the allocation models presented herein represent a somewhat simplistic view of the allocation of sessions in that they do not explicitly consider the hold-time of sessions, or departures. However, this has no practical effect on the operation or efficacy of the allocation algorithm, since session hold-time and thus session departure has been factored into the allocation models. Specifically, in the exemplary embodiment, the allocation decision or calculus is performed at the time a session arises; i.e., in response to a session request. Hence, the bandwidth allocation decision is based on information present at that particular point in time, and considers all such requests as opposed to each in isolation. Since departures are generally (although not required to be) random, and a departure will immediately be reflected in the available bandwidth parameter (i.e., as a departure occurs, available bandwidth will increase immediately), the algorithm need not explicitly track departures or hold time. It merely needs to know what demand is at any given point in time.
However, notwithstanding the prior discussion, the present invention may also be configured to utilize consideration of hold-times and/or departures if desired. For example, in one variant, a mean or estimated average hold-time could be used as the basis for a predictive algorithm; i.e., one which load-balances or allocates based on a prediction of future demand and hence available bandwidth. Such algorithm need not be wholly predictive, such as where a running mean or other value is generated from anecdotal data obtained from the system during a prior period of operation. For example, a moving window approach might be used, wherein the mean or median hold time is calculated during a prior moving X-hour period, the result of this calculation being used in a weighted equation (along with other factors such as time of day, etc.) to arrive at an “intelligent” estimate of average hold-time at some point in the future. Consider, e.g., where it is known that HD sessions on average have longer hold-times than SD sessions, and that HD or SD sessions initiated in the evening hours (local time) have longer average hold times than those initiated at other times (due to, say, more people watching HD full-length movies in the evening after work). The present invention could therefore use the anecdotal information gathered during the same time window for the prior day (or week) as a crude estimate of demand during this same period, and reserve additional HD bandwidth for subsequent allocation during this period of increased demand. Should the increased demand not materialize for whatever reason, such as due to an unscheduled Presidential address or the like, then the reserved bandwidth can be freed up as desired. Those of ordinary skill will recognize that myriad other algorithmic or predictive approaches may be used consistent with the invention as well, the foregoing being merely illustrative.
A number of configurable variables are used by the Session Resource Manager (SRM) of the present invention in order to provide the various control features, as described below. It will be appreciated by those of ordinary skill that these particular variables or parameters are adapted specifically to the exemplary SD/HD paradigm described herein, and hence are merely illustrative of the broader concepts. Other variables may be used in place of or in conjunction with the following, and the following variables may also be redefined as necessary for the particular context. For example, where a third service level or data rate is used (e.g., UHD), one or more corresponding UHD variables may be specified. Furthermore, tiers of service groups can be employed, such as where the both standard-definition VOD and high-definition VOD are present. Bandwidth can then be allocated by the service within a given group if desired. As yet another option, “logical” allocation schemes may be employed, as described in detail subsequently herein regarding various business paradigms.
The use of other service levels, rates, or groupings may also necessitate creation of new variables relating one or more of the service levels described herein to that new service level. For example, where an SD service level has three sublevels (SD1, SD2, and SD3) each with different rates, it may be desirable to generate an aggregated effective data rate for the different levels, such effective data rate being used itself as an allocation variable.
It is also noted that the allocation mechanisms described herein may be conducted at different layers of abstraction (or across different variables) either alone or in conjunction with the channel bandwidth allocation techniques previously described. For example, in one variant, allocation of assets such as bandwidth occurs on a logical channel basis. This is somewhat analogous to the well known virtual path identifier (VPI) and virtual channel identifier (VCI) used in asynchronous transfer mode (ATM) network systems. Specifically, while bandwidth is typically thought of in the context of the physical channel (e.g., four 6-MHz RF channels in a given service group), allocation may be applied irrespective of the physical layer considerations; i.e., at a higher logical layer. Consider the case where multiple 6-MHz physical channels exist. With packetized data, each packet need not take the same physical pathway or channel to arrive at its destination; packets from a given logical stream may be distributed across several of these physical channels. Similarly, all packets within an MPEG or similar packetized data stream need not necessarily traverse the same physical RF channel between the head end and the CPE, but rather may comprise one or more logical channels. Hence, the bandwidth allocation mechanism described herein can be applied to the logical channel, i.e., logically related packet stream, versus (or even in conjunction with) application to the physical channels. Implementation of logical channel management and flow control is well known to those of ordinary skill in the networking arts, and hence the methods of the present invention are readily adapted to the logical channel context by such artisans provided the present disclosure.
The following exemplary variables advantageously allow “tuning” of various portions of the network (or even the network as a whole; see, e.g., the subsequent discussions relating to a global SRM) for optimal performance and/or to implement desired business rules.
This variable represents the upper bandwidth threshold which is used to switch between a Least-Loaded model to a Most-Loaded model. Initially, this parameter may be set to the maximum bandwidth within a QAM channel minus the HD encode rate, or 37.5 Mbps−15 Mbps=22.5 Mbps. Once the bandwidth utilization within a QAM channel within an OD Service Group reaches this threshold, the allocation algorithm of the present invention will begin stacking sessions on the Least-Loaded QAM which exceeds the HD threshold value.
By manipulating the HD_Threshold value, the system's performance can be tuned based on the contention found in the system. By setting the HD_Threshold to a value of 0 Mbps, the exemplary allocation manager will allocate sessions according to a ‘Most-Loaded’algorithm. Alternatively, by setting the HD_Threshold to 37.5 Mbps, the manager will allocate according to a ‘least-Loaded’ algorithm.
This variable represents the maximum number of simultaneous HD sessions within a VOD Service Group. Since the exemplary HD sessions require four times the amount of bandwidth when compared to an SD session, there needs to be a way of limiting the number of HD sessions so that they cannot use all the available bandwidth within a Service Group, thereby resulting in denial of service. By limiting the number of HD sessions, enough bandwidth to support SD VOD sessions is reserved.
This variable represents the maximum number of simultaneous SD sessions within a VOD Service Group. By limiting the number of SD sessions, enough bandwidth to support HD VOD sessions is reserved.
This variable represents that data rate associated with the first service level (e.g., standard definition). The value is typically 3.75 Mbps, although this may be varied as previously discussed depending on the prevailing technology and service levels in use.
This variable represents that data rate associated with the second service level (e.g., high definition). The value is typically 15 Mbps, although this may be varied as previously discussed depending on the prevailing technology and service levels in use.
This variable represents the number of current HD sessions. In the SRM log after session setup, an entry can be made to include the Service Group, HD_Session_Count, SD_Session_Count and bandwidth consumption per QAM channel.
This variable represents the number of current SD sessions. In the SRM log after every session setup an entry needs to be made to include the Service Group, HD_Session_Count, SD_Session_Count and bandwidth consumption per QAM channel.
In operation, once the HD threshold value is reached across any QAM channel within a Service Group, the algorithm begins “stacking” sessions on the QAM channel that has exceeded the HD threshold. This method of allocating sessions will increase the probability of having the capacity to support an HD stream. This also allows a mix of 36 SD sessions and one HD sessions, as described below.
The algorithm enters step 810 of
In the context of Scenario 1 described previously herein, the method 800 would be implemented as shown in
The 25th SD session request is above the HD_Threshold and is allocated on the first Most-Loaded QAM channel (in this example, QAM1 902).
The 26th SD session request is above the HD_Threshold, and is allocated on the first available Most-Loaded QAM (here QAM1 902). Similarly, the 27th and 28th SD session requests are above the HD_Threshold and are allocated on the first Most-Loaded QAM channel (QAM1 902).
The 29th HD session request is above the HD_Threshold and is allocated on the first QAM with enough available bandwidth to support the HD session (QAM2 904).
The 30th HD session request is above the HD_Threshold and is allocated to the first Most-Loaded QAM channel with enough bandwidth available (here, QAM3 906).
Lastly, the 31st HD session request is above the HD_Threshold and is allocated to the first Most-Loaded QAM channel with enough bandwidth available (QAM4 908).
The 19th, 20th, 21st and 22nd session requests are all SD and are above the HD_Threshold, and hence are allocated on the first Most-Loaded QAM channel (in this example, QAM1 1002).
The 23rd and 24th session request are SD and above the HD_Threshold and are allocated on the next available Most-Loaded QAM channel (here QAM2 1004).
The 25th session request is HD and is above the HD_Threshold, and therefore is allocated on the first Most-Loaded QAM channel with enough bandwidth available (QAM3 1006 in the present example). The 26th session request is HD and is above the HD_Threshold, and is allocated on the first Most-Loaded QAM channel with enough bandwidth available (QAM4 1008). The 25th and 26th SD session requests are above the HD_Threshold and are allocated on the first Most-Loaded QAM channel (here QAM1 1002).
Lastly, the 27th and 28th session requests are above the HD_Threshold and are allocated on the first Most-Loaded QAM channel (QAM2 1004).
It will be recognized that while the foregoing scenarios and embodiments are cast in terms of selective allocation or trade-off between Least-Loaded and Most-Loaded algorithms, other types of algorithms or variations may be substituted for one or both of the foregoing. For example, in one alternate embodiment, the allocation of bandwidth between the service group channels comprises a weighting based on proximity to the relevant parameter(s) (e.g., HD threshold value or SD session limit). In another exemplary configuration, so-called “fuzzy logic” or Bayesian variables may be utilized to control the operation of the SRM (e.g., “lightly” loaded, “moderately loaded”, “heavily loaded”, etc.).
Furthermore, the SRM need not be restricted to one service group. In a first embodiment, a single VOD server with SRM is adapted to control multiple service groups independently; i.e., the SRM functions with respect to each service group independently based on that service group's own variables. Alternatively, the SRM can be made “global” in nature, such as where one SRM is configured to operate at a higher level of abstraction within the network, in effect optimizing the behavior of a plurality of local (e.g., SG-specific) SRMs with which it is in communication. As discussed in greater detail below with respect to business rules implementation, the use of a global SRM allows for optimizations and load balancing on a system-wide basis, thereby permitting more broadly scoped business rules to be implemented on a network or aggregation of networks.
In another embodiment, the allocation and optimization (and balancing) process for a service group can be distributed across multiple VOD servers/SRMs (or other entities), such that the decision process for allocation is distributed in nature.
In yet another embodiment, one SRM (or group of related SRMs) are used to allocate SD/HD session requests across multiple homogeneous or heterogeneous service groups, such as where multiple different QAM channels within different groups can be used to service a given session request.
In yet still another embodiment, aggregations or different divisions of two or more service group QAM channels can be used as the basis for the SRM decision process. For example, under certain circumstances, it may be advantageous to treat the four (4) QAM channels in a given service groups as two “super” channels for purposes of allocation, or to hold one or more channels in reserve for unanticipated increases in session request activity. Myriad other possibilities will be recognized by those of ordinary skill given the present disclosure.
In yet another variant, the methods and apparatus described herein can be used to provide load-balancing within a server farm or similar aggregation of servers used to provide content to the network. For example, one server can be balanced as previously described herein, or alternatively all or a subset of the “farm” can be balanced. Furthermore, multiple farms (or individual server entities or processes with multiple farms) can be balanced.
Referring now to
The server device 750 of
It can also be appreciated that the methods of the present invention may be practiced using any configuration or combination of hardware, firmware, or software, and may be disposed within one or any number of different physical or logical entities. For example, the SRM functionality described above may take the form of one or more computer programs running on a single device disposed within the network (such as the server module 705), such as at a head-end, node, or hub.
Alternatively, such computer programs may have one or more components distributed across various hardware environments at the same or different locations. As yet another example, portions of the functionality may be rendered as a dedicated or application specific IC having code running thereon. Myriad different configurations for practicing the invention will be recognized by those of ordinary skill in the network arts provided the present disclosure.
In another aspect of the invention, the aforementioned SRM (e.g., rendered as one or more computer programs) includes a so-called “business rules” engine. This engine comprises, in an exemplary embodiment, a series of software routines running on the server device 705 or other associated hardware/firmware environment adapted to control the operation of the SRM allocation algorithms previously described. In effect, the business rules engine comprises a wrapper or controller entity which monitors the OD session requests received by the SRM and dynamically (or manually) controls the operation of the SRM to implement a prescribed set of business rules. For example, one selected business rule may comprise the policy that allocation algorithms within the SRM are weighted or skewed based on profitability or similar considerations, allocating available bandwidth preferentially to higher-profit delivery channels. Consider the simple case of two customers within a service group having different subscription features; e.g., one being enabled to receive HD VOD service which may have a corresponding higher profit margin than the SD-only service obtained by the other customer. Hence, the MSO or service provider may desire to preferentially allocate available bandwidth within the service group to the HD-enabled customer, thereby in effect maximizing the “profit per bandwidth used” equation. This rule can be implemented, for example, through proper manipulation (whether manually by an operator or automatically by the business rules engine) of the variables 1)-7) listed above. For instance, by setting the HD_Session variable higher, the ratio of HD to SD sessions can be increased, thereby in effect preferentially allocating more available bandwidth to HD sessions (and hence the more profitable customers). Such weighting or preference may also be punctuated or overridden by one or more exception rules, such as it is desired to provide normal (non-preferential) allocation during certain times or conditions.
As another exemplary business rule, a given fraction or portion of available bandwidth may be dedicated to a sub-class of users (e.g., X number of residential homes subscribing to HD VOD services) within one or more service groups, while the remainder of the bandwidth comprises a free-floating pool of bandwidth allocated according to the optimization algorithm(s) previously described. In this fashion, all or at least a portion of the “premium” customers are guaranteed HD bandwidth, and all remaining customers are allocated in an optimized fashion (which may in fact be driven by one or more secondary business rules that govern operation of the SRMs with respect to the non-dedicated bandwidth).
As referenced above, the business rules engines of the exemplary SRM may also be implemented in a global (i.e., network-wide) fashion. For example, in one variant, available bandwidth within the network is treated in effect as a fungible commodity which can be moved from geographic location to location (within the technological limitations of the existing network architecture) based on business rules such as HD session demand. HD-enabled customers within a given geographic region might be given priority over HD-enabled customers in another region (such as during a regional promotional), thereby causing the local SRMs in the first region to increase their HD-to-SD loading ratios, while decreasing them in the second region. Alternatively, the fraction of “dedicated” bandwidth as described above existing within the first region might be increased, while that in the second region correspondingly adjusted. It will be appreciated that myriad different applications of a global business policy can be envisioned by those of ordinary skill in the art when provided the present disclosure.
Furthermore, as previously discussed, tiers of service groups can be employed, such as where the both standard-definition VOD and high-definition VOD are present. Bandwidth can then be allocated based on the service within a given group if desired.
As yet another option, “logical” allocation schemes may be employed. As used in the present context, the term “logical” may refer to an allocation scheme based on any desired differentiating or descriptive feature, such as (i) actual geography (e.g., New York metro area, the entire Northeast U.S., or the entire continental U.S.); or (ii) on scope (e.g., a “high-level” service group organized around one or more attributes such as service, versus a “low-level” or smaller scope group disposed within the high-level group). As an example of a scope-based allocation scheme, consider the exemplary high-level service group comprising all of those customers of an MSO or service provider that have premium (e.g., HD) service, and an associated low-level group comprising those within the high-level group who primarily utilize their premium service during a given period of the day. This low-level group may relate to another attribute (such as those with per-capita on-demand usage falling above a certain rate). An MSO may decide for example that it prefers to allocate bandwidth preferentially to premium customers (regardless of location), and within that population, to customers who access their premium service during “peak viewing” hours when advertising density may be highest (thereby ostensibly providing the best advertising effect and ultimately increasing advertising revenue in that time period).
Alternatively, these rules may be applied at the lower levels; i.e., by geographically or otherwise restricting application of the rules, such that the foregoing rules apply only to those customers within a given geographic region. This approach gives local operating entities some degree of control over their individual revenue/service equations.
As yet another option, preferential allocation across so-called “global” versus “local” groups can occur. For example, four (4) existing QAM channels in a local (unique) group of channels can be allocated to incoming session request first, followed by allocation of another number (e.g., 2) of global or non-unique channels. This approach may also be limited by exhaustion or not; e.g., the allocation of the global channels may have as a condition precedent that the available channels of the local group are completely exhausted first.
It will also be appreciated that advertising or other comparable services can be considered a “service” which can act as the basis for allocation. As noted above, bandwidth can be allocated to those users, sessions, etc. which will make best use of the bandwidth in terms of advertising return. However, the advertising itself can be used as a basis or parameter on which bandwidth is directly allocated, such as where it is desired to support a minimum level of advertising first before then allocating bandwidth to sessions. Stated differently, an MSO or other entity may actually set aside or delay session requests in favor of advertising-related bandwidth. Similarly, the MSO may desire to have a certain minimum level or quota of gaming or other content. These allocation schemes can also be overlaid onto others; such as for example where the minimum quota for advertising or gaming content is preferentially allocated to global service groups first, whereas other session requests are allocated to the local service groups first. Many other approaches and combinations are envisaged consistent with the invention.
It will also be recognized that the methods and apparatus of the present invention can be used for managing the bandwidth within one or more DOCSIS downstream channels for delivery of IPTV (Internet Protocol television) broadcast and SD/HD VOD. For example, in one configuration, the bandwidth allocation and management techniques may be applied within one or more 6 MHz narrowcast DOCSIS RF Channels, or alternatively within a DOCSIS Broadband set of RF Channels for the delivery of IPTV.
It will be recognized that while certain aspects of the invention are described in terms of a specific sequence of steps of a method, these descriptions are only illustrative of the broader methods of the invention, and may be modified as required by the particular application. Certain steps may be rendered unnecessary or optional under certain circumstances. Additionally, certain steps or functionality may be added to the disclosed embodiments, or the order of performance of two or more steps permuted. All such variations are considered to be encompassed within the invention disclosed and claimed herein.
While the above detailed description has shown, described, and pointed out novel features of the invention as applied to various embodiments, it will be understood that various omissions, substitutions, and changes in the form and details of the device or process illustrated may be made by those skilled in the art without departing from the invention. The foregoing description is of the best mode presently contemplated of carrying out the invention. This description is in no way meant to be limiting, but rather should be taken as illustrative of the general principles of the invention. The scope of the invention should be determined with reference to the claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US4521881||2 Nov 1981||4 Jun 1985||Wang Laboratories, Inc.||Data communication system with increased effective bandwidth|
|US4546382||8 Dec 1983||8 Oct 1985||Ctba Associates||Television and market research data collection system and method|
|US4602279||21 Mar 1984||22 Jul 1986||Actv, Inc.||Method for providing targeted profile interactive CATV displays|
|US4930120||18 Jan 1989||29 May 1990||U.S. Philips Corporation||Signal distribution network system|
|US5155591||23 Oct 1989||13 Oct 1992||General Instrument Corporation||Method and apparatus for providing demographically targeted television commercials|
|US5313454||1 Apr 1992||17 May 1994||Stratacom, Inc.||Congestion control for cell networks|
|US5600364||2 Dec 1993||4 Feb 1997||Discovery Communications, Inc.||Network controller for cable television delivery systems|
|US5758257||29 Nov 1994||26 May 1998||Herz; Frederick||System and method for scheduling broadcast of and access to video programs and other data using customer profiles|
|US5774170||13 Dec 1994||30 Jun 1998||Hite; Kenneth C.||System and method for delivering targeted advertisements to consumers|
|US5862312||24 Oct 1995||19 Jan 1999||Seachange Technology, Inc.||Loosely coupled mass storage computer cluster|
|US5878324||8 Dec 1995||2 Mar 1999||Motorola, Inc.||Method and system for distribution of wireless digital multimedia signals in a cellular pattern|
|US5914945||31 Dec 1996||22 Jun 1999||Northern Telecom Limited||Method and system for bandwidth allocation for multimedia services under aggregate traffic conditions|
|US5926205||22 Jan 1997||20 Jul 1999||Imedia Corporation||Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping presentations of the video program|
|US5935206||13 Dec 1996||10 Aug 1999||International Business Machines Corporation||Automatic replication of digital video as needed for video-on-demand|
|US5963844||18 Sep 1996||5 Oct 1999||At&T Corp.||Hybrid fiber-coax system having at least one digital fiber node and increased upstream bandwidth|
|US6002393||22 Aug 1995||14 Dec 1999||Hite; Kenneth C.||System and method for delivering targeted advertisements to consumers using direct commands|
|US6047327||16 Feb 1996||4 Apr 2000||Intel Corporation||System for distributing electronic information to a targeted group of users|
|US6081830||9 Oct 1997||27 Jun 2000||Gateway 2000, Inc.||Automatic linking to program-specific computer chat rooms|
|US6092178||3 Sep 1998||18 Jul 2000||Sun Microsystems, Inc.||System for responding to a resource request|
|US6124878||20 Dec 1996||26 Sep 2000||Time Warner Cable, A Division Of Time Warner Enterainment Company, L.P.||Optimum bandwidth utilization in a shared cable system data channel|
|US6128316||25 Apr 1996||3 Oct 2000||Matsushita Electric Industrial Co., Ltd.||Data transmitting apparatus data receiving apparatus and data transmission control apparatus|
|US6134532||14 Nov 1997||17 Oct 2000||Aptex Software, Inc.||System and method for optimal adaptive matching of users to most relevant entity and information in real-time|
|US6157377||30 Oct 1998||5 Dec 2000||Intel Corporation||Method and apparatus for purchasing upgraded media features for programming transmissions|
|US6161142||10 Jan 2000||12 Dec 2000||The Musicbooth Llc||Method and system for using a communication network to supply targeted streaming advertising in interactive media|
|US6169728||8 Sep 1997||2 Jan 2001||Motorola Inc.||Apparatus and method for spectrum management in a multipoint communication system|
|US6182050||28 May 1998||30 Jan 2001||Acceleration Software International Corporation||Advertisements distributed on-line using target criteria screening with method for maintaining end user privacy|
|US6211869 *||27 May 1999||3 Apr 2001||Avid Technology, Inc.||Simultaneous storage and network transmission of multimedia data with video host that requests stored data according to response time from a server|
|US6211901||21 May 1996||3 Apr 2001||Fujitsu Limited||Video data distributing device by video on demand|
|US6216129||12 Mar 1999||10 Apr 2001||Expanse Networks, Inc.||Advertisement selection system supporting discretionary target market characteristics|
|US6219840 *||29 Mar 1996||17 Apr 2001||Motorola, Inc.||Method for assigning communication resources in a communication system|
|US6240243 *||5 Dec 1994||29 May 2001||International Business Machines Corporation||Method and apparatus for storing and retrieving scalable video data in a disk-array-based video server|
|US6240553||10 Dec 1999||29 May 2001||Diva Systems Corporation||Method for providing scalable in-band and out-of-band access within a video-on-demand environment|
|US6330609 *||7 Nov 1997||11 Dec 2001||Lucent Technologies, Inc.||Admission control system and method for media-on-demand servers|
|US6353626||4 May 1998||5 Mar 2002||Nokia Mobile Phones Limited||Methods and apparatus for providing non-uniform de-multiplexing in a multi-carrier wide band CDMA system|
|US6378130||20 Oct 1997||23 Apr 2002||Time Warner Entertainment Company||Media server interconnect architecture|
|US6434141||26 May 2000||13 Aug 2002||Bigband Networks, Inc.||Communication management system and method|
|US6446261||17 Dec 1997||3 Sep 2002||Princeton Video Image, Inc.||Set top device for targeted electronic insertion of indicia into video|
|US6463585||3 Apr 1998||8 Oct 2002||Discovery Communications, Inc.||Targeted advertisement using television delivery systems|
|US6498783||22 Jun 1999||24 Dec 2002||Lucent Technologies Inc.||Traffic monitoring system and service differentiation in a dynamic channel assignment system for TCP/IP data transmitted via cable television channels|
|US6502139 *||1 Jun 1999||31 Dec 2002||Technion Research And Development Foundation Ltd.||System for optimizing video on demand transmission by partitioning video program into multiple segments, decreasing transmission rate for successive segments and repeatedly, simultaneously transmission|
|US6560578||31 Jan 2001||6 May 2003||Expanse Networks, Inc.||Advertisement selection system supporting discretionary target market characteristics|
|US6590865||2 Aug 1999||8 Jul 2003||Matsushita Electric Industrial Co., Ltd.||Transmission system, bandwidth management apparatus, and bandwidth management method|
|US6601237||22 Dec 1999||29 Jul 2003||Koninklijke Philips Electronics N.V.||Apparatus and method for rescheduling program conflicts in a virtual channel scheduling gap|
|US6604138||15 May 2000||5 Aug 2003||Clubcom, Inc.||System and method for providing demographically targeted information|
|US6615039||10 May 2000||2 Sep 2003||Expanse Networks, Inc||Advertisement subgroups for digital streams|
|US6615251||30 Nov 1999||2 Sep 2003||John R. Klug||Method for providing node targeted content in an addressable network|
|US6671736||21 Apr 2003||30 Dec 2003||Clubcom, Inc.||System and method for providing demographically targeted information|
|US6687735||30 May 2000||3 Feb 2004||Tranceive Technologies, Inc.||Method and apparatus for balancing distributed applications|
|US6700624||29 Dec 2000||2 Mar 2004||Lg Electronics Inc.||Combined terrestrial wave/cable broadcast receiver and program information processing method therefor|
|US6718551||21 Dec 1999||6 Apr 2004||Bellsouth Intellectual Property Corporation||Method and system for providing targeted advertisements|
|US6738978||23 Oct 1996||18 May 2004||Discovery Communications, Inc.||Method and apparatus for targeted advertising|
|US6742187||15 Sep 2000||25 May 2004||3Com Corporation||Upstream bandwidth allocation map (MAP)-initiated channel change method for data-over-cable systems|
|US6763391||23 Aug 2000||13 Jul 2004||Sony Corporation||Method and apparatus for managing resource allocation and a bandwidth overflow in a cooperative, distributed computing environment|
|US6771290||16 Jul 1999||3 Aug 2004||B.E. Technology, Llc||Computer interface method and apparatus with portable network organization system and targeted advertising|
|US6775843||14 Oct 1999||10 Aug 2004||Sony Corporation||Method and apparatus for digital TV channel mapping|
|US6842783||18 Feb 2000||11 Jan 2005||International Business Machines Corporation||System and method for enforcing communications bandwidth based service level agreements to plurality of customers hosted on a clustered web server|
|US6891841||3 May 2002||10 May 2005||Advent Networks, Inc.||Time division multiple access over broadband modulation method and apparatus|
|US6917628||7 Mar 2001||12 Jul 2005||Scientific-Atlanta, Inc.||Allocating access across a shared communications medium of a DOCSIS 1.0 compliant cable network|
|US6944166 *||9 Aug 2000||13 Sep 2005||Nortel Networks Limited||Method for controlling service levels over packet based networks|
|US6986156 *||9 Jun 2000||10 Jan 2006||Scientific Atlanta, Inc||Systems and methods for adaptive scheduling and dynamic bandwidth resource allocation management in a digital broadband delivery system|
|US7024676||16 Feb 2000||4 Apr 2006||Thomson Licensing||System for acquiring and processing broadcast programs, program guide and channel identification data|
|US7047309 *||8 Jan 2002||16 May 2006||International Business Machines Corporation||Load balancing and dynamic control of multiple data streams in a network|
|US7069573||30 Mar 2000||27 Jun 2006||Vidiator Enterprises Inc.||Personal broadcasting and viewing method of audio and video data using a wide area network|
|US7075945||5 Nov 2002||11 Jul 2006||The Directv Group, Inc.||Dynamic mapping of broadcast resources|
|US7086077||28 Sep 1999||1 Aug 2006||Sedna Patent Services, Llc||Service rate change method and apparatus|
|US7100183||1 Feb 2001||29 Aug 2006||Sedna Patent Services, Llc||System and method for transmitting and displaying targeted infromation|
|US7143431||7 Aug 2000||28 Nov 2006||Wisconsin Alumni Research Foundation||Method for reduced bandwidth for on-demand data streaming using mini-clusters|
|US7146627||31 Aug 2000||5 Dec 2006||Metabyte Networks, Inc.||Method and apparatus for delivery of targeted video programming|
|US7152237||27 Jul 2005||19 Dec 2006||Prime Research Alliance E., Inc.||Delivering targeted advertisements to the set-top-box|
|US7155508||4 Apr 2001||26 Dec 2006||Yodlee.Com, Inc.||Target information generation and ad server|
|US7191461||2 Oct 2000||13 Mar 2007||The Directv Group, Inc.||Method and apparatus for adapting program guides to meet subscriber criteria|
|US7228555||28 Dec 2000||5 Jun 2007||Prime Research Alliance E., Inc.||System and method for delivering targeted advertisements using multiple presentation streams|
|US7237250||2 Nov 2001||26 Jun 2007||Navic Systems, Inc.||Promotion server using video on demand channel|
|US7246150||9 Mar 2000||17 Jul 2007||Bigfix, Inc.||Advice provided for offering highly targeted advice without compromising individual privacy|
|US7246172||6 Jun 2003||17 Jul 2007||Matsushita Electric Industrial Co., Ltd.||Static dense multicast path and bandwidth management|
|US7246366 *||13 Jun 2000||17 Jul 2007||Scientific-Atlanta, Inc.||System and method for automatically determining service groups in a subscriber network|
|US7308415||4 Dec 2001||11 Dec 2007||International Business Machines Corporation||Dynamic resource allocation using projected future benefits|
|US7317728||25 Feb 2003||8 Jan 2008||Lucent Technologies Inc.||System and method for increasing provisionable bandwidth in time-division multiplexed communication links|
|US7327692||12 Dec 2002||5 Feb 2008||International Business Machines Corporation||System and method for selecting fibre channel switched fabric frame paths|
|US7334044||25 Jun 1999||19 Feb 2008||Burst.Com||Method for connection acceptance control and optimal multi-media content delivery over networks|
|US7340759||10 Nov 2000||4 Mar 2008||Scientific-Atlanta, Inc.||Systems and methods for adaptive pricing in a digital broadband delivery system|
|US7346688||2 Jun 2006||18 Mar 2008||Burst.Com||Method for connection acceptance control and rapid determination of optimal multi-media content delivery over networks|
|US7352775||11 Mar 2004||1 Apr 2008||Broadcom Corporation||Partial duplex frequency domain modulator system and method|
|US7355980||12 Nov 2001||8 Apr 2008||International Business Machines Corporation||Costs in data networks|
|US7363371||28 Dec 2000||22 Apr 2008||Nortel Networks Limited||Traffic flow management in a communications network|
|US7379494||1 Oct 2004||27 May 2008||Cisco Technology, Inc.||MAC protocol employing multiple data rates|
|US7464179||24 Nov 2003||9 Dec 2008||At&T Intellectual Property I, L.P.||Methods, systems, and products for providing communications services amongst multiple providers|
|US7567565||1 Feb 2005||28 Jul 2009||Time Warner Cable Inc.||Method and apparatus for network bandwidth conservation|
|US7577118||24 Jul 2001||18 Aug 2009||Intel Corporation||System and method of classifying remote users according to link quality, and scheduling wireless transmission of information to the to the users based upon the classifications|
|US7602820||1 Feb 2005||13 Oct 2009||Time Warner Cable Inc.||Apparatus and methods for multi-stage multiplexing in a network|
|US7783316||9 Sep 2004||24 Aug 2010||Rockwell Collins, Inc.||Public safety communications network using asymmetric receive/transmit channels|
|US7836178 *||11 Jun 2002||16 Nov 2010||Microstrategy Incorporated||Technique for limiting access to the resources of a system|
|US7930715 *||18 Jun 2009||19 Apr 2011||Comcast Ip Holdings I, Llc||Operations center for a television program packaging and delivery system|
|US8365212 *||29 Dec 2010||29 Jan 2013||Robert Alan Orlowski||System and method for analyzing human interaction with electronic devices that access a computer system through a network|
|US8458125||31 Jan 2005||4 Jun 2013||Oracle America, Inc.||Dynamic creation of replicas of streaming data from a storage device without added load|
|US8468099 *||10 Oct 2009||18 Jun 2013||Intertainer, Inc.||Digital entertainment service platform|
|US8726303 *||31 Jan 2011||13 May 2014||Frampton E. Ellis, III||Microchips with an internal hardware firewall that by its location leaves unprotected microprocessors or processing units which performs processing with a network|
|US20010013123||22 Jan 2001||9 Aug 2001||Freeman Michael J.||Customized program creation by splicing server based video, audio, or graphical segments|
|US20010030785||22 Dec 2000||18 Oct 2001||Pangrac David M.||System and method for distributing information via a communication network|
|US20020049902||20 Aug 2001||25 Apr 2002||Ian Rhodes||Network arrangement for communication|
|US20020054589||13 Nov 2001||9 May 2002||Ethridge Barry Joe||Digital packet network for the local access loop|
|US20020059577||19 Jul 2001||16 May 2002||Nielsen Media Research, Inc.||Audience measurement system for digital television|
|US20020059619||7 Jun 2001||16 May 2002||Metod Lebar||Hybrid central/distributed VOD system with tiered content structure|
|US20020063621 *||16 Dec 2001||30 May 2002||Next Planet, Inc.||Method and apparatus for device communications|
|US20020087975||28 Dec 2000||4 Jul 2002||Schlack John A.||System and method for delivering targeted advertisements using multiple presentation streams|
|US20020087976||28 Dec 2000||4 Jul 2002||Kaplan Marc P.||System and method for distributing video with targeted advertising using switched communication networks|
|US20020095684||12 Jan 2001||18 Jul 2002||St. John James T.||Methods, systems and computer program products for bandwidth allocation based on throughput guarantees|
|US20020104083||10 Oct 2001||1 Aug 2002||Hendricks John S.||Internally targeted advertisements using television delivery systems|
|US20020112240||20 Nov 2001||15 Aug 2002||Bacso Stephen R.||Method and system for targeted content presentation in a communications network|
|US20020120498||23 Feb 2001||29 Aug 2002||Gordon Donald F.||Method and apparatus for providing targeted advertisements|
|US20020123928||10 Aug 2001||5 Sep 2002||Eldering Charles A.||Targeting ads to subscribers based on privacy-protected subscriber profiles|
|US20020124182||20 Nov 2001||5 Sep 2002||Bacso Stephen R.||Method and system for targeted content delivery, presentation, management and reporting in a communications nertwork|
|US20020129378||8 Mar 2001||12 Sep 2002||Cloonan Thomas J.||Method and apparatus for controlling traffic loading on a cable modem termination system|
|US20020144263||2 Apr 2001||3 Oct 2002||Eldering Charles A.||Grouping of advertisements on an advertising channel in a targeted advertisement system|
|US20020154655||15 Feb 2001||24 Oct 2002||Broadcom Corporation||System and method for combining requests for data bandwidth by a data provider for transmission of data over an asynchronous communication medium|
|US20020163928||10 May 2002||7 Nov 2002||Sharp Laboratories Of America, Inc.||Methods and systems for quality of service in networks comprising wireless devices|
|US20020166119||7 May 2001||7 Nov 2002||Cristofalo Michael||System and method for providing targeted programming outside of the home|
|US20020170057 *||14 May 2001||14 Nov 2002||Webtv Networks, Inc.||Electronic program guide displayed simultaneously with television programming|
|US20020178447||3 Apr 2002||28 Nov 2002||Plotnick Michael A.||Behavioral targeted advertising|
|US20030002862||29 Jun 2001||2 Jan 2003||Rodriguez Arturo A.||Bandwidth allocation and pricing system for downloadable media content|
|US20030004810||28 Aug 2002||2 Jan 2003||Eldering Charles A.||Advertisement selection system supporting discretionary target market characteristics|
|US20030005453||29 Jun 2001||2 Jan 2003||Rodriguez Arturo A.||Method and apparatus for recordable media content distribution|
|US20030007516||6 Jul 2001||9 Jan 2003||Yuri Abramov||System and method for the application of a statistical multiplexing algorithm for video encoding|
|US20030033199||14 Feb 2002||13 Feb 2003||Ipool Corporation||Method and system for delivery of targeted commercial messages|
|US20030046704||5 Sep 2001||6 Mar 2003||Indra Laksono||Method and apparatus for pay-per-quality of service for bandwidth consumption in a video system|
|US20030056217||20 Sep 2001||20 Mar 2003||Brooks Paul D.||Technique for effectively providing program material in a cable television system|
|US20030061619||28 Sep 1999||27 Mar 2003||Tom Giammaressi||Service rate change method and apparatus|
|US20030077067||23 Oct 2001||24 Apr 2003||Matsushita Electric Industrial Co., Ltd.||Television program editing device|
|US20030093311||5 Nov 2001||15 May 2003||Kenneth Knowlson||Targeted advertising|
|US20030093784||13 Nov 2001||15 May 2003||Koninklijke Philips Electronics N.V.||Affective television monitoring and control|
|US20030093792||27 Jun 2001||15 May 2003||Labeeb Ismail K.||Method and apparatus for delivery of television programs and targeted de-coupled advertising|
|US20030101449||9 Jan 2002||29 May 2003||Isaac Bentolila||System and method for behavioral model clustering in television usage, targeted advertising via model clustering, and preference programming based on behavioral model clusters|
|US20030101451||9 Jan 2002||29 May 2003||Isaac Bentolila||System, method, and software application for targeted advertising via behavioral model clustering, and preference programming based on behavioral model clusters|
|US20030110499||17 Jan 2003||12 Jun 2003||United Video Properties, Inc.||Program guide system with targeted advertising|
|US20030115612||28 Sep 2002||19 Jun 2003||Morecom, Inc.||Digital TV system with synchronized World Wide Web content|
|US20030139980||24 Jan 2002||24 Jul 2003||Hamilton Robert Douglas||Method and system for providing and controlling delivery of content on-demand over a cable television network and a data network|
|US20030140351||25 Sep 2002||24 Jul 2003||Hoarty W. Leo||Cable television system compatible bandwidth upgrade using embedded digital channels|
|US20030145323||4 Oct 2002||31 Jul 2003||Hendricks John S.||Targeted advertisement using television viewer information|
|US20030149975||5 Feb 2002||7 Aug 2003||Charles Eldering||Targeted advertising in on demand programming|
|US20030179773||22 Mar 2002||25 Sep 2003||Sun Microsystems, Inc.||Arbitration of communication channel bandwidth|
|US20030182261 *||14 Feb 2003||25 Sep 2003||Patterson James Edmund||Queuing model for a plurality of servers|
|US20030214962||15 May 2002||20 Nov 2003||Mark Allaye-Chan||Method and apparatus for bandwidth optimization in network ring topology|
|US20030217365||5 May 2003||20 Nov 2003||Caputo Nicholas D.||Technique for providing programming content through a communications network having limited bandwidth|
|US20030229681||10 Jun 2002||11 Dec 2003||Gutman Levitan||Secure data broadcast network for traffic-free internet access|
|US20040006625 *||30 Apr 2003||8 Jan 2004||Oracle International Corporation||Method and mechanism for implementing dynamic sizing of session pools|
|US20040031053 *||23 May 2003||12 Feb 2004||Jong-Hoon Lim||Method for providing HDTV-level multimedia service and communication system therefor|
|US20040078809||21 May 2001||22 Apr 2004||Jonathan Drazin||Targeted advertising system|
|US20040109672||29 Apr 2003||10 Jun 2004||Kim Mi Hyun||Method for recording and managing a multi-channel stream|
|US20040133907 *||18 Dec 2003||8 Jul 2004||Rodriguez Arturo A.||Adaptive scheduling and delivery of television services|
|US20040146006||24 Jan 2003||29 Jul 2004||Jackson Daniel H.||System and method for internal network data traffic control|
|US20040163109 *||9 Feb 2004||19 Aug 2004||Seung-Mi Kang||Method for controlling network digital broadcasting service and system therefore|
|US20040179605 *||10 Mar 2004||16 Sep 2004||Lane Richard Doil||Multimedia transcoding proxy server for wireless telecommunication system|
|US20040187159||19 Mar 2003||23 Sep 2004||Concurrent Computer Corporation, A Delaware Corporation||Multi-tiered content management system|
|US20040194134||25 Mar 2003||30 Sep 2004||Gunatilake Priyan Deveka||Method and system for rapid channel change providing stored images of current channel programs|
|US20050039205||12 Aug 2003||17 Feb 2005||Riedl Steven E.||Technique for effectively delivering targeted advertisements through a communications network having limited bandwidth|
|US20050041679 *||10 Oct 2001||24 Feb 2005||Hillel Weinstein||Method and system for a true-video-on-demand service in a catv network|
|US20050047596||27 Aug 2004||3 Mar 2005||Matsushita Electric Industrial Co., Ltd.||Broadcast receiving apparatus|
|US20050055685||5 Sep 2003||10 Mar 2005||Maynard Stephen L.||Technique for updating a resident application and associated parameters in a user terminal through a communications network|
|US20050058115||4 Oct 2004||17 Mar 2005||Levin Howard E.||Method and apparatus for data allocation in an overlapenable communication system|
|US20050060742||23 Jul 2004||17 Mar 2005||Steve Riedl||System and method for targeted distribution of advertising without disclosure of personally identifiable informantion|
|US20050060745||15 Sep 2003||17 Mar 2005||Steven Riedl||System and method for advertisement delivery within a video time shifting architecture|
|US20050086691||17 Oct 2003||21 Apr 2005||Mydtv, Inc.||Interactive program banners providing program segment information|
|US20050111844||26 Nov 2003||26 May 2005||Comcast Cable Holdings, Llc||Apparatus and method for providing HFC forward path spectrum|
|US20050114141||3 Sep 2004||26 May 2005||Grody Stephen D.||Methods and apparatus for providing services using speech recognition|
|US20050114900||24 Nov 2003||26 May 2005||Patrick Ladd||Methods and apparatus for hardware registration in a network device|
|US20050123001||5 Nov 2004||9 Jun 2005||Jeff Craven||Method and system for providing video and data traffic packets from the same device|
|US20050125832||3 Dec 2003||9 Jun 2005||Jost Arthur P.||Method and apparatus for cost effective central transcoding of video streams in a video on demand system|
|US20050168323 *||22 Apr 2003||4 Aug 2005||Koninklijke Philips Electronics N.V.||Security modules for conditional access with restrictions|
|US20050188415 *||24 Jan 2005||25 Aug 2005||Camiant, Inc.||Video policy server|
|US20050198686||6 May 2005||8 Sep 2005||Krause Edward A.||Advanced, adaptive video multiplexer system|
|US20050223409||3 Jun 2005||6 Oct 2005||Nokia Corporation||Systems and methods for characterizing television preference over a wireless network|
|US20050276284||6 May 2005||15 Dec 2005||Krause Edward A||Advanced, self-balancing video multiplexer system|
|US20050289618||29 Jun 2004||29 Dec 2005||Glen Hardin||Method and apparatus for network bandwidth allocation|
|US20050289619||1 Jun 2005||29 Dec 2005||Joel Melby||Methods and system for resource allocation in an on-demand server|
|US20060036750||18 Feb 2004||16 Feb 2006||Patrick Ladd||Media extension apparatus and methods for use in an information network|
|US20060037060||13 Sep 2004||16 Feb 2006||Microsoft Corporation||Delivering a geographic-specific comprehensive program guide|
|US20060130107||15 Dec 2004||15 Jun 2006||Tom Gonder||Method and apparatus for high bandwidth data transmission in content-based networks|
|US20060130113||15 Dec 2004||15 Jun 2006||Carlucci John B||Method and apparatus for wideband distribution of content|
|US20060171390||1 Feb 2005||3 Aug 2006||La Joie Michael L||Method and apparatus for network bandwidth conservation|
|US20060171423||1 Feb 2005||3 Aug 2006||Helms William L||Apparatus and methods for multi-stage multiplexing in a network|
|US20060197828||2 Dec 2003||7 Sep 2006||Koninklijke Phillips N.V.||Method and system for delivering dual layer hdtv signals through broadcasting and streaming|
|US20060218604||14 Mar 2005||28 Sep 2006||Steven Riedl||Method and apparatus for network content download and recording|
|US20060248555||27 Jun 2006||2 Nov 2006||Prime Research Alliance E., Inc.||Targeted advertising through electronic program guide|
|US20060253328||5 May 2006||9 Nov 2006||Ujjal Kohli||Targeted advertising using verifiable information|
|US20060253864||14 Mar 2006||9 Nov 2006||Optical Entertainment Network, Inc.||System and method for household-targeted advertising|
|US20060277569||6 Jun 2005||7 Dec 2006||Microsoft Corporation||DVR-based targeted advertising|
|US20070022459||20 Jul 2005||25 Jan 2007||Gaebel Thomas M Jr||Method and apparatus for boundary-based network operation|
|US20070033531||4 Aug 2005||8 Feb 2007||Christopher Marsh||Method and apparatus for context-specific content delivery|
|US20070076728||4 Oct 2005||5 Apr 2007||Remi Rieger||Self-monitoring and optimizing network apparatus and methods|
|US20070089127||13 Nov 2006||19 Apr 2007||Prime Research Alliance E., Inc.||Advertisement Filtering And Storage For Targeted Advertisement Systems|
|US20070094691||24 Oct 2005||26 Apr 2007||Gazdzinski Robert F||Method and apparatus for on-demand content transmission and control over networks|
|US20070101370||28 Oct 2005||3 May 2007||Stexar Corp.||Television program selection|
|US20070113243||17 Nov 2005||17 May 2007||Brey Thomas A||Targeted advertising system and method|
|US20070118852||22 Nov 2005||24 May 2007||Stexar Corp.||Virtual television channels for audio-video system|
|US20070121569 *||11 Nov 2003||31 May 2007||Mitsubishi Denki Kabushiki||Communication method, terminal, and base station|
|US20070204310||23 Jan 2007||30 Aug 2007||Microsoft Corporation||Automatically Inserting Advertisements into Source Video Content Playback Streams|
|US20070217436||16 Mar 2006||20 Sep 2007||Markley Jeffrey P||Methods and apparatus for centralized content and data delivery|
|US20070233857||30 Mar 2007||4 Oct 2007||Nebuad, Inc.||Network device for monitoring and modifying network traffic between an end user and a content provider|
|US20070276926||24 May 2006||29 Nov 2007||Lajoie Michael L||Secondary content insertion apparatus and methods|
|US20080016526||24 Sep 2007||17 Jan 2008||Asmussen Michael L||Advanced Set Top Terminal Having A Program Pause Feature With Voice-to-Text Conversion|
|US20080052157||13 Oct 2006||28 Feb 2008||Jayant Kadambi||System and method of dynamically managing an advertising campaign over an internet protocol based television network|
|US20080092181||11 Jun 2007||17 Apr 2008||Glenn Britt||Methods and apparatus for providing virtual content over a network|
|US20080101460||4 Jan 2008||1 May 2008||Scientific Atlanta||Systems and Methods for Dynamically Allocating Bandwidth in a Digital Broadband Delivery System|
|US20080141317||6 Dec 2006||12 Jun 2008||Guideworks, Llc||Systems and methods for media source selection and toggling|
|US20080192820||14 Feb 2007||14 Aug 2008||Brooks Paul D||Methods and apparatus for content delivery notification and management|
|US20080229354||13 Mar 2007||18 Sep 2008||Microsoft Corporation||Contextual television advertisement delivery|
|US20080244667||27 Mar 2007||2 Oct 2008||Osborne Jason C||Bandwidth sensitive switched digital video content delivery|
|US20080271068||25 Apr 2007||30 Oct 2008||Sbc Knowledge Ventures L.P.||System and method for delivering personalized advertising data|
|US20080273591||4 May 2007||6 Nov 2008||Brooks Paul D||Methods and apparatus for predictive capacity allocation|
|US20090025027||20 Jul 2007||22 Jan 2009||Michael Craner||Systems & methods for allocating bandwidth in switched digital video systems based on interest|
|US20100157928||28 Jan 2010||24 Jun 2010||Wi-Lan, Inc.||Method and System For Adaptively Obtaining Bandwidth Allocation Requests|
|US20130227608||12 Apr 2013||29 Aug 2013||Qurio Holdings, Inc.||Late-binding of advertisements using rdma connectivity|
|WO2001091474A2||10 Apr 2001||29 Nov 2001||Intel Corporation||Dynamically controlling video and data transmissions|
|1||Cisco Intelligent Network Architecture for Digital Video-SCTE Cable-Tec Expo 2004 information page, Orange County Convention Center, Jun. 2004, 24 pages.|
|2||Communications Technology: Next-Generation Bandwidth Management-The Evolution of the Anything-to-Anywhere Network by Yvette Kanouff, 8 pages, Apr. 1, 2004.|
|3||Motorola DOCSIS Cable Module DCM 2000 specifications, 4 pages, no date.|
|4||OpenVision Session Resource Manager-Open Standards-Based Solution Optimizes Network Resources by Dynamically Assigning Bandwidth in the Delivery of Digital Services article, 2 pages, (copyright 2006), http://www.imake.com/hopenvision).|
|5||Resource Planning and Bandwidth Allocation in Hybrid Fiber-Coax Residential Networks by David Griffith, et al., National Institute of Standards and Technology (NIST), 10 pages, no date.|
|6||Session Resource Manager features and information, 2 pages, no date http://www.imake.com/hopenvision).|
|International Classification||H04N21/262, H04N21/2383, H04L12/801, H04N21/647, H04L12/927, H04N21/2385, H04N21/472, H04L12/911, H04L29/06, H04L12/56, H04N7/173, H04N21/61, H04L12/54|
|Cooperative Classification||H04L47/70, H04L47/805, H04N21/6118, H04N21/2385, H04N21/64761, H04N21/47202, H04L47/822, H04N21/26216, H04N21/2383, H04L47/788, H04N7/17309, H04L65/4084, H04L47/15, H04L12/5695|
|18 May 2016||AS||Assignment|
Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, NE
Free format text: SECURITY INTEREST;ASSIGNORS:BRIGHT HOUSE NETWORKS, LLC;CHARTER COMMUNICATIONS OPERATING, LLC;TIME WARNER CABLE ENTERPRISES LLC;REEL/FRAME:038747/0507
Effective date: 20160518