Source-linked AI summary

Experimental Classification of xApp Conflicts in O-RAN: Slicing vs. Per-UE Scheduling

Rashmi Sharan Sinha, Merim Dzaferagic, Marco Ruffini, Nima Afraz

arXiv:2610.32254v1cs.NI

TL;DR

Slice-level PRB allocation and per-UE scheduling can create jointly infeasible xApp control intents, while cross-granularity interactions remain insufficiently characterised experimentally. The paper evaluates these interactions with a utilisation-aware slicing xApp and a command-bus detector in simulation and on a physical testbed. Against a static slice split replayed on the same load trace, the control reduces unmet demand and idle allocation.

  • Problem

    Cross-granularity interactions between slice-level PRB allocation and per-UE scheduling remain insufficiently characterised experimentally, despite their potential for jointly infeasible control intents.

    Source: §I · p. 1
  • Method

    The study evaluates a utilisation-aware slicing xApp and command-bus detector in simulation and on a physical testbed, using a core-derived throughput proxy for per-slice load.

    Source: §I · p. 1
  • Results

    Against the static slice split replayed on the same load trace, the control reduced unmet demand by 12–33% and idle allocation by 21–23%.

    Source: §VIII · p. 6
  • Takeaways & Limitations

    The testbed results demonstrate cross-granularity control-intent interactions on real hardware, with the policy’s reach bounded by the available pool under heavy load.

    Source: §VIII · p. 6, E. Discussion · p. 6

    The reported conflicts are incompatibilities among control intents, not measured UE-level degradation.

    Source: §VIII · p. 6

Abstract

from arXiv · show

Concurrent applications (xApps) in the Near-Real-Time RAN Intelligent Controller (Near-RT RIC) of the Open Radio Access Network (O-RAN) can issue control intents that are jointly infeasible when they act on hierarchically coupled radio resources. This paper experimentally studies an interaction between slice-level physical resource block (PRB) allocation and per-user-equipment (UE) scheduling. We implement a utilisation-aware slicing control (the spectral-efficiency xApp) that reclaims a fixed fraction of the baseline allocation from under-utilised slices and redistributes pooled capacity to saturated slices. The control logic is exercised in simulation and on a 5G testbed comprising an OCUDU-based next-generation NodeB (gNB), an Open5GS core, a Universal Software Radio Peripheral (USRP) X310, and five commercial off-the-shelf (COTS) UEs. Because the gNB counters available in this testbed are UE-keyed but not slice-labelled, the slicing control derives a per-slice throughput proxy from core-side traffic measurements. A command-bus detector evaluates explicitly defined control-intent conditions: a per-UE floor above its parent-slice cap, aggregate UE floors above the cell budget, and repeated slice-target changes within a specified window. Over a 276-cycle continuous run, the detector logged 147 per-slice floor--cap violations, 49 shared-budget over-subscription episodes, and 11 allocation-oscillation episodes. Against the conventional static slice split replayed on the same load trace, the slicing control reduces unmet demand by 12--33\,\% and idle allocation by 21--23\,\%. The results demonstrate reproducible cross-granularity control-intent interactions on real hardware and provide an experimental basis for analysing conflict detection in O-RAN.

I. INTRODUCTION

O-RAN xApps can issue incompatible control intents when slice-level PRB caps and per-UE scheduling floors govern hierarchically coupled resources. This paper evaluates that cross-granularity interaction in simulation and on a physical testbed, using a command-bus detector and core-derived per-slice load information.

I. INTRODUCTION

  • A UE floor above its parent-slice cap is infeasible, and concurrent UE floors can exceed the shared cell-wide PRB budget.The paper frames both conditions as incompatibilities between slice-level and UE-level control intents.Source: §I · p. 1
  • Cross-granularity interactions between slice-level allocation and per-UE scheduling remain insufficiently characterised experimentally.Prior physical-testbed studies demonstrated conflicts among xApps acting at the same resource-management level.Source: §I · p. 1
  • The study evaluates slice-level reallocation and per-UE scheduling in simulation and on a physical O-RAN testbed, using a core-derived throughput proxy when gNB slice-labelled measurements are unavailable.The proxy provides per-slice load information for the slicing control.Source: §I · p. 1
  • The command-bus detector evaluates parent-slice floor–cap violations, shared-budget over-subscription, and allocation-oscillation events; the budget-conserving slice policy cannot create shared-budget over-subscription alone.The detector evaluates the xApps’ control intents against the defined conditions.Source: §I · p. 1

II. RELATED WORK

Prior work addresses xApp conflict management and testbed evaluation, while this paper targets interactions between slice-level PRB budgets and per-UE scheduling floors. Its system model treats those controls as coupled by parent-slice feasibility and the shared cell budget.

II. RELATED WORK

  • Prior work includes game-theoretic coordination, QoS-aware mitigation, interacting mobility and energy-saving loops, and AI-assisted conflict detection, classification, and mitigation,,,.These works address mechanisms in simulation or analytical examples.Source: §II · p. 2
  • The paper addresses a different gap from prior same-target or same-slice-level testbed studies: xApps operating at hierarchically coupled slice and UE granularities,.The stated feasibility conditions include both a UE floor relative to its parent-slice budget and the shared cell budget.Source: §II · p. 2

III. SYSTEM MODEL AND BACKGROUND

  • The model considers one 5G cell with three slices and a total downlink PRB budget normalised to 100%.For each slice, c_s denotes its assigned PRB share, and U_s its associated UEs.Source: §III · p. 2
  • At slice level, the xApp configures minimum and maximum PRB shares equal to the slice allocation; at UE level, the scheduler assigns a guaranteed PRB floor within the parent-slice budget.The UE is addressed by its gNB-DU-UE-F1AP identifier.Source: §III · p. 2
  • Simultaneous UE guarantees are also coupled through the cell budget, and violations of the modelled constraints indicate incompatible slice-level and UE-level control intents.Source: §III · p. 2

IV. PROPOSED XAPPS

Figure 1 summarises the three xApps and their corresponding control targets.

IV. PROPOSED XAPPS

  • Figure 1 summarises the three xApps and their corresponding control targets.Source: §IV · p. 2

A. xApp A: Equal Slicing Divider

xApp A establishes an equal baseline split and is then disabled; xApp B periodically reallocates slice shares using baseline-relative utilisation while conserving the cell budget.

A. xApp A: Equal Slicing Divider

B. xApp B: Spectral-Efficiency Reallocation

C. xApp C: Per-UE Scheduling

The per-UE scheduler assigns a 40% PRB floor to one UE per slice, independently of slice-cap updates, so cross-granularity interactions can be observed without mitigation.

C. xApp C: Per-UE Scheduling

  • Each xApp C instance assigns its selected UE a 40% PRB floor; the guarantee conflicts with the parent-slice cap whenever the floor exceeds that cap.Source: C. xApp C: Per-UE Scheduling · p. 3
  • Table III reports operational interpretations and detected episodes for the continuous 276-cycle run.Source: Table III · p. 3
  • xApp C applies UE-level control independently of xApp B and without mitigation, allowing logged intents to expose and classify interactions.Source: C. xApp C: Per-UE Scheduling · p. 3

V. CONFLICT TAXONOMY AND DETECTION

The detector applies operational conflict conditions to jointly evaluate logged control intents from slice-level PRB allocation and per-UE scheduling.

V. CONFLICT TAXONOMY AND DETECTION

  • The detector adapts established O-RAN conflict categories into observable conditions for slice-level PRB allocation and per-UE scheduling.Source: §V · p. 3
  • Each xApp logs its control intent on a shared command bus, and commands in one observation interval are evaluated jointly against the defined conditions.Source: §V · p. 3
  • Because xApp B conserves the slice budget, it cannot alone trigger an indirect conflict; that condition requires UE floors across slices to exceed the full budget.Source: §V · p. 3

VI. EXPERIMENTAL SETUP

The experiments use an OCUDU-based gNB, Open5GS core, USRP X310, and five COTS UEs; per-slice usage is estimated from core traffic because the available gNB counters are not slice-labelled.

VI. EXPERIMENTAL SETUP

  • The testbed combines an OCUDU-based gNB, Open5GS 5G standalone core, USRP X310, and five COTS smartphones across three slices.Source: §VI · p. 3

A. Core-Based Per-Slice Measurement

VII. RESULTS AND DISCUSSION

The design is evaluated first in simulation and then on a physical testbed. Figure 3 shows ten control cycles from each setting.

VII. RESULTS AND DISCUSSION

  • The evaluation proceeds from simulation to the hardware testbed.Figure 3 covers simulation cycles 0–9 and testbed cycles 161–170 with five COTS UEs.Source: §VII · p. 4, Figure 3 · p. 4
  • Figure 3 presents ten control cycles for each evaluation setting.The simulation panel uses synthetic load; the testbed panel covers 33 seconds with five COTS UEs.Source: Figure 3 · p. 4

A. Simulation

The simulation exercises the xApp’s decision logic, while the testbed results show that available pooled capacity limits reallocation as load rises. Against a replayed static split, the dynamic policy reduces unmet demand and idle allocation.

A. Simulation

  • The simulation uses the real decision logic with synthetic per-slice loads and the same three UE scheduler floors; its results are not expected to match testbed values numerically.Synthetic load crosses the 50% and 100% thresholds smoothly, whereas testbed utilisation jumps by tens of percentage points between cycles.Source: A. Simulation · p. 4

B. Testbed: Spectral-Efficiency Behaviour

  • Only 47.2% of short-window cycles and 18.7% of continuous-run cycles had enough pooled capacity for a feed.The policy reclaims from under-utilised slices and feeds saturated slices only when the pool reaches five percentage points; its reach is bounded by that pool and does not eliminate overload.Source: B. Testbed: Spectral-Efficiency… · p. 4
  • The short and continuous windows differ in load regime: median utilisation rises from 68.5% to 93.0%, while saturated slice-cycles rise from 23.1% to 44.9%.Under-utilised slice-cycles fall from 35.2% to 20.7%.Source: B. Testbed: Spectral-Efficiency… · p. 4, Table V · p. 5
  • Unmet demand falls by 33% in the short window and 12.5% in the continuous run, while idle allocation falls by 23% and 21%, respectively, versus the static split.Demand served rises by only about 2%; the static split is replayed on the same load trace, not measured in a second live run.Source: B. Testbed: Spectral-Efficiency… · pp. 4–5, Table V · p. 5

C. Testbed: Conflicts

The continuous-run detector logs three kinds of control-intent conflict, while robustness checks find exact policy-budget conservation and identifier-related UE-command rejections. Conflicts are logged intents, not measures of UE-level impact.

C. Testbed: Conflicts

  • Figure 6 shows conflicts across the continuous run and provides a 33-second zoom where individual events are legible.Figure 5 covers sustained operation over the first 150 cycles.Source: Figure 6 · p. 5, Figure 5 · p. 5
  • Over 276 cycles, the detector logged 147 Direct, 49 Indirect, and 11 Implicit episodes; Direct and Indirect counts reflect cooldown de-duplication.Synchronous activations produce three per-slice floor–cap violations and one shared-budget violation, yielding 147 = 3 × 49; conflict resolution was disabled, and counts do not quantify UE-level impact.Source: C. Testbed: Conflicts · p. 5, Figure 6 · p. 5

D. Budget Conservation and Robustness

  • Policy conservation holds in all 276 cycles, with pushed slice shares totaling 100 in 127 cycles and below 100 in the remainder, never above 100.The shortfall is the withheld pool; all 1035 commands reached the gNB without transport failures or timeouts.Source: D. Budget Conservation and Robustness · p. 6
  • The gNB rejected 11 of 207 UE pushes (5.3%) in five episodes because a static UE index went stale after handset re-attachment.Every episode recovered on the next activation; no slice push was rejected, and the subscriber-keyed core-side load proxy was unaffected.Source: D. Budget Conservation and Robustness · p. 6

E. Discussion

The discussion finds that the reclaim-and-feed policy operates under real traffic, but hardware variability and load asymmetry constrain its reach. The conclusion reports benchmark gains and detector counts while treating oscillations cautiously and distinguishing control-intent conflicts from measured UE degradation.

E. Discussion

  • Under real traffic, the policy reclaimed and redistributed capacity, but rapid fluctuations and slice-load asymmetry made its reach more limited than in simulation.Table V quantifies the reach limitation; under heavy load, the pool bounds how much demand the policy can serve.Source: E. Discussion · p. 6, §VIII · p. 6
  • Utilisation above 100% describes proxy usage exceeding the fixed baseline, while shared-budget violations require considering the three 40% UE guarantees jointly.The slice policy itself conserves the cell-wide budget.Source: E. Discussion · p. 6, §VIII · p. 6
  • The 11 implicit allocation oscillations meet the detector’s criterion but may reflect variable-traffic threshold crossings rather than inter-xApp interaction.The reported conflicts are control-intent incompatibilities; UE-level throughput, latency, and service degradation per event were not measured.Source: E. Discussion · p. 6, §VIII · p. 6

VIII. CONCLUSION

  • Against the static slice split on the same load trace, the xApp reduced unmet demand by 12–33% and idle allocation by 21–23%.The detector logged 147 per-slice floor–cap violations and 49 shared-budget over-subscription events; allocation oscillations were not attributed to inter-xApp interaction.Source: §VIII · p. 6
Loading 2610.32254v1…