WO2008092250A1 - Cooperative system and method for duplicating and delivering media streams in a distributed manner. - Google Patents

Cooperative system and method for duplicating and delivering media streams in a distributed manner. Download PDF

Info

Publication number
WO2008092250A1
WO2008092250A1 PCT/CA2008/000183 CA2008000183W WO2008092250A1 WO 2008092250 A1 WO2008092250 A1 WO 2008092250A1 CA 2008000183 W CA2008000183 W CA 2008000183W WO 2008092250 A1 WO2008092250 A1 WO 2008092250A1
Authority
WO
WIPO (PCT)
Prior art keywords
media streams
end users
streaming
duplicated
regional
Prior art date
Application number
PCT/CA2008/000183
Other languages
French (fr)
Inventor
Mathieu Giguere
Patrick Riendeau
Marc-André FORGET
Ronald Brisebois
Original Assignee
Technologies Ezoom Exponentiel Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Technologies Ezoom Exponentiel Inc. filed Critical Technologies Ezoom Exponentiel Inc.
Publication of WO2008092250A1 publication Critical patent/WO2008092250A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1854Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with non-centralised forwarding system, e.g. chaincast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate

Definitions

  • the present invention generally relates to media streaming networks. More specifically, but not exclusively, the present invention is concerned with a cooperative system and method for duplicating and delivering media streams in a distributed manner.
  • IP TV Protocol Television
  • IP TV can offer interesting services such as personalized profiles and searches. Companies offering such services can use intelligently targeted advertisement in order to increase their income. Therefore, this field can become a huge market for making money.
  • IP Internet Protocol
  • Unicast protocols send a separate copy of the media stream from a server to each client. This is simple, but can lead to a massive duplication of data or media streams in the network, which implies the use of many servers for providing a separate copy of the media stream to each client.
  • Multicast protocols send only one copy of the media stream over any given network connection, i.e. along the path between any two network routers. This is a more efficient use of the network capacity and it keeps the number of servers to a minimum, but it is much more complex to implement. Furthermore, multicast protocols must be implemented in the network routers, as well as in the servers. Also, forwarding multicast traffic requires a great deal of protocol complexity, particularly when knowing and satisfying in real-time the profile of each client of the audience, such as personalized content, interactions, billing, Quality-of-Service (QoS), etc. Thus, the multicast protocol suffers from deployment problems and complexity. Also, there is no efficient software to support such deployment and implementation. Usually, the few networks that use multicast protocols are complex and expensive, and they are also difficult to install and maintain.
  • An object of the present invention is therefore to provide a cooperative system and method for duplicating and delivering media streams in a distributed manner.
  • a system for duplicating and delivering at least one media stream, requested by end users, from at least one source of media streams to the end users using a unicast protocol comprises a first means for duplicating the at least one requested media stream to produce a plurality of first duplicated media streams, and, a plurality of second means, each in communication with the first means, for receiving one of the first duplicated media streams and for duplicating the one first duplicated media stream to produce second duplicated media streams delivered to the end users, wherein the first means and the plurality of second means form a tree-type distributed network for multi-stage duplication and delivery of the at least one requested media stream to the end users.
  • a system for duplicating and delivering at least one media stream, requested by end users, from at least one source of media streams to the end users using a unicast protocol comprises a main streaming accelerator for duplicating the at least one requested media stream to produce a plurality of first duplicated media streams, and, a plurality of regional streaming accelerators, each in communication with the main streaming accelerator, for receiving one of the first duplicated media streams and for duplicating the one first duplicated media stream to produce second duplicated media streams delivered to the end users, wherein the main streaming accelerator and the plurality of the regional streaming accelerators form a tree- type distributed network for multi-stage duplication and delivery of the at least one requested media stream to the end users.
  • a method for duplicating and delivering at least one media stream, requested by end users, from at least one source of media streams to the end users using a unicast protocol comprises a first duplication, through a main streaming accelerator, of the at least one requested media stream to produce a plurality of first duplicated media streams, a first delivery of the first duplicated media streams to a plurality of regional streaming accelerators, each in communication with the main streaming accelerator, a second duplication, through the plurality of regional streaming accelerators, of the first duplicated media streams received from the main streaming accelerator to produce second duplicated media streams, and, a second delivery of the second duplicated media streams to the end users through a communication network and using a unicast protocol, wherein the first and second duplications and deliveries of the at least one requested media stream form a tree-type distributed multi-stage duplication and delivery of the at least one requested media stream to the end users.
  • Figures 1a and 1b are schematic views of a current known headend broadcasting model
  • Figure 2 is a schematic view of a headend broadcasting model, comprising a system for duplicating and delivering media streams in a distributed manner, according to the non-restrictive illustrative embodiment of the present invention
  • Figure 3 is a schematic view of a broadcasting network according to the non-restrictive illustrative embodiment of the present invention.
  • Figure 4 is a schematic block diagram of a main system for duplicating and delivering media streams in a distributed manner according to the non-restrictive illustrative embodiment of the present invention
  • Figure 5 is a schematic block diagram of a regional system for duplicating and delivering media streams in a distributed manner according to the non-restrictive illustrative embodiment of the present invention.
  • the non-restrictive illustrative embodiment of the present invention comprises a plurality of systems for duplicating media streams, which are implemented in a tree-type structure for delivering the media streams in a distributed manner over a large network.
  • Each such system can be an embedded piece of software implemented directly in a network processor, for rationalizing and accelerating non-intrusively the delivery of streaming media to remote users.
  • CSA Cooperative Streaming Accelerator
  • CSAs 1 allows for lowering deployment costs and operating expenses, and improving streaming Quality-of-Service (QoS).
  • QoS Quality-of-Service
  • non-restrictive illustrative embodiment of the present invention allows for a huge and distributed deployment of media streaming delivery network using a unicast infrastructure such as for an IP TV private network that offers TV channels over DSL (Digital Subscriber Line) access.
  • a unicast infrastructure such as for an IP TV private network that offers TV channels over DSL (Digital Subscriber Line) access.
  • the concept of the non-restrictive illustrative embodiment of the present invention is to better distribute and thus accelerate the media streaming delivery over the network.
  • all the duplicated media streams go through the same path in the network until the last segment of the network where they go through different paths to reach the destination of each user.
  • the regional CSA is implemented as close as possible to the user end for decreasing transport and deployment costs.
  • a situation where the non-restrictive illustrative embodiment of the present invention better accelerates the duplication and delivery of media streams is when a user from a new destination requests a specific media stream.
  • the regional CSA to which the user belongs, provides the requested media stream directly to this new user, without requesting it again from the main CSA, since the media stream has already been duplicated and forwarded by the main CSA.
  • QoS streaming Quality-of-Service
  • the non-restrictive illustrative embodiment of the present invention uses standard networking equipments and is compatible with the Internet Protocol (IP).
  • IP Internet Protocol
  • the non-restrictive illustrative embodiment of the present invention also uses standard IETF (Internet Engineering Task Force) protocols and it is not bound to any streaming audio or video CODEC; however, it can further use proprietary protocols, specific to different elements in the network. Furthermore, the non-restrictive illustrative embodiment of the present invention takes advantage of both unicast and multicast protocols.
  • IETF Internet Engineering Task Force
  • FIG. 1a a headend segment of a broadcasting network is illustrated.
  • the model 10 comprises a source of media 12 to be broadcast.
  • the source of media 12 can be a video camera, a camera, a satellite, etc.
  • the broadcast media are then received in a plurality of streamers 14.
  • the number of streamers such as 14 depends on the number of end users who request such media streams to be delivered to them. The larger is the number of end users, the larger is the number of streamers 14 required for responding to the end users' requests. Therefore, it can become very challenging in terms of infrastructure when the number of end users in the network is indeed large or increasing.
  • the plurality of streamers 14 is connected to a storage switch
  • Figure 1b illustrates a model 30 of a headend segment of the broadcasting network according to the non-restrictive illustrative embodiment of the present invention.
  • the model 30 is very similar to the model 10 in Figure 1a.
  • the plurality of streamers 14 has been reduced to one streamer 32 or a few streamers 32 (two (2) in the example of Figure 1b) connected to a main cooperative streaming accelerator (CSA) 34, which is in turn connected to the delivery network 22.
  • the CSA 34 allows for duplicating media streams using the unicast protocol, for instance.
  • the model 30 is much lighter in terms of the number of streamers such as 32 and thus in terms of infrastructure, and is easier to handle, maintain and deploy, while being able to support a large number of end users.
  • the CSA 34 is compatible with the current IP equipments and can be easily integrated into existing network infrastructures.
  • the rest of the model 30 of the headend remains the same as described hereinabove with reference to Figure 1a, with the same numerals corresponding to the same elements in Figure 1a and Figure 1b.
  • a main CSA 44 is connected to some streamers 42, such as video servers, which constitute the source of the streaming media.
  • the main CSA 44 is further connected to two regional CSAs 46 and 48, representing and taking care of respectively a region A and a region B, in this non-limitative example.
  • the main CSA 44 can be connected to a plurality of regional CSAs and each regional CSA can be connected to a plurality of sub-regional CSAs, and so forth.
  • the regional CSA 46 is connected to a router 50 using, for example, an ATM (Asynchronous Transfer Mode) or Ethernet network, for delivering to end users 52 the media streams requested by them.
  • the end users 52 are located inside region A.
  • the requested media streams enter the home of each end user 52 through an access element 51 such as a DSLAM (Digital Subscriber Line Access Multiplexer).
  • DSLAM Digital Subscriber Line Access Multiplexer
  • the regional CSA 48 is connected in a same manner as the regional CSA 46. Indeed, the regional CSA 48 is connected to a router 54 using, for example, an ATM (Asynchronous Transfer Mode) network or an Ethernet network, for delivering to end users 56 media streams requested by them.
  • the end users 56 are located inside region B.
  • the media streams enter the home of each end user 56 through an access element 55 such as a DSLAM (Digital Subscriber Line Access Multiplexer).
  • DSLAM Digital Subscriber Line Access Multiplexer
  • the main CSA 44 sends only one copy of the requested media streams to each regional CSA 46 and 48.
  • Each regional CSA 46 and 48 then, in turn, duplicates the received media streams and sends them over its respective network to the end users belonging to its own region (region A and B respectively), according to requests from the end users for these media streams.
  • a request process for a media stream from an end user is as follows.
  • the end user wants to listen or watch a piece of music or video, he/she sends a request to the regional CSA to which he/she belongs to. If the user belongs to the region A, then his/her request is sent to the regional CSA 46. If he/she belongs to the region B, then his/her request is sent to the regional CSA 48. Then, the regional CSA 46 or 48 communicates with the main CSA 44 for requesting the media streams corresponding to the desired piece of music or video. Finally, the main CSA 44 communicates with the streaming servers 42 for accessing the requested media streams, which will be then forwarded from the main CSA 44 to the regional CSA 46 or 48 that made the request and finally from the regional CSA 46 or 48 to the specific end user.
  • such broadcasting network can be an internet TV broadcasting network.
  • the distributed network 60 comprises a main office 62 connected, on one side, to a regional office 64, through a network 66, which can be, for example, an optical network using SONET (Synchronous Optical Networking).
  • a network 66 which can be, for example, an optical network using SONET (Synchronous Optical Networking).
  • the main office 62 is connected to different receiving systems for receiving broadcast media, such as a satellite 68 or an antenna 70, as illustrated in Figure 3.
  • the receiving systems can include either analog or digital devices.
  • the main office 62 can be directly connected to a source server 72, for example an interactive content authority server.
  • a source server 72 for example an interactive content authority server.
  • the main office 62 comprises a main CSA
  • an encoder 80 is connected to the input of the main CSA 74, for converting analog media streams, received from the analog receiving systems such as 68 and 70, into digital media streams and for encoding them.
  • the media streams coming from the receiving systems 68 and 70 are first processed through a decoder 76 and a demodulator 82, respectively, which are both connected as input to the encoder 80.
  • the decoder 76 can be an integrated receive decoder for decoding the analog media streams coming from the satellite 68.
  • the demodulator 78 allows for demodulating the analog modulated media streams received from the antenna 70.
  • the main CSA 74 can receive digital media streams from the source server 72, for example an interactive content server, through a streaming server 82, interposed between the server 72 and the main CSA 74.
  • the main CSA 74 performs a first duplication of the media streams and delivers them to the regional office 64 over the network 66 through a router 84 and an ATM switch 86.
  • the router 84 can be a router of layer 3 of OSI (Open Systems Interconnections), using ATM or Ethernet, for example.
  • the switch 86 forwards, in layer 2 of OSI, the media streams to the regional office 64, which will take care of a second duplication of the media streams.
  • the router 84 can be also connected to a middleware server
  • the switch 86 is connected to the network 66, which uses SONET for example.
  • the network 66 allows the main office 62 to route the media streams and communicate with the regional office 64.
  • the regional office 64 is not necessarily directly connected to the main office 62.
  • VPN Virtual Private Network
  • the main office 62 can implement different VPN tunneling technologies.
  • the main CSA 74 controls the whole system over the distributed network 60, meaning that all the configuration and key features are concentrated in the main CSA 74.
  • main CSA 74 has the responsibility of the reservation of path between the main office 62 and each regional office such as 64 connected thereto. Indeed, a plurality of regional offices such as 64 can be connected to the main office 62 through the SONET network 66. Also, all the bandwidth reservation in the context of QoS (Quality of Service) delivery is managed by the main office 62, which will be described hereinbelow.
  • QoS Quality of Service
  • the main CSA 74 comprises a processing element
  • the processing element 120 communicates with the forwarding element 122 through a private network 124, which can be a base channel for example.
  • the processing element 120 comprises a Real-Time
  • Streaming Protocol (RTSP) proxy 126 for handling users' requests for media streams or regional CSAs' requests and media streams coming from the streaming server 82 or the encoder 80 in Figure 3. Also, the proxy 126 allows for authentication of the users requesting media streams.
  • RTSP Streaming Protocol
  • the main CSA 74 comprises a MVIF (Multiple
  • the processing element 120 also comprises a bandwidth manager 130 for taking care of the bandwidth reservation and QoS (Quality of Service) in the distributed network 60. Indeed, to deliver exceptional quality of media streams to an end user, bandwidth management between the main office 62 and the regional office 64 must be enforced. Bandwidth management strategies must be offered and easy to handle for an outside operator to manage correctly the distributed network 60.
  • QoS Quality of Service
  • bandwidth manager 130 of the main CSA 74 can negotiate the required bandwidth when new media streams are sent to a regional office such as 64 so that a minimum and average bandwidth are guaranteed.
  • adaptive buffering in the regional office 64 should be provided.
  • the processing element 120 further comprises a packet marking element 132, which allows for identifying each data packet from the requested media streams and for specifying a certain QoS.
  • the packet marking element 132 can use technologies, such as ToS (Terms of Service) from layer 3 of OSI, and pBits (Priority bits) from layer 2 of OSI, to characterize real-time data packets. It should be noted that packet marking can be different for each media stream and regional office 64 and a combination thereof. Indeed, each media stream can have a different pricing, depending, for example, on the QoS guaranteed to each user. Therefore, prioritization in terms of bandwidth will be performed in consequence. The marking of the packets is modified in regards to the pBits and ToS in order to reflect different bandwidth negotiations. Furthermore, generally, packet marking is not constant from one network to another. Therefore, the packet marking element 132 also offers a multitude of configuration options to the operator.
  • the packet marking element 132 generally identifies each packet and decides which marking strategies or appropriate marking should be used for each packet.
  • a stream modifier 148 takes care of changing each packet according to the appropriate marking decision and/or strategy selected by the packet marking element 132.
  • the processing element 120 also includes an alarm system
  • the alarm system 134 which allows for centralizing and collecting all the distributed alarms generated across the network 60.
  • the alarm system 134 can report the collected alarms to an outside interface, such as a remotely connected computer controlled by the operator, using for example a standard protocol such as SNMP (Simple Management Network Protocol).
  • SNMP Simple Management Network Protocol
  • the quality of different links in the network 60 is measured with the user experience quality, a measure based on the user's experience such as MOS (Mean Opinion Score), and should be available through simple interfaces. This will allow the operator to take preventive measures when the main office 62 detects bottlenecks or network errors.
  • MOS Mobile Opinion Score
  • main CSA 74 comprises a statistics reporter
  • the statistics reporter 136 which allows for gathering all the statistics about the network 60. For that purpose, it receives periodically all the statistics from the regional office 64. Then, the statistics reporter 136 aggregates and stores them in a reliable location, such as a memory unit (not shown). A database of the collected statistics can be created for further uses and queries and easier management. It should be noted that an outside interface should be provided for searching or exporting the aggregated statistics.
  • the processing element 120 comprises a transport controller 138 for managing the transport of media streams.
  • the transport protocol can support both unicast and multicast protocols.
  • a copy of the requested media stream is sent from the main CSA 74 to each regional office such as 64, requesting for that media stream.
  • the main CSA 74 sends out only one media stream propagated through the network 60 to reach every regional office such as 64 after at least one regional office has requested that media stream.
  • the transport controller 138 further actively supervises the link between the main office 62 and each regional office such as 64.
  • the transport controller 138 has a fast link failure detection function. If a link failure is detected by the transport controller 138, the media streams are switched over to a backup route implemented in the network 60 (not shown in Figure 3).
  • the regional office 64 can send a link status information report to the main office 62 every 200 ms. This report contains, for instance, the number of packets received in the last interval. If no packets are received by the main office 62 after 3 intervals of 200 ms, the transport controller 138 will switch the requested media streams to the backup route for delivery to the end users.
  • the level of communications between the main office 62 and the regional office 64 is kept to a minimum in order to optimize the link capacity between the main office 62 and the regional office 64.
  • the latter term "communications” mainly concerns the cases when a new media stream is requested by an end user and when the regional office 64 reports statistics to the main office 62.
  • the forwarding element 122 of the main CSA 74 comprises a network processing unit (NPU) 140 and a host 144.
  • NPU network processing unit
  • the NPU 140 mainly takes care of the duplication process
  • the NPU 144 comprises a duplicator 146, a receiver/sender 147, the stream modifier 148 as mentioned above, a Real-Time Control Protocol (RTCP) handler 149, a packet sender 151 , and a local packet handler 153.
  • RTCP Real-Time Control Protocol
  • the receiver/sender 147 receives the media streams coming from the streaming server such as 82 of Figure 3. Then, the receiver/sender 147 forwards the media streams to the duplicator 146, which first performs a flow matching of the received media streams. If the media streams are identified, then they are duplicated by the duplicator 146 (unicast protocol). If the media streams cannot be identified, then, they are sent to the local packet handler 153 for further processing with the help of the processing element 120 for example. The duplicated packets which will be subsequently forwarded to the regional office 64 are called "forward packets", in contrast to the local packets, which could not be identified and therefore need further processing.
  • the duplicated media streams are sent from the duplicator
  • the stream modifier 148 for modifying the duplicated media streams according to each user's destination.
  • the information concerning each user is looked up in tables 150 contained in the host 144.
  • the duplicated media streams are sent out over the network 66 through the packet sender 147.
  • the NPU 140 also takes care of RTCP (Real-Time Control
  • the RTCP receiver report collects/gathers cumulative packet drop or loss information, which constitutes an indication of the quality of a link. Therefore, one easy way to detect problems in a media stream of data packets is to use RTCP receiver reports.
  • the values given by this report can form statistics which are then analyzed and compared to a threshold of packet drop for preventive purposes. For example, if the analyzed value is below a certain QoS threshold, then adjustment of the QoS drop function is necessary in order to provide an acceptable quality of the link. All abnormal data packets should be flagged to a controller 152 in the host 144 so that a network dynamic down sampling adjustment can be activated, for example.
  • the host 144 comprises the above mentioned controller 152 for managing the execution of user commands, such as adding, removing or fetching a media stream.
  • the controller 152 has a control protocol for allowing the host 144 to send requests and receive responses.
  • the regional office 64 is described. It comprises a regional CSA 90, connected to a router 94.
  • the router 94 is connected to the network 66 through an ATM switch 92.
  • the regional CSA 90 receives the requested media streams from the main CSA 74 of the main office 62, through the network 66, the ATM switch 92 and the router 94.
  • the regional CSA 90 duplicates the requested media streams and then forwards the duplicated requested media streams to the end users 96, through the router 94 and respective DSLAM 104.
  • Each user's end comprises, for example, a computer 98 and/or a television 100 for viewing or listening to the received requested broadcast media streams.
  • the computer 98 or television 100 is connected to a DSL (Digital Subscriber Line) modem 102 for accessing the duplicated media streams provided through the DSLAM 104 of the regional office 64.
  • DSL Digital Subscriber Line
  • other types of connections are possible, such as radio frequencies, wireless links, etc.
  • the regional office 64 is responsible for authentication of the users 96 and final duplication of the requested media streams, which is performed by the regional CSA 90 and will be described hereinbelow.
  • the regional CSA 90 comprises a processing element (processor) 160 and a forwarding element 162, which are connected to each other through a private network 164, such as a base channel.
  • the processing element 160 comprises a RTSP proxy 166 for intercepting and processing the requests from the end users 96 in Figure 3.
  • the proxy 166 comprises a user request handler 168 for processing users' requests. It also comprises a user authentication element 170 for validating users' identity. This function is critical especially in applications such as IP TV where the network 60 is a private network and therefore each end user must be authenticated and identified. Finally, to respond to the users' requests, the proxy 166 comprises a streamer handler 172 which communicates with a streaming server (not shown) or the main CSA 74 for fetching the requested media streams for the user 96.
  • the processing element 160 also has a MVIF driver 174 for establishing a communication interface between the processing element 160 and the forwarding element 162 over the private network 164.
  • the processing element 160 further comprises a QoS element 176.
  • the QoS element 176 allows for supporting advanced QoS functions, specially during the last segment of the network where the requested media streams are delivered to the end users 96.
  • the QoS element 176 can modify or correct, through a stream modifier 188, each packet's marking in a media stream, which was performed by the stream modifier 148 under the control of the packet marking element 132 of the main CSA 74 of Figure 4. Indeed, each media stream can be marked differently for each user 96.
  • the packet marking strategies are dependent on the bundle or package deal offered to each user 96 by a network operating company, such as a telephone company or an ISP (Internet Service Provider) for example.
  • the processing element 160 comprises a stream quality element 178.
  • the stream quality element 178 allows for an early detection of a problem in the connection/link between the main office 62 and the regional office 64. If packets in the media stream start to be lost and dropped, a flag will be sent to the user 96, as well as a request for an immediate action to be activated.
  • the media streams circulating in the distributed network 60 are self-monitoring and self-testing for reporting quality degradation (i.e. negative quality variations) to the regional office 64.
  • the regional office 64 further evaluates the quality of media streams passing through itself. The evaluation is derived from a user experience quality, using MOS (Mean Opinion Score). To save network bandwidth between the main office 62 and the regional office 64, those self-testing results are sent to the main office 62 only under a request explicitly expressed by an operator, for example.
  • MOS MoS
  • the regional CSA 90 of Figure 5 has a distributed content entry 180.
  • media streams can be terminated in different CSAs.
  • a regional office such as 64 can receive the requested media streams directly from a streaming server such as 82, without going through the main office 62. This feature gives opportunities to operators for distributing geographically different media stream entries in the network 60.
  • the media streams received from the distributed content entry can be used directly at the regional office 64 but also they can be copied and forwarded to the main office 62 for "regular" processing (such as duplication).
  • the main office 62 can then distribute the duplicated media streams to other regional offices requesting for those media streams.
  • the same network bandwidth management as above described should be applied between the regional office 64 and the main office 62.
  • the main office 62 is still in charge of making the reservation of the necessary bandwidth.
  • the forwarding element 162 of the regional CSA 90 is very similar to the forwarding element 140 of the main CSA 74.
  • the forwarding element 162 takes care of the duplication process of the media streams requested by the users 96 for the last section of the delivery network.
  • the NPU comprises a receiver/sender 185, a duplicator 186, the stream modifier 188 as mentioned above, a RTCP handler 190, a packet sender 192, and a local packet handler 194. All those elements are similar to those in the forwarding element 140. Therefore, they will not be described in further details.
  • each CSA whether it is a main CSA such as 74 or a regional CSA such as 90, additional processing elements (processors) can be found for implementing further functionalities and services.
  • the main office can be connected to a plurality of regional offices identical or similar to the regional office 64.
  • the Real-Time Protocol is generally used for the communications between the different elements of the network 60.
  • RTP Real-Time Protocol

Abstract

A method and system for duplicating and delivering at least one media stream, requested by end users, from at least one source of media streams to the end users using a unicast protocol, comprise a main streaming accelerator for duplicating the at least one requested media stream to produce a plurality of first duplicated media streams and a plurality of regional streaming accelerators, each in communication with the main streaming accelerator, for receiving one of the first duplicated media streams and for duplicating the one first duplicated media stream to produce second duplicated media streams delivered to the end users. The main streaming accelerator and the plurality of the regional streaming accelerators form a tree-type distributed network for multi-stage duplication and delivery of the at least one requested media stream to the end users.

Description

TITLE OF THE INVENTION
COOPERATIVE SYSTEM AND METHOD FOR DUPLICATING AND DELIVERING MEDIA STREAMS IN A DISTRIBUTED MANNER.
FIELD OF THE INVENTION
[001] The present invention generally relates to media streaming networks. More specifically, but not exclusively, the present invention is concerned with a cooperative system and method for duplicating and delivering media streams in a distributed manner.
BACKGROUND OF THE INVENTION
[002] For the past few decades, Internet has experienced an incredible growth and expansion. Technologies changed from centralized computing to personalized computing, to mobile computing and now to intelligent services with a convergence of networks, devices and services. Consumers are always connected and are asking for more; personalized and intelligent services are required in order to satisfy the demands and expectations of the consumers.
[003] For example, the field of streaming has been constantly growing for the past five years. Since more powerful computers, greater network bandwidth and faster connections and access to networks are available, the streaming industry is evolving very fast. Streaming applications can be used over the Internet and some private networks such as cable TV networks, or cellular companies. [004] As a result of the streaming application, IP TV (Internet
Protocol Television) is possible and is becoming more and more popular. Indeed, IP TV can offer interesting services such as personalized profiles and searches. Companies offering such services can use intelligently targeted advertisement in order to increase their income. Therefore, this field can become a huge market for making money.
[005] However, as the number of consumers using those services increases, the infrastructure of the network offering those services must be stronger and larger so that it can support a growing number of remotely connected users, who can be spread all over a country or continent. The infrastructure must also be able to accommodate a larger number of servers and other equipments. Deployment of such network infrastructure may be very expensive and specially very complex to manage and maintain.
[006] Furthermore, two IP (Internet Protocol) based protocols can be used in streaming applications over a network: Unicast and Multicast.
[007] Unicast protocols send a separate copy of the media stream from a server to each client. This is simple, but can lead to a massive duplication of data or media streams in the network, which implies the use of many servers for providing a separate copy of the media stream to each client.
[008] Multicast protocols send only one copy of the media stream over any given network connection, i.e. along the path between any two network routers. This is a more efficient use of the network capacity and it keeps the number of servers to a minimum, but it is much more complex to implement. Furthermore, multicast protocols must be implemented in the network routers, as well as in the servers. Also, forwarding multicast traffic requires a great deal of protocol complexity, particularly when knowing and satisfying in real-time the profile of each client of the audience, such as personalized content, interactions, billing, Quality-of-Service (QoS), etc. Thus, the multicast protocol suffers from deployment problems and complexity. Also, there is no efficient software to support such deployment and implementation. Usually, the few networks that use multicast protocols are complex and expensive, and they are also difficult to install and maintain.
[009] Therefore, there is a need for overcoming the above discussed problems related to the large size of currently broadcasting networks and the use of the unicast and multicast protocols. Accordingly, a cooperative system and method for providing, in a distributed manner, personalized streaming content to users/clients using the IP protocol are sought.
OBJECTS OF THE INVENTION
[0010] An object of the present invention is therefore to provide a cooperative system and method for duplicating and delivering media streams in a distributed manner.
SUMMARY OF THE INVENTION
[0011] More specifically, in accordance with a first aspect of the present invention, there is provided a system for duplicating and delivering at least one media stream, requested by end users, from at least one source of media streams to the end users using a unicast protocol. This system comprises a first means for duplicating the at least one requested media stream to produce a plurality of first duplicated media streams, and, a plurality of second means, each in communication with the first means, for receiving one of the first duplicated media streams and for duplicating the one first duplicated media stream to produce second duplicated media streams delivered to the end users, wherein the first means and the plurality of second means form a tree-type distributed network for multi-stage duplication and delivery of the at least one requested media stream to the end users.
[0012] According to a second aspect of the present invention, there is provided a system for duplicating and delivering at least one media stream, requested by end users, from at least one source of media streams to the end users using a unicast protocol. This system comprises a main streaming accelerator for duplicating the at least one requested media stream to produce a plurality of first duplicated media streams, and, a plurality of regional streaming accelerators, each in communication with the main streaming accelerator, for receiving one of the first duplicated media streams and for duplicating the one first duplicated media stream to produce second duplicated media streams delivered to the end users, wherein the main streaming accelerator and the plurality of the regional streaming accelerators form a tree- type distributed network for multi-stage duplication and delivery of the at least one requested media stream to the end users.
[0013] Also, according to a third aspect of the present invention, there is provided a method for duplicating and delivering at least one media stream, requested by end users, from at least one source of media streams to the end users using a unicast protocol. This method comprises a first duplication, through a main streaming accelerator, of the at least one requested media stream to produce a plurality of first duplicated media streams, a first delivery of the first duplicated media streams to a plurality of regional streaming accelerators, each in communication with the main streaming accelerator, a second duplication, through the plurality of regional streaming accelerators, of the first duplicated media streams received from the main streaming accelerator to produce second duplicated media streams, and, a second delivery of the second duplicated media streams to the end users through a communication network and using a unicast protocol, wherein the first and second duplications and deliveries of the at least one requested media stream form a tree-type distributed multi-stage duplication and delivery of the at least one requested media stream to the end users.
[0014] The foregoing and other objects, advantages and features of the present invention will become more apparent upon reading of the following non-restrictive description of an illustrative embodiment thereof, given by way of example only with reference to the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[0015] In the appended drawings:
[0016] Figures 1a and 1b are schematic views of a current known headend broadcasting model;
[0017] Figure 2 is a schematic view of a headend broadcasting model, comprising a system for duplicating and delivering media streams in a distributed manner, according to the non-restrictive illustrative embodiment of the present invention;
[0018] Figure 3 is a schematic view of a broadcasting network according to the non-restrictive illustrative embodiment of the present invention;
[0019] Figure 4 is a schematic block diagram of a main system for duplicating and delivering media streams in a distributed manner according to the non-restrictive illustrative embodiment of the present invention; and [0020] Figure 5 is a schematic block diagram of a regional system for duplicating and delivering media streams in a distributed manner according to the non-restrictive illustrative embodiment of the present invention.
DETAILED DESCRIPTION
[0021] Generally stated, the non-restrictive illustrative embodiment of the present invention comprises a plurality of systems for duplicating media streams, which are implemented in a tree-type structure for delivering the media streams in a distributed manner over a large network. Each such system can be an embedded piece of software implemented directly in a network processor, for rationalizing and accelerating non-intrusively the delivery of streaming media to remote users. It should be noted that each system for duplicating and delivering media streams will be referred to as Cooperative Streaming Accelerator (CSA) hereinbelow.
[0022] Implementing an infrastructure, comprising the plurality of
CSAs1 according to the non-restrictive illustrative embodiment of the present invention, allows for lowering deployment costs and operating expenses, and improving streaming Quality-of-Service (QoS).
[0023] Furthermore, the non-restrictive illustrative embodiment of the present invention allows for a huge and distributed deployment of media streaming delivery network using a unicast infrastructure such as for an IP TV private network that offers TV channels over DSL (Digital Subscriber Line) access.
[0024] The concept of the non-restrictive illustrative embodiment of the present invention is to better distribute and thus accelerate the media streaming delivery over the network. When using only one system for duplicating and delivering media streams, all the duplicated media streams go through the same path in the network until the last segment of the network where they go through different paths to reach the destination of each user.
[0025] However, when a plurality of systems for duplicating and delivering the media streams is used, configured with a main CSA working with a plurality of regional CSAs connected thereto, only the media streams requested by a region go through the main path (from the main CSA to that particular regional CSA). When the media streams arrive at the regional CSA, they are then duplicated for all the destinations requesting the media streams included in that particular region. Since the requested media streams are duplicated only for the concerned region, the network efficiency and capacity are increased.
[0026] Generally, the regional CSA is implemented as close as possible to the user end for decreasing transport and deployment costs.
[0027] For example, a situation where the non-restrictive illustrative embodiment of the present invention better accelerates the duplication and delivery of media streams is when a user from a new destination requests a specific media stream. In this case, the regional CSA, to which the user belongs, provides the requested media stream directly to this new user, without requesting it again from the main CSA, since the media stream has already been duplicated and forwarded by the main CSA. Furthermore, within this situation, it is also possible to improve the streaming Quality-of-Service (QoS) as will be described hereinbelow. [0028] The non-restrictive illustrative embodiment of the present invention uses standard networking equipments and is compatible with the Internet Protocol (IP). The non-restrictive illustrative embodiment of the present invention also uses standard IETF (Internet Engineering Task Force) protocols and it is not bound to any streaming audio or video CODEC; however, it can further use proprietary protocols, specific to different elements in the network. Furthermore, the non-restrictive illustrative embodiment of the present invention takes advantage of both unicast and multicast protocols.
[0029] Now, turning to Figures 1a and 1b, a headend segment of a broadcasting network is illustrated. First, a current model 10 of the headend segment is shown in Figure 1a. The model 10 comprises a source of media 12 to be broadcast. The source of media 12 can be a video camera, a camera, a satellite, etc. The broadcast media are then received in a plurality of streamers 14. The number of streamers such as 14 depends on the number of end users who request such media streams to be delivered to them. The larger is the number of end users, the larger is the number of streamers 14 required for responding to the end users' requests. Therefore, it can become very challenging in terms of infrastructure when the number of end users in the network is indeed large or increasing.
[0030] The plurality of streamers 14 is connected to a storage switch
16 which is itself connected to a plurality of storage or memory elements 18 for providing additional data and information used by the plurality of streamers 14. The plurality of streamers 14 is also connected to a load balancer 20 which acts to distribute, evenly or according to some preset proportions, the media streams over a network 22. The media streams coming from the streamers 14 are delivered to the end users (not shown) through the network 22. [0031] In order to address the issue of complex/large infrastructure when a large number of users are connected to a broadcast network, Figure 1b illustrates a model 30 of a headend segment of the broadcasting network according to the non-restrictive illustrative embodiment of the present invention. The model 30 is very similar to the model 10 in Figure 1a. However, the plurality of streamers 14 has been reduced to one streamer 32 or a few streamers 32 (two (2) in the example of Figure 1b) connected to a main cooperative streaming accelerator (CSA) 34, which is in turn connected to the delivery network 22. The CSA 34 allows for duplicating media streams using the unicast protocol, for instance. The model 30 is much lighter in terms of the number of streamers such as 32 and thus in terms of infrastructure, and is easier to handle, maintain and deploy, while being able to support a large number of end users. Furthermore, the CSA 34 is compatible with the current IP equipments and can be easily integrated into existing network infrastructures. The rest of the model 30 of the headend remains the same as described hereinabove with reference to Figure 1a, with the same numerals corresponding to the same elements in Figure 1a and Figure 1b.
[0032] Now turning to Figure 2, a distributed infrastructure of the broadcasting network 40 is described.
[0033] A main CSA 44 is connected to some streamers 42, such as video servers, which constitute the source of the streaming media. The main CSA 44 is further connected to two regional CSAs 46 and 48, representing and taking care of respectively a region A and a region B, in this non-limitative example. Although this is not specifically described, the main CSA 44 can be connected to a plurality of regional CSAs and each regional CSA can be connected to a plurality of sub-regional CSAs, and so forth. [0034] The regional CSA 46 is connected to a router 50 using, for example, an ATM (Asynchronous Transfer Mode) or Ethernet network, for delivering to end users 52 the media streams requested by them. The end users 52 are located inside region A. The requested media streams enter the home of each end user 52 through an access element 51 such as a DSLAM (Digital Subscriber Line Access Multiplexer).
[0035] The regional CSA 48 is connected in a same manner as the regional CSA 46. Indeed, the regional CSA 48 is connected to a router 54 using, for example, an ATM (Asynchronous Transfer Mode) network or an Ethernet network, for delivering to end users 56 media streams requested by them. The end users 56 are located inside region B. The media streams enter the home of each end user 56 through an access element 55 such as a DSLAM (Digital Subscriber Line Access Multiplexer).
[0036] It should be noted that in this example, the main CSA 44 sends only one copy of the requested media streams to each regional CSA 46 and 48. Each regional CSA 46 and 48 then, in turn, duplicates the received media streams and sends them over its respective network to the end users belonging to its own region (region A and B respectively), according to requests from the end users for these media streams.
[0037] Generally stated, a request process for a media stream from an end user is as follows. When the end user wants to listen or watch a piece of music or video, he/she sends a request to the regional CSA to which he/she belongs to. If the user belongs to the region A, then his/her request is sent to the regional CSA 46. If he/she belongs to the region B, then his/her request is sent to the regional CSA 48. Then, the regional CSA 46 or 48 communicates with the main CSA 44 for requesting the media streams corresponding to the desired piece of music or video. Finally, the main CSA 44 communicates with the streaming servers 42 for accessing the requested media streams, which will be then forwarded from the main CSA 44 to the regional CSA 46 or 48 that made the request and finally from the regional CSA 46 or 48 to the specific end user.
[0038] Now, turning to Figure 3, a distributed broadcasting network
60 is described in more detail. As a non-limitative example, such broadcasting network can be an internet TV broadcasting network.
[0039] The distributed network 60 comprises a main office 62 connected, on one side, to a regional office 64, through a network 66, which can be, for example, an optical network using SONET (Synchronous Optical Networking). On the other side, the main office 62 is connected to different receiving systems for receiving broadcast media, such as a satellite 68 or an antenna 70, as illustrated in Figure 3. The receiving systems can include either analog or digital devices.
[0040] Furthermore, the main office 62 can be directly connected to a source server 72, for example an interactive content authority server.
[0041] More specifically, the main office 62 comprises a main CSA
74 and a plurality of elements connected thereto.
[0042] For example, an encoder 80 is connected to the input of the main CSA 74, for converting analog media streams, received from the analog receiving systems such as 68 and 70, into digital media streams and for encoding them. However, before entering the encoder 80, the media streams coming from the receiving systems 68 and 70 are first processed through a decoder 76 and a demodulator 82, respectively, which are both connected as input to the encoder 80. The decoder 76 can be an integrated receive decoder for decoding the analog media streams coming from the satellite 68. The demodulator 78 allows for demodulating the analog modulated media streams received from the antenna 70.
[0043] Also, the main CSA 74 can receive digital media streams from the source server 72, for example an interactive content server, through a streaming server 82, interposed between the server 72 and the main CSA 74.
[0044] The main CSA 74 performs a first duplication of the media streams and delivers them to the regional office 64 over the network 66 through a router 84 and an ATM switch 86. The router 84 can be a router of layer 3 of OSI (Open Systems Interconnections), using ATM or Ethernet, for example. The switch 86 forwards, in layer 2 of OSI, the media streams to the regional office 64, which will take care of a second duplication of the media streams.
[0045] The router 84 can be also connected to a middleware server
88 used for connecting together different software and/or applications implemented in the different, above-mentioned elements of the main office 62.
[0046] Finally the switch 86 is connected to the network 66, which uses SONET for example. The network 66 allows the main office 62 to route the media streams and communicate with the regional office 64. However, the regional office 64 is not necessarily directly connected to the main office 62. Indeed, VPN (Virtual Private Network) connections can be used between the main office 62 and the regional office 64, if requested by an operator. To facilitate integration of the VPN technologies, the main office 62 can implement different VPN tunneling technologies. [0047] Generally stated, the main CSA 74 controls the whole system over the distributed network 60, meaning that all the configuration and key features are concentrated in the main CSA 74. Furthermore, the main CSA 74 has the responsibility of the reservation of path between the main office 62 and each regional office such as 64 connected thereto. Indeed, a plurality of regional offices such as 64 can be connected to the main office 62 through the SONET network 66. Also, all the bandwidth reservation in the context of QoS (Quality of Service) delivery is managed by the main office 62, which will be described hereinbelow.
[0048] More specifically, referring to Figure 4, the main CSA 74 is described.
[0049] The main CSA 74 comprises a processing element
(processor) 120 and a forwarding element 122. The processing element 120 communicates with the forwarding element 122 through a private network 124, which can be a base channel for example.
[0050] The processing element 120 comprises a Real-Time
Streaming Protocol (RTSP) proxy 126 for handling users' requests for media streams or regional CSAs' requests and media streams coming from the streaming server 82 or the encoder 80 in Figure 3. Also, the proxy 126 allows for authentication of the users requesting media streams.
[0051] Furthermore, the main CSA 74 comprises a MVIF (Multiple
Command Virtual Interface) communication driver 128 for providing an interface that is used to exchange data packets between the processing element 120 and the forwarding element 122 over the private network 124. [0052] The processing element 120 also comprises a bandwidth manager 130 for taking care of the bandwidth reservation and QoS (Quality of Service) in the distributed network 60. Indeed, to deliver exceptional quality of media streams to an end user, bandwidth management between the main office 62 and the regional office 64 must be enforced. Bandwidth management strategies must be offered and easy to handle for an outside operator to manage correctly the distributed network 60.
[0053] For example, in the case when the operator wants to minimize a reserved bandwidth to a minimum needed, dynamic bandwidth reservation should be used. In this case, the bandwidth manager 130 of the main CSA 74 can negotiate the required bandwidth when new media streams are sent to a regional office such as 64 so that a minimum and average bandwidth are guaranteed. However, in case the maximum bandwidth allowed is reached or exceeded, adaptive buffering in the regional office 64 should be provided.
[0054] The processing element 120 further comprises a packet marking element 132, which allows for identifying each data packet from the requested media streams and for specifying a certain QoS. The packet marking element 132 can use technologies, such as ToS (Terms of Service) from layer 3 of OSI, and pBits (Priority bits) from layer 2 of OSI, to characterize real-time data packets. It should be noted that packet marking can be different for each media stream and regional office 64 and a combination thereof. Indeed, each media stream can have a different pricing, depending, for example, on the QoS guaranteed to each user. Therefore, prioritization in terms of bandwidth will be performed in consequence. The marking of the packets is modified in regards to the pBits and ToS in order to reflect different bandwidth negotiations. Furthermore, generally, packet marking is not constant from one network to another. Therefore, the packet marking element 132 also offers a multitude of configuration options to the operator.
[0055] It should be pointed out that the packet marking element 132 generally identifies each packet and decides which marking strategies or appropriate marking should be used for each packet. However, a stream modifier 148, as illustrated in Figure 4, takes care of changing each packet according to the appropriate marking decision and/or strategy selected by the packet marking element 132.
[0056] The processing element 120 also includes an alarm system
134, which allows for centralizing and collecting all the distributed alarms generated across the network 60. The alarm system 134 can report the collected alarms to an outside interface, such as a remotely connected computer controlled by the operator, using for example a standard protocol such as SNMP (Simple Management Network Protocol).
[0057] The quality of different links in the network 60 is measured with the user experience quality, a measure based on the user's experience such as MOS (Mean Opinion Score), and should be available through simple interfaces. This will allow the operator to take preventive measures when the main office 62 detects bottlenecks or network errors.
[0058] In addition, the main CSA 74 comprises a statistics reporter
136, which allows for gathering all the statistics about the network 60. For that purpose, it receives periodically all the statistics from the regional office 64. Then, the statistics reporter 136 aggregates and stores them in a reliable location, such as a memory unit (not shown). A database of the collected statistics can be created for further uses and queries and easier management. It should be noted that an outside interface should be provided for searching or exporting the aggregated statistics.
[0059] Finally, the processing element 120 comprises a transport controller 138 for managing the transport of media streams. The transport protocol can support both unicast and multicast protocols.
[0060] In the case of the unicast protocol, a copy of the requested media stream is sent from the main CSA 74 to each regional office such as 64, requesting for that media stream.
[0061] In the case of the multicast protocol, the main CSA 74 sends out only one media stream propagated through the network 60 to reach every regional office such as 64 after at least one regional office has requested that media stream.
[0062] Of course, the configuration and implementation of the transport protocol is a matter of choice that can be made by the operator according to the requirements of a given application, for example.
[0063] The transport controller 138 further actively supervises the link between the main office 62 and each regional office such as 64. The transport controller 138 has a fast link failure detection function. If a link failure is detected by the transport controller 138, the media streams are switched over to a backup route implemented in the network 60 (not shown in Figure 3). As an example of detection function, the regional office 64 can send a link status information report to the main office 62 every 200 ms. This report contains, for instance, the number of packets received in the last interval. If no packets are received by the main office 62 after 3 intervals of 200 ms, the transport controller 138 will switch the requested media streams to the backup route for delivery to the end users.
[0064] It should be noted that the level of communications between the main office 62 and the regional office 64 is kept to a minimum in order to optimize the link capacity between the main office 62 and the regional office 64. The latter term "communications" mainly concerns the cases when a new media stream is requested by an end user and when the regional office 64 reports statistics to the main office 62.
[0065] Referring back to Figure 4, the forwarding element 122 of the main CSA 74 comprises a network processing unit (NPU) 140 and a host 144.
[0066] The NPU 140 mainly takes care of the duplication process
(unicast protocol) of the media streams requested by a regional office for example. For that purpose, the NPU 144 comprises a duplicator 146, a receiver/sender 147, the stream modifier 148 as mentioned above, a Real-Time Control Protocol (RTCP) handler 149, a packet sender 151 , and a local packet handler 153.
[0067] First, the receiver/sender 147 receives the media streams coming from the streaming server such as 82 of Figure 3. Then, the receiver/sender 147 forwards the media streams to the duplicator 146, which first performs a flow matching of the received media streams. If the media streams are identified, then they are duplicated by the duplicator 146 (unicast protocol). If the media streams cannot be identified, then, they are sent to the local packet handler 153 for further processing with the help of the processing element 120 for example. The duplicated packets which will be subsequently forwarded to the regional office 64 are called "forward packets", in contrast to the local packets, which could not be identified and therefore need further processing.
[0068] The duplicated media streams are sent from the duplicator
146 to the stream modifier 148 for modifying the duplicated media streams according to each user's destination. The information concerning each user is looked up in tables 150 contained in the host 144. Finally, the duplicated media streams are sent out over the network 66 through the packet sender 147.
[0069] The NPU 140 also takes care of RTCP (Real-Time Control
Protocol) handling through the RTCP handler 149. The reception of a RTCP receiver report is done directly at the NPU level via the RTCP handler 149. The last values of this report will be kept for further processing. The RTCP receiver report collects/gathers cumulative packet drop or loss information, which constitutes an indication of the quality of a link. Therefore, one easy way to detect problems in a media stream of data packets is to use RTCP receiver reports. The values given by this report can form statistics which are then analyzed and compared to a threshold of packet drop for preventive purposes. For example, if the analyzed value is below a certain QoS threshold, then adjustment of the QoS drop function is necessary in order to provide an acceptable quality of the link. All abnormal data packets should be flagged to a controller 152 in the host 144 so that a network dynamic down sampling adjustment can be activated, for example.
[0070] The host 144 comprises the above mentioned controller 152 for managing the execution of user commands, such as adding, removing or fetching a media stream. The controller 152 has a control protocol for allowing the host 144 to send requests and receive responses. [0071] Now, turning back to Figure 3, the regional office 64 is described. It comprises a regional CSA 90, connected to a router 94. The router 94 is connected to the network 66 through an ATM switch 92. The regional CSA 90 receives the requested media streams from the main CSA 74 of the main office 62, through the network 66, the ATM switch 92 and the router 94. The regional CSA 90 duplicates the requested media streams and then forwards the duplicated requested media streams to the end users 96, through the router 94 and respective DSLAM 104. Each user's end comprises, for example, a computer 98 and/or a television 100 for viewing or listening to the received requested broadcast media streams. The computer 98 or television 100 is connected to a DSL (Digital Subscriber Line) modem 102 for accessing the duplicated media streams provided through the DSLAM 104 of the regional office 64. However, other types of connections are possible, such as radio frequencies, wireless links, etc.
[0072] Generally stated, the regional office 64 is responsible for authentication of the users 96 and final duplication of the requested media streams, which is performed by the regional CSA 90 and will be described hereinbelow.
[0073] Turning to Figure 5, the regional CSA 90 comprises a processing element (processor) 160 and a forwarding element 162, which are connected to each other through a private network 164, such as a base channel.
[0074] The processing element 160 comprises a RTSP proxy 166 for intercepting and processing the requests from the end users 96 in Figure 3.
[0075] More specifically, the proxy 166 comprises a user request handler 168 for processing users' requests. It also comprises a user authentication element 170 for validating users' identity. This function is critical especially in applications such as IP TV where the network 60 is a private network and therefore each end user must be authenticated and identified. Finally, to respond to the users' requests, the proxy 166 comprises a streamer handler 172 which communicates with a streaming server (not shown) or the main CSA 74 for fetching the requested media streams for the user 96.
[0076] The processing element 160 also has a MVIF driver 174 for establishing a communication interface between the processing element 160 and the forwarding element 162 over the private network 164.
[0077] The processing element 160 further comprises a QoS element 176. The QoS element 176 allows for supporting advanced QoS functions, specially during the last segment of the network where the requested media streams are delivered to the end users 96. The QoS element 176 can modify or correct, through a stream modifier 188, each packet's marking in a media stream, which was performed by the stream modifier 148 under the control of the packet marking element 132 of the main CSA 74 of Figure 4. Indeed, each media stream can be marked differently for each user 96. The packet marking strategies are dependent on the bundle or package deal offered to each user 96 by a network operating company, such as a telephone company or an ISP (Internet Service Provider) for example.
[0078] Also, the processing element 160 comprises a stream quality element 178. The stream quality element 178 allows for an early detection of a problem in the connection/link between the main office 62 and the regional office 64. If packets in the media stream start to be lost and dropped, a flag will be sent to the user 96, as well as a request for an immediate action to be activated. [0079] It should be noted that the media streams circulating in the distributed network 60 are self-monitoring and self-testing for reporting quality degradation (i.e. negative quality variations) to the regional office 64. The regional office 64 further evaluates the quality of media streams passing through itself. The evaluation is derived from a user experience quality, using MOS (Mean Opinion Score). To save network bandwidth between the main office 62 and the regional office 64, those self-testing results are sent to the main office 62 only under a request explicitly expressed by an operator, for example.
[0080] Finally, the regional CSA 90 of Figure 5 has a distributed content entry 180. To ease the network deployment and outside bandwidth reservation cost, so as to minimize traffic coming from another network, media streams can be terminated in different CSAs. For example, a regional office such as 64 can receive the requested media streams directly from a streaming server such as 82, without going through the main office 62. This feature gives opportunities to operators for distributing geographically different media stream entries in the network 60.
[0081] The media streams received from the distributed content entry can be used directly at the regional office 64 but also they can be copied and forwarded to the main office 62 for "regular" processing (such as duplication). The main office 62 can then distribute the duplicated media streams to other regional offices requesting for those media streams. In such a case, the same network bandwidth management as above described should be applied between the regional office 64 and the main office 62. However, the main office 62 is still in charge of making the reservation of the necessary bandwidth. [0082] The forwarding element 162 of the regional CSA 90 is very similar to the forwarding element 140 of the main CSA 74. The forwarding element 162 takes care of the duplication process of the media streams requested by the users 96 for the last section of the delivery network. It comprises a NPU 182 and a host 184. The NPU comprises a receiver/sender 185, a duplicator 186, the stream modifier 188 as mentioned above, a RTCP handler 190, a packet sender 192, and a local packet handler 194. All those elements are similar to those in the forwarding element 140. Therefore, they will not be described in further details.
[0083] In each CSA, whether it is a main CSA such as 74 or a regional CSA such as 90, additional processing elements (processors) can be found for implementing further functionalities and services.
[0084] It should be noted that even though in Figure 3, the network
60 is described as having one main office connected to one regional office, the main office can be connected to a plurality of regional offices identical or similar to the regional office 64.
[0085] Also, in streaming applications, the Real-Time Protocol (RTP) is generally used for the communications between the different elements of the network 60. However, it is within the scope of the present invention to use other protocols.
[0086] Although the present invention has been described in the foregoing specification by means of a non-restrictive illustrative embodiment, this illustrative embodiment can be modified at will within the scope of the appended claims without departing from the spirit and nature of the subject invention.

Claims

WHAT IS CLAIMED IS:
1. A system for duplicating and delivering at least one media stream, requested by end users, from at least one source of media streams to the end users using a unicast protocol, the system comprising: a first means for duplicating the at least one requested media stream to produce a plurality of first duplicated media streams; and a plurality of second means, each in communication with the first means, for receiving one of said first duplicated media streams and for duplicating said one first duplicated media stream to produce second duplicated media streams delivered to the end users; wherein the first means and the plurality of second means form a tree- type distributed network for multi-stage duplication and delivery of the at least one requested media stream to the end users.
2. A system for duplicating and delivering at least one media stream, requested by end users, from at least one source of media streams to the end users using a unicast protocol, the system comprising: a main streaming accelerator for duplicating the at least one requested media stream to produce a plurality of first duplicated media streams; and a plurality of regional streaming accelerators, each in communication with the main streaming accelerator, for receiving one of said first duplicated media streams and for duplicating said one first duplicated media stream to produce second duplicated media streams delivered to the end users; wherein the main streaming accelerator and the plurality of the regional streaming accelerators form a tree-type distributed network for multi-stage duplication and delivery of the at least one requested media stream to the end users.
3. A system as defined in claim 2, wherein the main streaming accelerator comprises: a processor for receiving and processing a request of the at least one media stream from the end users; a receiver for receiving the at least one requested media stream from the at least one source of media streams; a duplicator for duplicating the at least one requested media stream received by the receiver to produce the plurality of first duplicated media streams; and a sender of the first duplicated media streams to the plurality of regional streaming accelerators, through a communication network and using the unicast protocol.
4. A system as defined in claim 3, wherein the processor comprises a plurality of processors for implementing a plurality of functionalities and services in the main streaming accelerator.
5. A system as defined in claim 3, wherein the processor further comprises a Real-Time Streaming Protocol proxy for handling the request of the at least one media stream from the end users.
6. A system as defined in claim 2, wherein the main streaming accelerator comprises an embedded piece of software implemented in a network processor.
7. A system as defined in claim 3, wherein the main streaming accelerator further comprises a network processor to which the duplicator, sender and receiver are connected, for controlling media stream duplication in the main streaming accelerator.
8. A system as defined in claim 7, wherein the main streaming accelerator further comprises a private network interconnecting the processors for communication therebetween.
9. A system as defined in claim 2, wherein the main streaming accelerator comprises a bandwidth manager for managing and reserving transmission bandwidth for the plurality of first duplicated media streams.
10. A system as defined in claim 2, wherein the main streaming accelerator further comprises a packet marking element for identifying data packets of the at least one requested media stream and for specifying a certain Quality of Service.
11. A system as defined in claim 2, wherein the main streaming accelerator further comprises an alarm system for gathering alarms throughout a network.
12. A system as defined in claim 2, wherein the main streaming accelerator further comprises a transport controller for controlling transmission and delivery of the plurality of first duplicated media streams to the plurality of regional streaming accelerators.
13. A system as defined in claim 3, wherein each of the plurality of regional streaming accelerators comprises: a processor for receiving and processing a request of the at least one media stream from the end users; a receiver for receiving one of the plurality of first duplicated media streams from the main streaming accelerator; a duplicator for duplicating said one received first duplicated media stream from the main streaming accelerator to produce second duplicated media streams; and a sender of the second duplicated media streams to the end users, through a communication network and using the unicast protocol.
14. A system as defined in claim 13, wherein the processor of each regional streaming accelerator comprises a plurality of processors for implementing a plurality of functionalities and services in the regional streaming accelerator.
15. A system as defined in claim 13, wherein the processor of each regional streaming accelerator further comprises a Real-Time Streaming Protocol proxy for handling the request of the at least one media stream from the end users.
16. A system as defined in claim 13, wherein each regional streaming accelerator further comprises a network processor to which the duplicator, sender and receiver are connected, for controlling media stream duplication in the regional streaming accelerator.
17. A system as defined in claim 16, wherein each regional streaming accelerator further comprises a private network interconnecting the processors for communication therebetween.
18. A system as defined in claim 15, wherein the Real-Time Streaming Protocol proxy further performs authentication of the end users requesting the at least on media stream.
19. A system as defined in claim 18, wherein, to authenticate the end users, the Real-Time Streaming Protocol proxy validates passwords.
20. A system as defined in claim 18, wherein, to authenticate the end users, the Real-Time Streaming Protocol proxy further validates IP addresses of the end users.
21. A system as defined in claim 16, wherein the network processor comprises a stream modifier for modifying the second duplicated media streams according to session information of the corresponding requesting end users.
22. A system as defined in claim 13, wherein the duplicator of each regional streaming accelerator performs identification on the first duplicated media streams received from the main streaming accelerator by using a 5- tupple matching method.
23. A system as defined in claim 13, wherein the duplicator of each regional streaming accelerator duplicates the first duplicated media streams received from the main streaming accelerator up to 1 044 225 copies.
24. A system as defined in claim 2, wherein each regional streaming accelerator comprises a main streaming accelerator connected to other regional streaming accelerators.
25. A method for duplicating and delivering at least one media stream, requested by end users, from at least one source of media streams to the end users using a unicast protocol, the method comprising: a first duplication, through a main streaming accelerator, of the at least one requested media stream to produce a plurality of first duplicated media streams; a first delivery of the first duplicated media streams to a plurality of regional streaming accelerators, each in communication with the main streaming accelerator; a second duplication, through the plurality of regional streaming accelerators, of the first duplicated media streams received from the main streaming accelerator to produce second duplicated media streams; and a second delivery of the second duplicated media streams to the end users through a communication network and using a unicast protocol; wherein the first and second duplications and deliveries of the at least one requested media stream form a tree-type distributed multi-stage duplication and delivery of the at least one requested media stream to the end users.
26. A method as defined in claim 25, further comprising identifying the at least one requested media stream in the at least one source of media streams.
27. A method as defined in claim 26, wherein identifying the at least one requested media stream comprises using a 5-tupple matching method.
28. A method as defined in claim 25, further comprising authenticating the end users requesting the at least one media stream.
29. A method as defined in claim 28, wherein authenticating the end users comprises validating passwords.
30. A method as defined in claim 28, wherein authenticating the users comprises validating IP addresses of the end users.
31. A method as defined in claim 25, further comprising gathering statistics on a quality of a network.
32. A method as defined in claim 25, further comprising using Real-Time Streaming Protocol communications between the end users, the main streaming accelerator and the plurality of regional streaming accelerators.
33. A method as defined in claim 25, wherein the first and second duplications comprise controlling the first and second duplications through a network processor.
34. A method as defined in claim 25, wherein the second duplication of the first duplicated media streams comprises modifying the second duplicated media streams according to a respective session information of the corresponding requesting end users.
35. A method as defined in claim 34, wherein the second delivery of the second duplicated media streams to the corresponding requesting end users comprises delivering the requested media streams using their respective modified session information.
36. A method as defined in claim 25, wherein the first and second duplications comprise duplicating the at least one media stream up to 1 044 225 times.
37. A method as defined in claim 25, wherein the second delivery of the second duplicated media streams to the corresponding requesting end users using the unicast protocol comprises delivering the second duplicated media streams through an ultra fast network.
38. A method as defined in claim 25, further comprising managing and reserving transmission bandwidth for the first and second duplicated media streams.
39. A method as defined in claim 25, further comprising marking and specifying data packets of the at least one requested media stream with a certain Quality of Service.
40. A method as defined in claim 25, further comprising gathering alarms throughout a network.
41. A method as defined in claim 25, further comprising controlling transmission and delivery of the first and second duplicated media streams.
PCT/CA2008/000183 2007-01-30 2008-01-29 Cooperative system and method for duplicating and delivering media streams in a distributed manner. WO2008092250A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US89812707P 2007-01-30 2007-01-30
US60/898,127 2007-01-30

Publications (1)

Publication Number Publication Date
WO2008092250A1 true WO2008092250A1 (en) 2008-08-07

Family

ID=39673600

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CA2008/000183 WO2008092250A1 (en) 2007-01-30 2008-01-29 Cooperative system and method for duplicating and delivering media streams in a distributed manner.

Country Status (1)

Country Link
WO (1) WO2008092250A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013071978A1 (en) * 2011-11-18 2013-05-23 Telefonaktiebolaget Lm Ericsson (Publ) Data distribution platform

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020161910A1 (en) * 2001-04-30 2002-10-31 David Bill Generating multiple data streams from a single data source
US20050259682A1 (en) * 2000-02-03 2005-11-24 Yuval Yosef Broadcast system
US6989856B2 (en) * 2003-10-08 2006-01-24 Cisco Technology, Inc. System and method for performing distributed video conferencing
US7133922B1 (en) * 2000-08-07 2006-11-07 The Hong Kong University Of Science And Technology Method and apparatus for streaming of data
US20060277316A1 (en) * 2005-05-12 2006-12-07 Yunchuan Wang Internet protocol television
US20070058629A1 (en) * 2005-09-09 2007-03-15 Luft Siegfried J Application driven fast unicast flow replication

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050259682A1 (en) * 2000-02-03 2005-11-24 Yuval Yosef Broadcast system
US7133922B1 (en) * 2000-08-07 2006-11-07 The Hong Kong University Of Science And Technology Method and apparatus for streaming of data
US20020161910A1 (en) * 2001-04-30 2002-10-31 David Bill Generating multiple data streams from a single data source
US6989856B2 (en) * 2003-10-08 2006-01-24 Cisco Technology, Inc. System and method for performing distributed video conferencing
US20060277316A1 (en) * 2005-05-12 2006-12-07 Yunchuan Wang Internet protocol television
US20070058629A1 (en) * 2005-09-09 2007-03-15 Luft Siegfried J Application driven fast unicast flow replication

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013071978A1 (en) * 2011-11-18 2013-05-23 Telefonaktiebolaget Lm Ericsson (Publ) Data distribution platform
CN104067563A (en) * 2011-11-18 2014-09-24 瑞典爱立信有限公司 Data distribution platform
US20150039635A1 (en) * 2011-11-18 2015-02-05 Telefonaktiebolaget L M Ericsson (Publ) Data distribution platform
CN104067563B (en) * 2011-11-18 2017-10-31 瑞典爱立信有限公司 Data distribution platform
US10558717B2 (en) 2011-11-18 2020-02-11 Telefonaktiebolaget Lm Ericsson (Publ) Data distribution platform

Similar Documents

Publication Publication Date Title
US20020023164A1 (en) Method and apparatus for client-side authentication and stream selection in a content distribution system
EP2034731A1 (en) Multicast service processing method and access equipment
US20070253409A1 (en) Method for Realizing the Multicast Service
CN101656872B (en) Method and system for reducing time delay of switching channels of network TV
US20030099202A1 (en) System and method for distribution of data packets utilizing an intelligent distribution network
EP2817971B1 (en) Network controlled streaming
US9853718B2 (en) Dynamically adjusting the transmission mode in a satellite communication system
WO2009146621A1 (en) Data processing method, broadband network gateway, policy controller and access device
JP2006246395A (en) Multicast proxy device
US20060098668A1 (en) Managing membership within a multicast group
US7549160B1 (en) Method and system for authenticated access to internet protocol (IP) multicast traffic
EP3061225B1 (en) Multicast transmission over bonded broadband
US20120102188A1 (en) Mechanism for tracking host participation in multicast groups
JP2015510301A (en) System and method for combining multiple communication links
WO2009021460A1 (en) Method for reporting implement result of policy, network communication system and equipment
EP2351300B1 (en) Method and system for establishing digital media streams
US7483388B2 (en) Method and system for sending a multimedia stream in an IP multicast network
EP2567510B1 (en) Source selection by routers
US8239909B2 (en) Method of securing resources in a video and audio streaming delivery system
WO2008046336A1 (en) A system and method for realizing distributed access control in multicast service
WO2008092250A1 (en) Cooperative system and method for duplicating and delivering media streams in a distributed manner.
US20100002779A1 (en) Mechanism for the management of receivers/decoders connections
EP1793552A1 (en) Communications network and method for retrieving end-user information
Huijuan et al. Improvement Approach of IPTV Bearer Network
Vuong et al. CHIPS: An End-System Multicast Framework for P2P Media Streaming

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08706330

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08706330

Country of ref document: EP

Kind code of ref document: A1