Fronthaul Constraints & Latency Budgets
The fiber link between the radio and the baseband is the quiet tyrant of the RAN: a ~100 µs one-way budget and a bandwidth ceiling together decide where you're allowed to cut the protocol stack. Almost every architectural choice in O-RAN is downstream of these two numbers.
What · How · Why
What it is
Fronthaul is the transport link between the Radio Unit (RU) at the antenna and the Distributed Unit (DU) doing baseband. It carries not user data but the internal signal of a split basestation. It is governed by two hard constraints: a very tight one-way latency budget (~100 µs) and a bandwidth ceiling set by the transport (typically 10/25 Gbps eCPRI over fiber).
How it works
The old CPRI carried raw time-domain IQ samples — enormous, constant bit-rate, indifferent to traffic. eCPRI moves the split higher (7.2x), packetizes over Ethernet, and sends frequency-domain samples so the rate scales with spatial layers, not antennas. The latency budget comes from HARQ: the RU↔DU round trip plus processing must fit inside the retransmission timer.
Why it matters
These two numbers set the functional split and how far you can centralize baseband. The latency budget caps DU–RU fiber distance (~20 km); the bandwidth ceiling kills raw-IQ transport at high antenna counts. Together they explain why 5G massive MIMO forced the industry off CPRI and onto the 7.2x split — and they bound where an ML/edge workload can physically sit.
Round 1 — Mental Model
Think of the RU as a pair of ears on a tall mast and the DU as the brain in a basement, connected by a nerve (the fiber). Two things constrain that nerve. First, reaction time: the brain must hear a sound, decide, and reply before the moment passes — in radio, before the HARQ retransmission clock expires. A nerve that's too long (fiber too far) makes the reflex too slow, and the link falls apart. Second, how much the ears must shout: if the ears send every raw vibration (CPRI's time-domain IQ), the nerve saturates the instant you add more ears (antennas). The fix is to have the ears do a little pre-processing — recognize which frequencies matter and send only those (eCPRI's 7.2x split) — so the shouting scales with what's actually being said, not with the number of ears.
The punchline: you don't choose the split and then check the fronthaul. You start from the fronthaul's two numbers and the split falls out. Fronthaul is the constraint; architecture is the consequence.
Round 2 — Internal Mechanics & Mathematical Model
The latency budget (derivation)
HARQ requires the transmitter to receive an ACK/NACK and act within a fixed timer \(T_{\text{HARQ}}\). The fronthaul round trip plus node processing must fit inside it:
\[ T_{\text{fh}}^{\text{RTT}} = 2\,\frac{d}{v} + T_{\text{proc}} \;\le\; T_{\text{HARQ}} \]Light in fiber travels at \(v=c/n\) with index \(n\approx1.47\), so \(v\approx2.04\times10^{8}\) m/s — about 5 µs per km round trip. With a one-way fronthaul budget of ~100 µs (O-RAN Category A/B), the propagation share alone caps distance:
\[ d_{\max} \approx \frac{v\cdot T_{\text{oneway}}}{1} \approx 2.04\times10^{8}\times100\,\mu s \approx 20\ \text{km} \]This single inequality is why you cannot centralize the DU into a far-away datacenter — physics, not policy.
The bandwidth ceiling (CPRI vs eCPRI)
CPRI transports raw time-domain IQ for every antenna continuously:
\[ R_{\text{CPRI}} = N_{\text{ant}}\cdot f_s\cdot 2\cdot b_{\text{IQ}}\cdot \eta_{\text{cw}} \]with sample rate \(f_s\), factor 2 for I/Q, \(b_{\text{IQ}}\) bits/sample, line-code overhead \(\eta_{\text{cw}}\) (e.g. 10/8). For 100 MHz, 64 antennas this reaches tens–hundreds of Gbps, and it scales with antennas — fatal for massive MIMO. The 7.2x split moves the FFT into the RU and beamforms there, so only used subcarriers of the spatial layers cross the link:
\[ R_{7.2x} \approx N_{\text{layers}}\cdot N_{\text{sc}}^{\text{used}}\cdot \tfrac{1}{T_{\text{sym}}}\cdot 2\cdot b_{\text{IQ}} \]Now rate scales with \(N_{\text{layers}}\ll N_{\text{ant}}\). The reduction factor is roughly \(\frac{N_{\text{layers}}}{N_{\text{ant}}}\cdot\frac{N_{\text{sc}}^{\text{used}}}{N_{\text{FFT}}}\) — the entire economic argument for eCPRI.
The split as a joint constraint
The chosen split \(s\) must satisfy both ceilings for the deployment: \(R_{\text{fh}}(s)\le B_{\text{link}}\) and \(T_{\text{proc}}(s)+2d/v\le T_{\text{HARQ}}\). Lower splits (more centralized) reduce RU cost and increase pooling gain but raise fronthaul rate and tighten timing; higher splits do the reverse. The 7.2x split is the industry's chosen balance for massive MIMO.
Complexity, invariants, limiting cases
Timing budget accounting: the ~100 µs is consumed by propagation (~5 µs/km), switching/queuing in the fronthaul network, and de-jitter buffering — so usable fiber is well under the 20 km propagation limit once other terms are subtracted. Invariant: fronthaul carries fixed-rate structured data (not best-effort) — it needs bounded latency and jitter, which is why it runs over engineered/TSN Ethernet, not the general internet. Limiting cases: \(d\to0\) (co-located RU/DU) → full centralization possible, max pooling; \(N_{\text{ant}}\to\) large under CPRI → bandwidth diverges, forcing the split up; \(T_{\text{HARQ}}\) relaxed (latency-tolerant traffic) → longer fronthaul tolerable, e.g. for non-real-time splits.
Round 3 — Where It Breaks & Expert Debates
Jitter, not just latency, is the silent constraint. The budget is often quoted as a mean, but fronthaul needs bounded delay variation — packets arriving early or late corrupt the tight radio timing. Packetized eCPRI over shared Ethernet reintroduces queuing jitter that dedicated CPRI never had, which is why Time-Sensitive Networking (TSN) and careful traffic engineering are mandatory. Whether best-effort transport can ever be tamed enough is debated.
The 7.2x split isn't free. Pushing FFT and beamforming into the RU makes the RU more complex, more power-hungry, and more expensive — partly undoing O-RAN's "cheap commodity RU" promise. Some argue a different split (or keeping more in the RU) is better for certain deployments; the "right" split is genuinely deployment-dependent, not universal.
Synchronization is a whole hidden subsystem. RU and DU must share a common time/phase reference (PTP/SyncE, better than ±1.5 µs for TDD). Fronthaul carries not just data but timing, and sync failures cause subtle, hard-to-debug interference. This is a frequent real-world failure that the clean "latency budget" framing hides.
Bandwidth vs compression tradeoff. Fronthaul compression (block scaling, modulation compression) cuts the rate further but adds latency and can degrade signal quality. How aggressively to compress is a live engineering trade with no clean optimum, especially as antenna counts keep rising.
Round 4 — AI × Networks Connection
Fronthaul is the physical-layer origin of the latency gradient that governs where AI can run in the RAN. The same ~100 µs / bandwidth logic that forbids centralizing the DU also forbids putting a heavy inference workload on the far side of the fronthaul if it needs to influence sub-ms decisions. An ML model that wants to touch beamforming or per-slot scheduling must live at or below the DU, inside the tight budget — which is exactly why model size and memory footprint matter so much at the edge: the budget won't wait for a big model.
There's a deeper, non-obvious link: the 7.2x split moves beamforming compute into the RU, and beamforming is increasingly a candidate for learned control (GNN-based interference-aware precoding). So the fronthaul's bandwidth argument is quietly pushing inference toward the antenna — the RU becomes a place where a small ML model might run under the hardest real-time budget in the system. And the fronthaul rate itself (\(\propto N_{\text{layers}}\)) is a KPI an ML controller could optimize by choosing rank/layer counts against traffic demand.
Cross-links
Networks · O-RAN architecture → fronthaul's two numbers are what set the CU/DU/RU split and the latency gradient.
Networks · Beamforming & massive MIMO → massive MIMO is what broke CPRI; the 7.2x split pushes beamforming into the RU.
AI · KV cache mechanics → the memory/latency budget of edge inference mirrors the fronthaul budget's tightness.
Pending intersection nodes this unblocks: Inference at the edge (constraints, architecture), Neural architecture search for edge devices, fronthaul-rate optimization via learned rank control.
Open questions this raises
- Can a model small enough to run inside the fronthaul/DU budget still be accurate enough to beat classical beamforming or scheduling heuristics?
- Should an ML controller optimize the fronthaul rate itself — choosing spatial rank / layer count against demand — and how would that interact with the scheduler's decisions?
- How much of the ~100 µs budget is realistically available for computation after propagation, switching, and de-jitter, and does that leave any room for inference at all?
- As antenna counts keep rising, does even the 7.2x split's bandwidth eventually force learned fronthaul compression, and what quality loss is acceptable?