The present invention is related to an IPTV network that seamlessly integrates a multicast-based file transfer mechanism with unicast IPTV middleware to enable the efficient transfer of Video-On-Demand (VOD) assets from a Super Headend Office (SHO) to one or more Video Hub Offices (VHOs).
The following abbreviations are herewith defined, at least some of which are referred to in the ensuing description of the prior art and the present invention.
DNS Domain Name server
Referring to
Referring to
In the current IPTV architecture, a VOD asset 214 (e.g., VOD title) is sent from a post-production house and received at the VOD importer server 204 in the SHO 102. The VOD importer server 204 places the VOD asset 214 in a staging volume 216 and applies encryption algorithms 218 (e.g., DRM keys 218) and makes custom metadata 220 modifications to the VOD asset 214. Once this is complete, the VOD asset 214 is ready for distribution to all of the VHOs 106 (only one has been shown). How this is done when the IPTV network 100 and in particular the SHO 102 and VHO 106 implement a unicast IPTV middleware 221 such as Microsoft's Mediaroom Middleware is described next.
The operator 222 interfaces (step 1a) with the branch management server 206 and instructs (step 1b) the branch controller 208 to make an HTTPS connection 224 with the VOD OSS/SMT server 202 in the SHO 102 (step 1c). The VOD OSS/SMT server 202 requests the file locations and status for the desired VOD asset 214 from the VOD importer server 204 (steps 1d and 1e). The collected data is returned back to the branch controller 208 and is stored in the branch database 210 (step 1f). Based on current usage statistics, the branch controller 208 then assigns a configurable number of VOD servers 212a and 212b to retrieve the VOD asset 214. Thereafter, the first VOD server 212a checks in with the branch controller 208 every 10 seconds (step 2a), at which time the branch controller 208 queries the branch database 210 to determine if a job exists for the VOD server 212a (step 2b). Since there is a job, the first VOD server 212a retrieves the VOD asset 214 from the VOD importer server 204 in the SHO 102 via a HTTPS connection 226 (steps 2c and 2d) and stores the VOD asset 214 on a connected DAS device 228 (step 2e). When this download is complete, the branch controller 208 contacts the VOD OSS/SMT server 202 in the SHO 102 via another HTTPS connection 230 to retrieve the DRM keys 218 (step 3a). The VOD OSS/SMT server 202 proxies (step 3b) the request to the VOD importer server 204 which performs a proper transcription (step 3c) based on the branch certificate's public key and returns the DRM keys 218. The branch controller 208 then stores the DRM keys 218 in the branch database 210 (step 3d). At this point in the transfer process, the remaining VOD server(s) 212b (only one shown) in the VHO 106 will be triggered to retrieve the VOD asset 214. Upon being triggered, the remaining VOD server(s) 212b check (step 4a) with the branch controller 208 but instead of retrieving the asset from the SHO 102, the remaining VOD server(s) 212b retrieve the VOD asset 214 from the first VOD server 212a (steps 4b and 4c). Then, the remaining VOD server(s) 212b store the VOD asset 214 in the media volume on their connected DAS device(s) 228 (step 4d).
In this scheme, the VHO 106 has one VOD server 212a which retrieves the VOD asset 214 using the HTTPS connection 226 from the VOD importer server 204 within the SHO 102. However, each VOD asset 214 is comprised of several large files which can be up to 2 GB in size that have to pass through the HTTPS connection 230. This is problematical since the bandwidth required for the transfer of this VOD asset 214 can be a bottleneck for deployment. This is especially true since each of the VHOs 106 in the IPTV network 100 has one VOD server 212a which retrieves the VOD asset 214 from their respective SHO 102 in this manner. Accordingly, there has been a need and still is a need for addressing this shortcoming and other shortcomings which cause bandwidth problems for IPTV networks that implement unicast IPTV middleware. This need and other needs have been satisfied by the present invention.
In one aspect, the present invention provides a method that seamlessly integrates a multicast-based file transfer mechanism with unicast IPTV middleware so as to be able to efficiently transfer VOD assets from a SHO to a VHO. In one embodiment, the method comprises the steps of: (a) using a multicast file transfer server associated with the SHO to multicast the VOD asset to one or more multicast file transfer clients in the VHO; (b) storing the VOD asset received by the one or more multicast file transfer clients within one or more multicast caches in the VHO; (c) accessing a unicast IPTV middleware in the VHO to initiate deployment of the VOD asset from the one or more multicast caches to one or more VOD servers within said VHO; (d) deploying the VOD asset using a HTTP connection from one multicast cache to the first VOD server within the VHO; and (e) instructing each of the remaining VOD servers if any within the VHO to retrieve the VOD asset from the first VOD server.
In another aspect, the present invention provides an IPTV network that seamlessly integrates a multicast-based file transfer mechanism with unicast IPTV middleware so as to be able to efficiently transfer VOD assets from a SHO to a VHO. In one embodiment, the SHO includes a multicast file transfer server that multicast a VOD asset to one or more multicast file transfer clients associated with the VHO. The VHO includes one or more multicast caches that store the VOD asset received by the one or more multicast file transfer clients. Plus, the VHO includes a branch management server with unicast IPTV middleware that initiates deployment of the VOD asset from the one or more multicast caches to one or more VOD servers in the VHO. In addition, the VHO includes a branch controller that uses a HTTP connection to deploy the VOD asset from one multicast cache to the first VOD server. Furthermore, the VHO includes the branch controller that instructs each of the remaining VOD servers if any to retrieve the VOD asset from the first VOD server.
Additional aspects of the invention will be set forth, in part, in the detailed description, figures and any claims which follow, and in part will be derived from the detailed description, or can be learned by practice of the invention. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as disclosed.
A more complete understanding of the present invention may be obtained by reference to the following detailed description when taken in conjunction with the accompanying drawings wherein:
Referring to
Referring to
Basically, the present invention is related to seamlessly integrating the multicast file transfer server 405, the multicast file transfer clients 413a and 413b and the unicast-based IPTV middleware 421 (shown in the branch management server 406) by making a change as to how the VOD asset 414 is transported so as to be transparent to the unicast-based IPTV middleware 421. This seamless integration allows the bandwidth-efficient deployment tools associated with the multicast file transfer server 405 and the multicast file transfer client(s) 413a and 413b to efficiently transport VOD assets 414 from one or more SHOs 302′ to their respective VHO's 306′. A more detailed description about one way that this seamless integration can be implemented is provided after a brief discussion about the changes that should be made to the traditional architecture and traditional network flows of the SHOs and the VHOs.
First, a multicast file transfer product including the multicast file transfer server 405 and the multicast file transfer client(s) 413a and 413b should be selected or designed which can provide, for example, the following functionalities:
Several commercial off-the-shelf products such as, for example, the Stratacache OmniCast product satisfy these requirements.
Second, the IPTV servers 402, 404, 406, 408, 412a and 412b need to be configured to allow the multicast transfer to operate transparently to the unicast IPTV middleware 421. The following changes should be made:
In view of these changes, the following flow could occur to deploy a VOD asset 414 from the SHO 302′ to the VHO 306′. This exemplary flow is illustrated in
When the file transfer is complete, the operator 422 accesses the unicast IPTV middleware 421 in the branch management server 406 and chooses to deploy the VOD asset 414 (step 2a). In response, the branch management server 406 proxies the request to the branch controller 408 (step 2b). The branch controller 408 creates (step 2c) an HTTPS tunnel 424 to the VOD OSS/SMT server 402 which then proxies the request to the VOD importer server 404 to verify the status of the VOD asset 414 and retrieve the file location (steps 2d and 2e). The retrieved file location is an URI which contains the FQDN of the VOD importer server 404, such as “http://shovodimp01.sho.domain.com/Staging/asset1/asset_file1.rtp”. Upon receiving the URI of the VOD importer server 404, the branch controller 408 stores the results of this transaction within the branch database 410 and creates the deployment jobs for the VOD servers 412a and 412b (step 2f).
Thereafter, when the first VOD server 412a checks in with the branch controller 408 (step 3a), it is assigned its deployment job as listed in the branch database 410 (step 3b). The first VOD server 412a then uses the URI retrieved by the branch controller 408 to download (step 3c) the required files of the VOD asset 414 which where previously stored in its own configured “staging” cache volume 415a. This is possible since each VOD server 412a and 412b previously updated its host files (e.g., located in C:\WINDOWS\system32\drivers\etc\) to force the translation of the FQDN of the VOD importer server 404 to their respective VOD server's local IP address of 127.0.0.1 (for example) which is associated with the location of the multicast cache volumes 415a and 415b. Without the hosts entry, the FQDN would be translated by a DNS (not shown) at deployment time to the VOD importer server's 404 IP address, forcing the VOD server 412a to send a request during step 3c to the VOD importer server 404 in the SHO 302′. Instead, as a result of all of this, the VOD server 412a will locally retrieve (step 3c) the files of the VOD asset 414 via HTTP from the multicast cache volume 415a which is desirable because the VOD server 412a no longer needs to use the problematical HTTPS connection 230 (SSL tunnel) to retrieve the files directly from the VOD importer server 404 as was required in the prior art (compare
At this point, the branch controller 408 creates an HTTPS connection 430 to the VOD OSS/SMT server 402 in the SHO 302′ to retrieve the DRM keys 418 for the VOD asset 414 (step 4a). The VOD OSS/SMT server 402 proxies the request to the VOD importer server 404 which performs a proper transcription based on the branch certificate's public key and returns the DRM keys 418 (steps 4b and 4c). The branch controller 408 then stores the DRM keys 418 in the branch database 410 (step 4d). This transfer requires very low bandwidth. Thereafter, the remaining VOD server(s) 412b (only one shown) retrieves the VOD asset 414 from the first VOD server's DAS device 428. In particular, each remaining VOD server 412b retrieves their jobs from the branch controller 408 (step 5a), accesses the first VOD server's DAS device 428 via HTTP (steps 5b and 5c) and stores the metadata and media files associated with the VOD asset 414 on their local DAS device 428 (step 5d).
Referring to
In this IPTV architecture, a VOD asset 414 (e.g., VOD title) is sent from a post-production house and received at the VOD importer server 404 in the SHO 302″. The VOD importer server 404 places the VOD asset 414 in a staging volume 416 and applies encryption algorithms 418 (e.g., DRM keys 418) and makes custom metadata 420 modifications to the VOD asset 414. Once this is complete, the VOD asset 414 is ready for distribution to all of the VHOs 306″ (only one has been shown). To accomplish this, the operator 422 accesses the third party multicast file transfer server 405 and chooses to download the files of the desired VOD asset 414 to the dedicated server 417 in the VHO 306″ (step 1a). The multicast file transfer server 405 retrieves the metadata 420 and media files related to the VOD asset 414 from the staging volume/folder 416 in the VOD importer server 404 (step 1b). The multicast file transfer server 405 then multicasts over UDP the required files associated with the VOD asset 414 to the multicast file transfer client 413c which is associated with the dedicated server 417 (step 1c) (note: the files could also be multicast at the same time to other VHOs 306″). If needed, the third party multicast file transfer client 413c may request retransmissions for any packets lost during the transmission of the VOD asset 414. The VOD asset 414 is stored in the configured “staging” cache volume 415c in dedicated server 417 (step 1d).
When the file transfer is complete, the operator 422 accesses the unicast IPTV middleware 421 in the branch management server 406 and chooses to deploy the VOD asset 414 (step 2a). In response, the branch management server 406 proxies the request to the branch controller 408 (step 2b). The branch controller 408 creates (step 2c) an HTTPS tunnel 424 to the VOD OSS/SMT server 402 which then proxies the request to the VOD importer server 404 to verify the status of the VOD asset 414 and retrieve the file location (steps 2d and 2e). The retrieved file location is an URI which contains the FQDN of the VOD importer server 404, such as “http://shovodimp01.sho.domain.com/Staging/asset1/asset_file1.rtp”. Upon receiving the URI of the VOD importer server 404, the branch controller 408 stores the results of this transaction within the branch database 410 and creates the deployment jobs for the VOD servers 412a and 412b (step 2f).
Thereafter, when the first VOD server 412a checks in with the branch controller 408 (step 3a), it is assigned its deployment job as listed in the branch database 410 (step 3b). The first VOD server 412a then uses the URI retrieved by the branch controller 408 to download (step 3c) the required files of the VOD asset 414 which where previously stored in the dedicated server's configured “staging” cache volume 415c. This is possible since each VOD server 412a and 412b previously updated its host files (e.g., located in C:\WINDOWS\system32\drivers\etc\) by translating the FQDN of the VOD importer server 404 to the dedicated server's local IP address 10.1.1.10 (for example) which is associated with the location of the multicast cache volume 415c. Without the hosts entry, the FQDN would be translated by a DNS (not shown) at deployment time to the VOD importer server's 404 IP address, forcing the VOD server 412a to send a request during step 3c to the VOD importer server 404 in the SHO 302′. Instead, as a result of all of this, the VOD server 412a will retrieve (step 3c) the files of the VOD asset 414 via HTTP from the dedicated server 417 which is desirable because the VOD server 412a no longer needs to use the problematical HTTPS connection 230 (SSL tunnel) to retrieve the files directly from the VOD importer server 404 as was required in the prior art (compare
At this point, the branch controller 408 creates an HTTPS connection 430 to the VOD OSS/SMT server 402 in the SHO 302″ to retrieve the DRM keys 418 for the VOD asset 414 (step 4a). The VOD OSS/SMT server 402 proxies the request to the VOD importer server 404 which performs a proper transcription based on the branch certificate's public key and returns the DRM keys 418 (steps 4b and 4c). The branch controller 408 then stores the DRM keys 418 in the branch database 410 (step 4d). This transfer requires very low bandwidth. Thereafter, the remaining VOD server(s) 412b (only one shown) retrieves the VOD asset 414 from the first VOD server's DAS device 428. In particular, each remaining VOD server 412b retrieves their jobs from the branch controller 408 (step 5a), accesses the first VOD server's DAS device 428 via HTTP (steps 5b and 5c) and stores the metadata and media files associated with the VOD asset 414 on their local DAS device 428 (step 5d).
In the second embodiment, the multicast file transfer client 414c is installed directly on the dedicated server 417 instead of the VOD servers 412a and 412b which is desirable since the multicast file transfer client 414c and cache 415c would be installed on a smaller subset of servers within each VHO 306″. In this scheme, a smaller set of servers 417 receive the multicast transfer of the VOD asset 414 which decreases the local load of multicast traffic. Plus, this scheme reduces the number of unused copies of the VOD assets 414 in the VHO 306″. Lastly, in this scheme, measures could be taken to provide fault tolerance such that if one dedicated server 417 hosting the multicast file transfer had a failure then an alternate server hosting the same information could be made available. For example, possibilities include multiple entries in the VOD server's hosts file coupled with a monitoring script to detect communication failures to the dedicated server 417.
Referring to both embodiments, if the multicast file transfer product 405, 413a, 413b and 413c offers an API which exposes an interface for file transfer and receiver status, further integration benefits could be realized. For instance, a tool could be created which would first interface with the multicast file transfer API to push the files of the VOD asset 414 into the VHOs 306. When the receivers (VOD servers 412a and 412b, dedicated server 417) report a successful transfer (via an API query or callback), the tool could then interface with the unicast IPTV middleware's API to perform the VOD deployment. Creating such a tool would minimize the amount of manual work for the operator 422 and allow scheduling of VOD deployments during off-peak hours.
From the foregoing, it should be appreciated that operators of major IPTV middleware solutions can use the present invention to seamlessly integrate a bandwidth-efficient delivery mechanism for VOD assets to their regional sites. The bandwidth required for VOD deployment would be decreased from a function of the number of sites to a single UDP stream per deployment. Thus, the entire network can scale with minimal impact to the VOD deployment process. VOD deployment times would improve dramatically with the increased bandwidth, allowing the operator to keep pace with the current VOD ingestion rate and offer a more appealing VOD lineup to the end-users. This should directly improve the operator's revenue and operating expenses.
Although two embodiments of the present invention have been illustrated in the accompanying Drawings and described in the foregoing Detailed Description, it should be understood that the present invention is not limited to the disclosed embodiments, but is capable of numerous rearrangements, modifications and substitutions without departing from the invention as set forth and defined by the following claims.
This application claims the benefit of U.S. Provisional Patent Application Ser. No. 60/943,161 which was filed on Jun. 11, 2007 the contents of which are hereby incorporated by reference herein.
Number | Date | Country | |
---|---|---|---|
60943161 | Jun 2007 | US |