Buffer Status Report
Understanding Buffer Status Reports
In cellular networks, the base station controls all uplink resource allocation. The UE cannot transmit without an uplink grant. But the gNB has no direct visibility into the UE's transmit buffer. The BSR bridges this information gap: when new data arrives at the UE, it triggers a BSR that tells the gNB how much data is waiting and which logical channel group it belongs to, enabling the scheduler to allocate appropriately sized grants with correct priority.
NR supports 8 logical channel groups (LCGs 0 to 7), each mapping to one or more logical channels with similar QoS requirements. The buffer size is reported using logarithmic quantization tables: 5-bit (Short BSR, 32 levels) or 8-bit (Long BSR, 256 levels) indices that map to byte ranges. This compact representation conveys buffer state with minimal overhead while covering the enormous dynamic range from 0 bytes to over 81 million bytes needed for 5G peak rates.
BSR Timing Parameters
Regular: new data in empty LCG or higher-priority data arrival
Periodic: periodicBSR-Timer (1 to 2560 ms, RRC configured)
Padding: spare space in existing UL grant
Buffer Size Index (NR Long BSR):
Index 0: 0 bytes | Index 1: 10 bytes | ... | Index 255: > 81,338,368 bytes
Logarithmic quantization for wide dynamic range
Scheduling Response:
URLLC LCG: immediate grant, < 1 ms target
eMBB LCG: proportional fair scheduling
BSR Format Comparison
| Format | Size | LCGs Reported | Resolution | Trigger |
|---|---|---|---|---|
| Short BSR | 1 byte | 1 LCG | 5-bit (32 levels) | Single LCG has data |
| Long BSR | 3+ bytes | All 8 LCGs | 8-bit (256 levels) | Multiple LCGs have data |
| Short Truncated | 1 byte | 1 LCG (highest) | 5-bit | Insufficient UL resources |
| Long Truncated | Variable | Subset | 8-bit | Partial report fits |
| Padding BSR | Varies | 1 or all | 5 or 8-bit | Spare space in grant |
Frequently Asked Questions
What triggers a BSR?
Regular: new data in empty LCG or higher-priority arrival. Periodic: configurable timer (1 to 2560 ms). Padding: spare space in existing grant. retxBSR-Timer re-triggers if previous BSR wasn't followed by sufficient UL grant.
What formats exist?
Short BSR: 1 byte, single LCG, 5-bit index. Long BSR: all 8 LCGs, 8-bit indices. Truncated variants when UL resources are insufficient. NR expanded table covers 0 to 81M+ bytes for high-throughput 5G rates.
How does the gNB use BSR?
Combines BSR with CQI, QoS requirements, and fairness policies. High-priority LCG with large buffer gets immediate large grants (URLLC). Best-effort LCG gets capacity-based scheduling. Without BSR, gNB over-allocates (waste) or under-allocates (latency).