Description
The Radio Resource Control (RRC) protocol is a critical component of the control plane in 3GPP radio access networks (UTRAN, E-UTRAN, NG-RAN). It operates between the User Equipment (UE) and the radio access network node (Node B, eNodeB, or gNodeB). The RRC layer is responsible for the establishment, configuration, maintenance, and release of Signaling Radio Bearers (SRBs) and Data Radio Bearers (DRBs), which carry control and user plane data respectively. It manages the connection states of the UE, primarily the IDLE and CONNECTED states (with sub-states like RRC_IDLE, RRC_INACTIVE, and RRC_CONNECTED in 5G NR), dictating the level of network awareness and resource allocation for the device.
RRC functions through a series of procedures initiated by either the network or the UE. Key procedures include RRC Connection Establishment, Security Activation, Radio Bearer Setup/Reconfiguration, Handover, Measurement Configuration and Reporting, and System Information Broadcast. The protocol conveys critical configuration messages that define the operation of the lower layers (PDCP, RLC, MAC, and PHY). For instance, an RRC Reconfiguration message can instruct the UE to apply new ciphering algorithms, modify logical channel priorities, add or remove carrier aggregation components, or prepare for a handover to a new cell.
Architecturally, RRC messages are carried over Signaling Radio Bearers (SRBs). In LTE and NR, SRB0 is used for contention-based initial access (using the CCCH logical channel), SRB1 is for RRC messages (and optionally NAS messages) before the establishment of SRB2, and SRB2 is dedicated for NAS messages. The protocol is inherently asymmetric, with the network possessing the controlling role. It ensures the UE operates within the network's configured parameters for radio resource efficiency, interference management, mobility robustness, and quality of service fulfillment. Its design is highly parameterized to support a vast range of services, from massive IoT to ultra-reliable low-latency communications.
Purpose & Motivation
The RRC protocol was created to provide a centralized, robust, and flexible mechanism for controlling all radio-specific functions of a mobile device's connection to the network. Prior to its standardization in 3GPP, control signaling was less structured. RRC provides a unified framework for connection management, mobility, and radio bearer control, which is essential for efficient spectrum utilization and service delivery in cellular networks. It solves the problem of how to dynamically manage a shared, interference-prone radio resource among millions of devices with varying service requirements.
Its creation was motivated by the need for a sophisticated control plane to support packet-switched services and advanced features introduced in 3G UMTS and beyond, such as variable data rates, quality of service differentiation, and seamless mobility. RRC abstracts the complexity of the physical and link layers, providing the network with a direct means to command and configure the UE's radio behavior. This allows for optimized network performance, rapid adaptation to changing radio conditions, and the introduction of new features through software upgrades to the RRC protocol specification without overhauling the entire radio interface architecture.
Key Features
- Connection State Management (IDLE, CONNECTED, INACTIVE)
- Broadcast of System Information (MIB, SIBs)
- Establishment, Modification, and Release of Radio Bearers
- Security Activation (Ciphering and Integrity Protection)
- Mobility Control (Handover, Cell Reselection parameters)
- Measurement Configuration and Reporting for radio conditions
Evolution Across Releases
Introduced the initial RRC protocol for UMTS (UTRAN). It defined core procedures for connection establishment, radio bearer control, handover, and measurement reporting between the UE and the Radio Network Controller (RNC). Established the fundamental RRC states (IDLE, CELL_FACH, CELL_DCH, etc.) and signaling procedures for 3G services.
Defining Specifications
| Specification | Title |
|---|---|
| TS 21.810 | 3GPP TS 21.810 |
| TS 21.905 | 3GPP TS 21.905 |
| TS 21.910 | 3GPP TS 21.910 |
| TS 23.050 | 3GPP TS 23.050 |
| TS 23.060 | 3GPP TS 23.060 |
| TS 23.221 | 3GPP TS 23.221 |
| TS 23.851 | 3GPP TS 23.851 |
| TS 23.979 | 3GPP TS 23.979 |
| TS 24.301 | 3GPP TS 24.301 |
| TS 25.123 | 3GPP TS 25.123 |
| TS 25.133 | 3GPP TS 25.133 |
| TS 25.142 | 3GPP TS 25.142 |
| TS 25.171 | 3GPP TS 25.171 |
| TS 25.172 | 3GPP TS 25.172 |
| TS 25.173 | 3GPP TS 25.173 |
| TS 25.201 | 3GPP TS 25.201 |
| TS 25.222 | 3GPP TS 25.222 |
| TS 25.224 | 3GPP TS 25.224 |
| TS 25.301 | 3GPP TS 25.301 |
| TS 25.302 | 3GPP TS 25.302 |
| TS 25.304 | 3GPP TS 25.304 |
| TS 25.307 | 3GPP TS 25.307 |
| TS 25.321 | 3GPP TS 25.321 |
| TS 25.322 | 3GPP TS 25.322 |
| TS 25.323 | 3GPP TS 25.323 |
| TS 25.324 | 3GPP TS 25.324 |
| TS 25.331 | 3GPP TS 25.331 |
| TS 25.367 | 3GPP TS 25.367 |
| TS 25.402 | 3GPP TS 25.402 |
| TS 25.410 | 3GPP TS 25.410 |
| TS 25.413 | 3GPP TS 25.413 |
| TS 25.420 | 3GPP TS 25.420 |
| TS 25.423 | 3GPP TS 25.423 |
| TS 25.433 | 3GPP TS 25.433 |
| TS 25.453 | 3GPP TS 25.453 |
| TS 25.912 | 3GPP TS 25.912 |
| TS 25.931 | 3GPP TS 25.931 |
| TS 25.967 | 3GPP TS 25.967 |
| TS 26.247 | 3GPP TS 26.247 |
| TS 26.849 | 3GPP TS 26.849 |
| TS 28.837 | 3GPP TS 28.837 |
| TS 31.121 | 3GPP TR 31.121 |
| TS 32.404 | 3GPP TR 32.404 |
| TS 32.405 | 3GPP TR 32.405 |
| TS 32.406 | 3GPP TR 32.406 |
| TS 32.827 | 3GPP TR 32.827 |
| TS 33.401 | 3GPP TR 33.401 |
| TS 33.821 | 3GPP TR 33.821 |
| TS 33.841 | 3GPP TR 33.841 |
| TS 33.859 | 3GPP TR 33.859 |
| TS 34.124 | 3GPP TR 34.124 |
| TS 36.104 | 3GPP TR 36.104 |
| TS 36.116 | 3GPP TR 36.116 |
| TS 36.117 | 3GPP TR 36.117 |
| TS 36.124 | 3GPP TR 36.124 |
| TS 36.133 | 3GPP TR 36.133 |
| TS 36.141 | 3GPP TR 36.141 |
| TS 36.143 | 3GPP TR 36.143 |
| TS 36.171 | 3GPP TR 36.171 |
| TS 36.201 | 3GPP TR 36.201 |
| TS 36.300 | 3GPP TR 36.300 |
| TS 36.302 | 3GPP TR 36.302 |
| TS 36.304 | 3GPP TR 36.304 |
| TS 36.306 | 3GPP TR 36.306 |
| TS 36.307 | 3GPP TR 36.307 |
| TS 36.322 | 3GPP TR 36.322 |
| TS 36.323 | 3GPP TR 36.323 |
| TS 36.331 | 3GPP TR 36.331 |
| TS 36.355 | 3GPP TR 36.355 |
| TS 36.360 | 3GPP TR 36.360 |
| TS 36.361 | 3GPP TR 36.361 |
| TS 36.401 | 3GPP TR 36.401 |
| TS 36.413 | 3GPP TR 36.413 |
| TS 36.876 | 3GPP TR 36.876 |
| TS 36.878 | 3GPP TR 36.878 |
| TS 36.938 | 3GPP TR 36.938 |
| TS 36.976 | 3GPP TR 36.976 |
| TS 37.141 | 3GPP TR 37.141 |
| TS 37.145 | 3GPP TR 37.145 |
| TS 37.171 | 3GPP TR 37.171 |
| TS 37.320 | 3GPP TR 37.320 |
| TS 37.355 | 3GPP TR 37.355 |
| TS 37.470 | 3GPP TR 37.470 |
| TS 37.473 | 3GPP TR 37.473 |
| TS 37.571 | 3GPP TR 37.571 |
| TS 37.802 | 3GPP TR 37.802 |
| TS 37.857 | 3GPP TR 37.857 |
| TS 37.900 | 3GPP TR 37.900 |
| TS 37.901 | 3GPP TR 37.901 |
| TS 38.124 | 3GPP TR 38.124 |
| TS 38.133 | 3GPP TR 38.133 |
| TS 38.171 | 3GPP TR 38.171 |
| TS 38.174 | 3GPP TR 38.174 |
| TS 38.176 | 3GPP TR 38.176 |
| TS 38.201 | 3GPP TR 38.201 |
| TS 38.304 | 3GPP TR 38.304 |
| TS 38.323 | 3GPP TR 38.323 |
| TS 38.331 | 3GPP TR 38.331 |
| TS 38.401 | 3GPP TR 38.401 |
| TS 38.470 | 3GPP TR 38.470 |
| TS 38.473 | 3GPP TR 38.473 |
| TS 38.508 | 3GPP TR 38.508 |
| TS 38.522 | 3GPP TR 38.522 |
| TS 38.869 | 3GPP TR 38.869 |
| TS 38.878 | 3GPP TR 38.878 |
| TS 43.051 | 3GPP TR 43.051 |
| TS 43.901 | 3GPP TR 43.901 |
| TS 44.060 | 3GPP TR 44.060 |
| TS 44.160 | 3GPP TR 44.160 |
| TS 44.318 | 3GPP TR 44.318 |
| TS 45.902 | 3GPP TR 45.902 |
| TS 45.913 | 3GPP TR 45.913 |
| TS 45.914 | 3GPP TR 45.914 |