Skip to main content

A resource allocation algorithm for OFDM-based cellular system serving unicast and multicast services

Abstract

In this article, we propose a resource allocation algorithm for orthogonal frequency division multiplexing-based cellular system that serves users each of which requests a regular service or a multimedia broadcast multicast service (MBMS). We assume that the MBMSs are considered for video services such as mobile TV. In order to efficiently serve the users with heterogeneous channel conditions, we employed channel-adaptive video streams by using scalable video coding (SVC), where a realistic multicast configuration is considered for multicasting the SVC streams. Therefore, we designed the cellular system to serve constant and flexible bit rates for the regular services and the MBMSs, respectively. Thus, we consider three objectives when allocating the bandwidth resources, where total transmit power is regulated. First, the bit rate of each regular service has to be guaranteed. Second, the minimum bit rate of each MBMS for achieving the minimum video quality has to be guaranteed. Third, the average video quality of the users requesting MBMSs has to be maximized. In order to achieve the objectives, we propose to quantify the service quality of each service, and then find the resource allocation that maximizes the total service quality. By using the computer simulation results, we could verify that the three objectives can efficiently be achieved. Also, we could verify that the performance of the proposed algorithm is superior to that of the previous algorithm designed to maximize the total bit rate while guaranteeing the minimum bit rates.

1. Introduction

In order to serve the high-speed wireless services, orthogonal frequency division multiplexing (OFDM) has been considered, which can be used to mitigate the inter-symbol interference and dynamically allocate the given bandwidth, where an OFDM channel is configured with multiple subchannels. By allocating the subchannels according to the channel conditions of each user to serve, the service quality of the users with the heterogeneous channel conditions can be more efficiently achieved[17]. Such utilizations of the OFDM also can be considered for multicast services such as multimedia broadcast multicast service (MBMS) which is defined in long-term evolution (LTE) standards[8]. However, in order to robustly multicast a common service to multiple users, transmission parameters such as transmit power or modulation and coding scheme (MCS) have to be determined according to the user with the worst channel condition, and therefore the heterogeneous behavior of the channels degrades the multicast performance. Therefore, in order to improve the multicast performance by using the OFDM, adaptive configurations of users to multicast can be considered for each subchannel as described in[911].

In this article, we consider a cellular system for serving regular services and MBMSs. In order to efficiently serve the users with heterogeneous channel conditions, we can consider bit rate-flexible bit streams which can be decoded only with a part of the whole bit stream. As an example of such bit streams, scalable video coding (SVC) stream can be considered[12]. As the SVC stream is configured with multiple video layers, we can serve the users more adaptively to the channel conditions by adjusting the transmission of the video layers. Thus, we consider the bit rate-flexible SVC streams for MBMSs, where we assume that the bit rate for serving each regular service is constant.

Therefore, we propose a resource allocation algorithm for achieving three objectives: First, for each user that requires a regular service, the system must guarantee the constant bit rate required for the regular service. Second, for each user that requests MBMSs, the system must guarantee the minimum bit rate required for achieving the minimum video quality. Third, the system must maximize the average video quality of the users requesting the MBMSs. Although the resource allocation algorithms in[13, 14] are also designed to serve the multicast services over the OFDM channels by using the SVC streams, we found that there are defects in three aspects: the multicast configuration, the system objective, and the optimality of the resource allocations. Therefore, we design the proposed algorithm to overcome the defects in the previous algorithms.

This article is configured as follows. In Section 2, we review the SVC and the related resource allocation algorithms, and then address the defects in the previous algorithms. In Section 3, we present the configuration of the cellular system assumed in this article. After that, we introduce the proposed resource allocation algorithm in Section 4. In Section 5, we provide some simulation results to verify the effectiveness of the proposed algorithm, and then we conclude this article in Section 6.

2. Related works

2.1. SVC

The SVC is designed to provide adaptation in required bit rate and decoded video quality (in this article, we use peak-signal-to-noise ratio (PSNR) for measuring the video quality, which is commonly used in the studies such as[12, 15]). For example, even if a part of the compressed video stream is discarded, the remaining part can be uncompressed and reconstructed to the video pictures (also, referred to as frames in this article). Each of the truncatable parts is referred to as video layers, where the layers that represent basic information and details are referred to as base layer (BL) and enhancement layer (EL), respectively. Accordingly, by adjusting the transmission of the video layers, the quality of the video content can be adapted to the channel conditions.

There are three types of video scalabilities referred to as spatial, temporal, and quality scalabilities. By considering the spatial and the temporal scalabilities, the SVC bit stream can be decoded into multiple resolutions (sizes of frames) and frame rates (the number of frames per second). In addition, for each combination of the available resolutions and the frame rates, quality scalability can be considered to provide multiple bit rate options. In this article, we focus on the quality scalability. Figure1 shows an example of hierarchical-B coding structure[12] of a group of pictures (GOP) configured with nine frames and three quality layers (QLs). Each box in Figure1 denotes each SVC packet, where the two indicators in each box denote the frame and the QL indices, respectively. The frames each of which is configured with the packets denoted by the same frame index can be coded by using the temporal prediction of the hierarchical-B structure in order to improve the coding efficiency and to enable the temporal scalability[12]. Each QL is configured with the packets denoted by the same QL index, where the QL with QL index 1 and each of the other QLs are BL and EL, respectively.

Figure 1
figure 1

Coding structure of a GOP configured with nine frames and three QLs, where the two indicators in each box denote the frame and the QL indices, respectively.

By using the three QLs, we can obtain three PSNR options, i.e., we can obtain the lowest PSNR by decoding the BL and improve the PSNR by additively decoding the ELs in ascending order of the QL index. This quality scalability scheme is referred to as coarse grain scalability (CGS). Therefore, the QLs also referred to as CGS layer in the rest of this article. In addition, the standard SVC[12] allows decoding each packet of each EL independently from other packets in the same EL in order to achieve more bit rate options. This quality scalability scheme is referred to as medium grain scalability (MGS). In the rest of this article, the packets in the ELs are referred to as MGS packets. In order to achieve more efficient bit rate adaptabilities in terms of bit rate–PSNR performance, priorities in transmitting order can be considered for the MGS packets according to the bit length and the contribution to the PSNR of each MGS packet[15]. For example, 19 bit rate options can be achieved by the coding structure in Figure1. Figure2 shows an example of the bit rate options coded by joint scalable video model (JSVM)[16], where first 9 frames of test videos “Football” and “Crew”, common intermediate format (CIF), and 30 frames per second (fps), are used[17]. The QLs are coded with the quantization parameters 40, 34, and 28[12], respectively. For each test video, 3 performance points of CGS and additional 16 points by considering MGS can be achieved. As shown in Figure2, the bit rate–PSNR behavior of MGS is almost linear within a single CGS layer as analyzed in[18]. When allocating the resources, this behavior can be used for improving the received PSNR performance as discussed in Section 4.1.

Figure 2
figure 2

Bit rate–PSNR performance test videos “Football” and “Crew” (CIF, 30 fps) coded by JSVM.

2.2. Resource allocation algorithms for OFDM-based multicast service

In[911, 13, 14], resource allocation algorithms for OFDM-based multicast services are considered. Especially for[13, 14], the video services using the SVC are considered, where the minimum bit rates for transmitting the BLs, i.e., the essential parts of the SVC streams, has to be guaranteed to all the users. More specifically, the algorithms are designed to find resource allocation that maximizes the total bit rate while guaranteeing the minimum bit rates, where the total power is constrained below a predefined power level PMAX, i.e., allowed interference to other surrounding wireless systems.

The objective in[13, 14] can be denoted as

max u U R u subject to R u R s u MIN and c C p c P MAX ,
(1)

where the terms R u and R s MIN , and s u denote the bit rate allocated to user u, the minimum bit rate of service s, and the index of service that is requested by user u, respectively. The terms C = {c|1 ≤ c ≤ C} and p c in (1) denote the transmit power allocated to subchannel c and the subchannel index set, where C is the number of the subchannels.

The previous algorithms first split the subchannels into two sets, a set to guarantee the minimum bit rates and the other set to maximize the total bit rate (in the rest of this article, we denote the former and the latter subchannel sets by subchannel sets 1 and 2, respectively). Next, the previous algorithms equally distribute the PMAX over the C subchannels, i.e., the p c is initialized to PMAX/C. Then, the algorithms quantify how much each subchannel is suitable to be used as a subchannel of subchannel set 1 than that of subchannel set 2. In the articles, the quantified value is referred to as “suitability”. After that, the subchannels are allocated to subchannel set 1 in descending order of the suitability until the minimum bit rates are fulfilled, where the rest subchannels are allocated to subchannel set 2. Then, the total power minimization while guaranteeing the minimum bit rates is accomplished for subchannel set 1. After that, the total bit rate maximization is accomplished for subchannel set 2 while suppressing the sum of the total power allocated to both subchannel sets below the PMAX.

2.3. Limitations in related works

Although the previous algorithms improve the service qualities of the OFDM-based cellular systems designed to multicast the SVC streams, there are defects in three aspects which can be summarized as follows.

  1. 1.

    System objective

  2. 2.

    Multicast configuration

  3. 3.

    Optimality in resource allocation

First, the algorithms are designed to maximize the total bit rate which is not directly related to users’ satisfaction, i.e., PSNR. Although the algorithms are designed to avoid the worst cases that any user is not available of the BL as far as possible, the given resources still can be wasted. For example, a large part of the resources can be used to allocate the bit rates exceeding the maximum bit rates (required for transmitting all the video packets) to some of the users, while allocating only the minimum bit rates to others. Other than these algorithms, algorithms in[47] are designed to maximize average received PSNR for unicast services, and therefore such inefficient resource allocation can be avoided. Hence, such objectives need to be considered also for the multicast services in order to improve the PSNR performance.

Second, multicast configuration in[13, 14] can have the users difficult to decode the received bits properly due to following reasons: In order to robustly multicast a common service to multiple users, transmission parameters, e.g., transmit power and MCS, have to be decided according to the worst channel quality of the users. Thus, in[13, 14], adaptive multicast patterns (MCPs) for each subchannel according to the subchannel qualities are considered in order to improve the worst subchannel quality. Table1 shows an example of seven MCPs for three users, i.e., all the possible MCPs of the users. According to the seven MCPs of Table1, the bits of the common service can be transmitted to each of the three users as shown in Figure3, where l k is referred to as the total bit rate transmitted by using MCP k. In Figure3a, the first l1 bits are transmitted to the three users of Table1. Then, the next l2 bits are transmitted to users 2 and 3 as described in Figure3a. In this way, the subsequent l3 and l4 bits can be transmitted as shown in Figure3a. Then, by using the subchannels allocated to MCP 6, the l3 bits after the first l1 + l2 bits can be transmitted to user 2 as shown in Figure3b. After that, the rest l6l3 can be transmitted after the first l1 + l2 + l3 + l4 bits. In this case, user 2 is difficult to understand the position of the received bits unless the user is informed that the bits of MCP 6 starts from (l1 + l2 + 1)th bit and restarts from (l1 + l2 + 1)th bit. In addition, in case of user 3, because the l7 is smaller than the l2 user 3 cannot receive the bits properly. Therefore, the configuration of the bits has to be considered when allocating the subchannels to the MCPs. These problems become more complex as we consider more users, which are not discussed in[13, 14].

Table 1 MCPs which can be considered for three users
Figure 3
figure 3

Position of the bits in a bit stream transmitted to three users by using (a) MCPs 1-4 and (b) MCPs 5-7 in Table 1 .

Third, the resource allocation determined by the previous algorithms can be inefficient in maximizing the average PSNR. That is, the algorithms configure the two subchannel sets by assuming that the total power is equally distributed. Accordingly, it is not obvious that the subchannel allocation is also the best allocation scheme for the resulting power allocation. Furthermore, in[13, 14], only the MCP including all the users, e.g., MCP 1 in Table1, are allowed to be used for subchannel set 1. That is, the algorithms exclude the cases that the remaining MCPs are used to guarantee the minimum bit rates so improve the performance. For example, MCP 4 together with MCP 5 in Table1 can also be used to guarantee the minimum bit rates.

Therefore, we considered the aforementioned defects when designing the resource allocation algorithm which is introduced in Section 4.

3. Proposed system

In this article, we consider an OFDM-based cellular system that serves users each of who subscribes one of the regular services and the MBMSs, where downlink channel is focused. We assume that a constant bit rate is required for each regular service requested by only one user (i.e., unicast). On the other hand, we employ bit rate-flexible SVC streams for MBMS, and therefore multiple bit rates can be considered for each MBMS which can be requested by multiple users (i.e., multicast). We assume that the BS transmits services S = {s|1 ≤ s ≤ S} (each of which is either of the regular service or the MBMS) to users U = {u|1 ≤ u ≤ U}, where S and U are the numbers of the services and the users, respectively. Therefore, the U users can be divided into S groups according to the service requests, each of which is referred to as service group in the rest of this article.

We define U s srv the indices of the users of service group s, i.e., the users requesting service s. As each user requests one of the services, the service groups are configured exclusively. That is, we can denote that

s S U s srv = ϕ , where U = s S U s srv .
(2)

The BS transmits the requested services over OFDM subchannels C, where we assume that subchannel quality of user u over subchannel c, denoted as h c,u , is exponentially distributed. We assume that the average subchannel quality (ACQ) of user u is determined by path loss which results from distance between BS and each user[19]. Also, we assume that perfect channel state information (i.e., the h c,u ’s) is transmitted from the users to the BS via the uplink channel. As discussed in Section 2, in case of the MBMSs, the transmission parameters, e.g., transmit power and MCS, have to be determined according to the lowest channel quality. Therefore, we consider adaptive transmit power, MCS, and MCP for each OFDM subchannel so each subchannel is efficiently utilized. In order to improve the service quality, we consider three objectives as follows.

  1. 1.

    Guarantee the constant bit rates required for serving the regular services.

  2. 2.

    Guarantee the minimum bit rates required for the lowest PSNRs of the MBMSs.

  3. 3.

    Maximize the average PSNR of the MBMS users.

In the following section, we introduce a resource allocation algorithm for realizing the three objectives above.

4. Proposed algorithm

In order to achieve the objectives stated in Section 3, we propose to weight the bits of the services according to the bit rate requirements of the services, and then maximize the weighted sum of the bits. The weight is referred to as bit value in the rest of this article. That is, we consider significantly higher bit values for the bits that have to be preferentially transmitted (i.e., the bits in the regular services or the BLs of the MBMSs) than bit values for the bits in the ELs of the MBMSs so the former bits are guaranteed to be transmitted. Also, we propose to set the bit values for the latter bits according to the bit rate–PSNR behaviors of the MGS packets (see Figure2) so the average PSNR can be maximized. Then, the proposed resource allocation algorithm maximizes the total service quality, where each service quality is quantified as the total bit value (TBV) of each service. The resource allocator operates on the basis of convex optimization which requires the objective function to be concave.

In this section, we first define the bit values and the service qualities. Then, we introduce a realistic multicast configuration that is considered for avoiding the problems described in Figure3. After that, we present the resource allocation algorithm for maximizing the total service quality.

4.1. Concave approximation of service quality

In this section, we discuss how to quantify the bit value and the service quality in order to achieve the multiple objectives introduced in Section 3. Figure4 shows an example of a bit stream that can be divided into two parts, the part that is essential to decode the stream (e.g., the BL of an SVC stream) and the additional part that is not essential but can be used to enhance the service quality (e.g., the EL of the SVC stream). If we assume that the bit value of the first part is sufficiently larger than that of the second part, and we desire to maximize the sum of the TBVs received by all the users requesting the bit stream, we need to preferentially transmit the first part of the bit stream to all the users. In the rest of this article, each part configured with the bits of the same bit value is referred to as bit range. For service s, we denote the last bit of bit range i and the bit value of the range as X s,i and β s,i , respectively.

Figure 4
figure 4

Bit stream that can be divided into two parts, a part essential to decode the stream and the other part to enhance the service quality.

As the resource allocation is designed on the basis of convex optimization, the service quality has to be concave function which has zero or negative second derivation. Therefore, we define continuous bit value y(s,x) for the continuous bit length x, i.e., continuous version of the number of bits, where y(s,x) is β s,i when the x is bounded by bit range i of service s. As the service quality is quantified as the TBV, the continuous service quality, which is denoted by Y(s,x), can be obtained by

Y s , x = 0 x y s , w dw = i = 1 N s X s , i 1 X s , i β s , i ζ w , x dw ,
(3)

where N s is the number of bit ranges and Xs, 0 is 0 for any s, i.e., any service, respectively. The ζ (w,x) in (3) is decreasing step function, which is defined as

ζ x 1 , x 2 = { 1 , 0 x 1 x 2 · 0 , x 2 < x 1 ·
(4)

By defining cumulative step function

Z x 1 , x 2 = 0 x 1 ζ w , x 2 dw ,
(5)

the continuous service quality in (3) can be written as

Y s , x = i = 1 N s 1 β s , i β s , i + 1 Z x , X s , i + β s , N s Z x , X s , N s .
(6)

From (6), we can see that the continuous service quality is weighted sum of the cumulative step functions. Therefore, if the function Z(x1, x2) is concave, the service quality is concave. However, as the derivative of Z(x1, x2), i.e., the step function ζ(x1, x2), is not continuous when x1 is x2, the function Z(x1, x2) is not concave when the x1 is x2.

Therefore, we define an alternative function ζ ^ x 1 , x 2 as

ζ ^ x 1 , x 2 = { 1 1 1 + τ x 1 x 2 ξ , 0 < x 1 x 2 τ 1 + τ 1 x 1 x 2 τ x 2 ξ , x 2 < x 1
(7)

which is continuous approximation of the function ζ (x1, x2). The shape of the curve can be controlled by adjusting the terms ξ and τ in (7) as described in Figure5. In the rest of this article, we denote the curve with ξ = ξ . and τ = τ . as “Curve ξ . , · τ . ”. As shown in Figure5, the approximation curve become closer to the step function as we consider larger ξ or smaller τ. By plugging Z ^ x 1 , x 2 which is the cumulative ζ ^ x 1 , x 2 into (6), the concave approximation of the service quality can be obtained by

Y ^ s , x = i = 1 N s 1 β s , i β s , i + 1 Z ^ x , X s , i + β s , N s Z ^ x , X s , N s
(8)
Figure 5
figure 5

Bit value according to the step function (4) and the approximation function (7).

Because the bit value is derivative of the service quality, we can obtain the continuous approximation of the bit value as

y ^ s , x = Y ^ s , x x = i = 1 N s 1 β s , i β s , i + 1 ζ ^ x , X s , i + β s , N s ζ ^ x , X s , N s .
(9)

By using the curves of (8) and (9), we can define the concave service quality and the continuous bit value for the regular services and MBMSs. As only one bit rate requirement is considered for the regular services, the bit value is defined as

β s , 1 = β 0
(10)

where the β0 is a predefined bit value for guaranteeing the essential bits, i.e., the bit length required for serving each regular service. On the other hand, for the MBMSs, the bit value is defined as

β s , i = { β 0 , i = 1 , v s , i , 1 < i N s '
(11)

where the N s in this case is the same as the number of the CGS layers (see Figure2). Accordingly, the β s,i is the bit value of i th CGS layer. The v s,i in (11) is the slop between (i – 1)th and i th CGS points, which can be obtained by

v s , i = V s , i V s , i 1 X s , i X s , i 1 ,
(12)

where the V s,i denotes the PSNR of i th CGS point of service s. We want to remind that the bit rate–PSNR behavior of MGS is almost linear within a single CGS layer as discussed in Section 2.1, and therefore the slop of the PSNR by additively decoding each MGS packets within i th CGS layer is almost the same as the v s,i . By setting β0 as significantly larger than any possible value of the v s,i ’s and by maximizing the total service quality, we can preferentially guarantee the required bit rate of the regular services and the minimum bit rate of the MBMSs, where the resource allocation algorithm that maximizes the total service quality is described in Section 4.3. Figure6 shows an example of the slops of the CGS points of “Football” in Figure2 (increase of the PSNR per 10 kbps) and the bit values according to (9) and (11), where the β0, the ξ, and τ are set to 2, 30, and 0.1, respectively. The horizontal axis of Figure6 is the bit rate R = x/T, where the T is deadline which is considered for the real-time service. In order to support 30 fps, the nine frames in the GOP as shown in Figure1 have to be transmitted in 0.3 s, and therefore the T is 0.3. In Figure6, as the PSNR is not defineda when the bit rate is lower than the minimum bit rate (approximately 72 kbps), the slope is denoted only when the bit rates higher than the minimum.

Figure 6
figure 6

Bit value of test video “Football” according to (11) and (9), and increase in PSNR per 10 kbps of the test video.

4.2. Multicast configuration

In order to improve the total service quality by using the various MCPs for a large number of users, we propose to divide users U into Q exclusive user groups according to the channel quality of each user, i.e., the ACQ, each of which is referred to as channel quality group. As the channel quality groups are configured exclusively, it can be denoted that

q Q U q qlt = ϕ , where U = q Q U q qlt .
(13)

where the Q = {q|1 ≤ q ≤ Q} is channel quality index set and the U q qlt is the index set of the users with quality index q. That is, one of the channel quality indices is given to each user. In this article, we configure the channel quality groups so the number of users in each group is similar to other groups. For example, if we have five users to be divided into two channel quality groups, we group the three users with the worst ACQs to the U1qlt and the remaining users to the U2qlt. Accordingly, the highest ACQ of users U q qlt is lower than the lowest ACQ of users U p qlt if q is smaller than p. Accordingly, we can define S × Q groups Us,q = U s srvU q qlt, each of which is referred to as component group (CG) in the rest of this study.

We consider that each MCP is configured with a number of CGs. Table2 shows an example of MCPs for four CGs. We want to note that if each CG is configured with only one user, MCPs 4, 5, 6, and 7 are exactly the same as unicasts. In order to avoid the improper cases described in Figure3b, we propose to hierarchically configure the MCPs when the MCP is to be configured with multiple CGs, e.g., MCPs 1, 2, and 3 of Table2. That is, if a CG is included in an MCP with multiple CGs, then all the CGs with higher quality indices have to be included in the MCP. Figure7 shows an example that how the bits can be allocated to the four CGs by considering the MCPs in Table2. Figure7a describes the bits that can be transmitted by MCPs 1, 2, and 3. First, by using MCP 1, the first l1 bits can be transmitted to all the CGs. Then, by using MCP 2, the next l2 bits can be transmitted to the CGs Us,2, Us,3, and Us,4. After that, by using MCP 3, the next l3 bits can be transmitted to the CGs Us,3 and Us,4. Then, as described in Figure7b, the subsequent bits can be transmitted to each CG by using the remaining MCPs. Therefore, by informing the users the MCP configurations as Table2 and the index of MCP allocated to each subchannel, each user can decode the received bits properly, because the improper cases as users 2 and 3 in Figure3b do not occur. This configuration of MCPs can also be considered for the multiple services. Table3 shows an example of the MCP configuration of the two MBMSs (services 1 and 2) and two regular services (services 3 and 4). The proposed algorithm first configures the CGs according to the subchannel qualities, and then configures the MCPs according to the user request as shown in Table3, where only one MCP with one CG configured with only one user is considered for the regular services, e.g., CGs U3,1 and U4,1. After that, the subchannels are allocated to one of the MCPs so the system objectives described in Section 3 are achieved. The transmit power and the MCS are determined for each subchannel so the bits are robustly transmitted to all the users of each MCP allocated to each subchannel.

Table 2 Proposed MCPs for four CGs
Figure 7
figure 7

Position of the bits in a bit stream transmitted to four CGs by using (a) MCPs 1-3 and (b) MCPs 4-7 in Table 2 .

Table 3 Proposed MCPs for seven CGs requesting two regular services and two MBMSs

4.3. Resource allocation

The resource allocation algorithm allocates each subchannel to one of the MCPs and determines the transmit power and the MCS for each subchannel so the total service quality is maximized. As a result, the requested bit rate for each regular service and the minimum bit rate for each MBMS can be guaranteed and the average PSNR of the MBMS users can be maximized. As introduced in Section 4.1, we propose to quantify the service quality in order to achieve the objectives, where the service quality can be written in function of bit rate as

F s , R = Y ^ s , RT
(14)

and

R F s , R = f s , R = T y ^ s , RT .
(15)

The total service which we want to maximize can be written as

F total = s M u U s srv F s , R u .
(16)

The proposed algorithm is designed to find the resource allocation that maximizes the total service quality subject to total power constraint. Therefore, we can denote the objective as

max F total s . t . P P max ,
(17)

where the Ftotal is total power allocated to subchannels. As discussed in Section 4.2, each user is included in only one of the CGs. Therefore, for user that included in CG U s,q , the bit rate can be written as

R u = R s , q , u U s , q .
(18)

Accordingly, total service quality of CG U s,q can be written as

u U s , q F s , R u = U s , q F s , R s , q ,
(19)

where the U s,q is the number of users included in CG U s,q . Therefore, the total service quality (16) can be written as

F total = s S q Q U s , q F s , R s , q .
(20)

The bit rate of each user of CG, R s,q , in (20) can be determined by

R s , q = k K A k , s , q r k ,
(21)

where the K is index set of the MCPs and the indicator A k,s,q denotes that whether MCP k transmit service s to users U s,q (A k,s,q  = 1) or not (A k,s,q  = 0). For example, in case of Table3, A1,1,1 is 1 and A2,1,1 is 0. The r k in (21) is total bit rate of all the subchannels allocated to MCP k, which can be written as

r k = c C a c , k r c , k .
(22)

The indicator a c,k in (22) denotes whether subchannel c is allocated to MCP k (a c,k  = 1) or not (a c,k  = 0), where each subchannel can be allocated up to one MCP, i.e., ∑kKac,k ≤ 1, c C. Bit rate r c,k in (22) is the bit rate of subchannel provided that the subchannel is allocated to the MCP k . According to[20], capacity of LTE system can be approximated by Shannon capacity by using bandwidth loss factor εbw and SNR loss factor εSNR. That is, if we assume an LTE system, the maximum bit rate that can be robustly transmitted to users of MCP k with transmit power p c,k over subchannel c can be approximated by

r c , k = ε bw W log 2 1 + ε SNR P c , k * H c , k ,
(23)

where the W is the bandwidth of each subchannel. The H c,k is the worst channel quality of users U k , i.e., H c , k = min u U k h c , u , where U k is the index set of users included in MCP k.

In addition, the total power distributed over all the subchannels can be written as

P = c C k K a c , k p c , k .
(24)

In this article, we consider the two resource allocation functions for maximizing the total service quality. That is, we introduce power allocation function (PAF) designed to find the power allocation pout = {pc,kout|c C, k K} that maximizes the total service quality for a given subchannel allocation ain = {ac,kin|c C, k K}. Also, we present the subchannel allocation function (CAF) designed to find the subchannel allocation aout = {ac,kout|c C, k K} for a given power allocation pin = {pc,kin|c C, k K}. That is, by cooperatively operating the two functions, we can determine the optimal power allocation a* and subchannel allocation r*. More specifically, if the subchannel allocation determined by the CAF with the r* is identical to a*, and the power allocation determined by the PAF with the a* is also identical to r* (as shown in Figure8), then a* and r* can be considered as the optimal resource allocation that maximizes the total service quality. Therefore, we consider cooperatively (and iteratively) operating the two functions as shown in Figure8b, where the power or subchannel allocation determined by one of the functions is fed back to the other function. If the aout and the pout (or the ain and the pin) become stable over the iterative operations in Figure8b, the resource allocation can be considered as the optimal resource allocation as described in Figure8a. In the rest of this section, we present the two functions, respectively. Then, we explain the iterative operation of the two functions in detail.

Figure 8
figure 8

Descriptions of (a) power and CAFs with optimal resource allocation and (b) cooperative operation of the two functions for finding the optimal resource allocation.

4.3.1. PAF

As shown in Figure8b, the PAF is designed to find the pout that maximizes the total service quality, given the ain (determined by the CAF). According to (17), the Lagrange function can be written as

Λ = F total + λ P MAX P ,
(25)

where λ denotes the Lagrange multiplier. As the optimal value of power p c,k that Λ maximizes the makes the derivative of the Λ zero, it can be written as

Λ p c , k = 0.
(26)

According to (20) and (24), Equation (26) can be written as

F total p c , k = λ a c , k .
(27)

According to (15) and (20), it can be written as

F total p c , k = s S q Q U s , q r c , k p c , k r k r c , k R s , k r k f s , R s , q .
(28)

Therefore, (27) can be written as

a c , k W ε bw ε SNR H c , k B k 1 + ε bw p c , k H c , k ln 2 = λ a c , k
(29)

according to (21)–(23), where the B k is

B k = s S q Q U s , q A k , s , q f s , R s , q .
(30)

According to (15), we can see that the B k is sum of the bit values of the users U k , multiplied by T. Therefore, the B k is referred to as TBV of MCP k in the rest of this article. If the a c,k is 0, the equality of (29) is satisfied regardless of the p c,k . If not, the p c,k that satisfies the equality can be obtained by

p c , k = B k W ε bw λ ln 2 1 ε SNR H c , k .
(31)

As the power according to (31) can be negative, the subchannel allocation is determined by

a c , k = { a c , k ' in p c , k > 0. 0 , p c , k 0.
(32)

According to (24) and (31), the total power can be written as

P = c C k K a c , k B k W ε bw λ ln 2 1 ε SNR H c , k .
(33)

In order to fully utilize the given total power PMAX, we need to find λ* which is defined as

λ * = arg P = P MAX . λ
(34)

According to the λ*, the power can be obtained by

p c , k * = B k W ε bw λ * ln 2 1 ε SNR H c , k .
(35)

Finally, pout is determined by

p c , k out = max p c , k ' * 0
(36)

Because the given subchannel allocation may not be the optimal allocation, the PAF also finds the power for the MCPs that are not allocated to each subchannel (according to the) so the CAF can modify the subchannel allocation by using the determined power allocation as described in Figure8b.

4.3.2. CAF

As shown in Figure8b, given the pin (determined by the PAF), the CAF is designed to find the aout that maximizes the total utility of the subchannels, where the utility of subchannel c by allocating it to MCP k can be determined by

Δ c , k = Ψ c , k Ω c , k '
(37)

The Ψ c,k (the increase in the total service quality by using subchannel c for MCP k) and the Ω c,k (the cost of using subchannel c for MCP k) above can be obtained by

Ψ c , k = s S q Q A k , s , q U s , q F s , R s , q - c + r c , k in F s , R s , q - c
(38)

and

Ω c , k = λ * p c , k ' in
(39)

respectively. The Rs,qc in (38) is the bit rate of each user in CG U s,q , which is allocated by the subchannels excluding subchannel c and the rc,kc is the bit rate determined by the pc,kin according to (23). The λ* in (39) is determined by PAF according to (34). In order to maximize the total utility, each subchannel is allocated to the MCP that results in the largest utility. By defining κ(c) the index of the MCP allocated to subchannel c, we can denote that

a c , k = { 1 , k = κ c . 0 , k = κ c .
(40)

That is, if the κ(c) is identical to κ*(c) for all the subchannels, the subchannel allocation maximizes the total utility, where the κ*(c) is defined as

κ * c = arg max Δ c , k , k K
(41)

However, the Δ c,k is dependent on the Rs,qc which is dependent on the MCPs allocated to the other subchannels. Therefore, we propose to implement the CAF as described in Algorithm 1, where the Ccount in Algorithm 1 is the number of subchannels that κ(c) is identical to κ*(c).

Algorithm 1. CAF

for c = 1 to C

Determine κ*(c), and then κ(c) to κ*(c).

end for

Initiate Ccount to 0.

Initiate c to 1.

while Ccount is identical to c, iterate:

Determine κ*(c).

if κ*(c) is identical to κ(c), increase Ccount by 1.

else set Ccount to 0 and set κ(c) to κ*(c).

increase c by 1 (if c = C, set c to 1).

end while

First, the CAF allocates the MCP with the largest utility to each subchannel. Then, initiate the Ccount to 0. After that, from subchannel 1, the CAF checks if the allocated MCP is the MCP with the largest utility. If the allocated MCP is identical to the MCP with the largest utility, the Ccount is increased by 1. If not, the Ccount is set to 0, and then the subchannel is allocated to the MCP with the largest utility. This operation is iterated over the subchannels until all the subchannels are allocated to the MCP with the largest utility, i.e., Ccount is increased to C. After the algorithm is terminated, the subchannel allocation is determined by

a c , k out = { 1 , k = κ c = κ * c . 0 , k κ c = κ * c .
(42)

The determined subchannel allocation is fed back to the PAF as shown in Figure8b in order to find the optimal resource allocation.

4.3.3. Cooperative operation of power and CAFs

The cooperative operation of the two functions described in Figure8b is implemented as described in Algorithm 2, where TBVs B = {B k |k K} in (31) also have to be given in addition to ain in order to operate the PAF. In Algorithm 2, the terms a(g), p(g), and B(g) denote the g th a, p, and B determined by the algorithm, respectively. Also, the B k,g in Algorithm 2 denotes g th TBV of MCP k determined by the algorithm.

Algorithm 2 Proposed resource allocation algorithm described in Figure8b

Initiate the g to 1.

Initiate each element of p(g) to PMAX/C.

while every element in a, p and B converges, iterate:

Determine a(g) by using the CAF with p(g).

According to a(g) and p(g), determine B(g).

if g is larger than 1, then

  Modify B k,g to (Bk,1 + Bk,2 + Bk,g)/g for all k K.

end if

Determine P(g+1) by using the PAF, a(g) and B(g).

Increase the g by 1.

end while

First, the algorithm equality distribute the PMAX over the subchannels. Then, determine the subchannel allocation according to the CAF. After that, the TBVs are determined according to (30), and then the PAF is operated to determine the power allocation. Then, CAF is operated to determine the subchannel allocation, and therefore the TBVs can be determined. However, from the second iteration of the PAF, each TBV is averaged with the previously determined TBVs in order to achieve the convergence over the iterations. This cooperative operation of the two functions is iterated until the resource allocation becomes stable and finds the optimal resource allocation scheme, where each averaged TBV converges to the currently determined TBV as the resource allocation become stable.

5. Simulation results

In this section, we provide computer simulation results to verify the performance of the proposed algorithm, where each OFDM symbol is configured with 500 subchannels. We assume that the bandwidth of each subchannel is 10 kHz, and therefore the total bandwidth of the cellular system is 5 MHz. Also, we assume that the subchannel qualities are exponentially distributed, where the ACQ of each user is determined by the distance from the BS. By using the path loss model in[19], we determined the ACQ as h u = 20 35 × log 10 D u , where the terms h u and D u denote the ACQ and the distance of user u from the BS, respectively. As we assume that the subchannel qualities are exponentially distributed, the h c,u ’s are determined according to the probability density function f PDH h , h u = exp h / h u / h u , where h is the random variable for setting h c,u ’s. As discussed in[20], we set the bandwidth and the SNR losses to 0.75 and 0.8, respectively. In addition, we assumed the ten MCSs considered[20]. More specifically, according to (35), we find one of the MCS modes, i.e., MCS modes M = {m|1 ≤ m ≤ M}, for each subchannel, where the M is the number of available MCS modes, i.e., 10. That is, the MCS index can be found as

m * = arg max Γ m , m | Γ m r c , k *
(43)

where the rc,k* is the bit rate determined by the resource allocation algorithm described in Algorithm 2 and the Γ m is the bit rate of m th transmission mode. As a result, the realistic bit rate that is provided by the system is Γ m* .

5.1. Bit rate allocation of proposed algorithm

As introduced in Section 3, we assume the system serves the regular services and the MBMSs. In order to verify the performance of the proposed algorithm for the two types of the services, we can consider a configuration of a BS and users in a 4-km2 square as shown in Figure9, where the BS on the center serves six users requesting regular services and four users requesting an MBMS. We assume that the MBMS users request “Football” in Figure2, and therefore the bit rate of 72 kbps has to be guaranteed, where the bit rate exceeding 320 kbps does not improve the PSNR. Figure10 shows the bit rates allocated by the proposed algorithm, where we assume that each of the bit rates required for the regular services is 40 kbps. Also, we set the number of the quality indices, Q, to 2, and therefore the MBMS users are divided into two CGs each of which is configured with two of the MBMS users. As discussed in Section 4.2, the same bit rate is allocated to all the users in each CG, and therefore the bit rate curves of the two CGs and the six regular-service users are denoted in Figure10. According to (10) and (11), the bit values of the bits that can be transmitted with 40 kbps (for the regular services) and 72 kbps (for the MBMS) are significantly higher than the bit values of the remaining bits of the MBMS, i.e., the bits in ELs. Therefore, when the total power is lower than a certain power level (i.e., 0.1 W in Figure10), the bit values of each of the regular-service users and the MBMS users do not exceed 40 and 72 kbps, respectively. If the power is higher than the power level of 0.1 W, only the bit rates of the MBMS users are increased, because the bit values of the regular services approach to zero (e.g., as shown in Figure5). Also, as shown in Figure6, the bit value of the MBMS approaches to zero when the allocated bit rate is higher than the maximum bit rate of 320 kbps. Therefore, the bit rate higher than the maximum is not allocated to each CG when the power is lower than 0.34 W. In this simulation, we can verify that the bit rate allocation scheme according to the required bit rates of the two types of the services can be achieved only by defining the service quality and the bit values according to (8)–(11).

Figure 9
figure 9

Configuration of a BS and users in a 4-km 2 square.

Figure 10
figure 10

Bit rates allocated to the users in Figure 9 by the proposed algorithm described in Algorithm 2.

As discussed in Section 4.1, we consider the concave approximation of the service quality. According to the service quality, the power and the subchannel resources are allocated according to the iterative resource allocation algorithm described in Algorithm 2. In order to achieve the concave function of the service quality, we defined the bit value function in that approximates the step functions as described in Figure5. If we define the service quality according to the step function, the service quality function is not concave as discussed in Section 4.1, and therefore it is difficult to achieve the convergence by using the resource allocation. Hence, we defined the approximation function (7), which makes the service quality concave (e.g., in the simulation of Figure10, Curve (30, 0.1) is used).

Figure11 shows the bit rates of five CGs, allocated by each iteration described in Algorithm 2, where 15 users requesting “Football” are randomly distributed in the square of Figure9, the Q is set to 5, and the PMAX is set to 1 W. In this simulation, the step function, Curve (30, 0.1), and Curve (10, 0.2) are considered. When the step function is considered as shown in Figure11a, each bit rate does not converge within 150 iterations. However, when Curve (30, 0.1) and Curve (10, 0.2) are considered as shown in Figures 11a,b, the convergence can be achieved within 130 and 60 iterations, respectively. That is, by adjusting the two parameters so the bit value changes slower with respect to the bit length (or bit rate) as shown in Figure5, the convergence can be achieved within the fewer number of iterations. It is because that the TBVs described in Algorithm 2 change slowly over the iterations. However, as the bit value changes slower, the difference of the bit value between the approximation curve and the step function becomes larger, and therefore the performance degrades. For example, one of the bit rate curves in Figure11c converges to 350 kbps which is higher than the maximum bit rate of 320 kbps. It means that the resources are wasted in terms of the PSNR, because the PSNR does not increase further when the bit rate is higher than 320 kbps as aforementioned. In the rest of the simulations, we considered Curve (30, 0.1).

Figure 11
figure 11

Bit rates of five CGs for streaming test video “Football”, which are allocated by each of the iterations described in Algorithm 2, where (a) the step function of (4), (b) Curve (30, 0.1), and (c) Curve (10, 0.2) are used.

5.2. Multicast gain of proposed algorithm

The simulations of Figures 12 and13 are provided to verify the multicast gain of the proposed algorithm in terms of the average PSNR, where randomly distributed users in the square of Figure9 request an MBMS of test video “Football”. In Figure12, we considered fifteen users and tested three cases as follows, where the number of quality indices, Q, is diversely set as shown in Figure12.

  1. 1.

    Unicast case: The BS unicasts the video stream to the all 15 users.

  2. 2.

    Mixed case: The BS unicasts and multicasts to the seven and eight users, respectively.

  3. 3.

    Multicast case: The BS multicasts to all the 15 users.

Figure 12
figure 12

Average PSNR of 15 users with the various portions of multicast and unicast, and various setting of the number of quality indices, Q , where test video “Football” is transmitted by the proposed algorithm.

Figure 13
figure 13

Average PSNR of (a) 30 and (b) 50 users when unicast and multicast cases are considered, where 10 CGs are considered and test video “Football” is transmitted.

By comparing the three curves “Unicast”, “Mixed (Q = 5),” and “Multicast (Q = 5)” in Figure12, we can verify that the performance is improved by increasing the number of multicast users. It is because that the proposed algorithm benefits from both multicast gain and the diversity gin of the subchannel qualities by considering the configurations of the MCPs. That is, if we consider more MCPs by increasing the Q, the user diversity is improved (because more MCP candidates can be considered for each subchannel), and therefore the performance can be improved. For example, if only one CG is considered by setting the Q to 1, we can merely achieve the user diversity gain, and the performance degrades severely as shown in Figure12. On the other hand, by increasing the Q to 10, we can improve the performance over the case that Q is set to 5.

If we consider more users, the performance is improved further by using multicast. Figure13 shows the performance of unicast case, i.e., the BS unicasts to all the users, and multicast case, i.e., the BS multicasts to all the users, where we tested two cases of 30 and 50 users. We assumed ten CGs by setting the Q to 10. In Figure13, we can verify that, by using the multicast scheme, the PSNR performance can be improved by approximately 2 and 3 dB when we consider 30 and 50 users, respectively.

5.3. Performance comparison

In the rest of this section, we provide the simulation results to verify the performance of the proposed algorithm and the previous algorithm in[14] which is also designed for the multicast services by using SVC. We assumed that the Q is 3, and 100 users are randomly distributed in the square of Figure9, where a half of the users request “Football” (service 1) and the other half of the users request “Crew” (service 2) in Figure2. We want to note that considering the all possible MCPs is improper especially for the large number of users as discussed in Section 2.3, and therefore we apply the proposed configuration of MCP in Section 4.2 to the previous algorithm.

As discussed in Section 2.3, the previous algorithm is designed to maximize the total bit rate for the ELs, i.e., MGS packets, and we discussed that the objective can be inefficient for transmitting the SVC bit streams. Figure14 shows the bit rates allocated by the previous algorithm, where the “CG (s, q)” denotes the CG of service s and quality index q, i.e., U s,q . As the previous algorithm is designed to guarantee the minimum bit rates, all the minimum bit rates for the BLs can be allocated to each CG when the total power is set to a certain power level, i.e., approximately 1.05 W in Figure14. However, as discussed in Section 2.3, the previous algorithm finds the resource allocation that maximizes the total bit rate for subchannel group 2. Therefore, as the total power is increased over the power level, the previous algorithm overwhelmingly allocates the resources to the CGs with better channel conditions, i.e., CGs (1, 3) and (2, 3), in order to maximize the total bit rate. As a result, the bit rates of the rest CGs are not significantly improved, and the received PSNR of the users in the CGs cannot be improved. Therefore, we need to consider another objective for subchannel group 2, and therefore we modified the previous algorithm by applying the proposed algorithm to subchannel group 2.

Figure 14
figure 14

Bit rates of 6 CGs configured with 100 users requesting one of two test videos “Football” and “Crew” by using the previous algorithm.

Figure15 shows the bit rate performance of the modified algorithm. In Figure15, we can verify that also the bit rates of CGs with the worse channel conditions are improved as the total power is increased.

Figure 15
figure 15

Bit rates of 6 CGs configured with 100 users requesting one of two test videos “Football” and “Crew” by using the modified algorithm.

The improvement of the average PSNR performance can be verified in Figure16, where the previous, the modified, and the proposed algorithms are simulated in Figure16. As shown in Figure16, we can see that the objective of maximizing the total bit rate severely degrades the average PSNR. In Section 2.3, we also discussed that the resource can be wasted when the previous algorithm divides the subchannels into the two groups. Therefore, we do not determine the subchannels for the BLs before allocating the resources. Instead, we set the bit values of the BLs significantly higher than those of the MGS packets. As a result, the average PSNR performance of the proposed algorithm is improved by up to 1.3 dB over the modified algorithm.

Figure 16
figure 16

Average PSNR of 6 CGs configured with 100 users requesting two test videos “Football” and “Crew” by using the previous, the modified, and the proposed algorithms.

6. Conclusion

In this article, we considered an OFDM-based cellular system that serves the regular services and the MBMSs. First, we discussed that the MCPs have to be limited so each user can receive the bit stream properly and the information overheads for the users to understand the position of the received bits in the bit streams can be reduced. Second, in order to utilize the resource allocation more efficiently, we defined the service quality according to the bit rate requirements and bit rate–PSNR behavior of the SVC streams. Third, we introduced the resource allocation algorithm for maximizing the total service quality. From the computer simulation results, we verified that the three objectives can be achieved, which are summarized as follows: First, the bit rate of each regular service has to be guaranteed. Second, the minimum bit rate of each MBMS for achieving the minimum PSNR has to be guaranteed. Third, the average PSNR of the MBMS users has to be maximized. Also, we could verify that the performance of the proposed algorithm is superior to that of the previous algorithm designed to maximize the total bit rate while guaranteeing the minimum bit rates.

Endnote

aIn this article, we consider the case that any BL cannot be transmitted to the corresponding users as a system failure. Therefore, we do not define the BL for the bit rate lower than the minimum bit rate required for the BLs.

Abbreviations

ACQ:

average subchannel quality

BL:

base layer

CAF:

subchannel allocation function

CGS:

coarse grain scalability

CIF:

common intermediate format

EL:

enhancement layer

Fps:

frames per second

GOP:

group of pictures

JSVM:

joint scalable video model

LTE:

long-term evolution

MBMS:

multimedia broadcast multicast service

MCP:

multicast patterns

MCS:

modulation and coding scheme

MGS:

medium grain scalability

OFDM:

orthogonal frequency division multiplexing

PAF:

power allocation function

PSNR:

peak signal-to-noise ratio

QL:

quality layer

SVC:

scalable video coding

TBV:

total bit value.

References

  1. Sadr S, Anpalagan A, Raahemifar K: Radio resource allocation algorithms for the downlink of multiuser OFDM communication systems. IEEE Surv. Tutor Commun. 2009, 11(3):92-106. 10.1109/SURV.2009.090307

    Article  Google Scholar 

  2. Huang J, Subramanian VG, Agrawal R, Berry RA: Downlink scheduling and resource allocation for OFDM systems. IEEE Trans. Wirel. Commun. 2009, 8(1):288-296. 10.1109/T-WC.2009.071266

    Article  Google Scholar 

  3. Huang D, Shen Z, Miao C, Leung C: Resource allocation in MU-OFDM cognitive radio systems with partial channel state information. EURASIP J. Wirel. Commun. Netw. 2010., 2010(6): 10.1155/2010/189157

  4. Ji X, Huang J, Chiang M, Catthoor F: Downlink OFDM scheduling and resource allocation for delay constraint SVC streaming. International Conference on Communication (ICC’08), Beijing, China; 2008:2512-2518.

    Google Scholar 

  5. Le-Ngoc T, Damji N, Xu Y: Dynamic resource allocation for multimedia services over OFDM downlink in cellular systems. 5th edition. Vehicular Technology Conference (VTC’04), Milan, Italy; 2004:1864-1868.

    Google Scholar 

  6. Damji N, Le-Ngoc T: Dynamic resource allocation for delay-tolerant services in downlink OFDM wireless cellular systems. 5th edition. International Conference on Communication (ICC’05), Seoul, Korea; 2005:3095-3099.

    Google Scholar 

  7. Su G, Han Z, Wu M: A scalable multiuser framework for video over OFDM networks: fairness and efficiency. IEEE Trans. Circuits Syst. Video Technol. 2006, 16(10):1217-1231. 10.1109/TCSVT.2006.883513

    Article  Google Scholar 

  8. GPP TS 36.440 V9.1.0, Technical Specification Group Radio Access Network: Evolved Universal Terrestrial Radio Access Network (E-UTRAN); General aspects and principles for interfaces supporting Multimedia Broadcast Multicast Service (MBMS) within E-UTRAN, Release 9. 2010.

    Google Scholar 

  9. Wu B, Shen J, Xiang H: Resource allocation with minimum transmit power in multicast OFDM systems. J. Syst. Eng. Electron. 2010, 21(3):355-360. 10.3969/j.issn.1004-4132.2010.03.002

    Article  Google Scholar 

  10. Xu W, Niu K, Lin J, He Z: Resource allocation in multicast OFDM systems: lower/upper bounds and suboptimal algorithm. IEEE Trans. Commun. Lett. 2011, 15(7):722-724. 10.1109/LCOMM.2011.051911.110203

    Article  Google Scholar 

  11. Kim J, Kwon T, Cho D: Resource allocation scheme for minimizing power consumption in OFDM multicast systems. IEEE Trans. Commun. Lett. 2007, 11(6):486-488. 10.1109/LCOMM.2007.070007

    Article  Google Scholar 

  12. Schwarz H, Marpe D, Wiegand T: Overview of the scalable video coding extension of the H.264/AVC standard. IEEE Trans. Circuits Syst. Video Technol. 2007, 17(9):1103-1120. 10.1109/TCSVT.2007.905532

    Article  Google Scholar 

  13. Seoshin K, Hanbyeol S, Byeong-Gi L: Suitability-based subcarrier allocation for multicast services employing layered video coding in wireless OFDM systems. Vehicular Technology Conference (VTC’07), Maryland, USA; 2007:1752-1756.

    Google Scholar 

  14. Hui D, Xiaoming T, Jianhua L: QoS-aware resource allocation for mixed multicast and unicast traffic in OFDMA networks. Vehicular Technology Conference (VTC’11), San Francisco, USA; 2011:1-5.

    Google Scholar 

  15. Amonou I, Cammas N, Kervadec S, Pateux S: Optimized rate-distortion extraction with quality layers in the scalable extension of H.264/AVC. IEEE Trans. Circuits Syst. Video Technol 2007, 9: 1186-1193. 10.1109/TCSVT.2007.906870

    Article  Google Scholar 

  16. JSVM: JSVM Software Manual,” ver. JSVM 9.19 (CVS tag: JSVM_9_19). 2009.

    Google Scholar 

  17. Xiph.org. 2012. , Accessed 30 October http://media.xiph.org/video/derf

  18. Mansour H, Nasiopoulos P, Krishnamurthy V: Rate and distortion modeling of CGS coded scalable video content. IEEE Trans. Multimed. 2011, 13(2):165-180. 10.1109/TMM.2010.2099648

    Article  Google Scholar 

  19. Secretariat COST: European Commission. Brussels, Belgium; 1999.

    Google Scholar 

  20. Mogensen P, Wei N, Kovacs IZ, Frederiksen F, Pokhariyal A, Pedersen KI, Kolding T, Hugl K, Kuusela M: LTE Capacity compared to the Shannon bound. Vehicular Technology Conference (VTC’07), Dublin, Ireland; 2007:1234-1238.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Daeyeon Kim.

Additional information

Competing interests

The authors declare that they have no competing interests.

Authors’ original submitted files for images

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 2.0 International License (https://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Reprints and permissions

About this article

Cite this article

Kim, D., Fujii, T. & Lee, K. A resource allocation algorithm for OFDM-based cellular system serving unicast and multicast services. J Wireless Com Network 2013, 41 (2013). https://doi.org/10.1186/1687-1499-2013-41

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/1687-1499-2013-41

Keywords