BSR

Buffer Status Report

Radio Access Network →
Introduced in Rel-8

BSR is a MAC layer control element sent by a UE to its serving base station to report the amount of buffered uplink data, enabling efficient network resource allocation for scheduling.

Category
Radio Access Network
Introduced
Rel-8
Where
Radio Access Network › NG-RAN (5G)
Specifications
7 specs
BSR Description Purpose Detected Changes Specifications

Description

The Buffer Status Report (BSR) is a Medium Access Control (MAC) protocol data unit (PDU) control element defined in 3GPP specifications for LTE (E-UTRA) and NR (New Radio). Its primary function is to provide the network (specifically, the gNB in 5G NR or eNB in 4G LTE) with information about the amount of uplink data queued for transmission in the UE's buffers, categorized by logical channel groups (LCGs). This information is essential for the network's uplink scheduler to make intelligent decisions about resource allocation (Resource Blocks, RBs). The BSR mechanism operates within the MAC sublayer of the UE's protocol stack. When data arrives at the UE's Packet Data Convergence Protocol (PDCCP) layer for a logical channel, it is stored in corresponding buffers. The MAC layer monitors these buffers and triggers the generation of a BSR under specific conditions defined by standardized triggering events.

Architecturally, the BSR is transmitted as a MAC Control Element (CE), which is multiplexed with MAC Service Data Units (SDUs) from higher layers to form a MAC PDU for transmission on the Uplink Shared Channel (UL-SCH). There are several types of BSRs defined to optimize signaling overhead and responsiveness: Regular BSR, Periodic BSR, and Padding BSR. A Regular BSR is triggered when uplink data becomes available for a logical channel that has higher priority than those currently with data, or when no data is available for any logical channel and then data arrives (this triggers a BSR for an 'empty buffer'). A Periodic BSR is triggered by the expiry of a timer (periodicBSR-Timer), ensuring the network receives updates even during sustained data flows. A Padding BSR is triggered when the UE has uplink resources allocated, but the amount of padding bits required to fill the transport block would be sufficient to carry a BSR MAC CE, allowing for efficient use of granted resources.

The content of the BSR MAC CE includes a Buffer Size field for each configured Logical Channel Group (LCG). In LTE and NR, up to 8 LCGs can be configured (0-7), though typically 4 are used. The Buffer Size indicates the total amount of data available across all logical channels belonging to that LCG, including data that is available for transmission in the RLC and PDCP layers. The reported value is an index that maps to a range of bytes (e.g., 0 bytes, 1-10 bytes, 11-20 bytes, etc.), as defined in a lookup table in the specifications (TS 36.321, 38.321). This quantization reduces signaling overhead. Upon receiving a BSR, the gNB/eNB's scheduler uses this information, along with other factors like UE channel quality (CQI), QoS requirements of the bearers, and overall cell load, to decide the size, timing, and frequency of uplink grants (via the Uplink Grant in DCI format 0_1 in NR or DCI format 0 in LTE) sent to the UE on the Physical Downlink Control Channel (PDCCH).

The BSR procedure is tightly coupled with other MAC procedures like Logical Channel Prioritization (LCP), which determines which logical channel's data is placed into a MAC PDU once a grant is received. A key timer, `retxBSR-Timer`, ensures reliability; if a BSR is triggered but the UE has no uplink resources to send it, it starts a Scheduling Request (SR) procedure. If the SR is not successful before the timer expires, the BSR is retriggered. This closed-loop feedback between UE buffer status reporting and network scheduling is fundamental to the dynamic and efficient operation of the uplink in both LTE and 5G NR, enabling support for diverse traffic types from low-latency small packets to high-throughput data streams.

Purpose & Motivation

The BSR was introduced to solve the fundamental problem of efficient uplink resource allocation in a shared channel system like LTE and NR. In earlier cellular systems (e.g., 3G WCDMA), uplink transmissions were code-scheduled or contention-based, which could lead to inefficiencies under dynamic traffic loads. The shift to OFDMA/SC-FDMA in LTE required a more sophisticated, grant-based uplink where the network must explicitly tell the UE when and on what resources to transmit. For this to be efficient, the network scheduler needs accurate, timely knowledge of each UE's transmission needs. Without a BSR-like mechanism, the network would have to blindly allocate resources, either wasting them (over-granting) or causing excessive queuing delays (under-granting), severely impacting QoS, latency, and overall system capacity.

The creation of the BSR mechanism was motivated by the need to support diverse QoS requirements and packet sizes inherent in IP-based services. Applications generate bursty, unpredictable traffic. A static or purely periodic grant allocation cannot adapt to this variability. The BSR provides the essential feedback for dynamic scheduling, allowing the network to allocate resources 'on-demand.' This is particularly critical for services with strict latency bounds (e.g., VoIP, gaming) where data must be transmitted immediately upon arrival, and for best-effort services where throughput should be maximized when data is available. The BSR, therefore, is a cornerstone for enabling the packet-switched, all-IP architecture envisioned for 4G and 5G, moving away from the circuit-switched mindset of previous generations.

Furthermore, the BSR design addresses the trade-off between reporting accuracy and signaling overhead. By grouping logical channels into LCGs and using quantized buffer size levels, it minimizes the bit-length of the report. The different trigger types (Regular, Periodic, Padding) optimize for different scenarios: immediate need, periodic updates, and opportunistic reporting. This elegant design ensures that the uplink scheduling loop is both responsive and efficient, a key factor in achieving the high spectral efficiency and low latency targets of LTE and NR systems.

Detected Changes Across Releases

from 3GPP Change Requests

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

Studied in Rel-8, normative work from Rel-15.

Rel-15 41 changes

In Release 15, specific corrections and clarifications were introduced for the Buffer Status Report (BSR) function. These included a correction on BSR triggered SR, a CR on BSR transmission with insufficient grant, and a clarification on the Long Truncated BSR format. Additionally, a CR on padding BSR was also part of the enhancements to refine BSR procedures.

  • Introduce reportCGI towards NR neighbour cell TS 36.300CR1145
  • CR to direct current report for UL and SUL TS 38.331CR1013
  • SN Status Transfer applicability for Re-establishment TS 36.300CR1236
  • Location Reporting: effective PSCell ID reporting TS 36.300CR1250
  • Correction to SR with SPS BSR in 36.321 TS 36.321CR1324
  • Flushing HARQ buffer for carrier reselection TS 36.321CR1355

+ 35 more changes

Rel-16 31 changes

In Release 16, key enhancements to the BSR function included corrections to SL-BSR truncation and the handling of Pre-emptive BSR MAC CEs and procedures, including a specific correction on the condition check. Additionally, the release introduced refinements for sidelink operations, such as a correction on the SR procedure for triggering a sidelink BSR.

  • Introduction of Power headroom reporting for Additional SRS TS 36.321CR1461
  • Introduction of MPE reporting TS 38.321CR0883
  • Introducing autonomous gap in CGI reporting TS 38.331CR1434
  • Introduction of MPE reporting TS 38.331CR1873
  • Uplink Tx DC location reporting for two carrier uplink CA TS 38.331CR2471
  • Missing reportAddNeighMeas in periodic measurement reporting TS 38.331CR1290

+ 25 more changes

Rel-17 23 changes

In Release 17, specific corrections were made to the Sidelink BSR procedure. These included clarifications on the Buffer Size field within the Sidelink BSR formats. Additionally, corrections were introduced to the random access cancellation criteria specifically for sidelink BSR reporting.

  • Introduction of gNB ID length reporting in the NR CGI report [gNB_ID_Length] TS 36.300CR1363
  • CR on the CBM/IBM reporting-38331 TS 38.331CR2916
  • Introduction of gNB ID length reporting in the NR CGI report [gNB_ID_Length] TS 38.331CR3181
  • Introduction of DC location report for more than 2CCs TS 38.331CR3097
  • Adding UE capability of CSI reporting cross PUCCH SCell group TS 38.331CR3144
  • Clarification on the generation of TA reporting for IoT NTN TS 36.321CR1562

+ 17 more changes

Rel-18 36 changes

In Release 18, there were no specific enhancements or corrections made to the Buffer Status Report (BSR) function, as indicated by the provided list of Change Requests. The listed corrections and clarifications focused on other reporting mechanisms, such as measurement reports, location information, and MAC Control Elements for timing advance and CSI. Therefore, the BSR procedures remained unchanged from the previous release based on this documentation.

  • Enhancements to measurement report [meas_report_enh] TS 38.331CR4803
  • Correction on UE Location Information Reporting in IoT-NTN TS 36.300CR1410
  • Coarse UE Location Information Reporting from MME to eNB for NB-IoT UEs TS 36.300CR1415
  • Correction on HARQ buffer flush at SCG deactivation TS 38.321CR1657
  • Clarification on Timing Advance Report MAC CE for NR ATG TS 38.321CR1765
  • Clarification on SCS for Timing Advance Report MAC CE for ATG TS 38.321CR1954

+ 30 more changes

Rel-19 7 changes

In Release 19, the BSR function saw no specific new features or enhancements introduced. The release's Change Requests focused on corrections and clarifications in other reporting areas, such as ANR, RLF, and QoE, but did not include modifications to the Buffer Status Report procedure itself. Therefore, the BSR mechanism remained unchanged from the previous release.

  • Introduction of ANR reporting of HSDN cells [ANR_HSDN] TS 38.331CR5318
  • Correction of Failure report without RLF report TS 38.401CR0512
  • Correction on nrPreviousCell logging in RLF report TS 38.331CR5484
  • Correction on dependency of group-based beam reporting TS 38.331CR5544
  • Corrections on validation of reported idle/inactive and reselection measurements TS 38.331CR5564
  • Clarification on TA report in NR NTN TS 38.331CR5602

+ 1 more changes

Explore further

Broader topics and technologies where BSR plays a role.

Defining Specifications

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

SpecificationTitleRelease
TR 21.905 vj00 3GPP Technical Terms and Definitions Rel-19
TS 36.300 vj00 E-UTRAN Radio Interface Protocol Architecture Overview Rel-19
TS 36.321 vj00 E-UTRA MAC Protocol Specification Rel-19
TS 36.842 vc00 Small Cell Enhancements for LTE Higher Layers Rel-12
TS 38.321 vj00 NR MAC Protocol Specification Rel-19
TS 38.331 vj00 NR Radio Resource Control (RRC) Protocol Specification Rel-19
TS 38.401 vj10 NG-RAN Architecture Specification Rel-19