Abstract:
To reduce overloading of broadband networks, unicast streams containing the same live Internet content can be identified. Then unicast streams may be combined into a multicast stream.

Description:
BACKGROUND 
       [0001]    This relates generally to providing live streaming content over the Internet. 
         [0002]    Internet live content streaming, including real-time coverage of popular events, may result in a large number of viewers trying to watch the same lineup of streaming content at the same time. For example, a popular sports event may garner a large number of viewers that tax limited bandwidth distribution systems. Generally, these viewers each establish a unicast stream between the content provider and their receiver. The ensuing large number of unicast streams may clog the network and the users may encounter poor quality streaming. 
         [0003]    Unlike on-demand based content streaming, Internet live content streaming poses unique challenges to a network operator&#39;s bandwidth management strategy because many live events draw huge numbers of users, clogging network bandwidth. Since the live content streaming sources come from the Internet, rather than the multicast/broadcast services hosted by the network operator, the broadcasting infrastructure within the operator&#39;s network may not effectively deal with such situations. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0004]    Some embodiments are described with respect to the following figures: 
           [0005]      FIG. 1  is a schematic depiction of one embodiment of the present invention; 
           [0006]      FIG. 2  is a flow chart for one embodiment of a streaming gateway; 
           [0007]      FIG. 3  is a schematic depiction of one embodiment of a streaming gateway; 
           [0008]      FIG. 4  is a flow chart for one embodiment for a mobile station; 
           [0009]      FIG. 5  is a system depiction for one embodiment of a mobile station; 
           [0010]      FIG. 6  is a flow chart for a base station according to one embodiment; and 
           [0011]      FIG. 7  is a schematic depiction of a base station according to one embodiment. 
       
    
    
     DETAILED DESCRIPTION 
       [0012]    Internet live content streams may be delivered to wireless mobile stations (MS) in the form of multiple streams of unicast traffic. Unicast traffic is traffic which is directed from one originator to one, and only one, receiver. In the case of popular television coverage of sporting events, a large number of interested viewers can create a large number of streams of unicast traffic trying to flow through the network. The net result of large number of streams at the same time is to create a congested network, especially in the air interface where bandwidth is a scarce resource. In some cases, a large amount of the streaming traffic carries exactly the same content because the content is being distributed in real-time as the event occurs. 
         [0013]    Referring to  FIG. 1 , an end-to-end solution to deal with the congestion problem, when there are a large number of unicast streams from outside the operator&#39;s network  10  that carry the same content, may use a streaming gateway  16 . The streaming gateway may be placed logically at the edge of the wireless operator&#39;s core network (CN)  18 . The network may be a Long Term Evolution (LTE) or WiMax network, as two examples. The streaming gateway is responsible for monitoring the streaming traffic  26  incoming to the network from the Internet  14 . When the gateway detects a surge in the number of streams that carry the same content, the gateway may initiate mechanisms to convert the multiple unicast streams into a smaller number of multicast streams. 
         [0014]    As used herein “multicast” means to send the same content to more than one receiver. The term “multicast” includes broadcasts as well. 
         [0015]    The wireless operator&#39;s core network (CN)  18  includes elements that support Internet Protocol (IP) multicast functionality so that the multicast stream  24  from the streaming gateway  16  can be routed to the wireless base stations (BSs)  28 . The wireless base stations use a broadcast channel to deliver the multicast stream to wireless mobile stations (MSs)  30 . The wireless mobile stations may include intelligent middleware to seamlessly join the multicast stream and to deliver the content to the streaming application, hopefully without interrupting the user&#39;s viewing experience. 
         [0016]    The streaming gateway is a logical entity that may be co-located with other elements in the operator&#39;s network. One major function of the streaming gateway is to detect incoming streams. The streaming gateway monitors the incoming streaming traffic. In some embodiments, it may inspect the content of the streams so that it can monitor the number of streams that carry the same content. Upon detection of a surge in same-content streams, the streaming gateway may evaluate how the wireless mobile stations receiving these streams are distributed. The streaming gateway may also determine whether a conversion of unicast streams to multicast streams is warranted. For example, the streaming gateway may decide to convert only some unicast streams, while leaving others unchanged. This decision may be based on the deployment of the network and/or the wireless channel conditions on the mobile stations that receive the streams. 
         [0017]    The streaming gateway  16  may also be responsible for stream conversion in some embodiments. The streaming gateway may remove the content from the streams and start IP multicast delivery of the content to the base stations attached to the receiving mobile stations. The mobile stations can be notified of the stream conversion. For example, the streaming gateway may notify the middleware in the mobile station of the conversion so that the mobile station starts to retrieve the content from the new multicast stream and smoothly drops the unicast stream connected with the remote content server  12 . 
         [0018]    In another embodiment the streaming gateway notifies base stations of the existence of a new multicast stream. The base station advertises the existence of a new multicast stream through broadcast channels, such as the system information broadcast (SIB), in the Third Generation Partnership Project (3GPP) Radio Resource Control (RRC) specification. See 3GPP Technical Specification 36.331. The advertisement may include the universal resource locator (URL) of the stream, the IP multicast Class D address of the new multicast stream, and the multicast bearer that carries the streaming content. 
         [0019]    Upon stream conversion from many unicast streams to fewer multicast streams, the streaming gateway may notify base stations communicating with mobile stations affected by the stream conversion. The base station may join the IP multicast as a subscriber of the IP multicast stream and may receive the streaming content from the multicast. Other elements in the operator&#39;s core network are expected to support IP multicast functionality so that the multicast streams from the streaming gateway can be routed to the wireless base stations subscribing to the stream. 
         [0020]    The base station places the streaming content from the multicast stream on a broadcast channel of the air interface and delivers it to the wireless mobile stations. 
         [0021]    An intelligent middleware layer on the mobile station coordinates between the streaming application and the protocol stack to seamlessly handle the unicast to multicast conversion. When an application initiates the content streaming, the middleware registers the unicast flow that carries the streaming traffic. When the middleware is notified, as described above, about the new multicast stream that replaces the existing unicast streams, the middleware may take action by commanding the protocol stack to join the multicast stream and to start to receive the content from the multicast. Once the multicast stream is established, the middleware terminates the original unicast stream and smoothly starts to deliver the content from the multicast stream to the application, without interrupting the viewing experience. 
         [0022]    The wireless operator core network (CN)  18  may include an access network (AN) gateway  22  coupled to a packet data network (PDN) gateway  20  in one embodiment. 
         [0023]    Thus, referring to  FIG. 2 , the streaming gateway sequence  32  may be implemented in hardware, software, and/or firmware. In software and firmware embodiments, it may be implemented by computer executed instructions stored on a non-transitory computer readable medium, such as a magnetic, semiconductor or optical storage. 
         [0024]    The sequence may begin by detecting the occurrence of a large number of streams containing the same content as indicated in block  34 . A threshold may be used to determine when to convert unicast streams to multicast streams. As examples, the existence of streams with the same content may be identified using content comparison code, by identifying descriptors of content, for example in headers, or using any other technique. The streaming topology may be evaluated, as indicated in block  36 . A check at diamond  38  determines whether the multiple unicast streams should be converted to fewer multicast streaming. This may depend on the network, the nature of the unicast streams, and the number of unicast streams, for example. If the conversion is going to be undertaken, then the multicast stream is started, as indicated in block  40  and either the mobile stations or the base stations or both are notified of the multicast (block  42 ). 
         [0025]    The streaming gateway  16 , shown in  FIG. 3 , may include storage  130  including a hard drive  134  and a removable medium  136 , coupled by a bus  104  to a chipset core logic  110 . The streaming gateway may be any computer system. A keyboard and mouse  120 , or other conventional components, may be coupled to the chipset core logic via bus  108 . The core logic may couple to the graphics processor  112 , via a bus  105 , and the applications processor  100  in one embodiment. The graphics processor  112  may also be coupled by a bus  106  to a frame buffer  114 . The frame buffer  114  may be coupled by a bus  107  to a display screen  118 , such as a liquid crystal display (LCD) touch screen. 
         [0026]    The chipset logic  110  may include a non-volatile memory port to couple the main memory  132 . Speakers  124  may also be coupled through logic  110 . In one embodiment, the sequence  32  may be implemented by computer executable instructions stored in a non-transitory computer readable medium such as the memory  132 . 
         [0027]    At the same time, the sequence  50 , shown in  FIG. 4 , may be implemented by the wireless mobile station  30 . The sequence  50  may be implemented in hardware, software, and/or firmware. In software and firmware embodiments, it may be implemented by computer executed instructions stored on a non-transitory computer readable medium, such as an optical, magnetic, or semiconductor memory. 
         [0028]    The sequence  50  begins by causing each mobile station to register the unicast flow at block  52 . Then a mobile station receives a conversion notice at block  54 . The conversion notice may come from the streaming gateway or a base station, as examples. The wireless mobile station commands its protocol stack to join the multicast stream at block  56 . Then, a check at diamond  58  determines whether there is a multicast stream yet. If so, the unicast is terminated at block  60  and the multicast content is delivered at block  62 . 
         [0029]    The wireless mobile station  30 , shown in  FIG. 5 , may include a storage  130 . It may include a hard drive  134  and a removable medium  136 , coupled by a bus  104  to a chipset core logic  110 . The mobile station may be any mobile computer system, including a smart mobile device, such as a smart phone, tablet, or a mobile Internet device. A keyboard and mouse  120 , or other conventional components, may be coupled to the chipset core logic via bus  108 . The core logic may couple to the graphics processor  112 , via a bus  105 , and the applications processor  100  in one embodiment. The graphics processor  112  may also be coupled by a bus  106  to a frame buffer  114 . The frame buffer  114  may be coupled by a bus  107  to a display screen  118 , such as a liquid crystal display (LCD) touch screen. 
         [0030]    The chipset logic  110  may include a non-volatile memory port to couple the main memory  132   a.  Also coupled to the logic  110  may be multiple antennas  121 ,  122  to implement multiple input multiple output (MIMO) in one embodiment. Speakers  124  may also be coupled through logic  110 . In one embodiment, the sequence  50  may be implemented by computer executed instructions stored on a non-transitory computer readable medium such as memory  132   a.    
         [0031]    Referring to  FIG. 6 , a base station sequence  70  may be implemented in software, firmware and/or hardware. In software and firmware embodiments, the sequence may be implemented by computer executed instructions stored in a non-transitory computer readable medium such as a magnetic, optical or semiconductor storage. 
         [0032]    The sequence  70  begins by determining whether a notification of a new multicast has been received from a streaming gateway as indicated in diamond  72 . If so, the new multicast may be advertised through broadcast channels as indicated in block  74 . The advertisement may include a universal resource locater of the new stream, the IP multicast class D address of the new multicast stream, and the multicast bearer that carries the streaming content. In other embodiments the notification may be made directly to the mobile station from the streaming gateway, as indicated for example in  FIG. 4 . 
         [0033]    The base station  28  shown in  FIG. 7 , may include a storage  130 . It may include a hard drive  134  and a removable medium  136 , coupled by a bus  104  to a chipset core logic  110 . The base station may be any wireless computer system, including a server or a desktop computer. A keyboard and mouse  120 , or other conventional components, may be coupled to the chipset core logic via bus  108 . The core logic may couple to the graphics processor  112 , via a bus  105 , and the applications processor  100  in one embodiment. The graphics processor  112  may also be coupled by a bus  106  to a frame buffer  114 . The frame buffer  114  may be coupled by a bus  107  to a display screen  118 , such as a liquid crystal display (LCD) touch screen. 
         [0034]    The chipset logic  110  may include a non-volatile memory port to couple the main memory  132   b.  Also coupled to the logic  110  may be multiple antennas  121 ,  122  to implement multiple input multiple output (MIMO) in one embodiment. Speakers  124  may also be coupled through logic  110 . In one embodiment the memory  132   b  may be a non-transitory computer readable medium storing instructions executed by the processor  100  to perform the sequence  70 . 
         [0035]    The following clauses and/or examples pertain to further embodiments: 
         [0036]    One example of an embodiment may be a method including detecting a plurality of live Internet unicast content streams, determining that the streams include the same unicast, and converting at least two of said unicast streams into one multicast stream. The method may also include analyzing said streams at a streaming gateway. The method may also include analyzing said streams in a wireless operator&#39;s core network. The method may further include notifying a base station coupled to a mobile station which is the addressee of a unicast of the conversion to a multicast stream. The method may also include terminating the unicast streams after they have been converted to a multicast stream. The method may also include commanding a protocol stack of a mobile station to join a multicast stream. 
         [0037]    Another example may be an apparatus including a controller to detect a plurality of live Internet unicast streams, determine that the streams have the same content and convert the streams to one multicast stream, and a storage coupled to said controller. The apparatus may be part of a wireless operator&#39;s core network. The controller controller may be part of a streaming gateway. The controller may be at an edge of a wireless operator&#39;s core network. The controller may command a mobile station protocol stack to join a multicast stream. The controller may terminate the unicast streams after conversion to a multicast stream. The apparatus may include an antenna. 
         [0038]    Still another example may be an apparatus that includes a controller to register a Internet streaming unicast flow, join a multicast stream with the same content as said unicast stream, and terminate the unicast stream, a wireless interface coupled to said controller, and a storage coupled to said controller. The apparatus may be a mobile station. The apparatus may also be a smartphone. The apparatus may include a display. The apparatus may include an antenna. The apparatus may join a multicast stream in response to a message from a streaming gateway. The apparatus may include a protocol stack to receive said message. 
         [0039]    In yet another example, an apparatus may include a device to optimize wireless traffic due to a large number of live streaming sessions for the said content from a given source outside a wireless network, and an antenna coupled to said device. The apparatus may merge unicast streams delivering identical content. 
         [0040]    In still another another example, an apparatus may include a processor to receive a notification that a unicast is being converted to a multicast and to advertise the multicast to mobile stations, and an antenna coupled to said processor. The processor may advertise using a system information broadcast. The processor may send a universal resource locator for the multicast stream to a mobile station. 
         [0041]    In another example, at least one computer readable medium may store instructions to enable a mobile station to register for a unicast flow, receive a notice of conversion of said flow to a multicast, command a protocol stack to join the multicast stream, and when said multicast stream is detected, terminate said unicast flow. The medium may further store instructions to receive the notification via middleware in said mobile station. The medium may further store instructions to drop the unicast flow when the mobile station starts to retrieve content from the multicast. 
         [0042]    In yet another example, a wireless operator&#39;s core network may include a streaming gateway to detect a plurality of live Internet unicast streams, determine that the streams have the same content and convert the streams to one multicast stream, and an access network gateway coupled to said streaming gateway. The network may terminate the unicast streams after conversion to a multicast stream. 
         [0043]    References throughout this specification to “one embodiment” or “an embodiment” mean that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one implementation encompassed within the present invention. Thus, appearances of the phrase “one embodiment” or “in an embodiment” are not necessarily referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be instituted in other suitable forms other than the particular embodiment illustrated and all such forms may be encompassed within the claims of the present application. 
         [0044]    While the present invention has been described with respect to a limited number of embodiments, those skilled in the art will appreciate numerous modifications and variations therefrom. It is intended that the appended claims cover all such modifications and variations as fall within the true spirit and scope of this present invention.