TELECOM TRANSPORT DEEP DIVE — SERIES 4 OF 10

QoS in 5G Transport How VoNR Gets Priority Over Netflix

End-to-end QoS mapping from 5QI to DSCP to MPLS EXP — what schedulers actually do under congestion

1. What Is QoS in 5G Transport — The Real Problem

QoS is not a feature you turn on. It is a discipline that must be enforced consistently at every node from the DU all the way to the UPF — and most operators get it wrong somewhere in that chain. When they do, the symptom is almost always the same: VoNR calls drop or degrade during busy hours, while video streaming continues unaffected. Subscribers complain. The RAN team checks radio parameters. Everything looks clean. The real problem is on the transport.

In 5G, quality of service starts at the core network with a 5QI (5G QoS Identifier) assigned to each PDU session bearer. This 5QI maps to specific QoS characteristics — packet delay budget, packet error rate, priority level. The transport network must honour these characteristics end-to-end. The mechanism for doing that is DSCP marking in the IP layer, MPLS EXP (Traffic Class) bits in the MPLS layer, and queue scheduling at each transport node. All three must be aligned. A break in any one of them collapses the QoS chain.

2. Real Network Architecture — The QoS Mapping Chain

5QI to DSCP to MPLS EXP — The Full Stack

LayerMechanismWho Sets ItWho Reads It
5G Core / RAN5QI — bearer-level QoS classAMF / PCF sets per PDU sessionUPF, CU-UP use for GTP-U marking
IP Transport (outer GTP-U)DSCP in outer IP headerDU or CU-UP sets on GTP-U packetsPE router reads at ingress for queue assignment
MPLS CoreEXP bits (3 bits = 8 classes)PE router maps from DSCP at ingressP routers use for queue scheduling in core
Egress PE / UPF-facingDSCP re-marking if neededEgress PE policy-mapUPF reads DSCP for internal scheduling

The chain must be unbroken. If the DU marks GTP-U packets with DSCP EF (46) for VoNR, but the PE ingress policy-map is not configured to trust that marking, the PE will either reset it to CS0 (best effort) or ignore it entirely. From that point on, VoNR packets compete with Netflix traffic in the same queue.

5QI Reference — The Ones That Matter in Practice

5QIUse CasePriority LevelPacket Delay BudgetDSCP Mapping
1VoNR (conversational voice)2 (highest)100 msEF (46)
2Live video streaming (GBR)4150 msAF41 (34)
5IMS signalling1100 msCS5 (40)
8Default internet (non-GBR)8300 msAF11 (10)
9Default internet (low priority)9300 msCS0 / BE (0)
65Mission-critical push-to-talk0.775 msEF (46)
80Low-latency MEC enterprise610 msAF31 (26)

3. Step-by-Step Real Flow — VoNR vs Netflix Under Congestion

The Congestion Scenario: Busy Hour in Muscat CBD

It is 6pm in Muscat. A subscriber is on a VoNR call. Simultaneously, thousands of users are streaming video. The 10GE midhaul link between the aggregation hub and the Seeb PE is at 85% utilisation. What happens?

Step 1 — DU Marks Packets

The DU receives encoded voice frames from the CU-UP (already classified by the 5G core as 5QI=1). It encapsulates them in GTP-U and sets the outer IP DSCP field to EF (46). Netflix video packets arrive as 5QI=8 or 5QI=9 from separate bearers — the DU marks these as AF11 (10) or CS0 (0). At this point, the packets look different. The differentiation is set.

Step 2 — Aggregation Switch: The First Danger Point

The GTP-U packets traverse the access/aggregation Ethernet switch toward the PE. This is where operators most commonly lose QoS. If the switch is not configured to trust DSCP markings from the DU — or if it is doing its own classification based on L2/L3 fields and overwriting DSCP — the VoNR EF marking gets reset to CS0 here. Everything looks identical by the time it reaches the PE.

The correct configuration: the aggregation switch must be set to trust DSCP on the DU-facing interface and map DSCP to 802.1p CoS bits for queuing within the switch fabric. EF maps to CoS 5 or 6. CS0 maps to CoS 0. The switch then schedules packets accordingly.

Step 3 — PE Ingress Policy-Map

The packet arrives at the PE. The PE ingress policy-map reads the DSCP value and assigns the packet to the correct traffic class. A properly configured PE does this:

  • DSCP EF (46) → class VoNR → set MPLS EXP 5 → queue in priority queue
  • DSCP AF41 (34) → class Video → set MPLS EXP 4 → queue in BW-guaranteed queue
  • DSCP CS0 (0) → class Default → set MPLS EXP 0 → queue in best-effort queue

The MPLS EXP bits are now set. These propagate through the core and are read by every P router for queue scheduling.

Step 4 — P Router Queue Scheduling Under Congestion

The P router has the 10GE link at 85% utilisation. Packets are arriving faster than they can be sent. The scheduler must decide what to drop. A properly configured P router runs something like:

  • Priority Queue (EXP 5/6): VoNR, IMS signalling — always serviced first, never dropped unless link is 100% saturated by priority traffic alone
  • BW Queue AF41 (EXP 4): Video streaming GBR — guaranteed minimum bandwidth, WRED applied when queue depth exceeds threshold
  • Best Effort (EXP 0): Default internet — serviced with leftover bandwidth, WRED drops aggressively when congested

Under congestion, Netflix packets get dropped by WRED. VoNR packets in the priority queue are unaffected. The subscriber’s voice call continues without degradation. This is what correct QoS looks like in practice.

Step 5 — Egress PE and UPF Delivery

The egress PE pops MPLS labels, re-marks DSCP if needed for the UPF-facing segment, and forwards packets. The UPF receives GTP-U packets with DSCP intact, applies charging and policy based on bearer QoS, and forwards inner packets to the internet. For VoNR, the complete path — DU to UPF — has maintained EF marking and priority queuing throughout.

Key insight: QoS is only as strong as its weakest enforcement point. One misconfigured switch or PE ingress policy-map in the middle of the chain undoes everything configured correctly upstream. QoS must be verified end-to-end during network acceptance, not assumed.

4. Practical Example — VoNR Call Drop Investigation

An operator reports VoNR call drops during busy hours at Muscat CBD sites. RAN KPIs show increased jitter on the N3 interface. The radio team confirms coverage and interference are clean. Investigation reveals:

Check PointFindingImpact
DU DSCP markingEF (46) correctly set on VoNR GTP-UCorrect — not the issue
Aggregation switch trustDSCP trust disabled on DU uplink portCRITICAL — EF overwritten to CS0 at this point
PE ingress policy-mapConfigured correctly but receiving CS0Policy working but classifying VoNR as best-effort (CS0 maps to default queue)
P router queuingEXP 0 packets in best-effort queueVoNR competing with Netflix — drops under congestion
Fix appliedEnable DSCP trust on aggregation switch DU-facing portsVoNR drops immediately eliminated after fix

The root cause was a single configuration missing on the aggregation switch. It took 4 hours of investigation to find because the symptom looked like a radio problem. This is why QoS end-to-end verification must be part of transport commissioning — not a post-incident exercise.

5. Key Parameters and Configurations

ParameterTypical ConfigCommon Mistake
DSCP trust at DU uplinktrust dscp on access switch DU portDefault is trust cos (L2 only) — DSCP ignored
DSCP-to-CoS mapping on switchEF→CoS6, AF41→CoS4, CS0→CoS0Using default linear mapping loses priority differentiation
PE ingress class-mapMatch dscp ef → class VoNRUsing match any instead of match dscp — everything lands in default class
PE ingress set MPLS EXPset mpls experimental imposition 5Not setting EXP = transit P routers use EXP 0 = best effort for all
P router queue configPriority queue for EXP 5/6, CBWFQ for EXP 4, WRED for EXP 0Flat queuing with no WRED = VoNR and Netflix compete equally
WRED thresholdsMin threshold 40%, max 80% for AF classesDefault WRED thresholds too high = no early drop, tail drop instead

6. Common Issues in the Field

  • DSCP marking overwritten at aggregation switch — the most common failure. Access switches default to trusting CoS (802.1p) not DSCP. DU marks DSCP correctly, switch ignores it, PE sees CS0 for everything.
  • PE ingress policy-map not applied to the right interface — policy-map is configured but applied to the wrong physical interface or subinterface. Check interface-level service-policy assignment, not just the policy-map definition.
  • MPLS EXP bits not preserved across third-party transit — if a segment of transport crosses a third-party network or a segment without EXP remarking, EXP bits may be reset. VoNR loses priority in the transit segment. Include EXP preservation in third-party transport SLAs.
  • Priority queue starvation — if too much traffic is marked EF (e.g. network management tools sending at EF), the priority queue saturates and all EF traffic including VoNR gets delayed. Strict police EF traffic at ingress to prevent priority queue abuse.
  • WRED not enabled on congested links — tail drop is the default on many platforms. Tail drop creates TCP synchronisation — all TCP flows back off simultaneously, causing throughput oscillation. WRED provides probabilistic early drop that prevents synchronisation.

7. Troubleshooting Approach

  • Capture DSCP at each hop — use port mirroring or TWAMP with DSCP checking to verify marking is preserved at DU output, aggregation switch output, PE ingress, and PE egress. Identify where EF marking disappears.
  • Check queue statistics during busy hour — pull interface queue counters during peak traffic period. A healthy VoNR-capable network shows near-zero drops in the priority queue and manageable drops in best-effort queues.
  • Verify PE ingress policy-map statistics — on the PE, show policy-map interface <x> shows packet counts and drop counts per class. If VoNR class shows zero matches, the classification is not working — packets are landing in the default class.
  • Check MPLS EXP preservation — on P router interfaces, verify EXP distribution in queue stats. If all packets show EXP 0 in transit, the PE is not setting EXP correctly or it is being overwritten.
  • Correlate transport jitter with RAN KPIs — use TWAMP to measure jitter on N3 path during busy hour. Correlate with VoNR MOS scores and PDCP reordering counts. A jitter spike on transport directly maps to VoNR quality degradation.

8. Design Recommendations — Consultant Level

  • Define QoS policy as a network-wide standard before deployment — document DSCP values, MPLS EXP mappings, queue configurations, and WRED thresholds for every traffic class. Make this a mandatory input to transport equipment configuration templates.
  • Use a maximum of 6-8 traffic classes end-to-end — more than 8 classes creates operational complexity and most hardware supports only 8 queues per interface anyway. Consolidate into: Network Control, VoNR/Real-time, Video GBR, Signalling, Enterprise, Default, Scavenger.
  • Enforce DSCP marking at the DU — never trust user devices to mark correctly. DU should remark all traffic based on 5QI regardless of what arrives from the UE.
  • Police priority queue at PE ingress — set a hard rate limiter on the EF class at PE ingress (typically 10-15% of link bandwidth). This prevents any single site or misconfigured device from flooding the priority queue across the entire core.
  • Test QoS under synthetic load before go-live — use traffic generators to simulate busy-hour conditions with mixed VoNR, video, and data traffic. Verify priority queue behaviour and confirm VoNR packets take zero drops when best-effort queue is congested.

9. Summary — Practical Takeaways

QoS in 5G transport is a chain — 5QI to DSCP to MPLS EXP to queue scheduling. Every link in that chain must be verified. The most common failure is at the aggregation switch, where DSCP trust is not configured and EF marking is silently overwritten. From that point, all downstream QoS config is irrelevant.

The fix is not complex. It is a consistent, documented QoS policy enforced at every node, verified end-to-end during commissioning, and re-verified after every maintenance change. Do this once, properly, and VoNR will always get priority over Netflix.

TakeawayAction
QoS chain breaks at the weakest nodeVerify DSCP trust and EXP preservation at every hop during commissioning
Aggregation switch is the most common failure pointEnable DSCP trust on all DU-facing and CU-facing switch ports
PE ingress policy-map must classify by DSCPVerify class-map hit counts during busy hour — zero hits = misconfiguration
Police EF traffic at PE ingressPrevent priority queue starvation — hard rate-limit EF to 10-15% of link BW
Test QoS under load before go-liveUse traffic generators to verify VoNR takes zero drops under congestion

Muhammad Tahir Riaz  |

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top