Menu
Latest
12 meetings · Prague, Jeju · 12–16 Oct
Reports
RAN1#126-bis · SA2#177

Glossary term · Protocol

ROHC

Robust Header Compression

Protocol →

ROHC is a protocol that reduces IP packet header overhead over wireless links by establishing a compression context, sending full headers initially and then small identifiers, thereby improving spectral efficiency and reducing latency.

Introduced
Rel-5
Where
Radio Access Network › E-UTRAN (LTE)
Specifications
29 specs
Also in
Services, User Equipment, Core Network
ROHC Description Purpose What changed Neighbours Detected Changes Specifications

Description

Robust Header Compression (ROHC) is a standardized framework defined initially in IETF RFC 3095 and extensively profiled and adopted by 3GPP for cellular networks from Release 5 onwards. It is a lossless compression protocol designed to compress the headers of IP-based traffic streams (flows) before transmission over the radio interface. The protocol is implemented in the Packet Data Convergence Protocol (PDCP) layer in 3GPP stacks (UTRAN, E-UTRAN, NG-RAN). ROHC identifies fields in protocol headers that are constant, predictable (like sequentially incrementing sequence numbers), or inferable from other layers, and suppresses their transmission after initial synchronization.

The architecture involves a compressor (in the transmitting node, e.g., UE or gNB) and a decompressor (in the receiving node). They maintain synchronized compression contexts, which are sets of information about the header fields of the packet flow. ROHC operates in several states (modes) to trade off efficiency for robustness: Initialization and Refresh (IR) state, where full headers are sent to establish context; First Order (FO) state, where dynamic fields are compressed using patterns; and Second Order (SO) state, where only a small Context Identifier (CID) and cyclic redundancy check (CRC) are sent for very high compression. The protocol uses multiple feedback channels (acknowledged, unacknowledged, and bidirectional optimistic modes) to handle errors and ensure context synchronization even over lossy radio links.

How it works for a typical VoIP (RTP/UDP/IP) packet: The first packet is sent with a full header (IR packet). The decompressor learns the static fields (IP addresses, ports) and the changing pattern of dynamic fields (RTP sequence number, timestamp). For the next packet, the compressor sends a compressed header containing a small CID and encoded differences (deltas) for the dynamic fields. In the most efficient state, it may send only a 1-byte header with a CRC. If the decompressor detects an error via CRC or sequence number gap, it can request a context update via feedback or wait for a periodic refresh. ROHC defines specific profiles for different protocol stacks (e.g., Profile 0x0001 for RTP/UDP/IP, Profile 0x0002 for UDP/IP, Profile 0x0006 for TCP/IP). 3GPP specifications detail how ROHC is integrated into the PDCP layer, including context management during handover and bearer setup.

Purpose & Motivation

ROHC was created to solve the severe inefficiency of transmitting full IP headers over low-bandwidth, high-latency, and error-prone wireless links. In the early 2000s, as 3G networks began carrying IP traffic, it became apparent that the overhead of IPv4 (20 bytes) or IPv6 (40 bytes), plus UDP (8 bytes) and RTP (12 bytes), could be larger than the voice payload itself for VoIP. This wasted scarce radio spectrum and increased packet delay. Pre-ROHC solutions were less robust to packet loss and had limited compression efficiency.

The motivation for standardizing ROHC within 3GPP was to enable efficient support of real-time services like Voice over IP (VoIP) and video streaming over cellular networks. It directly addresses the problem of low spectral efficiency for small-packet, delay-sensitive traffic. By reducing header sizes from 40-60 bytes to as little as 1-4 bytes, ROHC can double or triple the effective capacity for voice calls. Its robustness to packet loss—a key design goal—ensures reliable decompression even when radio link conditions degrade, preventing context desynchronization which would cause catastrophic failure. Its adoption from Release 5 (HSDPA) through to 5G NR demonstrates its enduring value in conserving radio resources and reducing latency, which is critical for network capacity and user experience.

What changed in its specifications

The latest release-to-release comparison of specifications that define ROHC. Each summary describes the whole specification, not only this term.

TR 21.905Rel-17 → Rel-18

Rel-18 brings only minor changes to TS 21.905: 0 clauses changed, with no change attributed to a release feature.

Full comparison in TR 21.905 →
TS 23.280Rel-18 → Rel-19

Rel-19 adds Enhanced Mission Critical Architecture changes, including location reporting trigger cancel and override indication. It also adds location reporting and location information request procedures for mission critical clients on non-3GPP devices behind a UE or 5G-RG.

Full comparison in TS 23.280 →

Release Timeline

Detected Changes Across Releases

from 3GPP Change Requests

Specific changes extracted from the „Change history“ tables of 3GPP specifications (18 CRs across 2 releases). Complements the general historical overview above with the evidence-based evolution of this function.

Rel-15 13 changes
  • FEC and ROHC for mission critical services over MBMS TS 29.116CR0021
  • FEC and ROHC for mission critical services over MBMS TS 29.468CR0047
  • Correction for FEC and ROHC TS 29.468CR0049
  • MB2 Corrections for ROHC usage TS 29.468CR0050
  • RoHC support for Mission Critical services over MBMS TS 36.300CR1116
  • CR on supporting of the ROHC for PDCP duplication TS 36.323CR0243

+ 7 more changes

Rel-16 5 changes
  • Removal of notes for FEC and ROHC TS 23.280CR0162
  • Correct ROHC usage in xMB TS 29.116CR0031
  • Correction on ROHC configuration TS 36.331CR4471
  • Reconfiguring RoHC and setting the drb-ContinueROHC simultaneously TS 36.331CR4596
  • Reconfiguring RoHC and setting the drb-ContinueROHC simultaneously TS 38.331CR1979

Defining Specifications

3GPP specifications that define or reference ROHC, with the latest known release. Sourced from the 3GPP document catalog — see methodology.

SpecificationTitleRelease
TR 21.905 vj20 3GPP Terminology and Definitions Rel-19 read
TS 23.280 vk51 Mission Critical Services Architecture Rel-20 read
TS 23.479 vj00 MBMS API for Mission Critical Services Rel-19 read
TS 23.792 vg00 MBMS API for Mission Critical Services Rel-16 read
TS 24.301 vk10 EPS NAS Mobility and Session Management Rel-20 read
TS 24.379 vk10 MCPTT Call Control Protocol Rel-20 read
TS 24.380 vk10 MCPTT Media Plane Control Protocols Rel-20 read
TS 25.323 vj00 Packet Data Convergence Protocol (PDCP) Specification Rel-19 read
TS 25.331 vj01 UTRAN Radio Resource Control Protocol Rel-19 read
TR 25.912 vj00 Evolved UTRA and UTRAN Technical Report Rel-19 read
TR 25.993 vj00 UTRA RAB Examples and Radio Interface Mapping Rel-19 read
TS 26.517 vj30 5G MBS User Service Protocols Rel-19 read
TR 26.935 vj00 Speech Codec Performance for Packet Switched Multimedia Rel-19 read
TR 26.936 vj00 Audio Codec Characterization Technical Report Rel-19 read
TR 26.937 vj00 3GPP PSS Characterization Rel-19 read
TS 29.116 vj00 REST-based protocol for xMB reference point Rel-19 read
TS 29.468 vj00 MB2 Reference Point Protocol Definition Rel-19 read
TS 36.300 vj20 E-UTRAN Radio Interface Protocol Architecture Rel-19 read
TS 36.302 vj00 E-UTRA Physical Layer Services Rel-19 read
TS 36.306 vj30 E-UTRA UE Radio Access Capability Parameters Rel-19 read
TS 36.323 vj00 PDCP Protocol Specification Rel-19 read
TS 36.331 vj40 E-UTRA Radio Resource Control (RRC) Protocol Rel-19 read
TS 36.509 vi00 UE Conformance Test Loop Functions Rel-18 read
TS 38.323 vj10 PDCP Protocol Specification Rel-19 read
TS 38.331 vj40 NR Radio Resource Control (RRC) Rel-19 read
TS 43.051 vj00 GERAN Stage 2 Service Description Rel-19 read
TS 43.129 vj00 PS Handover in GERAN A/Gb and GAN Modes Rel-19 read
TS 44.060 vj00 GERAN RLC/MAC Protocol Specification Rel-19 read
TS 44.065 vj00 GPRS SNDCP Specification Rel-19 read