Optimal Resource Allocation for Loss-Tolerant Multicast Video Streaming

In video streaming applications, especially during live streaming events, video traffic can account for a significant portion of the network traffic and can lead to severe network congestion. For such applications, multicast provides an efficient means to deliver the same content to a large number of users simultaneously. However, in multicast, if the base station transmits content at rates higher than what can be decoded by users with the worst channels, these users will experience outages. This makes the multicast system’s performance dependent on the weakest users in the system. Interestingly, video streams can tolerate some packet loss without a significant degradation in the quality experienced by the users. This property can be leveraged to improve the multicast system’s performance by reducing the dependence of the multicast transmissions on the weakest users. In this work, we design a loss-tolerant video multicasting system that allows for some controlled packet loss while satisfying the quality requirements of the users. In particular, we solve the resource allocation problem in a multimedia broadcast multicast services (MBMS) system by transforming it into the problem of stabilizing a virtual queuing system. We propose two loss-optimal policies and demonstrate their effectiveness using numerical examples with realistic traffic patterns from real video streams. It is shown that the proposed policies are able to keep the loss encountered by every user below its tolerable loss. The proposed policies are also able to achieve a significantly lower peak SNR degradation than the existing schemes.


Introduction
The popularity of video streaming platforms such as Netflix and YouTube has led to a fundamental shift in the way that video content is consumed online. Users increasingly prefer to stream content on the go over cellular wireless networks. As a result, during live video streaming events (such as the Super Bowl, Facebook, YouTube, Instagram live sessions, etc.), the same video content is transmitted to thousands of users over orthogonal spectral resources. This massive influx of video traffic consumes a substantial fraction of the limited amount of spectrum available for use by cellular systems, leading to severe network congestion and degraded quality of service. For such services, multicast transmission provides an excellent solution [1,2] that can serve users over shared spectral resources while also improving the quality of service.
A major bottleneck in multicast transmissions is that, in order to serve all user equipments (UEs) in a multicast group, data cannot be transmitted at a rate greater than what can be decoded by the UE with the weakest channel in the group. As a result, UEs with good channel conditions are constantly forced to settle for lower rates despite their high channel quality indicator (CQI) values, leading to user dissatisfaction and low system throughput.
This work proposes a novel method to overcome these issues by exploiting the loss-tolerant nature of video streams. It has been shown that video streams can tolerate as much as 40% packet loss [3] without significantly impacting the quality observed by the end users. For instance, for an H.264/AVC encoded video, decoders such as FFmpeg and JM can conceal as much as 39% packet loss with no deterioration in the quality of video observed by the users [3]. This can be leveraged to build video-specific resource allocation policies that can significantly reduce the bandwidth consumption of video streams.
A compressed video stream is made up of a group of pictures (GoP). A GoP comprises a series of intra-coded (I), predicted (P) and bidirectional predicted (B) frames. I frames are self-contained and do not require other frames to be decoded. P frames are dependent on their preceding I frames to be correctly decoded, and B frames are dependent on both preceding and following I and/or P frames to be correctly decoded. Although the actual number of I, P and B frames in a GoP depends upon the size of the GoP used, the number of B frames is at least twice the number of I and P frames combined [4].
It is difficult to estimate the impact of the loss of I and P frames on the video quality [5]. However, since B frames encode differential information with respect to the past and future I and P frames, their loss has the least impact on the quality of the video. Therefore, in this work, we assume that the base station uses lossless allocation policies [2] to allocate sufficient resources for the lossless transmission of I and P frames, and the lossy transmission proposed here impacts only the B frames of a video stream.

Related Literature
In this section, we present the relevant state of the art for the problem addressed in this work. The relevant literature can be broadly considered under the following three categories. (a) The study of problems related to optimal resource allocation in wireless multicast transmission. These include multicast transmission for video streaming, as well as other forms of data. (b) The study of the problem of joint grouping and resource allocation in wireless multicast transmission. The grouping problem refers to the problem of creating multicast groups of UEs, which could be based on the content requested by the UEs, the channel quality of UEs or, in the case of multi-layer video streaming, the number of enhancement layers that a UE can receive. (c) The study of optimal multicast streaming strategies specifically for multi-layer video transmission.
The most important literature from each of these categories is summarized in the following subsections.

Resource Allocation
A resource allocation algorithm for live video streaming that allocates resources based on the channel quality and priority of UEs is proposed in [6]. The proposed policy makes use of streaming statistics to reserve resources for UEs that have priority in the system. In [7], the authors propose a frequency domain packet scheduler (FDPS) for multimedia broadcast multicast services (MBMS) that maximizes the minimum rate achievable by UEs in a physical resource block (PRB). It uses a conservative approach that only minimizes the damage caused by the worst PRB assignment. Video delivery simultaneously using WiFi unicast and 4G multicast has been proposed in [8], with the aim of minimizing the load on 4G while maximizing the quality of video received by the user. Methods enabling multi-connectivity for multicast video streaming have been proposed in [9]. In [10], a scheduling scheme for MBMS broadcast is proposed that is focused on reducing the average latency of packets in the system. The proposed scheme starts transmission in unicast mode and gradually moves to broadcast as the number of UEs increases. In [11], the authors deal with efficient broadcasting in LTE using MBMS. The resource allocation algorithm proposed in [11] uses a water filling form of proportional fair scheduling [12,13]. In [14], an SDN-based video streaming architecture is proposed for the IP multicasting of advanced video-coded live streams. The proposed architecture aims at minimizing the bandwidth usage and cost of transcoding for live streaming. More recently, various learning techniques have also been employed to solve the problem of resource allocation in multicast streaming. In [15], deep reinforcement learning is used for resource allocation in multicast TV services.

Joint Grouping and Resource Allocation for Multicast Transmission
The problem of grouping and resource allocation for lossless multicast streaming has been studied in [1,2]. The objective of resource allocation in [1,2] is to satisfy all the multicast UEs while minimizing the number of PRBs used in doing so. In [16], the authors propose a fair and optimal resource allocation policy for MBMS. It is assumed that the video content is simultaneously available through unicast and MBMS and the primary problem seeks to jointly optimize the grouping of UEs and the allocation of resources to unicast and MBMS services. In [17], the problem of joint power allocation and subgrouping is addressed in a non-orthogonal multiple access (NOMA)-based multi-layer multicast streaming system. The algorithms proposed in [17] are aimed at achieving the minimum target rate and proportional fairness for the base layers of the video streams that carry the most essential content. The problem of joint user grouping, version selection and resource allocation for multicast streaming in a cloud RAN framework has been studied in [18].

Multi-Layer Video Transmission
Resource allocation for MBMS operation on-demand has been studied in [19]. The authors consider quality of experience (QoE) metrics such as user engagement, instead of quality of service (QoS) metrics such as throughput, as the utility functions to be maximized by the resource allocation schemes. All the video streams are assumed to be encoded using scalable video coding (SVC). In [20], convex optimization is used to obtain an optimal solution for the multicasting of dynamic adaptive streaming over HTTP (DASH) [21] and for SVC streaming of content over LTE. The problem optimizes the modulation and coding schemes and the forward error correction code rates used while allocating resources. An adaptive resource assignment scheme for scalable video multicast has been proposed in [22], with the objective of maximizing the long-term quality of experience of the system.
In [23], the authors use a pricing-based scheme for the allocation of resources to multicast groups streaming SVC video content. Users are divided into three multicast groups based on the price that they pay. The UEs that pay the most receive the maximum number of enhancement layers. In [24], the authors investigate the use of random network linear coding (RNLC) to improve the performance of multicast services. They use two different forms of RNLC for the multicasting of H.264/SVC videos in a generic cellular system. The authors in [25] deal with optimizing the delivery of network-coded SVC content using MBMS. They make use of unequal error protection to ensure the reliability of multi-layer video transmission. A resource allocation model that provides better coverage than conventional multi-rate transmission is also proposed in [26].

Contributions
Existing approaches do not leverage the unique loss-tolerant nature of video streams to optimize resource allocation in multicast video streaming. This work exploits this property to design efficient resource allocation policies for video multicasting. A loss-tolerant mechanism for video streaming is proposed that allows for controlled packet losses without significantly impacting the quality of service. Each UE has a certain tolerance for loss, which could be a function of several factors, such as the type of video being streamed, the type of subscription (for instance, a costlier subscription would imply lower loss tolerance), the device being used to stream the video or the channel quality experienced by the UE.
Moreover, most of the existing wireless multicast literature assumes the rate achievable by a UE to be the same across all PRBs. This assumption significantly simplifies the resource allocation problem. Without the channel variability over PRBs, all PRBs are equivalent for a multicast group/UE and the problem of resource allocation is simplified to only determining the number of PRBs to be allocated to a multicast group. This work takes into account the fact that, due to fast fading, the CQI of a UE may also vary for different PRBs within a sub-frame. Therefore, while determining the allocation of PRBs to groups, the identity of the PRBs to be allocated also needs to be specified.
The main contributions of this paper are summarized below. Since multicast services in fifth-generation (5G) communications are termed MBMS, the terms MBMS and multicast services will be used interchangeably through the rest of this paper.

•
A loss-tolerant mechanism for multicast video streaming is proposed that exploits the loss-tolerant nature of videos to improve the system performance and utilize the available bandwidth more efficiently. The proposed mechanism allows for controlled packet losses while satisfying the quality of service requirements of the users. • The problem of resource allocation in loss-tolerant MBMS systems is converted to the problem of stabilizing a fictitious virtual queuing system. It is proven that stabilizing the constructed virtual token queues is equivalent to satisfying the loss requirements of the users (Section 4). • Two loss-optimal policies are proposed for the allocation of resources in loss-tolerant MBMS systems, namely loss optimal resource allocation (LORA) and priority LORA (p-LORA). An algorithm for the efficient polynomial time implementation of these policies is also provided (Section 5). These policies do not require any statistical information about the channel states of users. Channel states can vary arbitrarily and can also be correlated across users. The proposed policies are optimal in the sense that they can satisfy the loss requirements of all the UEs whenever any other policy, including offline policies with complete information of channel states of users, can do so. • The performance of the proposed policies is evaluated using extensive simulations. Since these policies are designed for video streaming, traces from actual videos [4,5] are used to simulate realistic video traffic patterns (Section 6).
Unlike the multicast streaming mechanisms in the existing literature (Sections 1.1.1 and 1.1.2), the proposed loss-tolerant streaming mechanism allows a larger number of users to be served within the same spectral resources and avoids network congestion during peak traffic hours. Contrary to conventional multicast transmission [2,16], loss-tolerant streaming reduces the dependence of a multicast group on the UE with the worst channel quality, as the resource allocation policy is no longer constrained to serving every UE in every sub-frame. Therefore, the transmission rates in some sub-frames may be higher than what can be decoded by the weakest UEs, resulting in higher system throughput and better user satisfaction.
Although we do not consider multi-layered video transmission in this work, the proposed policies can also be extended to these applications by considering each enhancement layer as a separate stream. In this case, the loss tolerances would also be a function of the enhancement layer being transmitted.

Notation
Vectors are written in boldface letters, e.g., B = (B 1 , . . . , B N ) T . The set of integers up to n is denoted as [n] = {1, 2, . . . , n}. As a shorthand, we use [x] + = max{x, 0}. The probability and expectation operators are denoted by Pr and E, respectively. An overview of the most commonly used variables' notation can be found in Table 1.
Queue length of UE k in sub-frame t Equation (7)

System Model
Consider a 5G multicast system with L different video streams. There are M UEs in the system, each subscribed to one of the L video streams. UEs subscribed to video stream i ∈ {1, 2, . . . , L} form multicast group G i and the number of UEs in G i is denoted by K i . The index of the group that UE k belongs to is denoted by i(k), i.e., if UE k belongs to the group G j , then i(k) = j. Thus, [M] and [L] denote the set of UEs and the set of multicast groups, respectively. In each sub-frame, there are N ≥ L PRBs that can be assigned to the groups. Since these PRBs are typically shared with other types of data transmission in the system, each multicast group G i is allocated at most one PRB in each sub-frame.
For each of the L video streams, a data packet arrives at the beginning of each subframe and is transmitted in the same sub-frame. The size of the arriving packet for group G i , along with the length of a sub-frame, determines the rate R i (in bits/second) at which the data needs to be transmitted to its subscribers. Therefore, whenever a PRB is allocated to multicast group G i , data is transmitted in this PRB at the corresponding rate R i .
In each sub-frame t ∈ N, the resource allocation policy Γ decides which PRB is allocated to which group. This allocation in sub-frame t is denoted in form of the allocation vector B Γ [t] of length L given by where B Γ i [t] = j ∈ {0, 1, . . . , N} describes that PRB j is allotted to G i in sub-frame t. However, if B Γ i [t] = 0, it means that group G i is not scheduled for reception in this subframe. The policy Γ in sub-frame t is completely defined by the value of B Γ [t].
The channel states of the UEs vary across time and frequency. As a result, the channel experienced by a UE varies from one sub-frame to another and also across the PRBs within a sub-frame. There is a certain maximum rate r kj [t] that UE k can successfully decode in PRB j of sub-frame t [27]. This rate is a function of the CQI experienced by the UE in this PRB. Since data is transmitted to group G i at rate R i , a UE may not receive the MBMS content successfully, even after a PRB has been assigned to its multicast group. A UE is said to have been served in a sub-frame if and only if the UE successfully receives data in this sub-frame. Therefore, even if the group of the UE is scheduled for reception in a sub-frame, the UE itself may or may not be served in this sub-frame. We distinguish between these two terms as follows. • A UE is scheduled in a sub-frame, if a PRB is allocated to its group in this sub-frame.
A UE is served in a sub-frame, if it has been scheduled in that sub-frame and is able to successfully receive the transmitted packet. More precisely, Recall that for each video stream i, a packet arrives at the beginning of each sub-frame. Therefore, if a UE is not served in a sub-frame, it experiences a packet loss. We denote the loss encountered by UE k under policy Γ in sub-frame t by Γ All UEs in the system can tolerate some degree of packet loss. This loss tolerance may differ from UE to UE depending upon the channel conditions experienced and the video resolution chosen by them. A higher resolution would typically imply lower loss tolerance and vice versa. For all k ∈ [M], we denote by˜ k the fractional loss that can be tolerated by UE k. The loss tolerance vector for the system is given bỹ Within this framework, the objective of the resource allocation problem is to allocate PRBs to the multicast groups such that the average loss encountered by every UE k is below its tolerable loss˜ k .

Example 1.
In order to illustrate the described model, we consider a simple example of M = 5 UEs, each subscribing to one of L = 3 streams. In particular, users 1, 2, and 4 form group G 1 , while users 3 and 5 are groups G 2 and G 3 , respectively. In each sub-frame, there are N = 2 PRBs available. For this example, we assume that the policy Γ assigns PRB 1 to group G 3 and PRB 2 to The frame that needs to be transmitted for video stream 1 has a size of 100 kbit, while the packet of stream 3 is 80 kbit. Since the length of a sub-frame in 5G-NR is 1 ms, the required data rates for groups 1 and 3 are R 1 = 100 Mbit/s and R 3 = 80 Mbit/s, respectively. Assuming that the users can decode packages up to rates r 1 = 120 Mbit/s, r 2 = 90 Mbit/s, r 4 = 100 Mbit/s, and r 5 = 90 Mbit/s, we find that users 2 and 3 experience losses due to not being able to decode and not being scheduled, respectively. The loss vector for this example is therefore given according to (2) as Γ [t] = (0, 1, 1, 0, 0) T .

Problem Definition
The main problem considered in this work is to find an efficient resource allocation policy that satisfies the different loss tolerances of the UEs. For the exact formulation of the problem, we require the following definitions.

Definition 1 (Feasible resource allocation).
Resource allocation under policy Γ in sub-frame t is said to be feasible if, at most, one PRB is assigned to each multicast group and no two groups are assigned the same PRB. More precisely, a feasible allocation vector Definition 2 (Feasible resource allocation policy). A feasible resource allocation policy Γ is a policy that chooses a feasible allocation vector in each sub-frame.
A resource allocation policy can make use of the knowledge of the current channel states of the UEs, the allocation information of the previous sub-frames, the loss tolerance of the UEs, and the losses encountered by the UEs in the previous sub-frames to make allocation decisions in a sub-frame. It could also be an off-line policy that has prior knowledge of the channel conditions of all sub-frames in advance. However, we will show in the following sections that this prior knowledge does not improve the performance and that the proposed policies achieve optimal performance without requiring any knowledge of future channel conditions.

Definition 3 (Average packet loss). The average packet loss encountered by UE k under resource allocation policy Γ is the packet loss per unit time given by
The vector of the average packet losses of all UEs is given by The feasible region of a resource allocation policy and that of the system can now be defined as follows.
Definition 4 (Feasible region of a policy). The feasible region of a resource allocation policy Γ, denoted by L Γ , is the set of all loss tolerance vectors˜ that can be satisfied by Γ, i.e., where˜ is defined in (3) and Γ in (4).
Definition 5 (Feasible region of the system). The feasible region of the system is the set of loss vectors L = Γ L Γ where the union is over all feasible policies Γ.
Using the above definitions, the optimal resource allocation policy can now be defined as follows.
Definition 6 (Optimal resource allocation policy). The optimal resource allocation policy Γ is a policy for which the feasible region is given by L Γ = Γ L Γ .
Problem Statement. Based on the above definitions, the main objective of this work is to determine the optimal resource allocation policy Γ from Definition 6.

Remark 1.
While the focus of this work is on video streaming, it should be emphasized that the considered problem and our proposed resource allocation framework are not uniquely applicable to video streaming, but more generally to any loss-tolerant multicast transmission.

A Virtual Queuing System for Multicast Resource Allocation
In this section, we show that the considered problem can be solved by converting it into the problem of stabilizing a queuing system. In particular, we construct a virtual queuing system Q, which consists of a token queue for each UE. The term token is used to refer to the virtual entities that make up the queues, and the tokens are used to keep track of the losses of the individual UEs. The basic idea is that tokens in each queue arrive at a rate proportional to the loss tolerance of the corresponding user. For users with stricter reliability constraints, i.e., lower loss tolerances, more tokens arrive on average. Whenever a UE is served, a token is removed from the corresponding queue. Thus, the length of the queue of a user is an indicator of how much loss a user has encountered. The state of this queuing system is completely described by the lengths of these virtual queues. An overview of the system is depicted in Figure 1.
is a binary random variable indicating the arrival of a token to the queue of UE k in sub-frame t and has the expected value λ k = 1 −˜ k . Therefore, if the virtual queue k with this expected arrival rate λ k is stabilized, we ensure that UE k is served in at least 1 −˜ k of the sub-frames. Arrivals across sub-frames are assumed to be independent and identically distributed. Across users, the arrival processes are assumed to be independent. The system arrival rate vector is denoted by Denote by µ Γ k [t] the binary random variable that indicates whether or not UE k has been served in sub-frame t under policy Γ, i.e., µ Γ k [t] is given by Let Q Γ k [t] denote the length of queue k at the beginning of sub-frame t under policy Γ. For all k ∈ [M], the queue length Q Γ k [t] evolves according to the following: As mentioned above, we will show in the following that stabilizing the virtual queuing system Q provides a solution to the originally considered resource allocation problem. For this, we introduce the following definitions.
Definition 7 (Stability of Q). The constructed queuing system Q is said to be stable under a feasible resource allocation policy A resource allocation policy that stabilizes Q is called a stable resource allocation policy. The stability region of a stable resource allocation policy and the queuing system Q are defined as follows.
Definition 8 (Stability region of Γ). The stability region S Γ of a stable resource allocation policy Γ is the set of arrival rate vectors for which the system is stable under Γ.
Definition 9 (Stability region of Q). The stability region S of the queuing system Q is the union of the stability regions of all stable resource allocation policies, S = Γ S Γ , where the union is over all stable Γ.
Definition 10 (Throughput optimality). A resource allocation policy Γ is said to be throughputoptimal [28] if Γ can stabilize the queuing system Q provided that the queuing system is stabilizable.
Since the eNodeB (eNB) knows both the loss requirements and the channel states of the UEs, it has all the information needed to maintain the virtual queuing system. In the following, we establish the relationship between the stability region of the constructed queuing system and the feasible region of the optimal resource allocation policy Γ from Definition 6.

Feasible Region of the Optimal Resource Allocation Policy
In this section, we prove that stabilizing the constructed virtual queuing system Q is equivalent to meeting the loss requirements of all UEs in the system. This establishes the equivalence between the stability region of Q and the feasible region of the optimal resource allocation policy Γ defined in Definition 6. The consequence of establishing this equivalence is that designing a resource allocation policy that stabilizes Q is equivalent to solving the originally considered problem.
Let B = {B 1 , . . . , B |B| } be the set of all feasible allocation vectors of the form in (1). The cardinality of B is given by where N is the number of PRBs in a sub-frame and L is the number of multicast groups. In 5G communication systems, channel states are identified using a finite number of integral values termed the CQI values. The Third Generation Partnership Project (3GPP) standards [29] define a total of 15 CQI values. Since the number of CQI values is finite, the possible channel states of UEs can only take a finite number of values. Define set C that contains all possible CQI combinations of the M UEs in the system, i.e., for D ∈ N distinct CQI values, C will be a set of D M CQI vectors, each of length M. Let g denote the probability distribution over the set C such that, for all C ∈ C, the probability of the system being in the CQI state C is g(C). Denote by µ B i C ∈ {0, 1} M the service vector of the UEs corresponding to allocation B i ∈ B in CQI state C ∈ C. We use µ C = {µ B i C } B i ∈B to denote the set of possible service vectors in channel state C. For a given C ∈ C, define a distribution w C = {w B i C } over the set of µ B i C , where w B i C denotes the probability of choosing allocation B i in channel state C.
Therefore, within this virtual queuing system, we are required to find a distribution {w C } C∈C that satisfies the following set of constraints for δ > 0: where the constraint in (8a) ensures the stability of the virtual queuing system by imposing that the service rates of the virtual token queues are higher than their respective arrival rates, and (8b) and (8c) ensure that {w C } C∈C is a valid probability distribution. Therefore, a policy whose assignment decisions follow the distribution {w C } C∈C would be able to stabilize the virtual queuing system Q.
Denote by Λ(δ) the set of arrival rate vectors λ such that the feasible region of P(δ) is non-empty. We define the sets Λ • and Λ as The sets Λ • and Λ provide a means of characterizing the stability region of the constructed virtual queuing system. As we will see in the subsequent results, these sets enable us to establish the relationship between the feasible region of the optimal resource allocation policy for our system and the stability region of the constructed virtual queuing system. The following theorem provides the relationship between Λ • , Λ, and the stability region S of the queuing system Q from Definition 9.
Proof. Detailed proof is given in Appendix A.
From here on, we consider Λ • to be the stability region of Q since the region Λ • is well defined for the constructed virtual queueing system. Moreover, since Λ • ⊆ S, all the arrival rate vectors in Λ • are stabilizable.
With this result, we are now able to state the main contribution of this section, which establishes the relation between the feasible region of the optimal resource allocation policy L Γ from Definition 6 and the stability region S from Definition 9. Proof. Detailed proof is given in Appendix B.
Theorem 2 establishes that the stability region of the virtual queuing system is the same as the feasible region of the optimal resource allocation policy Γ . Henceforth, we focus our attention on stabilizing the token queues corresponding to each UE knowing that, by Theorem 2, stabilizing the token queues of the UEs will ensure that their respective loss requirements are met.

Resource Allocation Algorithms for Loss-Tolerant Multicast Streaming
In the loss-tolerant MBMS systems under consideration, the UE is satisfied as long as the losses encountered are kept below the acceptable thresholds. In this section, we propose loss-optimal resource allocation policies that can meet the loss requirements of all UEs in the system.

Loss-Optimal Resource Allocation (LORA)
LORA makes scheduling decisions in a sub-frame t based on the token queue lengths Q k [t] of the users. Throughout the following, we use Γ 0 to denote LORA. In each subframe t, Γ 0 chooses a service vector µ Γ 0 [t] according to the following: where µ Γ 0 k [t] is the service rate of UE k in sub-frame t under Γ 0 . The intuition behind this is that Γ 0 maximizes the sum of the queue lengths of the UEs served in sub-frame t. As we have already established in Section 4, stabilizing the token queues ensures that the loss requirements of all UEs are met. Thus, in order to prove that Γ 0 can successfully meet the loss requirements, it is sufficient to show that Γ 0 stabilizes the virtual queuing system. Theorem 3 (Throughput optimality of Γ 0 ). For any stabilizable arrival rate vector λ, Γ 0 stabilizes the queuing system.

Proof. Detailed proof is given in Appendix C.
This theorem implies that as long as the system is stabilizable, i.e., there exists some policy Γ that can stabilize the queuing system, so can Γ 0 . Note that Γ is not restricted to using the same information that is available to Γ 0 . In fact, Γ could use information from the past and future allocations and channel conditions to make allocation decisions. However, the LORA policy Γ 0 only uses the current state of the queuing system to make the scheduling decisions.
With LORA, we now have a loss-optimal policy that meets the loss requirements of users by making allocation decisions based on the UEs' token queue lengths. However, in addition to the amount of packet loss in a video stream, we would also like to control the pattern in which these losses occur. Even if a user has high tolerance for loss, we would like to avoid a large number of consecutive packet losses in order to improve the QoE. Starving users for a large number of consecutive sub-frames may lead to user dissatisfaction and result in users leaving the multicast session. Therefore, a loss-tolerant resource allocation policy should also restrict the number of consecutive packet losses encountered by a UE, in addition to the long-term average packet loss. We propose such a policy in the following. This policy ensures that users do not remain unserved for long periods at a time, which leads to better loss performance and the reduced burstiness of packet losses.

Priority LORA (p-LORA)
Similar to LORA, p-LORA also makes scheduling decisions in sub-frame t based on the queue lengths Q k [t]. However, in p-LORA, we use an additional priority vector to increase the probability of serving a previously unserved UE. A similar approach has also been used in [30] to design a regular service guarantee algorithm for a wireless network. In the following, we use Γ P to denote the p-LORA policy.
In every sub-frame t, Γ P chooses service vector µ Γ P [t] according to the following: where c k [t] is the priority weight ascribed to the token queue of UE k and s is a positive constant. The priority weight c k [t] is defined as with κ > 0 being the maximum value that the priority weights can take. Additionally, for all k ∈ {1, 2, . . . , M}, we set c k [0] = 0. Denote byc[t] = (c 1 [t], . . . , c M [t]) the vector of the priority weights of all the queues in sub-frame t. Increasing c k [t] increases the contribution of UE k in (11), which increases its likelihood of being served under Γ P .
We now prove that Γ P is throughput-optimal, i.e., Γ P will stabilize the queuing system if any other policy can do so.
Theorem 4 (Throughput optimality of Γ P ). For any stabilizable arrival rate vector λ, Γ P stabilizes the queuing system.

Proof. Detailed proof is given in Appendix D.
In the next section, we present the generalization of the exponential queue length (EXP-Q) rule, which was proposed in [31]. The EXP-Q rule is a well-known throughput-optimal policy for the scheduling of multiple flows over a time-varying wireless channel, such that the maximum delay encountered in the system is minimized [32]. The rule, however, considers that there is a single channel that can be used by one flow at a time. Therefore, we propose the generalization of EXP-Q for use with multicast transmission and multiple channels. It serves as a benchmark for the performance evaluation of our proposed policies.

Generalized Exponential (Queue Length) Rule (Γ E )
The EXP-Q rule [31] schedules a single queue k in a time slot t such that where µ k [t] is the rate of service of queue k in sub-frame t; a k , γ k , and η are constants; and The EXP-Q rule is designed for use in a system where a single time-varying channel is shared by multiple flows. Since our considered system requires the allocation of multiple flows to multiple channels (in the form of PRBs), the EXP-Q rule cannot be used in the existing form. Therefore, we generalize it as described in the following. The generalized version of the EXP-Q rule is denoted by Γ E . Since we have multiple channels available and multiple groups can be scheduled for service in a sub-frame, the policy has to determine an allocation vector B Γ E [t] instead of choosing a single entity to be scheduled in a sub-frame. As defined in Section 3, B Γ E [t] is a vector that specifies which PRB is allocated to which multicast group. We define Γ E as the policy that chooses service vector µ Γ E [t] according to the following: where µ The mapping from the service vector µ can be accomplished as follows. Since we assume perfect CSI at the eNB, given a channel state C in sub-frame t, the eNB knows µ C = {µ B i C } B i ∈B , the set of possible service vectors in channel state C. Therefore, if µ Γ E [t] = µ B i C , allocation vector B Γ E [t] = B i is chosen.

Computational Complexity
All the resource allocation policies discussed in this section have a brute force computational complexity of O M( N L )L! . This makes them unsuitable for use in practical systems unless we can find efficient means of implementing them. We show that these policies can be implemented in polynomial time using a maximum weight bipartite matching (MWBM) [33]. We discuss the details of this implementation in the next subsection.

Polynomial Time Implementation
We make use of MWBM for an efficient polynomial time implementation of the resource allocation policies proposed in this section. The MWBM reduces the computational complexity of their implementation to O(NL 2 ), where N is the number of PRBs in a subframe and L is the number of multicast groups. Thus, the policies can be implemented in polynomial time.
We begin with the construction of the underlying bipartite graph, which is the same for all the policies, except that the edge weights are different for each policy. In the following, we discuss the implementation for Γ 0 in detail. The procedure and proof can be directly used for Γ P and Γ E as well with modified edge weights. The modifications involved will be specified at the end of this section.
Construct a bipartite graph G = (U, V, E), where vertex set U is the set of L multicast groups and vertex set V is the set of N PRBs. We define the service rate of UE k ∈ G i in PRB j in sub-frame t as follows: (6) denotes the service rate for UE k under policy Γ in sub-frame t. Since we need to denote the service rate for a UE in each PRB here, we employ a different notation to avoid ambiguity with the service rate vector of a policy. The weight of an edge In the following lemma, we show that an MWBM of G that matches each vertex in U to a unique vertex from V results in allocation equivalent to Γ 0 . Lemma 1. Maximum weight bipartite matching for graph G, as described above, results in resource allocation according to policy Γ 0 .
Proof. Detailed proof is given in Appendix E.
The same MWBM can be used to implement Γ P and Γ E by changing the edge weights. For Γ P , the edge weights are given by and, for Γ E , the edge weights are In the next section, we present the numerical results of simulations performed to evaluate the performance of the proposed resource allocation schemes.

Simulations
We study the performance of the proposed allocation algorithms in an MBMS system. We consider a cell with UEs distributed uniformly at random through the cell. There are L = 5 MBMS video streams available in the cell and each UE is subscribed to one of these streams. In our simulations, the same number of UEs are subscribed to each stream. All the UEs subscribed to the same video stream form a multicast group and receive the relevant content on the same PRBs. We use the MATLAB-based simulator designed in [34] for the numerical simulations. To create 5G-specific physical layer conditions, we create channels using the models recommended by 3GPP [27]. Signal-to-noise ratio (SNR) to CQI and CQI to rate mappings have been performed according to the 3GPP specifications [27]. Other relevant simulation parameters are listed in Table 2. As described in Section 2, for each stream, a packet arrives at the beginning of a sub-frame and is transmitted in the same sub-frame at the required rate. Each UE can tolerate some amount of packet loss. We observe the packet loss encountered by the UEs under the proposed policies and compare their performance with that of the modified EXP-Q rule.
Since the proposed policies are intended for use with video streaming services, we use traces from actual videos to generate realistic video traffic patterns in the simulations. These video traces have been obtained from the Arizona State University Video Trace Library (http://trace.eas.asu.edu/ (accessed on 23 July 2019)) [4,5]. The videos used are Silence of the Lambs, Star Wars IV, the Tokyo Olympics, NBC News, and a Sony Demo. All videos are H.264/AVC, encoded with a GoP size of 16, with 15 B frames in each group.
Since I and P frames are needed to decode other frames in a GoP, we ensure that all I and P frames are transmitted without any loss by allocating sufficient resources and transmitting at the rate corresponding to the weakest UE. We use the proposed lossy allocation policies only to send the B frames. This is a recommended practice in network simulations with video traces [5], since it is difficult to estimate the impact of the loss of I and P frames on the video quality [5].
First, we compare the losses encountered by the UEs to their loss tolerances. For this, we run the simulations for the entire duration of all five videos (L = 5) with K = 50 UEs per stream. The resulting differences between the loss tolerance˜ k and the average encountered loss Γ k are shown in Figure 2. Note that negative values correspond to a violation of the loss tolerance. It can be seen that both LORA and p-LORA succeed in meeting the loss requirements of all UEs. In contrast, several users experience losses significantly higher than their tolerable limits for the modified EXP-Q rule. Next, we compare the average losses encountered by the UEs under the three schemes. For this, the encountered losses per second have been exponentially averaged for each UE individually. The average of these smoothed curves over all UEs is shown in Figure 3. It can be observed that the EXP-Q rule results in the highest average loss. Both LORA and p-LORA achieve nearly the same performance, with p-LORA only being slightly better.
After considering the average packet loss, we compare the peak signal-to-noise ratio (PSNR) degradation due to the packet losses in Figure 4. The PSNR is widely regarded as an important metric in evaluating the quality of a video stream [5]. In order to capture the impact of each resource allocation policy on the PSNR of the transmitted videos, we plot the differences between the PSNR of the transmitted and received video streams, which we term PSNR degradation. This is calculated as follows.
The video traces obtained from the ASU repository contain the PSNR values of each frame in a video trace. Using these, the PSNR of a GoP is obtained by adding the PSNR values of the frames in this GoP. We then find the average PSNR of a video stream as the average over all the GoPs in this stream. This is used as the representative PSNR value for the transmitted video stream. The PSNR of the video stream received by a UE is similarly calculated by taking the sum of the PSNR values of the frames that were successfully received by this UE within a GoP, followed by averaging over all the GoPs. We then calculate the average received PSNR of a stream by taking the average of the PSNR values over all the UEs in the group. Finally, the PSNR degradation is calculated as the difference in the average PSNR of the transmitted and received video streams. From the figure, it can be seen that EXP-Q leads to the largest degradation in the PSNR. Both LORA and p-LORA result in significantly less loss in the PSNR of the received video streams.

Silence
Star As discussed in Section 5, in addition to the amount of packet loss, the pattern in which the losses occur also has a significant impact on the user experience. While a certain amount of loss spread (more or less) evenly throughout a session may not result in a significant degradation in video quality, concentrated packet loss in a video stream can be extremely annoying and cause the UEs to leave the session. To compare the burstiness of the losses for the different policies Γ, we plot the differences between the encountered losses Γ [t] in a given second t and the average loss Γ in Figure 5. Whenever the current loss Γ is much larger than the average, a large amount of packet loss has occurred in a short period of time. As a result, the video quality is significantly worse than the average, and the users experience a degradation in the quality of service. This behavior is clearly seen for both the EXP-Q and LORA policies. On the other hand, the peaks are smaller for the p-LORA algorithm, which is specifically designed to avoid bursts of packet loss.
These simulation results clearly demonstrate the effectiveness of the proposed policies. The use of traces of actual videos further strengthens the case for the use of loss-tolerant allocation policies to stream video content. After having shown that the proposed algorithms work effectively on real video stream data, we now focus on the influences of different parameters. In particular, we consider a varying number of video streams L and users per video stream K in the following. For the traffic data, we again use the realistic video content from the above simulations.
First, we compare the average computational time of the LORA and p-LORA algorithms in Table 3. It can be noted that the times are very similar for both algorithms. As expected, the computational effort increases both with the number of multicast groups L and the number of users per group K. However, the computational times in the simulation do not purely depend on the total number of UEs in the system LK, but also on the individual parameters. While, at L = 3 and K = 200, the total number of users is 600, the time of around 0.6 ms is less than the required time of around 0.8 ms for the parameters L = 5 and K = 100 (with a total of 500 UE). This observation that the number of video streams has a greater influence on the computational complexity matches the theoretical results derived in Section 5.5. Table 3. Average time taken for resource allocation using the MWBM implementation of the LORA and p-LORA algorithms. Each row represents a different number of video streams L and each column represents different number of UEs K subscribed to each stream. The first number indicates the time required to run the LORA algorithm, while the number in parentheses is for p-LORA. Next, we analyze the packet losses for different combinations of L and K. In Figure 6, we show the average losses for the three algorithms LORA, p-LORA, and EXP-Q. The average is taken both with respect to the users and over time. First, it can be seen that the average loss increases for all algorithms with an increasing number of users per stream. This is because, as the number of users subscribed to a video stream increases, a larger number of users are likely to experience poor channel conditions, which in turn increases the average loss incurred by the users. For an increasing number of parallel streams, the average loss reduces. Similar to the results in Figure 3, LORA and p-LORA achieve nearly the same performance, with p-LORA being slightly better. However, both algorithms outperform the EXP-Q method.

Conclusions
Video streams can tolerate a certain amount of packet loss without a significant degradation in the quality perceived by the end user. In this paper, we have leveraged this property to improve the performance of multicast video streaming in MBMS. In particular, we have considered an MBMS system where users can tolerate a certain amount of packet loss depending on the type of video that they are streaming and the quality of their channel. For such a system, we have addressed the resource allocation problem by constructing a virtual queuing system to represent the actual loss-tolerant MBMS system. It has been shown that an optimal resource allocation policy corresponds to a policy that stabilizes the constructed virtual queuing system. Furthermore, we have proposed two algorithms, namely LORA and p-LORA, for resource allocation in loss-tolerant multicast video streaming services. Both LORA and p-LORA are optimal in the sense that their resulting resource allocation fulfills the loss requirements of all the users. Interestingly, this also implies that no policy can perform better, even if it uses information about future channel states. Additionally, we have proposed an MWBM algorithm that provides an efficient polynomial time implementation of the proposed policies. To compare our policies, we have modified the EXP-Q rule [31] for use in multicast transmission systems with multiple channels.
We have performed extensive simulations using video traces from actual video streams [5] to study and compare the performance of LORA, p-LORA, and the modified EXP-Q rule. As expected, both LORA and p-LORA are able to meet the loss requirements for all users, while EXP-Q violates this constraint for some UEs. The simulation results indicate that p-LORA achieves the smallest amount of packet loss and the best PSNR of all these policies. Therefore, we can conclude that the use of this policy to stream video content in MBMS can significantly reduce the resource utilization of video streaming services, while simultaneously satisfying the users' video quality requirements.

Data Availability Statement:
The video traces used for the simulations in Section 6 are part of the Arizona State University Video Trace Library (http://trace.eas.asu.edu/) [5].

Conflicts of Interest:
The authors declare no conflict of interest.

Abbreviations
The following abbreviations are used in this paper:

3GPP
Third We begin by constructing the following randomized resource allocation policy Γ δ based on the set of constraints P(δ) in (8).
Definition A1 (Randomized allocation policy Γ δ ). Γ δ chooses an allocation vector in a subframe according to a feasible solution w C of P(δ). If the system is in channel state C, Γ δ chooses allocation vector B i with probability w B i C , i.e., Pr(B Γ δ [t] = B i | C(t) = C) = w B i C , ∀ t, and decisions across sub-frames are independent. δ is an input parameter for Γ δ .
The definition of Γ δ will be used to prove various results in this and the following sections. Consider the arrival rate vector λ = (λ 1 , . . . , λ M ) T ∈ Λ • . By the definition of Λ • in (9), there exists δ > 0 such that P(δ) is feasible for arrival rate vector λ. Let w C = {w B i C } denote a feasible solution of P(δ). Therefore, we can use policy Γ δ to make scheduling decisions in each sub-frame according to w C . Let A k [t] denote the arrival process of queue k, with A k [t] = 1 if there is an arrival to queue k in sub-frame t and 0 otherwise. D Γ δ k [t] denotes the departure process of k under Γ δ . We have D Γ δ k [t] = 1 if a token departs from k under Γ δ in sub-frame t and 0 otherwise. Therefore, the evolution of the queue length of queue k under Γ δ is given by where Q The state of the queuing system in a sub-frame can be completely defined by the queue lengths of all the token queues in the sub-frame. We denote the state of the system in sub-frame t by the vector ]. Since the scheduling decisions made under Γ δ only make use of the current state of the system, the evolution of the states of the system {Q[t]} t≥0 under Γ δ forms a discrete time Markov chain (DTMC). This DTMC is countable, irreducible, and aperiodic. We prove this in the following result. Irreducible: The DTMC can transition from any state Q to a state Q in the following steps: 1. Schedule all UEs for service until all queues are empty. This is accomplished in max k Q k sub-frames.

2.
For the next max k Q k sub-frames, the token queue of UE k has an arrival and no departure for the first Q k sub-frames. In the remaining (max k Q k − Q k ) sub-frames, there is no new arrival and no departure. At the end of this step, the DTMC is in state Q .
These steps define at least one path of length (max k Q k + max k Q k ) from any state Q to any other state Q . Therefore, the DTMC is irreducible.
Aperiodic: If the DTMC is in state Q[t] and no new token arrives in any queue and no queue is scheduled for service, the state of the DTMC remains unchanged. Therefore, self-loops exist and the DTMC is aperiodic.
We now begin the proof of Theorem 1. This is done in two steps. First, we establish in Lemma A2 that Λ • ⊆ S, and we then show that S ⊆ Λ in Lemma A3. Lemma A2. Every λ ∈ Λ • is a stabilizable arrival rate vector. Hence, Λ • ⊆ S. Thus, by Foster's theorem [36], the DTMC is positive recurrent, so the expected queue lengths in the queuing system are finite. Therefore, Γ δ stabilizes the system for arrival rate vector λ ∈ Λ • . Thus, λ ∈ S, which implies that Λ • ⊆ S.
This proves the first part of our result. We now need to show that S ⊆ Λ. In the interest of simplicity of notation, we assume that, under a policy Γ that stabilizes the system, the following limit exists with probability 1: where 1 Γ B i C [t] is an indicator random variable that is 1 if allocation vector B i is chosen by Γ under channel state C in sub-frame t and zero otherwise. Now, consider the following sets of sample paths.
A 1 : The set of sample paths on which the strong law of large numbers (SLLN) holds for the arrival rates, i.e., → λ k as t → ∞, ∀ k. This is a probability 1 set, i.e., Pr(A 1 ) = 1. → g(C) as t → ∞, ∀ C (SLLN holds), where 1 {C(t)=C} is an indicator random variable that is 1 if the channel state in subframe t is C and 0 otherwise. Since g is a probability distribution over the set of channel states C, we have Pr(A 2 ) = 1. A 3 : The set of sample paths on which the service rate under Γ is greater than or equal to λ.
Since Γ stabilizes the system, we have Pr(A 3 ) = 1. A 4 : The set of sample paths over which the limit in (A3) exists. Since we assume that this limit exists with probability 1, Pr(A 4 ) = 1. Since A 1 , A 2 , A 3 , A 4 are probability 1 sets, their intersection, A = 4 i=1 A i , is also a probability 1 set. We refer to the sample paths belonging to this set A as non-trivial sample paths. We now prove the second part of our result. Lemma A3. If λ / ∈ Λ, then λ / ∈ S. Thus, S ⊆ Λ.
Proof. We prove this result using a contradiction. Let λ / ∈ Λ be a stabilizable arrival rate vector, i.e., λ ∈ S. Since λ is a stabilizable arrival rate vector, there exists some allocation policy Γ that can stabilize the system for arrival rate λ. We observe the scheduling decisions made by this Γ along a non-trivial sample path from the set A = 4 i=1 A i . Let v B i C denote the fraction of time for which Γ chooses the allocation vector B i in channel state C along such a sample path. Since Γ stabilizes the system, the rate of departures must equal the arrival rate in the system. Therefore, it follows that This implies that v = {v B i C } is a feasible solution of P(δ) and that which is a contradiction. Therefore, λ / ∈ Λ is not stabilizable, i.e., any stabilizable λ must be contained in Λ. Hence, we have that S ⊆ Λ.
From Lemmas A2 and A3, we have Λ • ⊆ S ⊆ Λ, which is the required result.

Appendix B. Proof of Theorem 2
We need to show that the loss requirement of a UE is met if and only if its token queue in the queuing system is stable. First, we argue that the stability of the queuing system implies that the loss requirements of the UEs are met. If the queue corresponding to UE k is stable, it means that there exists a policy Γ that stabilizes the queue for λ ∈ Λ • . We can, therefore, construct a randomized policy Γ δ as defined in Definition A1 above. Under Γ δ , the rate of service is greater than λ k , which means that UE k is served in more than (1 −˜ k ) of the sub-frames. Therefore, the loss encountered by UE k is less than˜ k and its loss requirement is met. Now, let us assume that the loss requirement of UE k is met. We show that this ensures the stability of its token queue. Since the loss requirement˜ k is achievable, there exists a policy Γ that satisfies the loss requirement. This means that, under Γ, the UE is being served in more than (1 −˜ k ) of the sub-frames. Since the arrival rate λ k = (1 −˜ k ), the queue is served at a rate greater than the arrival rate. Hence, Γ stabilizes the token queue. From these arguments, we conclude that the loss requirement of a UE is met if and only if its corresponding token queue in the queuing system is stable. Therefore, the feasible region of the optimal allocation policy Γ , L Γ , is equivalent to the stability region of the queuing system S.