The present invention relates generally to mobile TV and in particular to multicast/broadcast of mobile TV over cellular networks. The present invention uses advanced video/content coding and dual mobile interfaces to improve quality.
As used herein, “/” denotes alternative names for the same or similar components or structures. That is, a “/” can be taken as meaning “or” as used herein. In multicast/broadcast applications, data are transmitted from a server to multiple receivers over wired and/or wireless networks. A multicast system as used herein is a system in which a server transmits the same data to multiple receivers simultaneously, where the receivers form a subset of all the receivers up to and including all of the receivers. A broadcast system is a system in which a server transmits the same data to all of the receivers simultaneously. That is, a multicast system by definition can include a broadcast system.
In third generation partnership project (3G) cellular networks, the achievable data throughput is inversely proportional to the coverage radius. The existing solutions set the transmission rate at which the entire cell is covered for a given amount of radio resource. Such a design is not optimal since the majority of the viewers inside the cell are “slowed down” by few viewers close to the cell boundary.
Many research groups have already made their contributions in this burgeoning area. Two approaches have been proposed to improve the performance. One approach is to leverage assistance from the base station, and another approach is to leverage the relaying capability of multi-homed hosts. In another project, a unified cellular and ad-hoc network (UCAN) architecture for enhancing cell throughput has been proposed. The 3G base station forwards packets for destination clients with poor channel quality to proxy clients with better channel quality. The proxy clients then use an ad-hoc network including other mobile clients and IEEE 802.11 wireless links to forward the packets to the appropriate destinations. This approach is claimed to improve individual user's throughput by up to 310%.
The above projects were focused on the unicast data transmission in cellular networks. A high speed ad-hoc assisting network constructed by the cell phones themselves can be utilized to improve the overall throughput of the network. And such advantage can be also utilized in the 3G high data rate (HDR) Broadcast/Multicast Services (BCMCS). Based on the UCAN, some researcher developed a new routing algorithm to find efficient ad hoc paths from the proxies to the cellular multicast receivers. The effect of ad hoc path interference is taken into consideration. This approach is claimed to improve the receiver's goodput by up to 280%, where “goodput” is a term used for good output. Yet another project (ICAM) uses a near optimal algorithm for the construction of the multicast forest in the integrated cellular and ad hoc network. It achieves throughput gains up to 840% for 3G downlink multicast. Yet another project proposes a method to provide quality of service (QoS) support by using ad hoc assistant network to recover the loss of multicast data in the cellular network. The conventional literature/projects are all based on the general network infrastructure depicted below as in the
As used herein, the term “content” is used interchangeably with the term “video”. “Content” actually includes audio, video, multimedia and any other information or data that can be digitally stored and transmitted. Use of the term “video” interchangeably with the term “content” should not be taken to limit the present invention to video only. A multicast system as used herein is a system in which a server transmits the same data to multiple receivers simultaneously, where the receivers form a subset of all the receivers up to and including all of the receivers. A broadcast system is a system in which a server transmits the same data to all of the receivers simultaneously. That is, a multicast system by definition can include a broadcast system.
As used herein a user/viewer/node is a mobile device and may be a dual mode cell phone, a personal digital assistant (PDA), laptop, client, mobile terminal etc.
Mobile video/content broadcasting/multicasting service, or mobile TV, is expected to become an increasingly popular application for 3G network operators. The service is currently operational, mainly in unicast mode, with individual viewers assigned to dedicated radio channels. However, a unicast based solution is not scalable. Multicast/broadcast service over cellular networks is an attractive solution with the benefits of low infrastructure cost, simplicity in integration with existing voice/data services, and strong interactivity support.
The research leading to the present invention first studied how to improve users' perceived video/content quality utilizing advanced video/content coding and dual mobile interfaces. In 3G cellular networks, the achievable data throughput is inversely proportional to the coverage radius. The existing solutions set the transmission rate at which the entire cellular cell is covered for a given amount of radio resource. Such a design is not optimal since the majority of the viewers inside the cell are “slowed down” by few viewers close to cell boundary.
The present invention uses scalable video coding (SVC) to address the aforementioned issues. In SVC, the video/content is encoded in layers and the video/content quality is proportional to the number of received layers. The base layer is broadcast/multicast to the entire cell to provide basic video/content service. The enhancement layers are broadcast/multicast with decreasing radii to maximize overall viewers' receiving quality. An optimal radio resource allocation strategy is developed. In addition, how to use a mobile device's second interface, such as Wi-Fi interface, to relay enhancement layers (enhancement layer packets) to users/viewers/nodes outside their broadcasting/multicasting ranges was also studied. Optimal strategies with SVC and video/content relaying were developed and various design issues were examined.
A method and apparatus are described including receiving content from a base station, storing the received content, receiving a second message from a first member of a network, determining a highest expected layer, a lowest layer received by the first member of the network requesting help, a highest layer that needs to be multicast to the first member of the network, and a lowest layer that needs to be multicast to the first member of the network, retrieving the stored content responsive to the message and multicasting the retrieved content to the first member of the network responsive to the determining act.
The present invention is best understood from the following detailed description when read in conjunction with the accompanying drawings. The drawings include the following figures briefly described below:
Nowadays, the demand for content-rich multimedia is rising. Watching a movie or a live TV show on cell phones, at anytime and any place, is attractive to many viewers. Broadcast/Multicast service is, thus, a significant part of 3G cellular services. For instance, Broadcast Multicast Service (BCMCS) is a standard in Third Generation Partnership Project 2 (3GPP2) for providing broadcast/multicast service in the CDMA2000 setting. For such multicast data service, if integrated with Ad-hoc wireless networks, the overall throughput can be greatly improved. However, none of previous studies have considered the specific requirements of content transmission over cellular networks. None of the previous research has taken advantage of the latest advancement in the video/content coding technologies. In the conventional broadcast/multicast service paradigm, the transmission rate is forced to be set at a rate for which the entire cell is covered. The transmission rate is inversely proportional to the coverage size. Hence the users/nodes/viewers closest to the cellular boundary “drag down” the majority of users who are not near the cell boundary and could have enjoyed a higher transmission rate. A higher transmission rate necessarily implies a better overall viewing experience with improved QoS.
In the following, a multicast service method over a 3G cellular network is described that utilizes both Scalable Video Coding (SVC) and an Ad-hoc wireless network. SVC allows the proposed scheme to maximize users' perceived video/content quality by optimally using the radio channel resource. The Ad-hoc wireless network relay further improves the data throughput and thus users' experiences.
In the scalable video/content broadcast and multicast service (SV-BCMCS) of the present invention, through SVC coding, video/content is encoded into one base layer and multiple enhancement layers. Viewers/users/nodes who/which receive the base layer can view the video/content with minimum quality. Video/content quality improves as the number of received layers increases. An enhancement layer can be decoded if and only if all enhancement layers below it are received. The multicast radio channel of the base station is divided into multiple sub-channels. Different layers of video/content are broadcast/multicast using different sub-channels with different coverage ranges. To maintain the minimum quality for all viewers, the base layer is always broadcast/multicast using a sub-channel that covers the entire cell. To address the decoding dependency of upper/higher layers on lower layers, the broadcast/multicast range of lower layers cannot be less than that of higher/upper layers.
The key design questions of SV-BCMCS architecture are: (i) how to design an efficient helper discovery and routing protocol; (ii) how to allocate the radio resources among sub-channels such that the users' perceived quality is maximized; and (iii) what kind of impact can ad hoc networks have to improve users' performance. These three questions are studied next.
An objective of radio resource allocation is to maximize the aggregate user perceived video/content quality while maintaining the minimum quality for all users. In video/content processing, Peak Signal-to-Noise Ratio (PSNR) is widely used as an indicator of video/content quality. From theoretical and empirical studies, normally the higher the received video/content rate, the higher the PSNR. The relationship between video/content quality and PSNR depends on the specific video/content coding schemes. In the following, unless otherwise noted, the receiving data rate is used as the video/content quality metric.
Assume there are L video/content layers, and the transmission rate of each layer is a constant Ri, 1≦i≦L. Let pi denote the fraction of the channel devoted to the transmission of layer i, and ri denotes the actual transmission rate, or PHY mode, selected by sub-channel i. There is a unique sub-channel for each layer. For a mobile system, the total number of PHY modes is fixed. In BCMCS, there are eleven PHY modes according to the 3GPP2 specifications. Individual modes correspond to respective data rates. In order for a sub-channel to transmit a layer of video/content rate Ri, pi=Ri/ri. That is the fraction of the channel devoted to the transmission of layer i is equal to the transmission rate for layer i divided by the actual transmission rate for sub-channel i (assuming a unique sub-channel i for layer i transmissions).
Suppose ni users can correctly receive layer i video/content, i.e., ni users' receiving Bit-Error-Rate (BER) is lower than a specific threshold value for this rate. For simplicity, it can be further assumed that there is no packet error or loss. Therefore ni−ni-1 users, 1≦i<L, receive i layers of video/content, and nL, users receive all L layers. The aggregate data rate of all users is:
For fixed total number of multicast users N in the 3G domain, maximizing the average data rate of multicast users is the same as maximizing the aggregate data rate U in equation (1). Moreover, for a series of given video/content rates Ri, equation (1) indicates that it is only necessary to maximize the summation of niRi, 1≦i≦L.
Next, the computation of ni is discussed. The value of ni is determined by the transmission rate ri for sub-channel i. Due to the path loss, fading, and user mobility, ni varies with ri and generally is a monotonically decreasing function of ri. The higher the transmission rate of the base station, the fewer the users can correctly receive the data. Thus, ni=f(ri). That is, the number of users/nodes that can correctly receive layer i transmissions is a function of the transmission rate for sub-channel i. It can be assumed that the long-term path loss dominates the receiving signal strength, for each transmission rate ri, a corresponding distance di can be derived based on the BER and signal-to-noise ratio (SNR) requirements for the PHY mode and the total number of users within di is ni. In a practical implementation, each user can report its average receiving data rate to the base station using the feedback channel. The base station can count ni by comparing these reported rates with the transmission rate ri. The optimal radio resource allocation problem can be formulated as the following utility maximization problem:
An objective is to find a set of transmission rates ri for each layer, to maximize the average data rate. For the constraint given by equation (6), Φ is the set of all M possible transmission rates (or PHY modes). In BCMCS, M=11. The constraint given by equation (3) ensures that the coverage of lower layers is larger than that of the higher layers. Otherwise, received higher layers cannot be correctly decoded. The constraint given by equation (4) guarantees the sum of sub-channels is no greater than the original channel. The constraint given by equation (5) ensures that the base layer covers the whole cell to provide basic video/content service to all the users. Note that the traditional broadcast/multicast with one single stream becomes a special case of above optimization problem with L=1.
In addition, the impact of ad-hoc wireless relay can be readily included in the optimization model. Ad-hoc relay enlarges the layer coverage. With the same transmission rate ri, the base station can reach a larger number of users
The optimization problem formulated above can be solved using a dynamic programming method. To facilitate the design of a dynamic programming method, the sub-channel allocation fractions, {pi=Ri/ri}, are rescaled to integers. A large integer, K, is selected such that piK is an integer for all i. K can be 10n if pi is accurate to n digits.
Define Uik to be the maximum utility of transmitting layer i with sub-channel fraction less than k/K and define Sik to be the corresponding transmission rate for layer i. Hence:
Uik and Sik are valued zero if no such pi satisfies the condition. Further define Uik to be the maximum utility of transmitting first i layers (from layer 1 to layer i) with aggregate sub-channel fraction less than k/K and define Skj, 1≦j≦i to be the transmission rate for layer j corresponding to Uik. The dynamic programming method is illustrated in Method 1. Note the method is for a general problem without considering the constraint represented by equation (5). Otherwise the K in line 6 can be replaced with
The maximum utility is f(r1)·R1+ULK′.
In the above method, lines 5 to 14 update Uik to include a new layer each time. Lines 7 and 8 solve for the maximum utility. Line 9 expands the SLk, and here it is written as “∪” notationally. The Sik-m==0 in lines 7 and 11 indicates that no more higher layers can be included into the optimal solution, thus the program ends/returns to the calling program/routine. Otherwise every layer will be allocated and ULK gives the optimal solution. The optimal transmission rate for each layer i is SiK, 1≦i≦L. The complexity of the algorithm is O(L2K2).
In a pure SV-BCMCS solution, users closer to the base station receive more enhancement layers from the base station. These user/viewers/nodes can forward those layers to users farther away from the base station through ad-hoc links. Ad-hoc video/content relays are accomplished in two steps: 1) each user finds a helper in its ad-hoc neighborhood from which to download additional enhancement layers; 2) helpers merge download requests from their clients and forward enhancement layers through local broadcast/multicast.
1) Greedy Helper Discovery Protocol: A greedy helper discovery protocol in the 3G and ad-hoc hybrid network was first presented in Luo (H. Luo, R. Ramjee, P. Sinha, L. E. Li, and S. Lu, “UCAN: A Unified Cellular and Ad-Hoc Network Architecture,” in ACM Mobicom, 2003). In that presentation every node of the multicast group maintained a list of its neighbors, containing their IDs and average 3G downlink data rates within a time window. Users periodically broadcast/multicast their IDs and downlink data rates to their neighbors. Each user greedily selects a neighbor with the highest downlink rate as its helper. Whenever a node wanted to download data from the base station, it initiated helper discovery by unicasting a request message to its helper. Then the helper forwarded this message to its own helper, etc., until the ad-hoc hop limit (time-to-live (TTL)) was reached or a node with local maximum data rate was found. The base station sent the data to the last-hop helper. The helpers forwarded the data in the reverse direction of helper discovery to the requesting node.
In the greedy helper discovery mechanism of the present invention, SV-BCMCS deals with data multicast instead of unicast. The locations of helpers change the resource allocation strategy of the base station. With the same transmission rate ri, the base station can reach a larger number of users
In the helper discovery scheme/method of the present invention, the request message records the IDs of helpers on the path along which the request was forwarded. The last node in the path then sends this final request message both to the base station through the 3G feedback channel, and to the initiating node along the ad-hoc path. This process is shown in
The prior art presentation of a greedy helper discovery protocol, also proposed another helper discovery protocol using flooding method. Instead of unicast, each node broadcasts/multicasts the request message hop by hop. This method enabled the node to find the helper with global maximum data rate within ad-hoc hop limit range. However, there is a large overhead when flooding messages in the ad-hoc network. The present invention, thus, only adopts the greedy helper discovery protocol within the SV-BCMCS context.
2) SV-BCMCS Relay Routing Protocol:
The SV-BCMCS routing protocol executes after the optimal radio resource allocation, which is described below. Assuming optimal radio resource allocation has been performed, the base station decides to transmit the L layers with different rates r1, r2, . . . , rL. The base station broadcasts/multicasts this information to every node in the cell. Moreover, in the greedy helper discovery phase of the present invention, each node obtained the information for all the paths to which it belongs. The major goal of the relay routing protocol is to maximally exploit the broadcast/multicast nature of ad-hoc transmissions and merge multiple relay requests for the same layer for a common helper. Essentially, each helper needs to determine which received layers will be forwarded to its requesting neighbors. For each node n, its forwarding decision is calculated using method 1.
For the receiving method, each node receives the enhancement layer packets satisfying two conditions: (i) the packets are sent from its direct one-hop helper; (ii) the packets belong to a layer higher than the layer to which the node itself belongs. Otherwise the node will discard the packets. That is, the node has no use for packets that are within the layer to which the node belongs or from a lower layer than the layer to which the node itself belongs. For example, a node that receives L3 packets has no need to receive L2 packets from any other node (helper or otherwise). A node receiving L1 packets would be a grateful recipient of L2 and L3 content packets. The receipt of L2 and L3 content packets would increase the viewing quality for any node receiving only L1 content packets.
An example shown in
Node Y can use node X as a helper. Node C receives layer 2 packets on its own and receives layer 3 and layer 4 packets from node B (which received layer 4 packets from node A). The constraint applied above is that the maximum number of hops is two. That is, that a packet can be relayed at most two hops (twice). That means that node C multicasts layer 2 and 3 packets and does not multicast layer 4 packets since layer 4 packets came from node A which is three hops away/distant. So the best that nodes X and Y can receive is layer 3 packets. Similarly for node D. Node T receives layer 2 packets on its own. When node C multicasts layer 2 and 3 packets, node T will receive layer 2 and 3 packets from node C but will discard layer 2 packets because it already has layer 2 packets. Node C does not make a separate multicast for node T and node G but multicasts packets based on lmin and Lmax.
Next the impact of data relay using an ad-hoc network for the user viewing experience is investigated. By relaying the received video/content data to users further away from the base station, the users receiving fewer layers of packets (users/nodes at the coverage edge/boundary) are able to obtain video/content layers they otherwise would not or could not receive. From a system design viewpoint, ad-hoc relay shortens a user's effective distance to the base station. As shown in
Let G be the distance gain of an arbitrary user with one data relay. Denote by fG(.) as the probability density function (pdf) of G. The probability of distance gain is derived in the following assuming the users are uniformly distributed in the cell. The approach, however, also applies if users obey other distribution functions within the cell.
In some prior art studies, the interference of ad-hoc wireless signals are considered. It is believed that a typical transmission rate of ad-hoc network, such as a network using IEEE 802.11, is much greater than the rate of a cellular network. For instance, IEEE 802.11g supports up to 54 Mbps data rates. Even for IEEE 802.11b, 11 Mbps can be achieved. Hence, wireless interference is not considered in the following study. It is also assumed that the number of data relays, or relay hops, is small. A smaller number of data delays is more robust against user mobility, and reduces the video/content forwarding delay. Furthermore, a smaller number of relays also reduces the impact of wireless interference.
where b1, b2, b3 are the probabilities of users located in the area S1, S2, and S3 respectively. Due to the uniform distribution of the users, bi=Si/Sc, i=1, 2, 3, where Sc is the area of entire cell.
Taking a detailed look at how to solve for S1, S2, and S3. S2 is the overlapping area of two circles. For two circles with known distance d12 between their centers and with known radius of each circle c1 and c2 respectively, the overlapping area can be computed. Using S11(d12, c1, c2) to represent overlapping area of c1 and c2.
For now, S2=S11(d, rt, d−g). For fixed rt S2 is a function of g and d, so using S2(g; d) below.
Therefore the one-hop distance gain can be derived as:
μG(d)=∫0r
The way to derive the distance gain in the two-hop case is similar to what in the one-hop case. However the two hop case is computationally more complex. Referring to the
Now taking a closer look at the positions of the user, helper 1 and helper 2 in
With different positions of the helper 2, the CD may intersect with CA and CB in three patterns shown in
In cases II and III, S2 and S4 overlap with each other and are combined into one, S24.
Case II:
Case III:
The pdf's in the three cases have the common form as:
The critical values of g2 from case I to II and case II to III are defined as g2+ and g2++, and
Impact of ad-hoc wireless relay on user performance:
With the aid of ad-hoc wireless relay, the video/content layers can be received by more users. In other words, “more” users appear to exist within certain distance to the base station compared to the scenario with no ad-hoc relay. Next the increase in the number of users with the use of ad-hoc wireless relay can be derived.
As shown in
Then, the probability that a user in the k-th ring can move into the distance d is
p
k(Δ)=ΣkΔr
The average number of users that move into the circle of radius d is:
As Δ→0, equation (17) can be rewritten as:
Recall in equation (2), with the assistance of ad-hoc network, the base station can reach a larger number of users f′(pi)>f(pi). Now f′(pi) is defined as f′(pi)=f(pi)+Nave(di), where di is the distance for certain transmission rate ri can be derived. That is, f′(pi) is defined as the number of nodes if sub-channel i uses pi fraction of the channel.
It is to be understood that the present invention may be implemented in various forms of hardware, software, firmware, special purpose processors, or a combination thereof. Preferably, the present invention is implemented as a combination of hardware and software. Moreover, the software is preferably implemented as an application program tangibly embodied on a program storage device. The application program may be uploaded to, and executed by, a machine comprising any suitable architecture. Preferably, the machine is implemented on a computer platform having hardware such as one or more central processing units (CPU), a random access memory (RAM), and input/output (I/O) interface(s). The computer platform also includes an operating system and microinstruction code. The various processes and functions described herein may either be part of the microinstruction code or part of the application program (or a combination thereof), which is executed via the operating system. In addition, various other peripheral devices may be connected to the computer platform such as an additional data storage device and a printing device.
It is to be further understood that, because some of the constituent system components and method steps depicted in the accompanying figures are preferably implemented in software, the actual connections between the system components (or the process steps) may differ depending upon the manner in which the present invention is programmed. Given the teachings herein, one of ordinary skill in the related art will be able to contemplate these and similar implementations or configurations of the present invention.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/US2009/001856 | 3/25/2009 | WO | 00 | 9/12/2011 |