Utility-Based Resource Allocation for Layer-Encoded IPTV Multicast in

0 downloads 0 Views 281KB Size Report
streaming service over IEEE 802.16 WiMAX networks. Unlike existing ... 802.11 (WiFi), WiMAX has a higher bandwidth and broader coverage range. This makes ...
This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the ICC 2007 proceedings.

Utility-Based Resource Allocation for Layer-Encoded IPTV Multicast in IEEE 802.16 (WiMAX) Wireless Networks Wen-Hsing Kuo, Tehuang Liu, and Wanjiun Liao Department of Electrical Engineering National Taiwan University Taipei, Taiwan Email: [email protected] Abstract-In this paper, we propose a utility-based resource allocation scheme for layer-encoded IPTV multicast streaming service over IEEE 802.16 WiMAX networks. Unlike existing utility-based schemes, this mechanism is designed for wireless networks which support adaptive modulation and coding. Each video stream (or program) is encoded into different layers. Then, our mechanism adjusts the number of each user’s received layers dynamically according to its channel condition and the available network bandwidth, so as to maximize total utility. We prove that this problem is NP-hard, and show that our scheme is bounded in performance to the optimal solution and can run in polynomial time. The simulation results show that this scheme can allocate resource flexibly according to the utility function of each program, the popularity of each program (i.e., the number of users receiving each program), and the amount of total available resource in the network. The result also shows that the fairness of the system can be guaranteed. Index Terms-IEEE 802.16, IPTV multicast, layer encoding

environment in which all users may have different channel conditions, this layering approach can provide each user a reasonable amount of resource depending on its channel quality and the popularity of each program, thus achieving good utilization of the total system.

Figure 1. Layer-encoded multicast in a WiMAX network.

I. INTRODUCTION Very few existing research is related to IEEE 802.16’s multicast MAC schemes. In [1], a reliable multicast scheme is proposed by using Code Division Multiple Access (CDMA) codes in WiMAX networks. In [2], a multiplex-multicast scheme is designed to resolve the transmission bottleneck between IEEE 802.16 and IEEE 802.11. There are also very few existing papers which have applied layer encoded technology to WiMAX multicast environments. The work in [3] proposes a utility-based multicast scheme for layer-encoded multicast sessions. That work, however, assumes that all subscribers have the same channel condition To provide high-quality IPTV multicast service, radio and thus receive the same data rate given the same amount of resource allocation is the key. In this paper, we propose a bandwidth. Consequently, it is only suited for wired networks. utility-based resource allocation scheme, for layer-encoded Another paper [4] takes adaptive modulation and coding into multicast streams, which adapts to dynamic channel condition, consideration for layer-encoded streams. The system allocates and can be integrated into the multicast mechanism in WiMAX a different modulation scheme to each layer and adjusts each standards. layer’s allocated resource to maximize the total utility. The In our system, each video stream (or program) is encoded utility function used in that work is defined as the user into several sub-streams (i.e., layers). The first layer is called satisfaction given that its subscribed layers are served by a the base layer, and the others are called the enhancement layers. certain amount of resource. However, it fixes the number of The more layers a subscriber has received, the better the video layers each user can receive once it has joined the service. As quality. For each layer-encoded stream multicast through the a result, wireless BSs can only adjust transmission bandwidth network, different receivers may receive different numbers of among layers of each program. In reality, especially in an layers according to their channel quality. In a wireless environment like WiMAX which can provide video services, IEEE 802.16 (WiMAX) is a promising last mile technology for broadband wireless access. The major network components in such a network include a Base Station (BS) and multiple Subscriber Stations (SS), as shown in Fig. 1. The downlink direction (i.e., from the BS to SSs) is a broadcast channel and the uplink direction (i.e., from SSs to the BS) is a multiple access channel shared by all SSs. Compared to IEEE 802.11 (WiFi), WiMAX has a higher bandwidth and broader coverage range. This makes WiMAX an excellent platform to provide IPTV streaming service to residential users.

1-4244-0353-7/07/$25.00 ©2007 IEEE

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the ICC 2007 proceedings.

Since layer-encoded programs are supported in the scheme, we let each layer be a multicast sub-session, and mark each layer by a unique vector s=[m,l], where m is the program, l is the lth layer of program m. For all layers in a In this paper, we look at the problem in a different way program, the combination of the multicast subscribers and from all existing proposed schemes. To increase the flexibility their channel conditions are identical. In addition, since of the system and utilize the radio resource more efficiently, layer-encoded programs can only be decoded in order, the the number of subscribed layers for each user is adjustable. higher layer will not be assigned to users unless lower layers This assumption reflects reality more accurately and the have already been assigned. Fig 2 shows the relationship requirements made by WiMAX. We then propose a between programs (1-M), program m’s layers ( 1 − Lm ) and utility-based resource allocation scheme for IPTV multicast. subscribers ( 1 − N m ) . Since the stream rate of each layer The characteristics of this scheme are summarized as follows. 1) It supports layer-encoded streams and determines the number differs, we let R s denote the data rate of layer s. Denote by of layers to be received by each user dynamically. 2) It can be R m (n) the rate of a burst profile with which the first n users executed periodically or on-demand to reflect user’s in group m can receive the program. This corresponds to the time-variant channel condition. 3) It can be applied to WiMAX burst profile with the minimal rate among the first n users in and all other networks in which users’ channel conditions can  T ⋅ Rs  be monitored and the transmission rates can be adjusted the group. Thus, Ts (n) =   is the number of R m (n)   accordingly. 4) It can improve the total user satisfaction and the system channel utilization. 5) It can support single layer timeslots required to transmit this layer to n users. media streams, and can be applied to unicast media streams by treating each unicast stream as a multicast stream with only one subscriber. In other words, it supports unicast/multicast, single-layer/multi-layer environment and is very flexible. The performance of our scheme is evaluated by simulation and analysis. The complexity of this scheme is also discussed. each user usually subscribes to streams only and let the system determine the allocated resource and video quality. That work, therefore, cannot use radio resource efficiently.

The rest of the paper is organized as follows. In Sec. II, the system model is described and the utility-based multicast scheme is proposed. In Sec. III, the details of the algorithm are presented. Its performance and complexity are also analyzed. In Sec. IV, the simulation results are provided. Finally, the paper is concluded in Sec. V. II. Utility-Based Layer-Encoded Multicast Scheme A. System Design The burst profile of WiMAX is a set of codec settings (which reflects the channel condition) for BS to transmit data to SSs, and each SS needs to negotiate its burst profile with the BS before the connection starts. Different burst profiles result in different levels of robustness and transmission rates. The more robust the burst profile is, the lower the data rate is. When multicasting a stream to a set of users with different burst profiles, the BS must choose the most robust burst profile (i.e., the one with the lowest data rate) so that all users can receive the stream with the same (worst) video quality. In our system, given a user group, the BS picks up group members one by one into service in decreasing order of their channel conditions and use the most robust burst profile among all selected users to transmit data. This is because to multicast a stream to a set of subscribers, serving those with better channel quality first leads to better resource utilization. To multicast a program to more users, a more robust burst profile must be used, and hence it takes more time slots to transmit the program.

Figure 2. The relationship between program m and its supported number of layers and subscribers.

In this work, the utility value of each layer is defined as a user’s additional satisfaction when this layer is received (i.e., the utility function is a stair-like function). Denote the utility values of the Lm layers in program m by U m = [U [ m,1] , U [m, 2] ,...., U [m, Lm ] ] . The utility a user obtains is the summation of the utility values from all its received layers, i.e.,

n

∑U

[ m ,k ]

, where n is the number of layers the user

k =1

receives. Fig. 3 depicts program m’s utility value of each layer. U[m,Lm]

U[m,2] …… U[m,1]

Layer 1

Layer 2

Layer Lm

Figure 3. The program m’s utility value of each layer.

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the ICC 2007 proceedings.

The design of a utility function is an open question. A utility value of a video layer can be the video quality perceived by the receiver. We could use some metrics, such as the perceived signal-to-noise ratio (PSNR) [5] and the mean-opinion-score (MOS), to construct the utility function. However, we leave this issue to other researchers and focus on optimizing the total utility. The goal of our work is to adjust the allocated resource between layers and programs in order to maximize the total utility

∑U

∑ T ( N ) < T , where

Us which denotes the ∆Ts

average utility of ∆Ts (n) time slots. In the for loop of our U-LEM algorithm, the system picks up all compulsory layers and serves them first. Then, in the do loop, for each layer, it finds an unserved user who has the best channel quality and is likely to be served. (i.e., its lower layers have all been served and its required resource is smaller than the system’s available resource, i.e.,

Ts ( N s )

∆Ts ( N s ) < Tc ). S max includes the candidate user which has

is the total slots allocated to layer s (note that s=[m,l]), and T is the total available slots.

the highest ∆U among all layers. This loop repeats until all available resource Tc is consumed or no more users can be served.

s Ns

, subject to

marginal utility of layer s is ∆U =

s

s

s

s

Depending on the requirements of the subscribers and the multicasting policy implemented by the operators, certain layers (e.g., all programs’ base layers) can be made compulsory and all of its subscribers must be served. If this is the case, the system must serve compulsory layers first and then allocate residual resource to the other layers according to our approach. B. Notations The notations used in this paper are listed as follows. M: number of programs provided in the WiMAX network N m : number of subscribers for program m Lm : number of layers for program m s=[m,l]: program m’s layer l Rs : streaming data rate of layer s U s : the additional utility value when a user receives layer s Rm (n) : data rate of the burst profile able to serve n subscribers in program m  T ⋅ Rs  Ts (n) =   : number of time slots required to transmit  R m ( n)  layer s to n subscribers. T: network total available timeslot in a service period N s : number of users actually served by layer s ∆Ts (n) = Ts (n + 1) − Ts (n) : the time slots required to add one user in layer s. Us : marginal utility of Ts (n) ∆U s (n) = ∆Ts (n) Tc : residual time in a service period S max :

the layer that has the largest marginal utility

C. Proposed Scheme We propose a resource allocation algorithm called Utility-based Layer-Encoded Multicast (U-LEM), to solve the problem, as shown in Fig. 4. We first define the marginal utility ∆Ts (n) as the time slots required to serve one additional user given that n users have already been served. Thus, the

U-LEM() Tc ← T ; for all unserved compulsory layers s, NS = Nm ; Tc ← Tc − Ts ( N m ) ; end for; do S max ← null ; S max = arg max s's lower layers are served, ∆Ts ( N s )