5G QoS Flows: 5QI, ARP, Reflective QoS, and How Policy Reaches the Air
A deep dive into the 5G QoS model: what 5QI actually specifies, how GBR and delay-critical GBR differ, the role of ARP and Session-AMBR, and how reflective QoS avoids signalling.
The single most common mistake in 5G QoS discussions is treating 5QI as a priority number. It isn't. It's an index into a table of characteristics, one of which happens to be priority — and the others frequently matter more.
This article is the QoS deep dive. For how QoS Flows sit inside a PDU Session and how sessions get established, see PDU Sessions in 5G.
A QoS Flow is the finest granularity of QoS differentiation in 5G. Everything below is about what that differentiation actually consists of.
QFI and 5QI are different things
Two identifiers, constantly conflated:
QFI (QoS Flow Identifier) is the label carried in packets that says which flow this belongs to. It's 6 bits, scoped to a single PDU Session, and carries no meaning of its own.
5QI (5G QoS Identifier) points to a set of QoS characteristics — how this flow should be treated. It's scoped network-wide.
Two flows in different PDU Sessions can share QFI 5 and have entirely different 5QIs. One PDU Session's QFI 5 is not another's.
ARP (Allocation and Retention Priority) is the third identifier and does something separate again. It governs admission control and preemption: whether this flow can be admitted when resources are scarce, whether it can bump an existing flow, and whether it can itself be bumped. A flow can have excellent 5QI characteristics and still be denied admission because its ARP is low — an emergency call with high ARP will preempt a video stream with better delay characteristics.
5QI = how to treat it. QFI = which flow it is. ARP = who wins when resources run out.
What a 5QI actually specifies
Each standardised 5QI maps to a fixed set of characteristics defined in TS 23.501:
Resource type — Non-GBR, GBR, or Delay-critical GBR.
Priority level — relative scheduling priority. Lower number means higher priority.
Packet Delay Budget (PDB) — the target upper bound for packet delay between UE and UPF, split across radio and transport.
Packet Error Rate (PER) — the target residual error rate after all retransmission mechanisms.
Averaging window — the interval over which GBR and MBR are measured. Only applies to GBR types.
Maximum Data Burst Volume (MDBV) — the largest burst the network must handle within the PDB. Only applies to delay-critical GBR.
A selection of the standardised values, which are worth having a feel for:
| 5QI | Type | Priority | PDB | PER | Typical service |
|---|---|---|---|---|---|
| 1 | GBR | 20 | 100 ms | 10⁻² | Conversational voice |
| 2 | GBR | 40 | 150 ms | 10⁻³ | Conversational video |
| 3 | GBR | 30 | 50 ms | 10⁻³ | Real-time gaming, V2X |
| 5 | Non-GBR | 10 | 100 ms | 10⁻⁶ | IMS signalling |
| 7 | Non-GBR | 70 | 100 ms | 10⁻³ | Voice, live streaming |
| 9 | Non-GBR | 90 | 300 ms | 10⁻⁶ | Default bearer, general internet |
| 82 | Delay-critical GBR | 19 | 10 ms | 10⁻⁴ | Discrete automation |
| 85 | Delay-critical GBR | 21 | 5 ms | 10⁻⁵ | Remote driving |
Look at 5QI 3 versus 5QI 5. 5QI 3 has worse priority (30 vs 10) but a much tighter delay budget (50 ms vs 100 ms) and a looser error target (10⁻³ vs 10⁻⁶). Neither is straightforwardly "higher QoS" — they're specified for different failure modes. Gaming tolerates occasional loss but not delay; IMS signalling tolerates delay but not loss.
That's why reading 5QI as a priority ranking gives wrong answers.
The three resource types
Non-GBR
No bit rate guarantee. Flows share available capacity, constrained by Session-AMBR (aggregate across all Non-GBR flows in the session) and UE-AMBR (aggregate across all the UE's sessions).
Most traffic is Non-GBR. Web, streaming, app data, background sync. The network makes no commitment beyond relative priority and best-effort delay handling.
GBR
The network reserves resources to sustain a Guaranteed Flow Bit Rate (GFBR), with traffic above it capped at the Maximum Flow Bit Rate (MFBR), measured over the averaging window.
GBR flows are admission-controlled — the network can reject one if it can't meet the guarantee. This is the mechanism that makes voice work under load.
Delay-critical GBR
Introduced for URLLC. It adds MDBV and applies a materially different delay semantic: packets exceeding the PDB are counted as errors against the PER target, rather than merely being late.
That distinction is the whole point. For standard GBR, a late packet is a degraded packet. For delay-critical GBR, a late packet is a lost packet. When a control loop needs data within 5 ms, data arriving at 8 ms is useless — so the specification counts it as a failure.
Who decides
The PCF (Policy Control Function) is the policy authority. It generates PCC rules that define QoS parameters and the traffic filters selecting which packets belong to which flow.
The chain runs: PCF issues PCC rules → SMF translates them into QoS profiles and QoS rules → the profile goes to the RAN over N2 and the packet detection rules go to the UPF over N4 → QoS rules go to the UE.
Applications can influence this through the NEF, which exposes QoS-on-demand APIs to third parties. A cloud gaming provider can request a low-latency flow for a session. This is one of the more commercially interesting parts of the 5G Core and one of the least deployed.
Reaching the air interface
QoS is decided in the Core but enforced in the RAN, and SDAP is the bridge.
Downlink: the UPF classifies packets using packet detection rules, marks them with a QFI in the GTP-U header, and forwards over N3. The gNB reads the QFI, looks up the associated QoS profile, and SDAP maps the flow to a Data Radio Bearer.
Uplink: the UE classifies its own traffic using QoS rules, and SDAP adds the QFI header.
The mapping is many-to-one. Multiple QoS Flows with similar requirements share a DRB; flows with genuinely different needs get separate ones. The gNB decides — 3GPP specifies the mechanism, not the policy. This is a real vendor differentiation point, and two gNBs given identical QoS profiles may map them quite differently.
Reflective QoS
A neat optimisation. Rather than signalling explicit uplink QoS rules, the network sets a Reflective QoS Indication (RQI) on a downlink packet. The UE derives an uplink rule by mirroring: same QFI, with the source and destination of the downlink flow swapped.
Each derived rule has a timer (RQ Timer) and expires if unused. The benefit is avoided signalling — meaningful for applications opening many short-lived flows, where explicit rule signalling for each would be significant overhead. Explicit rules always take precedence where both exist.
Reflective QoS
There is a mechanism that lets the network skip signalling QoS rules to the UE entirely, and it is easy to miss because nothing in the control plane announces it.
With reflective QoS, the UE derives its uplink mapping by observing the downlink. When the UPF marks a downlink packet with the RQI (Reflective QoS Indicator), the UE reads the QFI from the encapsulation header, inspects the packet's own addressing, and builds a matching uplink rule for the reverse direction itself.
The saving is real. Signalling an explicit QoS rule per flow costs NAS messages; a busy device with many short-lived flows would generate a steady stream of them. Reflective QoS pushes that cost to zero for symmetric traffic.
It comes with a lifetime. The derived rule is governed by the RQ Timer, and the UE discards the rule when it expires without refresh. Traffic that is genuinely bidirectional keeps refreshing it; a one-off flow lets it lapse.
Not every flow qualifies. The network must both support and enable it, and the UE must indicate the capability. Flows with explicitly signalled rules always take precedence — the explicit rule wins over anything derived.
When QoS is not honoured
A guaranteed bit rate is a commitment by the network, not a law of physics, and it is worth being precise about what happens when it cannot be met.
Admission control is the first line. A GBR flow is admitted only if the gNB believes it can sustain the rate. If it cannot, the flow is rejected at setup rather than admitted and starved — a failed setup is a better outcome than a call that degrades unpredictably.
Pre-emption is the second. The ARP carries not just a priority level but two flags: whether the flow may pre-empt others, and whether it may itself be pre-empted. Under congestion, a flow with pre-emption capability can displace an admitted lower-priority flow. This is how emergency and priority services get resources on a loaded cell.
Notification control is the third. For GBR flows, the network can be configured to notify the core when it can no longer meet the guaranteed rate — and again when it recovers. The application then has the option to adapt, for example by downshifting a codec, instead of failing.
Non-GBR flows have no such machinery. They share what remains, weighted by their priority levels, and their MFBR acts only as a ceiling.
Where the scheduler comes in
QoS parameters only become real behaviour at the MAC scheduler.
The scheduler combines 5QI priority, delay budget against how long packets have been queued, GBR commitments, buffer status, channel quality, and HARQ state. Delay budget is often the dominant input: a packet approaching its PDB gets scheduled ahead of a nominally higher-priority packet that arrived recently.
Worth being blunt about the limits. 3GPP does not specify the scheduling algorithm. It specifies the parameters and the expected outcomes. How a vendor weighs 5QI priority against delay against channel quality is implementation. Two conformant gNBs can behave quite differently under load with identical QoS configuration — which is why field QoS validation is a real activity and not just a spec-compliance check.
The other limit: QoS parameters are targets, not guarantees. A 5 ms PDB describes what the network should attempt. In a congested cell with poor radio conditions, it may simply not be achievable. Delivering on tight QoS needs capacity planning and admission control, not just correct 5QI assignment.
What this looks like in a trace
QoS problems are usually mapping problems, and they surface in predictable places.
At the SMF. The QoS profile is created here from the PCF's policy decision. If a flow is not getting its expected treatment, the first question is whether the profile was ever created with the 5QI you expect — a policy that failed to match sends traffic to the default flow, which behaves correctly but not specially.
At the N2 interface. The profile reaches the gNB in the PDU Session Resource Setup Request. If the gNB cannot support the requested GBR, it says so here, and the flow is either rejected or admitted with modified parameters. A silent downgrade at this step explains a surprising number of "the network isn't honouring QoS" reports.
At the SDAP layer. This is where the QFI is stamped on uplink packets and read from downlink ones. A mismatch between the UE's mapping rules and the network's expectation produces packets carrying the wrong QFI — treated correctly by the letter of the specification, wrongly by intent.
At the scheduler. Even with a correct profile, the flow competes for resources. A GBR flow in poor coverage consumes far more PRBs to deliver the same bit rate, and under load the scheduler may not have them.
The default flow is doing more work than you think
Every PDU session has exactly one QoS flow that cannot be removed while the session lives. It is non-GBR, it carries whatever does not match another rule, and on a typical smartphone it carries the overwhelming majority of packets by volume.
This is worth internalising because it inverts the usual mental image. QoS flows are not how 5G handles traffic in general — they are the exception mechanism. Web browsing, app sync, software updates and video streaming all ride the default flow and are differentiated only by scheduler weighting, not by any per-flow guarantee.
The specialised flows exist for the traffic that genuinely cannot tolerate best effort: conversational voice, real-time control, and the emerging low-latency classes. Everything else works fine without them, which is the point.
The mental model
QFI identifies. 5QI characterises. ARP decides who survives contention.
5QI is not a priority number — it's an index into resource type, priority, delay budget, error rate, and burst parameters.
Non-GBR shares capacity under AMBR. GBR reserves it. Delay-critical GBR counts late packets as lost.
PCF decides, SMF translates, UPF marks, SDAP maps, the scheduler enforces.
Reflective QoS derives uplink rules from downlink marking, saving signalling.
The scheduler is unspecified. Same parameters, different vendors, different behaviour.
The 5G QoS model is considerably more expressive than LTE's bearer-based approach — a single PDU Session carrying differentiated flows, with policy able to change them mid-session. The expressiveness only pays off if the parameters are chosen deliberately, and that starts with reading 5QI as the characteristic set it is rather than a number to sort by.
Further reading
- PDU Sessions in 5G — session establishment and lifecycle
- 3GPP TS 23.501 — QoS model, 5QI table, reflective QoS
- 3GPP TS 23.503 — Policy and charging control framework
- 3GPP TS 37.324 — SDAP specification
- 3GPP TS 38.300 — QoS Flow to DRB mapping in NG-RAN
Related Articles
Non-Terrestrial Networks: 3GPP Satellites, Delay Budgets, and Direct-to-Device
How 3GPP adapted NR for satellites: LEO/MEO/GEO trade-offs, the timing advance and HARQ changes long delays forced, transparent versus regenerative payloads, and what direct-to-device really delivers.
What Is 5G NR? Numerology, Frequency Ranges, and the Flexible Frame
5G NR explained for engineers: scalable numerology, FR1 and FR2, the flexible slot structure, bandwidth parts, and what actually changed from LTE.
5G Interview Questions: What Gets Asked and How to Answer It
A structured 5G interview guide: the questions that actually come up across radio, RAN, core and QoS, worked troubleshooting and system-design scenarios, and a framework for answering well.