1 Introduction
-
We propose a novel QoE-based rate adaptation strategy. The proposed strategy quantifies congestion by considering video packets sojourn time in the queue at the eNodeB. Packet delay plays an important role in QoE-based video delivery. The rate adaptation policy proposed in [18] is delay-blind, which can have a significant impact on the QoE-based video delivery.
-
We propose a joint operation of QoE-aware scheduler and rate adaptation strategy. The joint operation is in contrast to the rule in [18], where packet dropping is content-aware but packet scheduling is content-blind.
-
The proposed scheduling strategy considers the service needs of other traffic classes such as delay-constrained video conferencing and delay-tolerant web browsing traffic, also referred as the best-effort traffic. Therefore, the proposed rule is not only video quality-aware but also traffic type-aware.
2 Related work
2.1 Content-aware scheduling and resource allocation at the eNodeB
2.2 Proxy-based content-aware resource allocation
3 System model and problem statement
3.1 QoE evaluation
3.2 QoE-based packet marking at P-GW
3.3 System model at eNodeB
3.4 Problem statement
4 Packet priority scheduler (PPS) for delay-sensitive priority classes
4.1 Scheduling metric
-
\(N^{(n)}_{q_{i}}\) is the number of packets currently residing in the queue of flow i at scheduling epoch n. Considering the queue status in the scheduling decision avoids buffer overflow and keeps the queues stable.
-
\(W^{(n)}_{q_{i}}\) is the weight of the HoL packet. Mathematically, it is defined as:$$ W^{(n)}_{q_{i}} = \exp\left\{\left[j^{(n)}_{i}\right]^{\overline{A^{(n)}}} A^{(n)}_{i}\right\} $$(8)where \(j^{(n)}_{i}\) is the priority class index of the HoL packet of flow i. It is important to note that our proposed weight design depends on the system load. The higher the system load, the higher will be the normalized system delay \(\overline {A^{(n)}}\), which results in a higher weight for the packets of the most important priority classes. If the system delay is low, packets from different priority classes have approximately the same weights. Therefore, the delay-based priority weight makes the scheduling rule dynamic. The impact of the exponential weight at different system loads (normalized system delay) and HoL delays is shown in Fig. 4. According to the figure, packets of priority classes 13, 7, and 1 have approximately the same weights when the normalized system delay is 0.25. Under congestion (normalized system delay of 0.75), the weight of the most important priority class increases exponentially, w.r.t. the lower priority classes, with the increase in packet’s waiting time in the queue.×
-
\(\chi ^{(n)}_{i,\varphi }\) is the channel quality, in terms of bit/s/Hz, of PRB φ. It is important to note that effective utilization of the radio resources is extremely important. We utilize the CQI feedback from user i in determining the channel quality of PRB φ. This factor makes the scheduling rule channel aware and increases the system efficiency in terms of bit/s/Hz.
-
\(R^{(n)}_{i,\text {ave}}\) is the time-averaged throughput. Mathematically, it is defined as$$ R^{(n)}_{i,\text{ave}} = R^{(n-1)}_{i,{\text{ave}}} \left(1-\frac{1}{n_{w}}\right) + \frac{1}{n_{w}} R^{(n-1)}_{i} $$(9)where \(R^{(n-1)}_{i,{\text {ave}}}\) is the average throughput at scheduling instant n−1. \(R^{(n-1)}_{i}\) is the number of bits transmitted at scheduling instant n−1. n w is the size of the time-average window. This term represents the achieved past average throughput by user i at scheduling instant n and is updated at every TTI. This provides proportional fairness in the scheduling decisions. The user experiencing the lower time-average throughput will be prioritized based on its channel conditions.
-
\(W^{(n)}_{\varphi _{i}}\) is the weight of the PRB.$$ W^{(n)}_{\varphi_{i}} = \frac {\mathrm{\chi}^{(n)}_{i,\varphi}} {{\mathrm{\mathrm{\chi}}}^{(n)}_{i}} $$(10)where$$ {\chi}^{(n)}_{i} = \frac{1}{M_{\text{PRB}}}\sum^{{M_{\text{PRB}}}}_{\varphi=1}\chi^{(n)}_{i,\varphi}. $$(11)\({\chi }^{(n)}_{i} \) is the average PRB spectral efficiency of user i at scheduling instant n. \(W^{(n)}_{\varphi _{i}}\) gives information on the variable amount of fading on the PRBs of each user. For instance, the reader can refer to Fig. 3. When the scheduler calculates the scheduling metric for PRB 2, the channel quality of the other 3 PRBs (PRB 1, PRB 3, and PRB 4) of the user is not considered. However, with \(W^{(n)}_{\varphi _{i}}\), the channel quality of all the PRBs is considered in the scheduling metric. If a user is experiencing a high interference on some of the PRBs and other PRBs have better channel quality, then this factor assigns a lower weight to the PRBs with poor channel quality. On the other hand, the PRBs with the best channel quality for a user will be assigned a higher weight, thus utilizing the independent multi-user frequency selective fading.
5 Congestion avoidance through dynamic priority class filtering
-
Under congestion, the less important packets residing in the buffer till the delay bound block packets of important priority classes. This phenomenon is also known as HoL blocking. When the HoL packets belong to the least important priority class then, under congestion, higher priority packets have to wait to be scheduled till the least important priority class packets are dropped from the buffer.
-
At high system delay, packets belonging to low importance priority classes residing in the buffer at eNodeB are dropped when their delay bound is reached. Lower priority class packets, residing in the buffer till the delay bound, increase the average system delay, which in turn increases the resource allocation probability of the most important priority classes. The system becomes strictly priority driven when the normalized average system delay is high, i.e., high system delay reduces the channel awareness of the scheduler: highest priority packets are assigned resources with reduced importance of channel quality in the scheduling decisions. This leads to a reduction in the system efficiency (bit/s/Hz).
-
The resource allocation probability of less important priority classes depends upon the system load (normalized system delay). However, due to the probabilistic arrival of the incoming traffic and stochastic nature of the wireless channel, the resource allocation probability of less important priority classes changes randomly. This leads to fluctuation in the perceived video quality of the users due to variation in the system load and wireless channel capacity. According to [49], multimedia services users would usually prefer to keep a fairly constant quality level rather than being exposed to fluctuations in the video quality.
5.1 Hysteresis-based policy for rate adaptation through dynamic priority class filtering
5.1.1 Step one
5.1.2 Step two
5.1.3 The pseudo-code of hysteresis based priority class filter policy
-
If \(N_{\text {block}_{j}^{*}} > 0 \): The filter transforms the set of flows for priority class j ∗, θ(i,j ∗), to θ asc(i,j ∗). θ asc(i,j ∗) contains the set of flows sorted in an ascending order of \(\alpha ^{(n^{'})}_{i}\). During the priority class filter decision epoch, the first \(N_{\text {block}_{j}^{*}}\) IDs are removed from θ asc(i,j ∗) and added to δ(i,j ∗). If priority class j ∗ for all the flows is blocked, then |θ(i,j ∗)|, cardinality of θ(i,j ∗), is 0. If this condition is met, then, in the next filter cycle, packets of priority class j ∗+1 are blocked based on the congestion and packet loss ratio. It is important to note that if the current lowest priority class is j ∗, then all flow packets marked with index less then j ∗ are blocked from entering the buffer.
-
If \(N_{\mathrm {re-admit}_{j}^{*}} > 0\) and \(H^{(n^{'})} < S_{\mathrm {{thr}_{l}}}\): The admission control row vector δ(i,j ∗) is transformed to δ desc(i,j ∗). δ desc(i,j ∗) contains the set of flows sorted in a descending order of \(\alpha ^{(n^{'})}_{i}\). If \(H^{(n^{'})}\) is below \(S_{\mathrm {{thr}_{l}}}\phantom {\dot {i}\!}\), then S hyst will decrease exponentially, according to (17), with each t w cycle. S hyst will continue to decrease until \(H^{(n^{'})} \geq S_{\mathrm {{thr}_{l}}}\phantom {\dot {i}\!}\). After t w scheduling epochs if \(N_{\mathrm {re-admit}_{j}^{*}} > 0 \), then δ(i,j ∗) is transformed to δ desc(i,j ∗). First, \(N_{\mathrm {re-admit}_{j}^{*}}\) number of flows’ IDs are removed from δ desc(i,j ∗) and added to θ(i,j ∗). If all the flows for priority class j ∗ are re-admitted then after t w epochs, flows for priority class j ∗−1 will be re-admitted based on \(N_{\mathrm {re-admit}_{j}^{*}}\phantom {\dot {i}\!}\).
5.2 Computational complexity
6 Scheduling rule for the best-effort traffic class
-
Delay-sensitive flows must meet their desired QoS, and delay-tolerant flows must receive the maximum possible throughput without compromising the QoS constraints of the delay-sensitive flows.
-
Higher normalized system delay: The delay-sensitive traffic classes are prioritized by the consideration of the exponential weight \(W^{(n)}_{q_{i}}\) and the queue size \(N^{(n)}_{q_{i}}\) in the scheduling decisions. Therefore, QoS constraints of the delay-sensitive traffic are always met under congestion. Under congestion, the backlog (packets waiting to get scheduled) of the best-effort traffic increases. When the system is heavily congested with delay-sensitive traffic, the filter blocks bandwidth demanding video traffic’s lower priority classes which reduces the normalized system delay.
-
Moderate normalized system delay: If the normalized system delay is between the two thresholds, the priority of the best-effort traffic class depends upon the number of packets residing in the buffers of delay-sensitive flows. The higher the number of packets residing in the buffer, the higher the probability of congestion which results in a higher resource allocation probability of the delay-sensitive flows.If the queue size of delay-sensitive flows is such that their input traffic rate is in the achievable rate region (the queue size remains stable), then the resource allocation probability of best-effort traffic increases. Under such condition, best-effort traffic flows get scheduled subject to the condition that the queue size of the delay-sensitive flows remains stable.
-
Lower normalized system delay: Under such condition, the resource allocation probability of the best-effort traffic class is maximum as shown by the proposed weight design in Fig. 8. The result is a reduction in the backlog of the best-effort traffic, thus fully exploiting the variable bitrate characteristics of the video traffic as well as the probabilistic arrival of the incoming traffic.
7 Simulation setup
7.1 Simulation scenario 1
Parameters | Value |
---|---|
Bandwidth, carrier frequency | 3 MHz, 2.1 GHz |
UE distribution, cell radius | Uniform, 1 km |
Channel | 3GPP-TU (typical urban) |
Pathloss model | Hata-Cost-231 model |
Shadowing model | Log-normal shadow fading |
HARQ | Up to 3 synchronous retransmissions |
Channel fading | Block fading (1 ms) |
UE speed | 15 to 100 km/h (users moving |
independently at variable speed) | |
Video resolution | CIF (352·288) |
Video frame rate | 30 FPS |
Encoder | JSVM (9.15) |
-
Simplified fine granularity (SFG) [13] scheduling based on packet’s contribution towards video quality. This strategy is similar to the ones proposed in [9‐12]. The algorithm comprises a two step process. At each scheduling epoch, the scheduler sorts packets of a flow based on the ratio of packet’s contribution towards video quality and its size. The priority of a flow on each PRB is computed by the product of channel quality and the ratio computed in the previous step. PRB is allocated to the flow maximizing the priority function. A detailed implementation of the SFG scheduling rule is given in [13].
-
Proxy-based rate adaptation [50]: We assume that a proxy is located close to the eNodeB. The proxy responds quickly to the dynamic wireless channel and congestion by performing rate adaptation. In order to perform rate adaptation, the proxy considers the rate-quality trade-off model, Fig. 9, of the video streaming sequences, the channel quality, and the buffer status of all the video streaming flows. The main goal of the proxy is to maximize the sum MOS associated with different SVC streams based on the periodic congestion signal from the eNodeB. The eNodeB utilizes a QoS-aware M-LWDF packet scheduler at the eNodeB which considers the target packet delivery needs of different traffic types. A detailed implementation of the M-LWDF is given in [39].
-
Proposed framework: QoE-based packet marking is performed at the core network by utilizing the content-dependent utility functions (quality vs. bitrate function for each of the considered video sequences) shown in Fig. 9. The mapping of SVC layers into priority classes is shown in Fig. 10. The total number of priority classes is 13. According to the figure, 13 video layers (1 base and 12 quality layers) are mapped into 12 priority classes. For instance if we consider Ice 1 video flow, the base layer is assigned priority class 12 and the first quality sub-layer (SVC layer 2) is assigned priority class 11. Similarly, the last 3 quality layers (SVC layers 11, 12, and 13) are assigned priority class 1. The video conferencing flows are assigned the most important priority class, i.e., class index 13 whereas priority classes 1 to 12 are assigned to the SVC layers according to the mapping shown in Fig. 10.×Rate adaptation is performed via the joint operation of scheduler and priority class filter. Hysteresis-based priority class filtering decisions are taken every 250 TTIs (t w =250 ms, 4 rate adaptation decision points per second). Furthermore, the higher limit of the threshold \(S_{\mathrm {{thr}_{h}}}\phantom {\dot {i}\!}\) is set to 0.6. Once the average normalized system delay crosses 0.6 (averaged over 250 TTIs), the probability of delay bound violation \(P(S_{\mathrm {{thr}_{h}}})\phantom {\dot {i}\!}\) is maximum, i.e., 1. On the other hand, the lower limit \(\phantom {\dot {i}\!}S_{\mathrm {{thr}_{l}}}\) is set to 0.2 (averaged over 250 TTIs) with lower limit probability of delay bound violation \(P(S_{\mathrm {{thr}_{l}}})\phantom {\dot {i}\!}\) set to 0.1. Re-admission speed is set to 0.02, i.e., ω=0.02.
-
QoE-aware packet dropping [18]: In this strategy, QoE-aware packet marking is performed at the P-GW. The marking information is utilized at the eNodeB by dropping low-priority packets under the event of eNodeB congestion. The packet dropping algorithm drops the QoE-marked priority packets before they are fed into the scheduler. The function of the packet dropping algorithm is to shape the traffic according to the wireless transmission capacity, whereas the function of the scheduler is to perform packet scheduling onto the radio resources. It is important to note the scheduler is not aware of the QoE marking. Therefore, we utilize a packet delay-aware M-LWDF scheduling rule.
-
No rate adaptation: We assume that there is no admission control policy and the system runs under overloaded condition. We selected a link-efficient Best-CQI scheduler which assigns PRBs based on the channel quality. In addition to the rate maximizing scheduling strategy, we also consider a QoS-based M-LWDF scheduling strategy. According to [51], M-LWDF is the best scheduling rule for delay-sensitive applications in terms of fairness and efficiency.