Joint Flow Control and Physical Resource Allocation in Multi-service Multiuser Downlink OFDMA System Naveed UL Hassan and Mohamad Assaad Ecole Sup´erieure d’´electricit´e (SUPELEC), Gif-sur-Yvette, France Email:
[email protected],
[email protected]
Abstract—In this paper we propose a two step solution to the joint flow control and physical resource allocation problem for multi-service OFDMA system. We develop a flow control algorithm for the data generated at the remote server stations. This data corresponds to the service demanded by a particular user in a wireless cell. Our flow control algorithm derives an output data rate for each user while considering the variable nature of the channel capacity and pass these rates to the Base Station (BS). At the BS, physical layer resource allocation algorithm allocates the subcarrier and power to the users according to the proposed data rates. Simulation results show good performance and increased system throughput.
I. I NTRODUCTION The ever increasing demand for higher data rates and user satisfaction are pushing the efforts toward cross-layer design in wireless networks because interaction and exchange of parameters among different layers can result in tremendous performance gains. In this paper, we consider the problem of cross layer design in Orthogonal Frequency Division Multiple Access (OFDMA) system. OFDMA inherits the immunity to Inter Symbol Interference (ISI) in frequency selective fading channels. It also makes possible the dynamic allocation of subcarriers because of its remarkable ability to multiplex several users on different subcarriers without interference [1]. Moreover, efficient power allocation becomes possible by waterfilling over the inverse of the channel gains [2]. Dynamic resource allocation efficiently utilizes multiuser diversity and frequency variations in the wireless channel [3]-[4]. In this paper we consider the problem of joint flow control at the transport layer and resource allocation at the physical layer for multi-service OFDMA system. This leads to cross layer design at the transport and physical layers. In most of the previous works on cross layer design, scheduling at the MAC layer and resource allocation at the physical layer are considered. In such a problem setting each user is assumed to maintain a separate queue at the BS which receives data from higher layers. Several schedulers have been proposed in the literature such as [5]-[7]. However, relatively few authors have considered the cross layer design at the transport and physical layers [8]-[9]. In [8], the author considers wireless multihop ∗ This work was conducted in the framework of French national project APOGEE.
networks and regulate the source rates at the Transport layer and power control at the physical layer. Although distributed algorithms are developed for these two layers, they cannot be implemented in OFDMA system because of the constraints used in their problem development and multi-carrier nature of the OFDMA systems. In [9], the authors consider different time scales for transport and physical layers algorithms. For each iteration of the packet level algorithm, their physical layer algorithm takes several iterations to converge. However, this assumption is not always accurate because the packets size at the transport layer is not very high e.g. in Transmission Control Protocol (TCP), packet size of a TCP segment can have a maximum value of 1500 bytes which can be treated in one time slot at the physical layer using physical layer technologies like OFDM. Moreover, flow control algorithm should adapt according to the channel variations at the physical layer. Therefore, time scale for flow control at the Transport layer should be the same as the time scale for physical layer resource allocation. In this paper we propose a two step distributed cross layer design for downlink multi-service OFDMA system. The BS receives service demands from wireless users in the cell and it sends the users requests to the remote servers via a fiber optics network. We assume that each server contains the data demanded by a particular user in the wireless cell. The user demand can either be a Real Time (RT) service such as VoIP or video / audio streaming or a Non-Real Time (NRT) service such as web browsing or file transfer. Traditionally rate control algorithms like TCP were designed for use in wired networks where the capacity of the links is often a fixed quantity. TCP was mainly designed for congestion control and it increases or decreases the data rates depending on the Acknowledgment (ACK) signals [10]-[12]. In wireless system, the capacity of the channel is variable and rate control algorithms designed for wired systems cannot be directly used as they fail to take into account the variable channel capacity. Therefore, in order to develop a good cross layer design we develop an intelligent flow control algorithm at the remote servers which takes into account the variable channel capacity and derives the data rates accordingly. These data rates are then transmitted to the BS. At the BS the subcarrier and power is allocated to different users according to the algorithm developed in [13]. Simulation results show that our proposed cross layer design
ensures traffic priority for multiple flows as well as higher system throughput. The rest of the paper is organized as follows. In section II system model is described. The problem is formulated in section III. Flow control algorithm is developed in section IV. Utility functions are discussed in section V. Physical layer resource allocation algorithm is described in section VI. Simulation results are presented in section VII while the paper is concluded in section VIII. II. S YSTEM M ODEL We consider a time slotted downlink OFDMA system with K users and F subcarriers. The total transmit power from the base station is constrained to Pmax . The data transmission is on time frame basis and each frame consists of D OFDM symbols. User channels remain unchanged for the duration of a frame but may change from one frame to another. We assume that perfect Channel State Information (CSI) is available at the BS. The channel gain to noise ratio g(k, f ) of user k on )|2 subcarrier f is given by, g(k, f ) = |h(k,f N0 B , where, |h(k, f )| denotes the channel coefficient of user k on subcarrier f after Fast Fourier Transform (FFT), N0 is the power spectral density (PSD) of white noise and B denotes the bandwidth of single subcarrier. The system model is detailed in Fig.1. Each user in the wireless cell make a service request to the BS. We assume that the BS is connected to K remote servers via fiber optics. Each of this server contains the data or the service demanded by a particular user in the cell (It is important to mention that different users can access the same server but since data of each user requires resources at the physical layer, therefore each user has a distinct flow which can be identified with a distinct server). Therefore, throughout this paper we use the same index k for the user as well as for the server. A flow rate controller derives the output data rates from these servers during each time slot based on the average capacity of the wireless channel. This data rate is fed to the physical layer resource allocation block at the BS for power and subcarriers assignment to the users. These allocation decisions are sent to the users via separate control channels which allow them to recover their data.
Fig. 1.
System Model
the capacity region of an OFDMA system is given by, C(H) = R(I) : Im ∩ In = Φ∀m 6= n, K [
Ik ⊆ F,
K X X
p(k, f ) ≤ Pmax
(2)
k=1 f ∈Ik
k=1
where, I = [I1 , . . . , IK ] are the subcarriers assigned to the users and p(k, f ) is the power allocated to user k on subcarrier f . The stability of the system demands that the output rate from the queue should be greater than the traffic generation rate for delay sensitive traffic. From [14], it is clear that the necessary condition for stability demands that, the input arrival rate vector A = [A1 , A2 , . . . , AK ]T ∈ C, where C is the ergodic capacity region of the channel. The joint flow control and physical resource allocation problem is to maximize the sum of concave utility functions of the queue state process in such a way that the achieved data rate vector should lie within the ergodic capacity region. We use different utility functions depending on the type of service demanded by the user. This optimization problem can be written as, max
K X
Uk (Qk + Ak − Rk )
(3)
k=1
subject to, K X
III. P ROBLEM F ORMULATION
Rk ∈ C
(4)
k=1
Let the length of kth sever queue be denoted by Q(k, t) at time t. The queue state process evolves according to the following equation, Q(k, t + 1) = Q(k, t) + A(k, t) − R(k, t)
(1)
A(k, t) and R(k, t) are the arrival and departure processes from kth server queue at time t. The arrival process is basically the traffic generation rate at the application layer as a result of a particular demand of the user. Let, R = [R1 , R2 , . . . , RK ]T be the data rate vector, then under a given channel state H,
Due to time-varying nature of wireless channel, the channel capacity region cannot be known at the Transport layer ahead of the physical resource allocation decisions. Therefore in order to solve our problem in distributed fashion at these two layers, we decouple it into two sub-problems. At the remote server stations we consider the utility maximization problem subject to the average channel capacity C to develop a flow control algorithm, max
K X k=1
Uk (Qk + Ak − Rk )
(5)
subject to, K X
Rk ∈ C
(6)
k=1
C is updated using a low pass filter. In order to update C, BS communicates the actual total achieved data rate at the physical layer during the last time slot to the flow control algorithm. The flow control algorithm derives the output data rates. These data rates are passed as constraints in the physical layer resource allocation problem. At the physical layer the problem is to maximize the system throughput subject to the data rate constraints imposed by the flow control algorithm. Let r(k, f ) be the data rate allocated to user k on subcarrier f then the sum-rate maximization problem at the physical layer is as follows, K X X max r(k, f ) (7) k=1 f ∈Ik
subject to following constraints, X r(k, f ) ≥ Rk ,
∀k
∀m 6= n,
K [
Ik ⊆ {1, . . . , F }
k=1
By solving this problem we get the actual subcarrier and power allocation decisions. In the next section we develop the flow control algorithm based on optimization problem (5). IV. F LOW C ONTROL A LGORITHM In this section we develop the flow control algorithm by solving the optimization problem (5), max
K X
Uk (Qk + Ak − Rk )
(8)
k=1
subject to, K X
(11)
0
where, Uk = ∂Uk /∂Rk . From equation (11) we get, 0
Rk = Qk + Ak − Uk−1 (λ)
(12)
Our scheduler propose data rates for the physical layer according to the following algorithm, 1. Initialize λ > 0. PK P 2. Update C = (1 − ρ)C old + ρ k=1 f ∈Ik r(k, f ). PK 3. While k=1 Rk < C repeat, a) λ = λ + ∆, where ∆ is a small step size. b) Calculate Rk ∀k using eq (6).
V. U TILITY F UNCTIONS
p(k, f ) ≤ Pmax
k=1 f ∈Ik
Im ∩ In = Φ,
0
λ = Uk (Qk + Ak − Rk )
This algorithm converges after some iterations. Once the data rates are obtained they are passed on to the physical layer resource allocation algorithm for subcarrier and power allocation decisions.
f ∈Ik K X X
that the utility functions are concave this optimization problem can be solved using the convex optimization theory [15], [16]. With λ as the lagrange multiplier associated with the constraint and solving the lagrange KKT conditions we obtain,
Rk ≤ C
(9)
Since different traffic types require different treatment based on their QoS objectives, therefore, multiple services are accommodated by selecting the appropriate utility functions. We can broadly categorize all the traffic into two types; a) Real Time (RT) traffic which is delay sensitive such as video/audio streaming services, voice transmission and b) Non-Real Time (NRT) traffic such as file transfer, web browsing etc. where the delay requirements are not so strict. We use the concave utility function designed in [17] for both these traffic types. In [17], a z-shaped function, U (Q) = 1 − 1+e−aR1(Q−bR ) is used for RT traffic. aR > 0 and bR > 0 determine the slope and the inflection point of the functions and bR is set to the deadline of RT QoS. Similarly, U (Q) = 1−cN eaN (Q−bN ) is used for NRT services. aN > 0, bN > 0 and cN > 0 determine the slope, the QoS requirement and the amplitude of the utility function respectively. These utility functions are shown in Fig.2. A detailed discussion about these utility functions is given in [17].
k=1
This constraint ensures the feasibility of the resource allocation problem at the physical layer since BS is power limited. By feasibility in this paper we mean that the derived data rates should be such that they can be achieved within the BS power constraint. We update the average channel capacity by using a low pass filter, C new = (1 − ρ)C old + ρ
K X X
r(k, f )
(10)
VI. P HYSICAL L AYER R ESOURCE A LLOCATION A LGORITHM In this section we discuss the resource allocation problem. Since this algorithm is the same during each time slot we drop the time index for the sake of continence. Our sum-rate maximization problem is as follows, max
where, 0 < ρ < 1 and k=1 f ∈Ik r(k, f ) is the actual achieved data rate at the physical layer after the application of physical resource allocation algorithm. Since we assume
r(k, f )
k=1 f ∈Ik
k=1 f ∈Ik
PK P
K X X
subject to following constraints, X r(k, f ) ≥ Rk , f ∈Ik
∀k
(13)
F X K X
o(k, f ) ≤ Pmax
(19)
f =1 k=1
This is a convex optimization problem with linear and convex differentiable constraints. With δ(k) k=1,...,K , µ(f ) f =1,...,F and α as the Lagrange multipliers associated with constraints (17), (18) and (19) respectively and solving the appropriate Lagrange-KKT optimality conditions we get, 1 + δ(k) 1 + p(k, f ) = − (20) α g(k, f ) Fig. 2.
(1 + δ(k))g(k, f ) + − α ! + α 1− = µf (1 + δ(k))g(k, f )
Utility functions for RT and NRT traffic types
K X X
(1 + δ(k))
p(k, f ) ≤ Pmax
k=1 f ∈Ik
Im ∩ In = Φ,
∀m 6= n,
K [
Ik ⊆ {1, . . . , F }
k=1
This optimization problem is a combinatorial problem and there are K F possible subcarrier allocations. The problem can be converted into a classical convex optimization problem by introducing a time sharing factor γ(k, f ) ∈ [0, 1] for kth user on subcarrier f . The assumption on subcarrier sharing introduces the following constraint, K X
γ(k, f ) ≤ 1
∀f
(14)
k=1
As a result of time sharing, data rate achieved by user k on subcarrier f becomes1 , r(k, f ) = γ(k, f ) log(1 + p(k, f )g(k, f )) We further define o(k, f ) = γ(k, f )p(k, f ), as the average power allocated to user k on subcarrier f . With this change of variable we have, o(k, f )g(k, f ) r(k, f ) = γ(k, f ) log 1 + (15) γ(k, f ) Eq (15) represents a concave function which can be verified from its Hessian which is negative semi-definite when γ(k, f ) ≥ 0 and o(k, f ) ≥ 0. Finally the optimization problem can now be written as, F X K X o(k, f )g(k, f ) max γ(k, f ) log 1 + (16) γ(k, f ) f =1 k=1
log
(21)
Based on the equations (20) and (21), efficient resource allocation algorithms can be developed. For this paper we consider the optimal algorithm developed in [13]. This algorithm achieves the rate and power constraints simultaneously. This algorithm consists of an inner loop and an outer loop. The outer loop starts with a small value of α > 0 and increments it in small steps. For each value of α, the inner loop allocates the power and subcarriers to the users according to their data rate constraints. This process is repeated till all the constraints are satisfied. We produce this algorithm from [13] in Table I. TABLE I P HYSICAL L AYER R ESOURCE A LLOCATION A LGORITHM
1) Initialization: α = 0 Outer loop: 2) While Ptotal < Pmax α = α + ∆j Inner loop: 1 1) Initialization: δ(k) = mink,f g(k,f , ∀k, φ(k, f ) = 0, ∀k, f , ) γ(k, f ) = 0, ∀k, f , Γ = {Γ1 , . . . , ΓK } = 0. 2) Repeat till all the rate constraints are achieved. 3a) Repeat till kth user rate constraint is achieved. 3b) Increase waterlevel of user k in small steps, δ(k) = δ(k) + ∆m . 3c) On all the subcarriers compute, φ(k, f ) = ! + (1+δ(k))g(k,f ) + α (1 + δ(k)) log 1 − − α (1+δ(k))g(k,f ) 3d) Allocate subcarrier to this user if φ(k, f ) is maximum and set γ(k, f ) = 1 otherwise set γ(k, f ) = 0. 4) Compute the achieved data rate according to, P (1+δ(k))g(k,f ) + Γk = F f =1 γ(k, f ) log α 5) Compute the total power, + P PF 1+δ(k) 1 Ptotal = K − g(k,f k=1 f =1 γ(k, f ) α )
subject to, F X f =1
o(k, f )g(k, f ) γ(k, f ) log 1 + ≥ Rk γ(k, f ) K X
γ(k, f ) ≤ 1
∀f
k=1 1 Data
rates are in nats for analytical convenience.
∀k
(17)
(18)
VII. S IMULATION R ESULTS We consider a downlink OFDMA system with 10 users and 24 subcarriers. Base station has a perfect channel state information and a peak power constraint of 43dbm. We consider a frequency selective Rayleigh fading channel with exponential delay profile. Path losses are calculated according to Cost-Hata Model [18]. The power spectral density of noise
is -174dbm/Hz. Time is divided into slots and duration of each Transmission Time Interval (TTI) is 1ms. We assume that packets are generated according to poisson distribution with packet size of 1Kbits. The users are uniformly distributed in a cell of radius 700m. Moreover, the bandwidth of each subcarrier is 375 KHz. The parameters for RT utility functions are aR = 1.5 and bR = 5ms, while those for NRT utility function are aN = 0.1, bN = 25ms and cN = 0.5. We consider that there are 5 RT and 5 NRT users. In Fig.3, we plot the average backlog of the system vs the traffic generation rate at the application layer. We are interested in determining the maximum traffic generation rate that can ensure that the data rates demanded by the flow control algorithm remain within the ergodic capacity region. From the figure, we can see that the traffic generation rate has to be constrained to 5.5 packets/tti/user in order to achieve empty queues all the time. However, when this rate is further increased, queue backlogs start to grow because the data rates by the flow control algorithm cannot be achieved at the physical layer.
Fig. 3. Average backlog vs Traffic generation rate (packets/tti/user) for 10 user 24 subcarrier system.
In Fig. 4, we compare the throughput achieved by RT and NRT users in the system. When the traffic generation rate lies within the ergodic capacity region, we can see that our scheme does not discriminate between the two traffic types and all the demanded data rates are achieved. However, when the traffic generation rate is further increased, RT users achieve higher data rates compared to NRT users. This is due to the steeper slope of RT utility function which results in higher priority for RT users and hence higher throughput. VIII. C ONCLUSION In this paper we proposed a cross layer design for transport and physical layer of multi-service OFDMA system. We developed a flow rate algorithm to obtain the data rates from the remote server queues based on the average channel capacity. At the physical layer we proposed a subcarrier and power allocation algorithm to achieve these data rates while respecting the the power constraints of the BS. Simulation results
showed that our proposed scheme achieves good performance for both RT and NRT traffic flows and increases the overall system throughput.
Fig. 4.
Total Achieved Throughput for 5 RT and 5 NRT users.
R EFERENCES [1] B. Yang, K. B. Letaief, R. S. Cheng, and Z. Cao, “Channel estimation for OFDM transmission in multipath fading channels based on parametric channel modeling,” IEEE Trans. Commun., vol. 49, No. 3, March 2001. [2] G.G.Raleigh and J.M.Cioffi, “Spatio-temporal coding for wireless communication,” IEEE Trans. Commun., vol. 46, pp. 357-366, Mar 1998. [3] W.Rhee and J.M.Cioffi, “Increase in capacity of multiuser OFDM system using dynamic subchannel allocation,” in Proc. IEEE VTC, 2000. [4] Ying Jun Zhang and K.B.Letaief, “Multiuser Adaptive Subcarrier and bit allocation with adaptive cell selection for OFDM systems,” IEEE Trans. Commun., vol. 3, No. 5, Sept 2004. [5] G.Song, Y.Li, L.J.Cimini and H.Zheng, “Joint channel aware and queue aware data scheduling in multiple shared wireless channels,” in Proc. IEEE WCNC, vol. 3, pp. 1939-1944, Mar. 2004. [6] M.Andrews, K.Kumaran et al, “CDMA data QoS Scheduling on the forward link with variable channel conditions,” Technical memo. Bell Labs, 2000. [7] Shakkottai and Stolyar, “Scheduling for multiple flows sharing a timevarying channel: the exponential rule,” Analytic Methods in Applied Probability, vol. 207, pp. 185-202, 2002. [8] Mung Chiang, “Balancing Transport and Physical Layers in Wireless Multihop Networks: Jointly Optimal Congestion Control and Power Control,” IEEE Journal on Selected Areas in Communications, vol. 23, no.1, Jan. 2005. [9] Y. Yu and G. B. Giannakis, “Joint Congestion Control and Multiuser Scheduling for Hybrid Wireline and OFDM-based Wireless Networks,” in Proc. INFOCOM, May 2007. [10] M. Assaad and D. Zeghlache, “TCP Performance over UMTS-HSDPA Systems,” Auerbach Publications, 2007. [11] R.W.Stevens, “TCP/IP Illustrated,” Addison-Wesley, 1994. [12] D.E.Comer, “Internetworking with TCP/IP: Principles, Protocols and Architecture,” vol.1, Prentice Hall, 2000. [13] N. Ul Hassan and M. Assaad, “Resource Allocation in Multiuser OFDMA System: Feasibility and Optimization Study”, in Proc. IEEE WCNC, April, 2009. [14] G.Song, “Cross Layer Resource allocation and Scheduling in Wireless Multicarrier networks,” Phd Thesis, 2005. [15] S.Boyd and L.Vandenberghe, “Convex Optimization,” Cambridge University Press, 2003. [16] D.P.Palomar and Mung Chiang, “A tutorial on Decomposition Methods for Network utility Maximization,” IEEE Trans. Comm., vol.24, No.8, Aug 2006. [17] H Lei, L. Zhang, Xin Zhang and D. Yang, “A Packet Scheduling Algorithm Using Utility Function for Mixed Services in the Downlink of OFDMA Systems,” in Proc. IEEE VTC, pp. 1664-1668, Oct. 2007. [18] Cost 231, “Urban transmission loss models for mobile radio in the 900 and 1800 MHz bands,” TD(90)119 Rev.2, Sep 1991.