# 5G Quality of Service

## Summary


5G Quality of Service (QoS) model is based on **QoS Flows**. Each QoS flow has a unique identifier called QoS Flow Identifier (QFI). There are two types of flows: Guaranteed Bit Rate (GBR) QoS Flows and Non-GBR QoS Flows. The QoS Flow is the finest granularity of QoS differentiation in the PDU Session. User Plane (UP) traffic with the same QFI receive the same forwarding treatment. 

At the Non-Access Stratum (NAS), packet filters in UE and 5GC map UL and DL packets respectively to QoS flows. At the Access Stratum (AS), rules in UE and Access Network (AN) map QoS flows to Data Radio Bearers (DRBs). 

Every QoS flow has a QoS profile that includes QoS parameters and QoS characteristics. Applicable parameters depend on GBR or non-GBR flow type. QoS characteristics are standardized or dynamically configured.

## Discussion

### Could you explain 5G QoS with an example?

Consider multiple PDU sessions, each of which could be generating packets of different QoS requirements. For example, packets from the Internet may be due to user browsing a website, streaming a video or downloading a large file from an FTP server. Delay and jitter are important for video but less important for FTP download. 

Between the User Equipment (UE) and the Data Network (DN), PDU sessions and Service Data Flows (SDFs) are set up. Each application gets its own SDF. In our example, we may say that Internet, Netflix and IMS are PDU sessions. The Internet PDU session has four SDFs and the IMS PDU session has two SDFs.  

Multiple IP flows can be mapped to the same QoS flow. QoS flow 2 is an example that carries both WhatsApp video and Skype video. On the radio interface, QoS flows are mapped to data radio bearers (DRBs) that are configured to deliver that QoS. Multiple QoS flows can be mapped to a single DRB. DRB2 is an example and it carries QoS flows 2 and 3. 


### How does the QoS model differ between LTE and 5G networks?

In 4G/LTE, QoS is applied at the level of Evolved Packet Service (EPS) bearer. There's a one-to-one mapping, which really means that for an EPS bearer there's a corresponding EPS Radio Access Bearer (RAB), an S1 bearer and a Radio Bearer (RB). 

5G provides a more flexible QoS model with **QoS Flow** being the finest granularity at which QoS is applied. The abstraction of QoS flow allows us to decouple the roles of 5G Core and NG-RAN. SMF in the 5G Core configures how packets ought to be mapped to QoS flows. 

AN independently decides how to map QoS flows to radio bearers. This is a flexible design since gNB can choose to map multiple QoS flows to a single RB if such an RB can be configured to fulfil the requirements of those QoS flows. The figure shows an example in which QoS flow 1 goes on DRB1; QoS flows 2 and 3 go on DRB2. 

To summarize, 4G QoS is at the EPS bearer level and 5G QoS is at the QoS flow level. 


### Could you describe end-to-end QoS for a PDU session?

Application packets are classified or mapped to suitable QoS flows by the UPF in DL and UE in UL. UPF uses Packet Detection Rules (PDRs). UE uses QoS rules. Because multiple PDRs and rules can exist, these are evaluated in precedence order, from lowest to highest values. If no match is found, packet is discarded. 

On the N3 interface between UPF and AN, packets are marked with QFI in an encapsulation header. Due to this marking, AN knows which packets belong to which QoS flow. SDAP sublayer in the AN maps the flows to suitable DRBs. At the receiving end, UE's SDAP sublayer does the reverse mapping from DRBs to QoS flows. 

A similar flow happens for UL packets. UE marks the packet with QFI in SDAP header. AN does QFI marking in an encapsulation header on N3. UPF verifies if a received QFI is aligned with configured QoS rules or Reflective QoS. 


### What's the basis for classifying packets into QoS flows?

In the downlink, UPF uses Packet Detection Rules (PDRs). In the uplink, UE uses QoS rules. Both these make use of Packet Filter Set that has one or more packet filters. 

An **IP Packet Filter Set** is based on a combination of fields: Source/destination IP address or IPv6 prefix; Source/destination port number (could be a port range); Protocol ID of the protocol above IP/Next header type; Type of Service (TOS) (IPv4) or Traffic class (IPv6) and Mask; Flow Label (IPv6); Security parameter index; and Packet Filter direction. 

An **Ethernet Packet Filter Set** is based on a combination of fields: Source/destination MAC address (may be a range); Ethertype as defined in IEEE 802.3; Customer-VLAN tag (C-TAG) and/or Service-VLAN tag (S-TAG) VID fields as defined in IEEE Std 802.1Q; Customer-VLAN tag (C-TAG) and/or Service-VLAN tag (S-TAG) PCP/DEI fields as defined in IEEE Std 802.1Q; IP Packet Filter Set, in the case that Ethertype indicates IPv4/IPv6 payload; and Packet Filter direction. 


### What are the defaults used in the 5G QoS model?

The specification defines a **default QoS rule**. Every PDU session is required to have a QoS flow associated with such a default. This flow remains active for the lifetime of the PDU session. This is a Non-GBR QoS Flow to facilitate EPS interworking. 

For IP and Ethernet sessions, the default QoS rule is the only rule with a Packet Filter Set that allows all UL packets, and it has the highest precedence. Note that QoS rules and PDRs are evaluated in increasing order of precedence values. 

Reflective QoS is not applied and RQA is not sent for a QoS flow that's using default QoS flow. 

**QoS parameters** too have defaults. On a per-session basis, SMF obtains from the UDM subscribed Session-AMBR, and subscribed defaults for Non-GBR 5QI, ARP and optionally 5QI Priority Level. Based on interaction with PCF, SMF may change subscribed values. 


### What's the role of SMF within the QoS model?

QoS flows are controlled by SMF. They're preconfigured or created/updated via PDU Session Establishment or Modification procedures. 

SMF interacts with UDM and PCF to obtain subscribed and authorized QoS parameters for each QoS flow. PCF responds with Policy Charging and Control (PCC) Rules that includes Packet Filter Set. SMF extracts QoS Flow Binding Parameters (5QI, ARP, Priority, MDBV, Notification Control) and creates a new QoS flow if one doesn't exist for this combination. The binding of PCC rules to QoS Flows is an essential role of SMF. 

SMF associates a QoS flow with QoS profile, QoS rules and PDRs. PDRs are derived from the PCC rule and inherit the precedence value. PDRs are part of SDF Template passed to UPF. SMF sends QoS profile to AN via AMF over N2, QoS rules to the UE via AMF over N1, and PDRs to the UPF over N4. 

SMF assigns a QFI for each QoS flow and an identifier to each QoS rule. Both identifiers are unique within the PDU session. 


### What is meant by Reflective QoS?

For UL packet classification, SMF provides QoS rules to the UE. Or the UE implicitly derives the rules from downlink packets. This latter case is called **Reflective QoS**. 

Both reflective and non-reflective QoS can coexist within the same PDU session. Reflective QoS applies to IP PDU session and Ethernet PDU session. UE indicates to SMF if it supports Reflective QoS during PDU Session Establishment. UE may change its support and indicate this via PDU Session Modification. UE-derived QoS rule would include UL packet filter, QFI and precedence value. 

Reflective QoS is controlled per packet. SMF signals the use of **Reflective QoS Indication (RQI)** marking to UPF. SMF signals **Reflective QoS Attribute (RQA)** to the AN via N2 interface. Subsequently, UPF includes RQI for every DL packet of an SDF that's using Reflective QoS. AN indicates the RQI to the UE. 

When UE receives a DL packet with RQI, it creates or updates the QoS rule for UL traffic. It also starts the **Reflective QoS Timer**. There's one timer per UE-derived rule. The timer is restarted when a matching DL packet is received. Rule is discarded when timer expires. 


### Which are the 5G QoS parameters?

We note the following: 

    + **5G QoS Identifier (5QI)**: An identifier for QoS characteristics that influence scheduling weights, admission thresholds, queue management thresholds, link layer protocol configuration, etc.
    + **Allocation and Retention Priority (ARP)**: Information about priority level, pre-emption capability (can pre-empt resources assigned to other QoS flows) and the pre-emption vulnerability (can be pre-empted by other QoS flows).
    + **Reflective QoS Attribute (RQA)**: Optional parameter. Certain traffic on this flow may use reflective QoS.
    + **Guaranteed Flow Bit Rate (GFBR)**: Measured over the Averaging Time Window. Recommended to be the lowest bitrate at which the service will survive.
    + **Maximum Flow Bit Rate (MFBR)**: Limits bitrate to the highest expected by this QoS flow.
    + **Aggregate Maximum Bit Rate (AMBR)**: *Session-AMBR* is per PDU session across all its QoS flows. *UE-AMBR* is for each UE.
    + **QoS Notification Control (QNC)**: Configures NG-RAN to notify SMF if GFBR can't be met. Useful if application can adapt to changing conditions. If alternative QoS profiles are configured, NG-RAN indicates if one of these matches currently fulfilled performance metrics.
    + **Maximum Packet Loss Rate**: In Release 16, this is limited to voice media.

### Could you describe some standardized 5QI values and their QoS characteristics?

Specification TS 23.501 defines some 5QI values that translate to QoS characteristics commonly used. This leads to optimized signalling, that is, specifying the 5QI value is sufficient, though default values can be modified. For non-standard 5QI values, QoS characteristics need to be signalled as part of the QoS profile. 

SMF signals QoS profiles to NG-RAN via AMF. QoS characteristics in these profiles are in fact guidelines to the NG-RAN to configure suitable RBs to carry QoS flows. 

There are about two dozen standard 5QI values, grouped into three resource types: Guaranteed Bit Rate (GBR), Non-GBR, Delay-critical GBR. **QoS characteristics** include resource type, priority level (lower number implies higher priority), Packet Delay Budget (PDB), Packet Error Rate (PER), averaging window (for GBR and delay-critical GBR only), and Maximum Data Burst Volume (MDBV) (for delay-critical GBR only). 

Conversational voice (5QI=1) has 100ms PDB and 0.01 PER. Real-time gaming (5QI=3) has 50ms PDB and a lower priority. IMS signalling (5QI=5) has stringent PER of 0.000001. Discrete automation (5QI=82) has stringent PDB of 10ms. 


### Does meeting 5G QoS requirements imply high QoE?

QoS is based on objective metrics whereas Quality of Experience (QoE) is more subjective and based on actual user experience. Thus, it's quite possible to optimize the network to yield better KPIs for QoS without users actually noticing any difference. 

Delay, jitter and packet loss are some metrics used to determine QoS. QoE has different concerns: service accessibility, wait times, are users leaving because of poor features, response time, seamless interactivity, etc. QoE depends on user expectations, which can change with evolving technology and applications.  

A 5% packet loss could have little impact for a cloud service but even a 0.5% packet loss could result in huge throughput reduction for another application. It's therefore clear that QoE should consider user and application perspectives, and not just network performance metrics. For example, on the same network with high bitrates an AR application might experience low QoE but a file download has high QoE even when latency or transport continuity are relatively poor. Even within AR, we can discern a variety of applications, each with its own QoE characteristics. 


### What are the relevant specifications that detail 5G QoS?

An overview of 5G QoS model and architecture is given in **TS 38.300**, section 12. A more detailed and complete description of QoS is in **TS 23.501**, section 5.7. These two documents are good starting points for beginners.

From the perspective of 5G System (5GS) procedures, QoS details are covered in **TS 23.502**. QoS flow binding and parameter mapping are covered in **TS 29.513**. QoS Information Elements (IEs) are detailed in **TS 38.413**. 

The mapping of QoS flows to Radio Bearers (RBs) is done at Service Data Adaptation Protocol (SDAP) sublayer, which is covered in **TS 37.324**. 

## Milestones

Dec  
2017

3GPP approves the first specifications for 5G, called "early drop" of **Release 15**. The focus of this release is Non-Standalone (NSA) mode of operation using Dual Connectivity (DC) between LTE and 5G NR. At this time, SDAP specification TS 37.324 is at v1.2.0 and not yet approved for Release 15. 

Jun  
2018

**SDAP specification TS 37.324**, v15.0.0 is approved for Release 15. This date coincides with "main drop" of Release 15 specifications. This release enables Standalone (SA) mode of operation based on 5G Core. SDAP sublayer in gNB and UE maps QoS flows to DRBs.

Oct  
2018

Modern application traffic, particularly concerning mobile devices, often pass through enterprise networks, the Internet and cellular mobile networks. Whereas 3GPP uses QoS Class Identifiers (QCIs) and 5G QoS Identifiers (5QIs), IETF uses Differentiated Services Code Point (DSCP) markings. Henry and Szigeti therefore publish an IETF Internet-Draft titled *Diffserv to QCI Mapping*. Version 04 of this draft is published in April 2020 but it expires in October 2020, without any further continuity. 

Mar  
2019

Specification **TS 23.501** is updated for Release 16. Among QoS-specific changes are Deterministic QoS for Time-Sensitive Communication (TSC); QoS support for Multi-Access PDU Session; and New 5QIs for Enhanced Framework for Uplink Streaming. 

Apr  
2020

As an example from an implementation perspective, we note Cisco's publication of document titled *Ultra Cloud Core 5G Session Management Function, Release 2020.02 - Configuration and Administration Guide*. This guide details the 5G QoS model and how it's managed by SMF. It explains default bearer QoS handling for 4G, 5G and Wi-Fi sessions.