This disclosure relates generally to mechanisms for establishing an ad hoc service level agreement between an IPTV operator and an external content provider in order to facilitate access to external content through the IPTV network.
In the past, television programming was originally broadcast to viewer's television sets through a radio wave transmission in a defined frequency band referred to as a channel, transmitted from a broadcast tower and received by antennas located at a home. As technology progressed, these broadcast signals were retransmitted over a common access cable infrastructure to the home.
As technology has provided new or improved delivery mechanisms, they have been employed to allow for improved or enhanced television experiences. With the arrival of packet based data networks, and the processing power to properly encode and decode video data at sufficiently high frame rates, Internet Protocol Television (IPTV) is becoming more accessible. IPTV employs a packed based delivery network where infrastructure elements are employed to verify that a given use is authorized to access content before the requested content is delivered to the user.
In conventional IPTV environments, the network is built upon an Internet Multimedia Subsystem (IMS), an architectural framework which uses a plurality of Internet Protocols (IP) for delivering IP multimedia services to a user. The IMS network includes elements necessary to support IP multimedia services. The IMS network typically employs Session Initiation Protocol (SIP) as a control channel protocol. SIP commands are employed to provide control over the initiation and termination of sessions. The packets containing the actual video content are not delivered through the control session, but instead are delivered in an associated content delivery session using another protocol such as the Real-Time Streaming Protocol (RTSP).
In packet based networks, such as IPTV, broadcasting data is not typically done. Instead data is either sent to a specific terminal (unicast) or sent to a plurality of terminal (multicast). Many users can join a multicast session, and from the user perspective, this may not show any differences from a conventional television broadcast.
Video on Demand (VOD) refers to systems which allow users to select and watch/listen to video or audio content on demand. IPTV technology is often used to allow a user to stream content through a set-top box, computer or other device, allowing viewing in real-time, or to download the content to a device for viewing at any time.
In the field of content delivery, Over-The-Top (OTT) content refers to online delivery of video and audio content without the service provider being actively involved in the control or distribution of the content itself The Internet service provider, for example, may be aware that content is being consumed, but it is not responsible for, nor able to control, the viewing abilities, copyrights, or redistribution of the content. This is in contrast to content delivery through purchase or rental from an IPTV provider, a cable television operator, or the Internet service provider itself (for example, via a VOD over IP service). Consumers can access OTT content through any Internet-connected device such as personal computers, tablets, mobile phones, set-top boxes and gaming consoles. OTT content, in general, refers to content arriving from a third party, such as Netflix™ or Hulu™, and arriving to the end user device directly, leaving the Internet service provider responsible only for transporting IP packets.
The existing IPTV provider models do not allow for dynamic access to OTT content delivered over the IPTV network to a subscriber's set-top box. The IPTV provider and a particular OTT content provider would need to define service level agreements and business agreements in advance of any OTT content being offered to an IPTV customer. Hence, current IPTV customers must subscribe directly to any extra OTT services they wish to receive.
Therefore, it would be desirable to provide a system and method that obviate or mitigate the above described problems
It is an object of the present invention to obviate or mitigate at least one disadvantage of the prior art.
In a first aspect of the present invention, there is provided a method for providing external content to a user in an Internet Protocol Television (IPTV) network. A request for content is received from a user device. It is determined that the requested content is offered by an external content provider. In response to determining that the external content provider and the IPTV network do not have a service level agreement, an ad hoc service level agreement is created with the external content provider. Access to the requested content is provided to the user device in accordance with the created ad hoc service level agreement.
In an embodiment of the first aspect, it is determined that the requested content is not offered by the IPTV network.
In a further embodiment, information associated with the requested content can be received from the external content provider. The received information associated with the requested content can be added to a list of available content within the IPTV network. The information associated with the requested content can include metadata, which can be added to a video on demand library.
In further embodiments, the created ad hoc service level agreement is an agreement to provide access to the requested content to the user device. The created ad hoc service level agreement can be an agreement to provide access to the requested content to a plurality of user devices in the IPTV network. The created ad hoc service level agreement can be an agreement to provide access to a set of external content, including the request content, to the user device. Access to the requested content can be provided to the user device for a predetermined amount of time.
In further embodiments, the step of providing access to the requested content to the user device can include sending an availability notification to the user device including a uniform resource indicator associated with the requested content.
In a second aspect of the present invention, there is provided an Internet Protocol Television (IPTV) middleware node. The node includes a service level agreement interface for communicating with an external content provider and a communication interface for receiving a request for content from a user device. The node includes a processor for determining that that the requested content is offered by the external content provider. In response to determining that the IPTV middleware node does not have a service level agreement with the external content provider, the processor transmits a request to create an ad hoc service level agreement with the external content provider through the service level agreement interface. The processor sends a notification to the user device that the requested content is available, in accordance with the created ad hoc service level agreement, through the communication interface.
In an embodiment of the second aspect, the processor can determine that the requested content is not offered by the IPTV network. The service level agreement interface can receives a confirmation message from the external content provider that the ad hoc service level agreement has been created.
In a further embodiment, the service level agreement interface can receive information associated with the requested content from the external content provider. The processor can store the received information associated with the requested content in a memory, and add the received information to a list of available content within the IPTV network. The information associated with the requested content can include metadata, which can be added to a video on demand library.
In further embodiments, the created ad hoc service level agreement is an agreement to provide access to the requested content to the user device. The created ad hoc service level agreement can be an agreement to provide access to a set of external content, including the request content, to the user device. Access to the requested content can be provided to the user device for a predetermined amount of time.
In a further embodiment, the notification sent to the user device can include a uniform resource indicator associated with the requested content.
Other aspects and features of the present invention will become apparent to those ordinarily skilled in the art upon review of the following description of specific embodiments of the invention in conjunction with the accompanying figures.
Embodiments of the present invention will now be described, by way of example only, with reference to the attached Figures, wherein:
The present invention is directed to mechanisms for allowing an IPTV subscriber to request and dynamically access OTT content via the IPTV network.
Reference may be made below to specific elements, numbered in accordance with the attached figures. The discussion below should be taken to be exemplary in nature, and not as limiting of the scope of the present invention. The scope of the present invention is defined in the claims, and should not be considered as limited by the implementation details described below, which as one skilled in the art will appreciate, can be modified by replacing elements with equivalent functional elements.
Presented herein are methods and systems for IPTV middleware to negotiate an ad hoc Service Level Agreement (SLA) with an external content provider in order to provide requested content to an IPTV user.
Service Level Agreements (SLAs) typically specify the quality levels customers expect during service provisioning. A critical issue in this area is for service providers to effectively achieve the individual SLA optimization in terms of Quality of Service (QoS) metrics and price. SLAs for Multimedia Internet Service are managed and controlled in using a utility model based on the concepts of quality profile, quality-to-resource mapping, resource constraints, etc. These features provide a computationally feasible solution for admission control and quality adaptation that ensures the availability of sufficient resources to meet the minimum quality guarantee. From the perspective of an IPTV provider, a high utility value means higher quality resources. Therefore, under overload conditions without SLA adaptation, the IPTV provider may decide to discontinue a low utility service in order to provide a high utility service. Moreover, when the awaiting service requests are high utility, the provider may choose to provide service even when the SLA is violated, although, the service quality and reliability will be negatively affected. On the other hand, the IPTV provider may use an SLA adaptation technique to delegate low utility service in order to avoid service provision rejection. In this type of situation, the IPTV provider retains any resources that may prevent high utility service provision. The service delegation includes high utility service with SLA guarantees to assure excellent service quality for key mobile subscribers.
For the purpose of describing embodiments of the present invention, the term “SLA” will be used to describe an agreement between an IPTV operator and an external content provider, such as an OTT content provider. An SLA between these two parties can define both the technical and business level parameters for providing access to external OTT content within the IPTV network.
The technical SLA can include data related to source owner identity, destination owner identity, request type (i.e. new SLA request, update of SLA, removal of SLA, etc.), credentials (i.e. source IP address, source port, security or authorization credentials, etc.), QoS, and content related information (content metadata, content format, etc.). The business SLA can include data related to pricing information, revenue sharing, distribution rights and lifecycle management information associated with the media content. Technical and business SLA terms can be consolidated in a single SLA between the parties or alternatively they can be defined as separate SLAs.
An IPTV subscriber/user can choose to issue a request to their IPTV provider via their UE 202 to request a particular piece of OTT content they wish to view. The request is received by the IPTV AS 204. The IPTV AS 204 can determine that the requested content is not available in the IPTV network 200 (e.g. by determining that the request content is not stored on the content server 206). The IPTV AS 204 can determine that the requested content is available from an external content source, or alternatively, the user request may identify OTT content provider 212 as the source for the requested content. The IPTV AS 204 will determine whether or not the IPTV operator has a service level agreement in place with the OTT content provider 212. If there is no prior service level agreement in place, the IPTV AS 204 communicates with the OTT content provider 212 through the SLA interface 208 to establish a new ad hoc SLA between the two parties. As previously discussed, the ad hoc SLA can define both the delivery and business terms for making the requested content from the OTT content provider 212 available to the IPTV user. The new SLA may require validation from the IPTV AS 204 and the OTT content provider 212 prior to making requested content available.
The SLA interface 208 can be implemented using an application programming interface (API) between the IPTV AS 204 and the OTT content provider 212, such as a Representational state transfer (REST) Hypertext Transfer Protocol (HTTP) API. Those skilled in the art will appreciate that other types of APIs, for example an IMS API, can be used without departing from the scope of the present invention. The SLA interface 208 is utilized to negotiate the terms and conditions associated with the potential content exchange, or access, between the two parties. The API can provide a uniform interface for the identification of requested resources, for example using uniform resource identifier (URI) for the content; manipulation of the content, including any associated metadata; and information describing how to process the messages delivered over the API. The SLA interface 208 also configures the end-user authorization of the content for session setup and playback.
In step 220, the IPTV AS 204 validates the content request message 218. Validating the content request can include determining that the request content is not content that is available to be provided by the IPTV operator network 200. It can be determined that the requested content is offered by an external content provider such as OTT content provider 212. As part of validating the request, the IPTV AS 204 determines if the IPTV operator 200 and the OTT content provider 212 have an SLA in place. If not, the IPTV AS 204 determines that an SLA must be negotiated and established with the OTT content provider 212 in order to make the requested content available to the user.
The IPTV AS 204 sends request message 222 to the OTT AS 214 to request creation and establishment of an ad hoc SLA between the IPTV operator 200 and the OTT content provider 212. The request 222 is received by the OTT AS 214 and validated in step 224. Validation of the SLA request 224 can include agreeing on the technical delivery terms and the business terms for making the requested content available to the IPTV UE 202. There can be several messages exchanged between the OTT AS 214 and the IPTV AS 204 (not shown) in step 224 in order to negotiate and agree upon the terms of the requested ad hoc SLA. Following validation of the SLA request in step 224, the OTT AS 214 sends an acknowledgement message 226 to the IPTV AS 204 to confirm that the ad hoc SLA is now agreed upon and created. Optionally, the OTT AS 214 can send an IN_PROGRESS message to the IPTV AS 204 when it requires more time to handle the SLA request in step 224. The IN_PROGRESS message can indicate a time period when a response to the SLA request 222 will be returned. This can allow the IPTV AS 204 to notify the UE 202 that it will respond to the content request in a timely manner.
The IPTV AS 204 sends GET message 228 to request information associated with the requested OTT content. The OTT AS 214 receives the message 228 and returns the OTT content information in message 230. The OTT content information 230 can include metadata related to the OTT content.
The metadata can include: VOD Lifecycle information (such as Start License Window, Stop License Window, Gracewindow, etc.); VOD program metadata (such as title, price, category, URI(s) or uniform resource locator (URL) for session setup and playback); VOD Device Access information (such as number of simultaneous devices to access per Operator or per user, etc.); caching information (rules defining if local copies of the movie are to be stored in the IPTV Operator Network 200 for performance issues or if the content should remain resident on the OTT content provider 212); and other legal information related to copyright and redistribution rights. When it comes to URI(s), the SLA can define more than one URI for the same content based on redundancy and/or regions. For example URL1 can be set up to cover access for the east coast, while URL2 can cover the west coast. In step 232, the IPTV AS 204 stores the received OTT content information in memory. Step 232 can include adding metadata associated with the OTT content to a VOD library which lists content available on demand to IPTV subscribers. The IPTV AS 204 can then inform the user that the requested content is now available by sending OTT content available message 234 to the UE 202.
Upon receipt of availability indicator 234, the UE 202 requests the address to access the content with GET RTSP URL message 236. The IPTV AS 204 responds with the appropriate URL in RTSP 200 OK URL message 238. The UE 202 can then use the received URL address to contact the CDN 216 to request setup of an RTSP session with message 240. The CDN 216 receives message 240, establishes the RTSP content delivery session and begins streaming the requested MPEG media 242 to the UE 202. The IPTV user is now able to watch and listen to the requested OTT content on his UE 202.
Although the embodiment shown in
In step 404, it is determined that the requested content is offered by an external content provider. The received request for content message, itself, may identify an external content provider capable of providing the content or the determination can be made otherwise. Optionally, at least one external content provider known to the IPTV network can be queried to ask if they offer the requested content.
It is determined in step 405 that the external content provider, associated with the requested content, and the IPTV network do not have an existing service level agreement in place. A list of external content providers having existing service level agreements with the IPTV network can be stored in memory.
An ad hoc service level agreement (SLA) is created with the external content provider in step 406. The ad hoc SLA can define the technical access details associated with the requested content such as URI, port number, QoS, protocol, etc. The ad hoc SLA can also define business rules associated with the requested content such as the price, revenue sharing model, lifecycle of the content from both an operator perspective and end-user perspective. The ad hoc SLA may require validation from both parties prior to its agreement and creation.
The ad hoc SLA can be an agreement created to provide access to the specific requested content to only the user device that issued the initial request. The ad hoc SLA can be an agreement to provide access to the requested content to a plurality of users, user devices, or all subscribers in the IPTV network. The ad hoc SLA can be an agreement to provide access to a larger set of external content, including the request content, to the user device. The set of external content can include all content that is provided by the external content provider. The ad hoc SLA can define a lifecycle, or an expiry time, for the requested content. In other words, access to the requested content can be provided to the IPTV network and/or user device for only a predetermined amount of time. The ad hoc SLA can define separate lifecycle terms for the content access between the two networks and the terms governing how long each user can consume the content. Note that the IPTV operator may choose to further refine or limit any lifecycle/expiry time that are specified in the SLA to meet his business needs.
Optionally, in step 408, information associated with the requested content is received. Optionally, in step 410, the received information can be imported and added to a list of available content in the IPTV network. The list can include content available to the user device that made the request, or alternatively it can list the content that is available to all users in the IPTV network. The information associated with the requested content can include metadata. The metadata can be added to a VOD library which defines a list of content that is available for user consumption in the IPTV network. The metadata can be included in the VOD library for only a predetermined amount of time, in accordance with the terms of the ad hoc SLA. Following the expiry of the predetermined amount of the time, the metadata can be removed from the VOD list and the requested content is no longer available to be accessed through the IPTV network.
Finally, in step 412, access to the requested content is provided to the user device. Providing access can include sending a message to the user device indicating that the requested content is available. Such an availability notification message can include an address, such as a URI, through which to access the requested content. The availability message can also include security or authentication information that the user device will require for accessing the content. Login and password information, or a security token, to access the external content provider can optionally be provided to the user device in step 412. The step of providing access can also alternatively include pushing the request content directly to the user device.
In an alternative embodiment, not shown in
The communication interface 502 receives a request for content from a user device. The processor 500 can determine that the requested content is not offered by the IPTV network. This determination can be made by consulting the memory 506 which stores metadata associated with the content available in the IPTV network. Alternatively, the IPTV middleware node 204 can send a query to an IPTV content server, which stores the media files for all content available in the IPTV network, to determine if the requested content is available in the IPTV network. Alternatively, the request for content received from the user device may indicate that the content is available from an external content provider.
The processor 500 determines that that the requested content is offered by an external content provider. In response to determining that the IPTV AS 204 does not have a service level agreement with the external content provider, the processor 500 instructs the SLA interface 504 to create an ad hoc service level agreement with the external content provider. The SLA interface 504 may receive a confirmation or acknowledgement from the external content provider when the ad hoc service level agreement has been created and established. Information, or data, related to the requested content can also be received through the SLA interface 504. This information can be stored in the memory 506. The processor 500 can add the received information to a list of available content within the IPTV network. The information associated with the requested content can include metadata, and the metadata can be added to a VOD library or catalogue.
The created ad hoc service level agreement can be an agreement to provide access to the requested content to the user device. The created ad hoc service level agreement can be an agreement to provide access to all content offered by the external content provider, including the request content, to the user device. Access to the requested content can be provided to the user device for only a predetermined amount of time.
The processor 500 instructs the communication interface 502 to send a notification to the user device that the requested content is available, in accordance with the established ad hoc service level agreement. The notification sent to the user device can include a URI associated with the requested content.
Although communication interface 502 and SLA interface 504 are shown as separate logical entities in
Embodiments of the present invention provide an IPTV subscriber with mechanisms to request external content to be made available through the IPTV network. Embodiments of the present invention also provide mechanisms for the IPTV operator to build a VOD catalogue one piece of content at a time, as requested by subscribers. The IPTV operator can utilize external content, which would be otherwise unavailable, to supplement income based on revenue-sharing models of the created ad hoc SLA. These mechanisms can allow an operator to grow his content offering business slowly without having to invest in extra infrastructure to support to additional content.
Embodiments of the invention may be represented as a software product stored in a machine-readable medium (also referred to as a computer-readable medium, a processor-readable medium, or a computer usable medium having a computer readable program code embodied therein). The machine-readable medium may be any suitable tangible medium including a magnetic, optical, or electrical storage medium including a diskette, compact disk read only memory (CD-ROM), digital versatile disc read only memory (DVD-ROM) memory device (volatile or non-volatile), or similar storage mechanism. The machine-readable medium may contain various sets of instructions, code sequences, configuration information, or other data, which, when executed, cause a processor to perform steps in a method according to an embodiment of the invention. Those of ordinary skill in the art will appreciate that other instructions and operations necessary to implement the described invention may also be stored on the machine-readable medium. Software running from the machine-readable medium may interface with circuitry to perform the described tasks.
The above-described embodiments of the present invention are intended to be examples only. Alterations, modifications and variations may be effected to the particular embodiments by those of skill in the art without departing from the scope of the invention, which is defined solely by the claims appended hereto.