CafeTeleRadio Optimization SRPO-600 Enroll now ↗
‹ Day 5 · MOCN Course / Day 5 / 5.2 5G NR MOCN
MOCN
5G
5.2 · 5G NR MOCN

5G NR MOCN — One RAN, Many Operators

Multi-Operator Core Network sharing on 5G NR: one site, one gNB, one carrier — broadcasting up to eight PLMNs in SIB1, each routed to its own 5G core, each given a controllable slice of the PRBs. Architecture, the Samsung features, the 7-phase build, per-PLMN PRB & CAC config, counters, optimization and a feature trial.

8PLMNs per cell (SIB1 broadcast)
4Samsung MOCN features
7Phase configuration plan
5583Per-PLMN counter family
0–100%Per-PLMN PRB portion
The MOCN architecture — shared RAN, separate cores

In MOCN, operators share everything at the radio — the site, the gNB hardware and one spectrum carrier — and the cell broadcasts every operator's PLMN in SIB1. What stays separate is each operator's core: its own AMF, SMF/UPF (user plane) and UDM/AUSF (subscriber DB). A UE selects its home PLMN from SIB1 and the shared gNB routes it over NG to that operator's core.

One shared gNB · dual-PLMN SIB1 · two operator coresMOCN
Uu · PLMN-AUu · PLMN-B NG → Op-ANG → Op-B
Operator A
UE · PLMN-A
Operator B
UE · PLMN-B
Shared gNB
1 site · 1 HW · 1 carrier
SIB1: PLMN-A + PLMN-B
PRB portion per PLMN
Operator A core
AMF · SMF/UPF
UDM / AUSF
Operator B core
AMF · SMF/UPF
UDM / AUSF
shared radio (Uu) separate cores (NG)Shared: site · HW · carrier · SIB1. Separate: AMF · SMF/UPF · UDM/AUSF.
What is shared vs separate
Shared (RAN)Separate (per operator core)
Site & gNB/eNB hardwareAMF / MME
Spectrum carrier (one channel)SMF / UPF (user plane)
SIB1 (all PLMNs broadcast)UDM / AUSF (subscriber DB)
MOCN vs MORAN — shared carrier or dedicated carrier
Shared carrierMOCN1 carrier
Spectrumone carrier, shared
PLMNsall broadcast in SIB1
Resource splitPRB portion per PLMN
Best formax spectral efficiency
Dedicated carrierMORANN carriers
Spectrumseparate carrier per operator
PLMNsown carrier each
Resource splithard, by carrier
Best forstrict isolation / SLA
The complete MOCN feature catalog (FGR)

MOCN isn't one feature — it's a stack. Identity + broadcast, then the resource split, then admission & QoS per operator, then load balancing, overload protection, slice/service steering and AMF selection. Every code below is a real Samsung FGR from the RAN Feature Description; this is the full toolbox you configure and trial.

Per-feature deep-dive — each core feature fully wired with parameters, counter families, optimization technique & solutions, the way an optimization engineer works it.Open the feature deep-dive ›
Core MOCN — identity, sharing & mobility
Core
FGRFeatureWhat it does · where in MOCN
FGR-CC6101Multiple PLMN SupportBroadcast up to 8 PLMNs per cell in SIB1 plmn-IdentityInfoList — Phase 1–2
FGR-RS1801PLMN-Based PRB Portion ControlControllable PRB share per PLMN via distribution ratio — Phase 4
FGR-RS1201PLMN PRB portion + DSSPRB portion control that coexists with LTE-NR Dynamic Spectrum Sharing
FGR-MC1015PLMN-Based Mobility ControlPer-PLMN measurement/report config so HO stays in-operator — Phase 5
FGR-CC6001AMF Selection & Load BalancingSelect the correct operator AMF (GUAMI) & balance across the AMF set
Admission & QoS — per PLMN, per slice
CAC & QoS
FGRFeatureWhat it does
FGR-CC0301Call Admission Control (capacity)Per-PLMN capacity admission — cap concurrent context
FGR-CC0302QoS / GBR CACAdmission on GBR bearers by the PRB portion per cell
FGR-CC0303CAC for Network SlicePer-slice (S-NSSAI) admission control
FGR-CC0431 / CC0421UE-AMBR & UE-Slice-MBRPer-UE and per-slice aggregate max bit rate
FGR-BC7002Max Rate Control per QCI/5QI/SliceRate-shape each operator's QoS classes / slices
Load balancing & reselection
Load balancing
FGRFeatureWhat it does
FGR-LC0702Idle-Mode Load BalancingPer-PLMN idle distribution ratio (reselection-based) — see below
FGR-LC0703Connected-Mode / FR1 Load Balancing (MLB)Load-based HO offload using neighbour resource-status
FGR-MC1006Cell Reselection controlRSRP/RSRQ/SINR reselection thresholds & SSB averaging
FGR-MC1019 / MC1021Service (5QI/Slice)-based idleSteer active-to-idle UEs by service / slice; per-slice idle mobility
Overload, steering & redirection
Overload & steering
FGRFeatureWhat it does
FGR-LC0302Overload ProtectionX2/Xn overload status indication, hand-in restriction
FGR-LC0303Overload Protect (paging / call)Paging-protect & call-protect thresholds under congestion
FGR-CC1103Overload ActionBar access under critical/major overload
FGR-CC0401Preemption with RedirectionPreempt low-priority bearers & redirect
FGR-CC0801 / LC0704SPID-based steeringSPID/RFSP serving-cell selection & EN-DC operation per PLMN
FGR-SV0201 / SV0202Fallback / Emergency RedirectionBlind or measurement-based redirection on fallback
Slice, DSS & advanced steering
Extended
FGRFeatureDescription
FGR-RS1202PLMN PRB portion + DSS (variant)Applies per-PLMN PRB portion control on a carrier that also runs LTE-NR Dynamic Spectrum Sharing
FGR-CC5001Freq-priority PSCell change (EN-DC)Per-PLMN frequency-priority-based PSCell add / change / switch for EN-DC UEs
FGR-CC5003SPID-based UL path switchingPer-SPID choice of the UL primary path (MCG/SCG) — steer premium subscribers per operator
FGR-CC0413PLMN-based QoS-DRB mappingMaps QoS flows → DRBs per PLMN, keeping each operator's QoS handling independent
FGR-MC1006Cell reselection controlPer-cell reselection thresholds (RSRP/RSRQ/SINR), SSB averaging & SIB2 sub-priority
FGS-SF0502PLMN translation tableTranslates up to 8 received PLMNs (mcc0-7/mnc0-7) to an actual PLMN — roaming / steering
FGR-RV0601Delay-critical slice supportDelay-critical GBR handling for a slice (URLLC-class) per operator
FGR-MC1019 / MC1021Service / slice-based idleSteer active-to-idle UEs by 5QI / slice; per-slice idle mobility for specified slices
i
~28 FGR features make up the MOCN toolbox across these six groups — from the three you can't run MOCN without (CC6101, RS1801, MC1015) to the QoS, slice, load-balancing and steering features that turn a working shared cell into an SLA-grade one. Every code here is a real Samsung FGR you enable and trial.
The 7-phase configuration plan

MOCN is built in a strict order — identity first, then user plane, then the resource split, then mobility, then commit. Do it out of order and SIB1 or the per-PLMN routing breaks.

1
DU PLMN list — declare who the cell serves

On the DU cell, define the ordered broadcast PLMN list — every mcc/mnc that will appear in SIB1's plmn-IdentityInfoList. The first entry is the primary (host) PLMN; up to 8 are allowed (FGR-CC6101). The DU owns the SIB scheduling that actually airs these PLMNs, so identity starts here.

gutran-du-cell · broadcast PLMN list (mcc/mnc) · order = priority If wrong: a PLMN missing here never reaches SIB1 — that operator's UEs read "no suitable cell / no service" regardless of the CU config.
2
CU-CP anchor — identity, TAC & supported slices

On the CU-CP, register each PLMN in gnb-cu-plmn-info (plmn-index, mcc, mnc) with its trackingAreaCode, and populate plmn-support-info-entries with the S-NSSAI slice list that operator supports. At NG Setup the CU-CP advertises this per-PLMN "Supported TA List" to each operator's AMF, so the AMF knows this gNB serves it.

gnb-cu-plmn-info · plmn-support-info-entries · trackingAreaCode If wrong: the CU PLMN list must exactly match the DU list or the cell is rejected at F1 Setup; a wrong TAC breaks registration-area handling; a missing S-NSSAI blocks that operator's slice.
3
CU-UP per-PLMN — route each operator's user plane

Bring up the user plane per PLMN on the CU-UP so each operator's PDU sessions terminate at its own SMF/UPF over N3. E1 (CU-CP↔CU-UP) carries the bearer context tagged with the PLMN and S-NSSAI, so the SDAP/PDCP-U instance maps to the right operator.

gnb-cu-up · per-PLMN UP transport (N3) · E1 bearer context If wrong: sessions establish but user data blackholes — the classic "attached, no throughput" MOCN fault from a mis-mapped UPF.
4
PRB portion control — split the carrier by policy

Enable FGR-RS1801 and set each PLMN's PRB share with plmn-N-ue-distribution-ratio (0–100 %) plus distribution-ratio-per-plmn-switch = enable (FGR-LC0702). Reinforce it with per-PLMN CRP and admission hard limits so the ratio is a floor, not a hint. With DSS present, use FGR-RS1201 so the portion coexists with the LTE carrier.

plmn-0…7-ue-distribution-ratio · distribution-ratio-per-plmn-switch If wrong: ratios that don't track real load either starve the busy operator or waste PRBs on an idle one — verify against DLUsedPrbPlmn (Fam 5241).
5
Mobility — keep each UE in its operator's context

Apply FGR-MC1015: measurement/reporting configuration per PLMN, so each operator's UEs use that operator's neighbour list and frequency priorities on HO and reselection. Idle (LC0702) and connected (LC0703) load-balancing are PLMN-aware too.

FGR-MC1015 · per-PLMN report-config · per-PLMN neighbour/priority If wrong: shared mobility can hand an operator's UE to a cell that doesn't broadcast its PLMN → HO failure / drop counted against the wrong operator.
6
SVR25 new features — apply the current release deltas

Enable the SVR25A/B MOCN enhancements the deployment needs — newer per-PLMN slice CAC, richer per-PLMN reporting, DSS interworking. Turn on only what is licensed and required, and treat each as a golden-parameter change to trial (Day 6 method).

SVR25A/B feature switches (per-PLMN CAC · slice · DSS) If wrong: enabling an unlicensed or unneeded feature can change scheduler behaviour cell-wide — stage one feature at a time.
7
Commit & verify — prove it per-PLMN

Commit the cell, then verify three things: (a) a SIB1 decode shows every PLMN in plmn-IdentityInfoList with the right TAC; (b) each operator's AMF shows the gNB up over NG; (c) per-PLMN KPIs — PRB usage (Fam 5241), throughput/loss (Fam 5583/5584) and the PlmnNotServedByTheGnbCu cause (Fam 5026/5174) — are healthy and match the configured portions.

SIB1 decode · NG status · Fam 5241 / 5583 / 5026 per PLMN If wrong: verify per-PLMN, never cell-aggregate — a healthy cell average routinely hides one starved operator.
PLMN identity configuration — real managed objects
gnb-cu-plmn-info · plmn-support · plmn-translation (real MO)
LeafMORangeSets
plmn-indexgnb-cu-plmn-info0…PLMN entry index on the CU
mccgnb-cu-plmn-info3 digitsMobile Country Code
mncgnb-cu-plmn-info2–3 digitsMobile Network Code
plmn-support-info-indexplmn-support-info-entries0…15Per-PLMN support entry (up to 16)
plmn-translation-switchplmn-translation-tableoff / onEnable the 8-PLMN translation table (mcc0…7/mnc0…7)
Worked configuration — two operators on one shared cell

Put it all together on a concrete cell: one n78, 100 MHz TDD carrier (30 kHz SCS → 273 PRBs), shared 60/40 between two operators. Operator A takes the larger share; both run an eMBB slice to their own core. These are example PLMN codes — the engineering is exactly what you enter in LSM.

Host / anchorOperator A60%
PLMN (MCC/MNC)404 / 45
plmn-index0
Tracking Area Code100 (0x000064)
Slice · S-NSSAISST 1 · SD 000001
PRB portion60% ≈ 164 PRB
Admission capmax-no-of-rrc 600
CoreAMF-A · UPF-A (GUAMI-A)
Guest / tenantOperator B40%
PLMN (MCC/MNC)405 / 840
plmn-index1
Tracking Area Code200 (0x0000C8)
Slice · S-NSSAISST 1 · SD 000002
PRB portion40% ≈ 109 PRB
Admission capmax-no-of-rrc 400
CoreAMF-B · UPF-B (GUAMI-B)
How a UE picks its operator & reaches its core
SIB1 broadcast → PLMN selection → RRC → NGAP to the home AMFNAS routing
GUAMI → A
SIB1
{404-45, 405-840}
UE
selects 404-45
Shared gNB
RRC + NGAP route
Operator A
AMF-A · registers
Operator B
AMF-B (other UEs)
this UE → Op-AThe selected PLMN in the RRC/registration + the GUAMI route the UE to the correct operator AMF.
The actual configuration (LSM managed-object set)
// shared n78 100 MHz TDD cell — 273 PRB — MOCN 60/40 # ── Operator A · PLMN 404-45 ────────────────── gnb-cu-plmn-info[0] { mcc=404 mnc=45 } trackingAreaCode = 0x000064 # TAC 100 plmn-support-info[0].s-nssai = { sst 1, sd 000001 } # eMBB plmn-0-ue-distribution-ratio = 60 # 60% ≈ 164 PRB · FGR-RS1801 max-no-of-rrc = 600 # ── Operator B · PLMN 405-840 ───────────────── gnb-cu-plmn-info[1] { mcc=405 mnc=840 } trackingAreaCode = 0x0000C8 # TAC 200 plmn-support-info[1].s-nssai = { sst 1, sd 000002 } plmn-1-ue-distribution-ratio = 40 # 40% ≈ 109 PRB max-no-of-rrc = 400 # ── enable the sharing + per-PLMN mobility ──── distribution-ratio-per-plmn-switch = enable # FGR-LC0702 FGR-CC6101 = on FGR-RS1801 = on FGR-MC1015 = on
Phase-by-phase — the same config as a build sheet
Two-operator build sheet
ItemMO leaf / featureOperator AOperator B
PLMN (MCC/MNC)gnb-cu-plmn-info · mcc/mnc404 / 45405 / 840
PLMN indexplmn-index01
Tracking Area CodetrackingAreaCode100 (0x64)200 (0xC8)
Slice (S-NSSAI)plmn-support · sst / sd1 / 0000011 / 000002
PRB portionplmn-N-ue-distribution-ratio60% (~164 PRB)40% (~109 PRB)
Admission capmax-no-of-rrc600400
Per-PLMN mobilityFGR-MC1015enabledenabled
Per-PLMN KPI tagFamily 5583…_PLMN(404-45)…_PLMN(405-840)
Verify it in SIB1 — the IEs the UE actually reads (TS 38.331)
SIB1 broadcast content
SIB1 IEOperator AOperator BPurpose
plmn-IdentityInfoList404-45405-840The PLMNs the cell advertises
trackingAreaCode0x0000640x0000C8TAC per PLMN (registration area)
cellIdentity (NCI)36-bit NR Cell Identity (shared cell)Globally identifies the cell (NR-CGI)
cellReservedForOperatorUsenotReservednotReservedSet reserved to bar non-operator UEs per PLMN
cellSelectionInfoq-RxLevMin / q-QualMinCamping thresholds (shared)
NR Cell Identity (NCI) — 36 bits = gNB ID (22–32 bits, per small-cell-gnb-id-length) + Cell ID. A 24-bit gNB ID leaves 12 bits → up to 4096 cells per gNB. The NCI + PLMN forms the NR-CGI the neighbour list and ANR use. Each broadcast PLMN pairs with the same NCI but its own TAC.
i
Slicing per operator — each PLMN advertises its own S-NSSAI (SST + SD); the DRB/QoS mapping (mapping-rule-entries, sst/sd) and per-PLMN slice CAC (CC0303) then keep Operator A's eMBB and Operator B's eMBB on separate accounting even on the same PRBs.
Interactive config generator — build your own two-operator cell

Set each operator's PLMN, TAC and PRB share plus the channel bandwidth — the LSM config, the SIB1 broadcast and the per-PLMN PRB allocation regenerate live. The whole page, made hands-on.

Inputs live generator
60%Op A
40%Op B
Generated LSM config
SIB1 broadcast + PRB allocation
PRB portion control — divide the carrier between operators

FGR-RS1801 gives each PLMN a controllable slice of the cell's PRBs via the per-PLMN distribution ratio (plmn-N-ue-distribution-ratio, 0–100 %). Drag the sliders to allocate the shared carrier between three operators — the split re-normalises live, exactly as the scheduler apportions PRBs.

Per-PLMN PRB share normalised to 100%
50%Operator A
30%Operator B
20%Operator C
Per-PLMN distribution ratio (real MO)
LeafRangeDefaultSets
distribution-ratio-per-plmn-switchdisable / enableenableTurn on per-PLMN distribution (FGR-LC0702)
plmn-0-ue-distribution-ratio0…100100PLMN-0 share of UEs / resources (%)
plmn-1…7-ue-distribution-ratio0…100100Per-PLMN share for PLMNs 1–7 (%)
!
Hard limits & per-PLMN CRP — combine the distribution ratio with per-PLMN Call Retention Priority (CRP) and admission hard limits so a busy operator can't starve a quieter one below its SLA floor. This is the core MOCN fairness lever.
Idle-mode load balancing (IFLB) — steer UEs before they connect

Before a UE ever sends data, MOCN can bias where it camps — nudging idle UEs of a PLMN toward a less-loaded frequency via cell-reselection. It runs in manual mode (fixed ratios you set) or auto mode (the gNB weights by measured load), re-evaluated every few seconds and only once load crosses a trigger. This is the cheapest load control — no signalling, no HO.

Idle-mode load balancing · FGR-LC0702 (real MO)
LeafMORangeDefaultSets
idle-mobility-control-switchfunction-controldisable/enabledisableMaster IFLB on/off (SVR25A default OFF)
operation-mode-for-idle-load-balancingidle-mode-infomanual / automanualFixed ratios vs auto-by-load (SVR25A = manual)
period-for-idle-load-balancingidle-mobility-control1…60 min3 minRe-evaluation period
trigger-threshold-for-idle-load-balancingidle-mode-info0…100 %0Load above which IFLB acts
weight-in-automode-for-idle-load-balancingcell-reselect-intra-freq-info0…100100Auto-mode weighting
ue-distribution-ratio-for-idle-load-balancingcell-reselect-intra-freq-info0…100100Overall idle distribution
distribution-ratio-per-plmn-switchidle-mode-infodisable/enabledisableTurn on the per-PLMN split (SVR25A default OFF)
plmn-0…7-ue-distribution-ratio…-per-plmn0…100100Per-PLMN idle share (%)
Connected-mode load balancing (MLB) — offload active UEs

Once UEs are connected, MLB moves load off a hot cell with a load-based handover. The gNB learns neighbour load through resource-status reporting over F1/Xn; when the serving cell crosses its load threshold it hands selected UEs to a lighter neighbour. Evaluate by resource (PRB) or user (UE count).

Resource-status exchange → load-based HOFGR-LC0703
resource-status (F1/Xn)load-based HO
Serving cell (hot)
PRB > threshold
load-evaluate-mode
Neighbour
reports its load
≤ 32 tracked
Result
UEs offloaded
resource-status report load HO
Connected-mode load balancing · FGR-LC0703 (real MO)
LeafMORangeDefaultSets
fr1-load-balancing-switchfunction-controldisable/enableenableMaster MLB on/off
load-evaluate-modeconnected-mode-inforesource / ueresourceEvaluate load by PRB (SVR25A default) or by UE count
mr-wait-timerconnected-mode-info1000…10000 ms2000Measurement-report wait
resource-status-reporting-switchload-balancing-function-controloff/ononExchange neighbour load
reporting-period-f1 / -xnresource-status-reporting-info500 / 1000 / 2000 / 5000 / 10000 ms10000 msLoad report period (SVR25A default 10 s)
number-of-reporting-neighbors-per-carrierresource-status-reporting-info0…3216Neighbours tracked per carrier
filter-coefficient-rrc-ueresource-status-reporting-info0.0…1.00.2Load-metric smoothing
Cell-reselection thresholds — the idle candidate gate (FGR-MC1006)

IFLB works through reselection, so these thresholds decide which cells an idle UE even considers. Tighten them and camping stays local; loosen them and load spreads wider.

cell-reselect-intra-freq-info (real MO)
LeafRangeDefaultSets
threshold-rsrp0…12735RSRP gate for reselection candidates
threshold-rsrq0…1278RSRQ gate
threshold-sinr0…1270SINR gate
nr-of-ss-blocks-to-average2…162SSBs averaged per measurement
range-to-best-cell-usagetrue/falsefalseConsider cells within a range of the best
Redirection & SPID-based steering

Redirection moves a UE at connection release (or fallback) to a target frequency/RAT; SPID/RFSP-based steering lets you route by subscriber profile — useful to give an operator's premium SPID a preferred layer.

Redirection & SPID (real MO)
LeafRangeDefaultSets
fallback-redirection-methodblind / measurement-basedmeasurement-basedHow EPS/CSFB fallback redirects (FGR-SV0201)
spid-based-serving-cell-selection-enabledisable/enableenableSteer serving cell by SPID/RFSP (FGR-CC0801)
ul-primary-path-switch-flag-per-spiddisable/enableenablePer-SPID UL primary path (FGR-CC5003)
a2-threshold-rsrp0…12739A2 trigger for SPID path switching
rrc-measurement-report-wait-for-redirection10…65535 ms1000Wait for MR before redirect
Admission, overload & CRP — the per-PLMN fairness floor

Distribution ratios share the average; admission & overload protect each operator at the edge. Per-PLMN hard caps stop one operator monopolising context, CRP (Call Retention Priority) decides who survives preemption, and overload protection sheds new load gracefully instead of dropping calls.

Admission / overload (real MO)
LeafRangeDefaultSets
max-no-of-rrc / drb / pduper modelPer-PLMN hard caps on concurrent context
overloaded-levelcritical / majormajorOverload trip level
overload-actionbarred / not-barrednot-barredBar access under overload (FGR-CC1103)
x2-status-indication-flagoff / ononSignal overload to neighbours (FGR-LC0302)
paging-protect-usagenot-use / useuseProtect paging under load (FGR-LC0303)
call-protect-usage · threshold-for-sa/nsause · 0…500000use · 2400Protect calls; SA/NSA congestion thresholds
preemption-with-redirectionnot-use / useusePreempt low-priority + redirect (FGR-CC0401)
!
The fairness stack, layered — distribution ratio (average share) → per-PLMN hard caps (ceiling) → CRP (who survives preemption) → overload protection (graceful shedding). Set all four together; a distribution ratio alone won't hold an SLA when the cell saturates.
i
Per-PLMN mobility (FGR-MC1015) ties it together: measurement/report config is per PLMN, so idle (LC0702) and connected (LC0703) load balancing move each operator's UEs only to cells that broadcast that operator's PLMN.
Golden parameters — Default (exact) vs Recommended (MOCN)

This is the heart of the day. Default = the exact factory value from the Samsung SVR25A Parameter Description (5G CU, 2026); Recommended = the golden-parameter starting point for a shared MOCN cell. Defaults are correct as shipped; recommended values are engineering guidance you always trial per Day 6 (baseline → single change → 48 h soak → verify → roll back).

!
Release matters — Samsung changed several defaults in SVR25A (2026) vs SVR22B. Verified from the SVR25A Parameter Description: distribution-ratio-per-plmn-switch enable→disable, idle-mobility-control-switch enable→disable, operation-mode-for-idle-load-balancing auto→manual, load-evaluate-mode ue→resource, reporting-period-f1/xn 1000→10000 ms, q-hyst dB1→dB0. Always confirm defaults against the release you're on.
PLMN sharing & PRB portion
Sharing golden set
ParameterRangeDefaultRecommended (MOCN)Why
distribution-ratio-per-plmn-switchdisable/enabledisableenableSVR25A default OFF → enable to split PRBs per PLMN
plmn-N-ue-distribution-ratio0…100100= contracted share (e.g. 60 / 40)100 = "no cap"; set to each operator's SLA share
MinDRR / MaxDRR (LTE)0…100Min = SLA floor · Max = capProtect the floor, cap the hog (Partial/Adaptive)
Idle-mode load balancing (FGR-LC0702)
Idle LB golden set
ParameterRangeDefaultRecommended (MOCN)Why
idle-mobility-control-switchdisable/enabledisableenableSVR25A OFF → enable for per-PLMN camp steering
operation-mode-for-idle-load-balancingmanual / automanualmanual (strict SLA) · auto (best-effort)SVR25A default is manual (predictable per-PLMN split)
period-for-idle-load-balancing1…60 min3 min3–5 minLong enough to avoid camp churn
trigger-threshold-for-idle-load-balancing0…100 %060–70 %0 = always balance; only balance when actually loaded
ue-distribution-ratio-for-idle-load-balancing0…100100per idle planOverall idle spread across the layer
Connected-mode load balancing (FGR-LC0703)
MLB golden set
ParameterRangeDefaultRecommended (MOCN)Why
fr1-load-balancing-switchdisable/enableenableenableMaster connected-mode LB
load-evaluate-moderesource / ueresourceresourceSVR25A default = resource (MOCN shares PRBs)
mr-wait-timer1000…10000 ms2000 ms2000–3000 msLong enough to avoid load-HO ping-pong
reporting-period-f1 / -xn500…10000 ms10000 ms1000–2000 msSVR25A default 10 s → shorten for faster LB
number-of-reporting-neighbors-per-carrier0…3216= real neighbour countTrack the neighbours you actually offload to
filter-coefficient-rrc-ue0.0…1.00.20.2–0.3Smooth a noisy load metric
Reselection, redirection, admission & overload
Protection golden set
ParameterRangeDefaultRecommended (MOCN)Why
threshold-rsrp (reselect)0…12735per coverage (tighten to keep local)Gate idle candidates so camping stays balanced
nr-of-ss-blocks-to-average2…1624–8More averaging → steadier reselection
fallback-redirection-methodblind / meas-basedmeasurement-basedmeasurement-basedMore reliable target than blind redirection
a2-threshold-rsrp (SPID switch)0…12739per coverageWhen to trigger SPID UL-path / redirect
overloaded-levelcritical / majormajormajorTrip protection before critical
overload-actionbarred / not-barrednot-barrednot-barredShed gracefully; bar only as last resort
threshold-for-paging0…655352400tune to paging loadProtect paging channel under congestion
threshold-for-sa / -nsa0…5000002400= cell call capacityProtect SA/NSA call setup under overload
monitoring-period1…15 s2 s2 sOverload sampling cadence
preemption-with-redirectionnot-use / useuseuseFree capacity for high-ARP bearers cleanly
How to read this — the Default column is 100% correct as shipped (Samsung Parameter Description, SVR22B). The Recommended column is the golden-parameter change for a shared cell — the two biggest MOCN-specific moves are plmn-N-ue-distribution-ratio = contracted share (not 100) and load-evaluate-mode = resource (not the ue default), because MOCN fairness is about PRBs. Everything else stays near default until a KPI says otherwise.
Mobility parameters for MOCN — per-PLMN (FGR-MC1015)

FGR-MC1015 makes the measurement / report configuration per PLMN, so each operator's UEs hand over and reselect using that operator's own thresholds, neighbour list and frequency priorities. Every value below is exact from the Samsung Parameter Description (SVR22B NR). RSRP thresholds use the 3GPP 0–127 index (RSRP −156…−31 dBm, so 51 ≈ −105 dBm).

Handover / measurement (real MO · exact defaults)
ParameterMORangeDefaultRecommended (MOCN)Purpose
intra-nr-handover-event-typeintra-frequency-meas-objectevent-a3 / event-a5event-a5A5 (keep) / A3 per planSamsung default intra-NR HO trigger is A5
a3-offset-rsrpa3-report-config−30…3044–6Neighbour-better-than-serving offset
a3-hysteresisa3-report-config0…3001–2HO hysteresis (anti-ping-pong)
time-to-trigger (a1/a3)report-configms0…ms1024ms40ms160–320Debounce before report; higher cuts ping-pong
a5-threshold1-rsrpa5-report-config0…12751per coverageServing-worse-than threshold (≈ −105 dBm)
a5-threshold2-rsrpa5-report-config0…12751per coverageNeighbour-better-than threshold
a5-hysteresisa5-report-config0…3001–2A5 hysteresis
b1-threshold-eutra-rsrpb1-eutra-report-config0…9751per planInter-RAT NR→LTE trigger
report-intervalreport-config-entriesms120…min60ms240ms240Periodic measurement-report interval
report-amountreport-config-entriesr1…infinityr2r2Number of reports per trigger
Idle / frequency-priority (per PLMN · exact defaults)
ParameterMORangeDefaultRecommended (MOCN)Purpose
cell-reselection-prioritycell-reselect-intra-freq-info0…75per PLMNIdle absolute frequency priority
sa-frequency-priorityfrequency-priority0…310per PLMNConnected-mode target-frequency priority
cell-reselection-subpriority-usagecell-reselect-intra-freq-infotrue / falsefalseenable for fine priorityUse cellReselectionSubPriority in SIB2 (FGR-MC1006)
a2-threshold-rsrpa2-report-config0…12739per coverageServing-poor trigger (inter-freq / redirect)
i
Per-PLMN in practice — with FGR-MC1015 the A3/A5 report configs and frequency priorities are held per PLMN, so Operator A can prefer n78→n28 while Operator B prefers n78→B3 on the same shared cell. Get this wrong and a UE is measured toward a frequency its operator doesn't run — the #1 cause of one-operator-only HO failures in MOCN.
MOCN counters & KPIs — measured per PLMN (Family 5583)

The whole point of MOCN operations is that every KPI is per-PLMN. Samsung's per-PLMN counter family 5583 breaks throughput, loss and drop down by CELL · PLMN · 5QI · S-NSSAI — so you can prove each operator's SLA independently.

Per-PLMN counter families (real, from the Counter Description)
FamilyCounters (examples)GranularityMeasures
5241DLUsedPrbPlmn · ULUsedPrbPlmn · DL/ULAvailablePrbPlmncell · PLMN⭐ PRB usage & availability per PLMN
5583PdcpSduCnt / LossRate / DropRate / DiscardRate DL·ULcell · PLMN · 5QI · sliceNR PDCP throughput & loss per PLMN
5584PdcpSduVolume DL·UL (+ split NR/LTE)cell · PLMN · 5QI · sliceData volume per PLMN (for throughput)
5581 / 5582PdcpSduCnt / Volume per QCIcell · PLMN · QCISame, on the LTE / EN-DC QCI axis
5242AirMacUL/DLBytePlmncell · PLMNMAC-layer bytes per PLMN
5411DLUsedPrbSlice · DLAvailablePrbSlicecell · slicePRB usage per network slice
5555DL/ULUsedPrbSpidRfspcell · SPID/RFSPPRB usage per SPID / RFSP
5395DssNrDL/ULPrbUsed · …Available · …RatioUsedPerAvailablecellDSS NR PRB share vs LTE
5026 / 5174CauseF1apRadioPlmnNotServedByTheGnbCucell · cause⚠ PLMN-not-served failures (config fault)
KPI analysis — the per-PLMN formulas & targets you actually report
Per-PLMN MOCN KPIs
KPIFormula (from counters)FamilyTarget / read
Per-PLMN DL PRB utilizationDLUsedPrbPlmn ÷ DLAvailablePrbPlmn × 1005241≈ configured portion; sustained > portion → starved
Per-PLMN DL throughputPdcpSduVolumeDL_PLMN ÷ active time5584≥ operator SLA
Per-PLMN DL packet-loss ratePdcpSduLossRateDL_PLMN5583< SLA loss budget
Per-PLMN DL drop ratePdcpSduDropRateDL_PLMN5583low & flat; spikes → CAC/CRP too tight
Per-slice PRB shareDLUsedPrbSlice ÷ DLAvailablePrbSlice × 1005411matches slice SLA
PLMN-not-served rateCauseF1apRadioPlmnNotServedByTheGnbCu (count)5026/5174= 0 (non-zero = SIB1/PLMN-list fault)
Read PRB utilization against the portion — if Operator A is set to 60% but DLUsedPrbPlmn(A) ÷ DLAvailablePrbPlmn sits at 95% while B idles at 20%, A is portion-starved — raise A's ratio (or switch to adaptive) rather than blaming coverage. That single cross-check is the heart of MOCN operations.
Common MOCN problems & how they show up
Troubleshooting MOCN
SymptomLikely causeWhere to look
One operator's UEs can't campPLMN missing from SIB1 / DU PLMN listPhase 1–2 config, SIB1 decode
Minority operator starved of throughputPRB portion / distribution ratio too lowplmn-N-ue-distribution-ratio
Per-PLMN drop spikesPer-PLMN CAC too strict / no CRP floorFamily 5583 drop rate
Handover into wrong operator contextPer-PLMN mobility not configuredFGR-MC1015 reporting
MOCN optimization — balance fairness against efficiency
The MOCN optimization loopper-PLMN
Baseline per-PLMN
Family 5583
Compare vs SLA
who is short?
Tune PRB portion
distribution ratio
Verify per-PLMN
no other PLMN hurt

Give each operator enough to meet its SLA, but keep the carrier statistically multiplexed so idle share is reused — a hard split (MORAN-like) wastes spectrum, a too-soft split breaks SLAs. The optimum is per-PLMN CRP floors + a distribution ratio tuned to each operator's real load.

Worked optimization scenarios — symptom → diagnosis → fix
Symptom (per-PLMN KPI)DiagnosisFix (parameter / feature)
Op-A PRB util 95% while Op-B idles at 20%A is portion-starved; ratio ≠ real loadRaise plmn-0-ue-distribution-ratio or switch to adaptive; verify Fam 5241
Op-B drop rate spikes at busy hourPer-PLMN CAC / CRP floor too tightRaise B's max-no-of-rrc & CRP; check overload-protect thresholds
PlmnNotServedByTheGnbCu > 0A PLMN missing from SIB1 / CU-DU mismatchRe-add PLMN to DU + CU list (Phase 1–2); re-decode SIB1
One frequency runs hot in idleIdle distribution not balancing campingTune IFLB ue-distribution-ratio + reselection thresholds (MC1006)
Connected-mode HO ping-pong under loadMLB reacting too fast / noisy load metricIncrease mr-wait-timer; raise filter-coefficient-rrc-ue
An operator's slice breaches its SLANo per-slice admission / rate controlEnable slice CAC FGR-CC0303; cap with FGR-BC7002
MOCN feature trial — the disciplined way to change a share
1
Baseline

Capture per-PLMN throughput / drop from Family 5583 for all operators over a representative window.

2
Single change

Adjust one PLMN's ue-distribution-ratio (or CRP) — nothing else.

3
48h soak

Let it run across a full busy-hour cycle so statistical multiplexing settles.

4
Verify

Confirm the target operator improved and no other PLMN regressed (per-PLMN KPIs).

5
Roll back

If any operator breaches SLA, revert the single change immediately.

Interactive — the MOCN Sharing Studio (RS1801 semantics, live)

Two operators, one carrier. Set the contracted ratios (plmn-N-ue-distribution-ratio), each operator's offered load and the cell capacity — the studio applies the RS1801 rule (portions enforce under contention; unused share lends), grades each SLA, and runs the blame router: whose problem is a bad operator KPI on a shared cell?

MOCN Sharing Studiolive
Cell verdict
i
The blame router, in words — operator KPI dips on a shared cell have exactly three owners: ① the shared RF (both operators dip together — Fam 5241 total PRB + CQI evidence; RAN team), ② the portion config (one dips while the other lends nothing — ratios vs contract; this studio), ③ that operator's own core/transport (one dips with healthy PRBs and clean RF — their NG/AMF/UPF; Fam 5583 loss vs 5584 volume separates air from core). Read ①→②→③ before any inter-operator escalation.

MOCN is fairness engineering on one carrier.

Broadcast every PLMN, route each to its own core, split the PRBs by policy, and prove every operator's SLA per-PLMN. Next: the LTE side — four features, the Full/Strict/Partial/Adaptive sharing models, and MORAN.