HSC welcomes all external visitors to this site, especially students and members of the academic community. Please use the comments box at the bottom of each page to record any comments or suggestions for improvement.
QoS Parameters
A packet flow corresponding to a service, which is uniquely identifiable using IP parameters of the packets: is referred to as a service data flow(SDF).
The QoS parameters are defined at level of per SDF or SDF aggregate. SDF aggregate refers to multiple SDFs with the same QCI and ARP, belonging to same IP-CAN session.
QoS parameters include QCI, ARP, GBR, MBR and AMBR.
QCI
QCI is a scalar value which refers to a set of parameters which determine packet forwarding characteristics. QCI parameter values are preconfigured by the operator, the mapping of QCI values to the characteristics is as defined:
QCI
Resource Type
Priority
Packet Delay Budget
Packet Error Loss Rate
Example Services
1
GBR
2
100ms
10^-2^
Conversational Voice
2
GBR
4
150ms
10^-3^
Conversational Video (Live Streaming)
3
GBR
5
300ms
10^-6^
Non Conversational Video (Buffer and playback)
4
GBR
3
50ms
10^-3^
Real Time Gaming
5
Non-GBR
1
100ms
10^-6^
IMS Signaling
6
Non-GBR
7
150ms
10^-3^
Voice, Video, Interactive gaming
7
Non-GBR
6
300ms
10^-6^
Video (Buffer and playback)
8
Non-GBR
8
300ms
10^-6^
TCP Based
The QCIs are defined for difference kind of service flows. A QCI value indicates a set of parameters to be followed for packet forwarding the parameters are specific to service/application and are agnostic to the access/roaming/operator policies.
QCI value defines following parameters:
Resource type: The parameter differentiates GBR flows (guaranteed bit rate) and non-GBR flows. A GBR flow is dynamically assigned dedicated resources by the base station. Thus GBR flow needs to be authorized on-demand as opposed to non-GBR flows that are pre-authorized using static policy and charging control.
PDB(Packet delay buffer): The parameter defined upper bound for the delay for a packet between UE and PCEF. From this delay value 20 ms is accounted for average packet delay from BS to PCEF and rest of the delay is accounted for the air link. PDB defines the upper bound for delay and for 98% traffic the actual delay is lower than specific value provided the link quality is good. The parameter imposes a soft limit thus if a packet exceeds PDB value, it will not be discarded by RLC.
PDB governs values for configuration parameters related to scheduling and HARQ.
PDB is used as primary parameter for scheduling different SDF aggregates for a UE for for scheduling SDFs from various UEs.
Priority: Every QCI is associated with a priority level. Priority level 1 indicates highest priority.
If target set by PDB can not be met, priority value is used for scheduling.
PELR(Packet error loss rate): This parameter refers to packets that were not successfully delivered, thus indicating the non congestion related losses. Such losses are negligible on interface between base station and PCEF. The PELR value is mostly for applicable for air interface. The PELR value for a QCI is same for uplink and downlink. This parameter allows configurations in link layer protocol e.g. in RLC and HARQ.
ARP
The Allocation/Retention Priority indicates the priority of allocation and retention of the service data flow. The Allocation/Retention Priority resolves conflicts in demand for network resources. At the time of resource crunch, this parameter prioritizes allocation of resources during bearer establishment and modification. In congestion situation a lower ARP flow may be dropped to free up capacity.
Once a service flow is successfully established, this parameter plays no role in quality of service experienced by the flow.
MBR
The UL maximum-bitrate indicates the authorized maximum bitrate for the uplink component of the service data flow.
The DL maximum-bitrate indicates the authorized maximum bitrate for the downlink component of the service data flow.
The Maximum bitrate is used for enforcement of the maximum bit rate that the SDF may consume, excess traffic will be discarded by rate shaping function.
GBR
The UL guaranteed-bitrate indicates the authorized guaranteed bitrate for the uplink component of the service data flow.
The DL guaranteed-bitrate indicates the authorized guaranteed bitrate for the downlink component of the service data flow.
The Guaranteed bitrate is used by the PCEF to determine resource allocation.
AMBR
This parameter refers to aggregate maximum bit rate for non-GBR flows.
APN-AMBR: This is a subscription parameter stored per APN in HSS. This refers to maximum bit rate that can be consumed for all non GBR SDFs/SDF aggregates for this APN. This parameter is enforced by P-GW in downlink and by both UE and P-GW in uplink.
UE-AMBR: This parameter refers to maximum bit rate allowed for all the non-GBR SDFs/SDF aggregates for this UE. This parameter is enforced in both uplink and downlink.
The Medium Access Control sub-layer in eNodeB of E-UTRAN schedules the different radio bearers for using the physical packet resources (specifically the Physical Downlink Shared Channel). The scheduling decision needs to be made every TTI (transmit time interval) by the MAC. A simple QoS based DL packet scheduling scheme is discussed here.
Assumptions
- The GBRDL (Downlink Guaranteed Bit Rate) rate enforcement is done at the PDN Gateway. So the DL packet scheduler at the eNodeB can simply allocate the number of bytes that are needed without verifying the effective data rate of a given radio bearer.
- The admission control function at eNodeB admits the GBR bearer if there are enough resources that could be reserved for the new GBR bearer. So the DL packet scheduler does the unconditional allocation to the GBR bearers that are presently setup.
Parameters
Following QoS parameters are considered in the current DL packet scheduling scheme.
- QoS class Indicator (QCI): The active RBs (the Radio Bearer which have data to transmit at given instance) are considered for allocation per the ascending order of the QCI value. For the same QCI the active RBs are considered in a round robin fashion. The maximum queue length and the scheduling weights are assigned as per the QCI. (higher class are assigned higher values of max queue lengths and scheduling weights)
- GBRDL (Guaranteed Bit Rate): The GBR bearers are allocated packet resources at a rate defined by the GBR. This is enforced at the PDN-GW. This is same as the Maximum Bit Rate
- UE-AMBRDL (Aggregate Maximum Bit Rate): For a given UE this limits the total aggregate data rate in the downlink. This is enforced at the eNodeB.
Constraints
Based on the characteristics of the physical resource the following constraints are imposed
- The packet resource is allocated in terms of RBG (Resource Block Groups) which is a chunk of 1 or 2 or 4 PRB(Physical Resource Block = 12 sub-carriers for a duration of 1 TTI). The size of the RBG depends upon the system bandwidth. The minimum allocation in any TTI will be the number of bits carried by 1 RBG. In case the MAC payload is smaller than this minimum value, the padding bytes fills the unused capacity.
- The GBR bearers need to be allocated the packet resources before the non-GBR bearers are considered. The non-GBR bearers will rely on best-effort allocation.
- The packet delay parameter is not considered here and it is assumed that the packets will spill off the queue in case of very high delays. Secondly the RBs by default considered for allocation per the priority defined by QCI so the requirement of priority based processing in case of high delays is implicitly addressed.
- The number of RBG are very limited in number as compared to potentially a large number of active RBs at any TTI. So active RBs of the same QCI priority level may be served with different delays.
Allocation method for GBR Bearers
The steps are given below.
- Prepare a queue (FIFO) of active RBs for a given priority QCI value and GBR>0(starting with highest priority) by adding new active RBs at the end of the queue.
- Pickup the first candidate RB from the queue of given priority.
- Allocate sufficient number of RBGs to satisfy the current backlog of bytes in the queue corresponding to that RB or all the available RBGs whichever is lesser (Note1).
- If the candidate RB is fully served in the current TTI, then remove this candidate from the queue
- If the candidate RB is not fully served in the current TTI, then move this candidate to the end of the queue
- If the total available number of RBGs are exhausted then stop further allocation.
- If there are waiting candidate RBs in the queue and if there is some surplus RBGs still available go to step b
- If there are no waiting candidate RBs in the queue then start the allocation for RBs of lower priority by executing the steps a-g
- If there is still unallocated RBGs available, do the allocation for the non-GBR bearers
Note1: The leaky bucket algorithm can also be used to here to monitor and maintain the rate of data transfer. A per RB credit variable Cr is increased by GBR*TTI every TTI and decreased by the size of allocation. This variable is initialized to 0 and a fresh allocation is made iff the Cr > 0.
Allocation method for non-GBR Bearers
This is based on weighted fair queue scheme. The steps involved are.
- Prepare a queue (FIFO) of active RBs for a given priority QCI value and GBR=0 (starting with highest priority) by adding new active RBs at the end of the queue.
- Pickup the first candidate RB from the queue of given priority.
- If the credit variable Cu(Note2) for the corresponding UE is negative remove all the RBs for the UE from the active RB queues and go to step j.
- Determine the share of the available RGBs that can potentially be offered to this candidate RB using the relation
Allocation for RB(QCI=q, RBId=r) = [AvailableRBG * weight(QCI=q)] / [Sum(weight(q)) for all active RBs]
- Allocate the actual number of RBG that are needed to satisfy the current backlog of the candidate RB or the potential maximum allocation calculated in step c.
- Reduce the available credit for the corresponding UE by the number of bytes allocated. (Note3)
- If the backlog is fully cleared then remove the candidate RB from the queue
- If the backlog is not cleared then move the candidate RB to the end of the queue
- Recalculate the AvailableRBG after reducing the allocation in step d
- If there some surplus left, then repeat step c-h for next candidate in the queue
- If there are no more waiting candidate RBs in the queue then continue allocation for lower priority per steps a-h.
Note2: The available credit variable Cu for a given UE is initialized to 0 when first RB is setup for the UE. It is incremented at every TTI by the value AMBR*TTI and capped at maximum value 1500?. It is reduced by an amount equal to the allocation done for any RB of the UE.
Note3: The available credit variable can become negative if case of burst allocation. However the subsequent allocation can be done only when the credit become positive.
Constants and Numerical Values
Variable
Description
Value
PRB
Physical Resource Block containing time and frequency resources
12 subcarriers x 1TTI resource grid
RBG Size (P)
Resource Block Group is the chunk of contiguous PRBs that is allocated at a given time
1 [BW=1.4M] 2 [BW=3,5M] 3 [BW=10M] 4 [BW=15,20M]
N_PRB_
Number of Physical Resource Blocks available in the system
6 [BW=1.4M] 5*b [BW=bM; b=3,5,10,15,20]
QCI
Quality Class Indicator
1..7
References
23.401 8.20 : 3rd Generation Partnership Project; Technical Specification Group Services and System Aspects; General Packet Radio Service (GPRS) enhancements for Evolved Universal Terrestrial Radio Access Network (E-UTRAN) access (Release 8)
23.203 8.20 : 3rd Generation Partnership Project; Technical Specification Group Services and System Aspects; Policy and charging control architecture (Release 8)
Categories: LTE
QoS
Comments