How the RAN divides capacity between slices, tenants, and services on a shared carrier
This page focuses on the Radio Resource Partition (RRP) — the RAN-side object that decides how a cell's capacity is shared between network slices, tenants, and traffic types. RRPs are the mechanism that lets a single 5G carrier carry wildly different services at once without any of them being starved.
What it is
An RRP is a policy object that reserves a proportion of the cell's PRB capacity (e.g. 40–70%). It is not a frequency range; it is a budget the MAC scheduler must honour when handing out PRBs from the shared pool.
How it works
Each RRP has a minimum share (guaranteed floor, reclaimed the moment it has traffic) and a maximum share (burst ceiling). The scheduler runs its normal metrics inside those bounds and is pushed back whenever it tries to cross.
How it's used
An RRP hosts one or more S-NSSAIs (slice identifiers), each with its own PDU sessions, QoS flows, and data networks. The diagrams below show one concrete example — a consumer RRP and an industrial RRP sharing a 100 MHz carrier.
🎛️ Try it yourself — adjust the policy, watch everything update
All diagrams below — the legend, the policy chips, the scenario bars, and the animated envelope — are driven by these four sliders. Drag to explore.
RRP-A (Consumer)
40%
70%
RRP-B (Industrial)
30%
60%
🔄 Elastic borrowing in action — the soft + dynamic combination at work
Scenario ABoth RRPs busy — each held at its Min
RRP-A (40%)
RRP-B (30%)
elastic pool (30%)
Both slices have active traffic, so the scheduler enforces the Min floors. The elastic pool is contested and split by scheduler weights — neither slice can exceed its Min by much.
Scenario BRRP-B idle — RRP-A bursts up to its Max
RRP-A Min (40%)
↙ borrowed from elastic pool
+30% burst
RRP-B idle (30% released)
RRP-B has no buffered traffic, so its Min is returned to the pool. RRP-A grows from 40% → 70% (its Max ceiling), absorbing both the elastic pool and RRP-B's unused floor. The moment URLLC traffic arrives at RRP-B, the scheduler pulls RRP-A back to 40%.
📐 The scheduler operates inside the policy envelope
Min and max are bounds, not set-points. The scheduler moves freely inside them and is pushed back when it tries to cross. The two scenarios above are single frames from this continuous-time view.
Scheduler state:both RRPs busy
Three regimes in one picture: above max — the scheduler is blocked regardless of what its metrics prefer; between min and max — the scheduler runs normal proportional-fair / QoS-weighted metrics without policy interference; below min with traffic — the scheduler prioritizes this RRP's UEs to restore the floor. An idle RRP's floor is not reserved — it's released to the pool, which is what enables RRP-A's burst.
RRP-B policyMin 30%Max 60%│Hosts: SST=2, SD=16│Releases idle capacity to pool
SLICE 3Vertical Industry (URLLC)
S-NSSAI: SST=2, SD=16
PDU Session 3
DNN:factory.local
QoS Flows (within this session)
5QI=82
Process AutomationGBR, 10ms latency
5QI=83
Remote ControlGBR, 10ms latency
PDU Session 4
DNN:monitoring
QoS Flows (within this session)
5QI=9
Monitoring DataBest Effort
🌐
DN: Internet
Public Internet
📞
DN: IMS
Voice Services
🏭
DN: Enterprise
Private Network
📡
Carrier capacity — a shared PRB pool
Example: n78 Band (3.5 GHz TDD)
100 MHz · 273 PRBssingle shared pool — the scheduler draws from it freely, subject to each RRP's min/max proportions
3500 MHz3550 MHz3600 MHz
An RRP is not a fixed slice of frequency. It is a proportion of the cell's PRB capacity that the scheduler must honour when allocating resources. In any given slot, RRP-A's UEs and RRP-B's UEs can be interleaved anywhere across the band — what matters is their aggregate share over the scheduler's measurement window.
RRP-A (Consumer)
minimum share = 40% (floor) • maximum share = 70% (ceiling) Serves Mass Market + IMS slices. May borrow from the elastic pool when RRP-B is idle.
RRP-B (Industrial)
minimum share = 30% (floor) • maximum share = 60% (ceiling) Serves URLLC slice. Unused capacity is released back to the elastic pool.
Soft slicing with dynamic scheduling
The name combines two independent properties of this setup
Isolation axis what the policy allows
softSoft slicing — each RRP has a minimum share (its floor) and a maximum share (its ceiling). Idle capacity can be borrowed by neighbours; the floor is reclaimed the moment traffic returns.
Time axis when the partitioning changes
dynamicDynamic scheduling — the MAC scheduler re-decides the split every slot (sub-millisecond) based on buffer status, channel quality, and QoS targets.
The two properties work together: the soft policy is what makes RRP-A's idle capacity borrowable in the first place, and the dynamic scheduler is what actually performs the per-slot reallocation. Without soft there would be nothing to borrow; without dynamic the borrowing could not track traffic in real time.
📡 RRP
Radio Resource Partition — A proportion of the cell's PRB capacity reserved as a policy floor and ceiling (e.g. 40–70%). RRPs do not carve up the spectrum into fixed frequency ranges; they constrain the scheduler's allocation from a shared PRB pool. One RRP can serve multiple S-NSSAIs, enabling efficient sharing while guaranteeing isolation.
🔖 S-NSSAI
Single Network Slice Selection Assistance Info — Identifies a network slice via SST (Slice/Service Type) + optional SD (Slice Differentiator). Each slice provides isolated E2E resources.
⚡ 5QI
5G QoS Identifier — Defines QoS characteristics: latency, packet loss, priority. Each QoS Flow within a PDU Session has a 5QI. Values 1-127 are standardized.
🎯 DNN
Data Network Name — Identifies the destination data network (like APN in LTE). Examples: internet, ims, enterprise.vpn. Bound to PDU Sessions.
📊 Need 5QI Reference Details?
Explore the complete list of standardized 5G QoS Identifiers with detailed characteristics, latency budgets, and use cases
Relationship model — RRP ↔ S-NSSAI is many-to-many
An S-NSSAI identifies a slice end-to-end; an RRP is a RAN-local resource pool. The mapping between them is a set, not a tree — one S-NSSAI can be served by several RRPs, and one RRP can host several S-NSSAIs.
RRPs (RAN resource pools)
RRP-A
Min 40% / Max 70%
RRP-B
Min 30% / Max 60%
S-NSSAIs (end-to-end slice IDs)
SST=1, SD=1
Mass Market (eMBB)
SST=1, SD=2
IMS / VoNR (eMBB)
SST=2, SD=16
Vertical Industry (URLLC)
RRP-A primary mappingRRP-B primary mappingOptional borrow path (slice authorised to use another RRP when its home RRP is saturated)