Home / 5G / Protocols / PDCP

5G PDCP Protocol

From 3glteinfo telecom reference

PDCP is the Packet Data Convergence Protocol in the NR radio protocol stack. It sits between upper layers and RLC, and it is the layer where sequence-aware delivery, reordering, security, compression, duplication support, and several advanced bearer-handling functions become visible.

This page is the PDCP foundation reference for 3GLTEInfo. It maps the protocol from the viewpoint of architecture, services, functions, procedures, security, compression, duplication, PDU formats, PDCP SN, COUNT, and runtime-control concepts so engineers can understand the role of PDCP before moving into deeper child pages across RLC, RRC, and radio-bearer context.

Quick facts

Technology 5G NR
Area / Protocol PDCP (Packet Data Convergence Protocol)
Main spec 3GPP TS 38.323 V18.1.0
ETSI publication ETSI TS 138 323 V18.1.0 (2024-05)
Release Release 18
Stack position Between upper layers and RLC in the NR radio protocol stack
Main concerns Architecture, services, functions, data transfer, reordering, security, compression, duplication, PDU formats, SN, COUNT, and runtime control
Key runtime theme PDCP state variables, constants, and timers control delivery, reordering, and procedure flow

PDCP Topics

Overview and Architecture | Services and Functions | Data Transfer, Reordering and Delivery | State Variables, Constants and Timers | Ciphering and Integrity Protection | PDU Formats, SN, COUNT and Parameters | Entity Handling, Discard, Status and Recovery | PDCP Duplication and Routing | ROHC Header Compression | Ethernet Header Compression (EHC) | Uplink Data Switching and UDC

Contents

  1. Introduction to 5G PDCP
  2. Where PDCP Fits in the NR Protocol Stack
  3. PDCP Architecture Overview
  4. PDCP Entities and Bearer Context
  5. Services Provided to Upper Layers
  6. Services Expected from Lower Layers
  7. Core PDCP Functions
  8. PDCP Data Transfer, Reordering, and Delivery
  9. PDCP Security: Ciphering and Integrity Protection
  10. Header Compression and Decompression in PDCP
  11. PDCP Duplication, Routing, and Advanced Data Handling
  12. PDCP PDUs, PDCP SN, COUNT, and Parameters
  13. State Variables, Constants, and Timers
  14. Why PDCP Matters in 5G NR
  15. References
  16. FAQ
  17. Related PDCP Pages / Next Reading

PDCP topic map

Use this page as the top-level PDCP reference. The order follows the broad structure of TS 38.323: general concepts first, then services and functions, then procedures, then formats, parameters, and runtime-control values. When the question starts from setup or bearer role rather than live packet behavior, pair this page with RRC and radio bearers.

PDCP hub Top-level map Architecture and services Structure and scope Transfer and delivery Reordering and duplication Security and compression Ciphering, ROHC, EHC Formats and timers SN, COUNT, runtime state Child pages Deeper references
Group PDCP architecture, services, security, transfer, duplication, formats, and timers as one navigational map for the whole cluster.

PDCP foundations

Transfer and delivery

Security and compression

Formats and runtime control

PDCP topic area Main concern Best next page
Architecture and structure Where PDCP sits and how the protocol is organized. Overview and Architecture
Service and function scope What PDCP offers and what it actually does. Services and Functions
Transfer and delivery Transmit, receive, reorder, and deliver behavior. Data Transfer, Reordering and Delivery
Security and compression Ciphering, integrity, ROHC, EHC, and compression support. Ciphering and Integrity Protection
Formats and runtime control PDU structure, SN, COUNT, variables, constants, and timers. PDU Formats, SN, COUNT and Parameters

Introduction to 5G PDCP

PDCP is the Packet Data Convergence Protocol for NR. It is the radio-side protocol layer that connects upper-layer data handling to RLC while adding sequence-aware behavior, security processing, compression capabilities, duplication support, and delivery control.

This page is intentionally broad rather than section-by-section. It explains what PDCP is, where it fits, what services and functions it owns, how major procedures connect, and which deeper PDCP references engineers should open next.

Where PDCP Fits in the NR Protocol Stack

PDCP is part of the NR radio protocol stack and sits between upper layers and RLC. Conceptually, upper layers hand data into PDCP, PDCP applies its sequence, security, compression, and delivery logic, and the processed data is then passed to RLC for lower-layer transport handling.

That placement is why PDCP is so important. It is high enough in the stack to apply security and compression, but low enough to shape how radio-bearer traffic is ordered, duplicated, discarded, or released upward.

Upper layers PDCP security, reordering, compression RLC MAC / PHY
Show upper layers feeding PDCP, PDCP feeding RLC, and RLC feeding MAC and PHY, with PDCP highlighted as the security and delivery-control layer.
Upper-layer SDU -> PDCP processing -> RLC

PDCP Architecture Overview

The architecture part of TS 38.323 explains PDCP in terms of structure, services, and functional placement. For a pillar page, the main point is that PDCP is not only a security layer or a sequence layer. It is a protocol block that combines transfer, protection, reordering, and bearer-aware data handling in one coherent entity model.

The details of how PDCP is split across different bearer contexts and deployment options belong on child pages. At this overview level, it is enough to see PDCP as the layer that prepares data for RLC while preserving the state and logic needed for correct receive-side behavior.

Upper-layer side SDU input and delivery PDCP entity Sequence and delivery logic Security and compression Bearer-bound state Lower-layer side RLC-facing PDU handling
Show PDCP structure at high level with services, functions, procedures, and lower-layer attachment points rather than detailed implementation blocks.

PDCP Entities and Bearer Context

PDCP behavior is tied to PDCP entities and the radio-bearer context in which those entities operate. The protocol does not act as one global data stream. Instead, PDCP procedures, state, security, and delivery behavior are all anchored to the relevant entity and bearer configuration.

From an engineering viewpoint, this is why entity handling matters. Establishment, re-establishment, release, suspend, resume, and reconfiguration determine how PDCP state is started, preserved, or reset. Those lifecycle topics belong in the deeper entity-handling page, but this pillar page should make the dependency clear.

Services Provided to Upper Layers

The service view in TS 38.323 can be read as the upward-facing contract of PDCP. PDCP provides a data-transfer service that is more than raw forwarding: it can condition delivery through sequence-aware behavior, security, compression, discard, and duplication-related handling depending on the configured bearer and feature set.

Service view Meaning for engineers
Provided to upper layers Transfer of data and orderly delivery behavior according to PDCP configuration.
Security services Ciphering and integrity functions applied at PDCP where configured.
Efficiency services Header compression, decompression, and related compression capabilities.
Delivery conditioning Reordering, duplicate discard, out-of-order delivery where configured, and discard behavior.
Advanced bearer handling Duplication, routing support, uplink switching, and recovery-oriented handling.

Services Expected from Lower Layers

PDCP depends on lower layers to carry its protocol units and support the delivery context that PDCP procedures assume. In practical NR stacks, that means PDCP relies on RLC below it, with the bearer mode and lower-layer behavior affecting how PDCP data ultimately reaches the peer side. In many traces, MAC and PHY still explain why PDCP behavior looks delayed or uneven.

This dependency is why PDCP should never be read in isolation. The best way to understand observed PDCP behavior is to read it together with the corresponding RLC configuration, RRC bearer setup, and radio-stack context.

Core PDCP Functions

This is the functional map of PDCP. It is the layer where transfer, security, compression, ordering, duplication-aware handling, and certain advanced data-handling functions are collected into one bearer-oriented protocol block.

PDCP Function center Data transfer Reordering and delivery Security Compression / duplication
Show data transfer, security, compression, reordering, duplication, routing, discard, and sequence maintenance as one feature map centered on PDCP.
PDCP function Role in the protocol
Transfer of data Move upper-layer data through PDCP toward RLC and back upward on the receive side.
Header compression and decompression Reduce transmitted overhead and restore headers on receive.
Ciphering and deciphering Apply or remove confidentiality protection at PDCP.
Integrity protection and verification Protect and verify control-plane signaling integrity where configured.
Maintenance of PDCP SN Support sequence-aware delivery, duplicate handling, COUNT construction, and runtime progression.
Reordering and delivery control Manage receive-side reordering and release data in the required order unless out-of-order delivery is configured.
SDU discard Discard data when configured procedure rules require it.
Duplication and duplicate discard Support duplicated transfer paths and suppress repeated delivery.
Routing support Support advanced bearer handling and path selection behavior.
Advanced compression and switching Cover EHC, uplink data switching, and uplink data compression or decompression features in Release 18 scope.
Capability area Representative functions Why it matters
Delivery and ordering Transfer of data, reordering, out-of-order delivery, duplicate discard Controls what the receiver releases upward and when.
Security Ciphering, deciphering, integrity protection, integrity verification Makes PDCP the practical radio-side security execution layer.
Efficiency ROHC, EHC, uplink data compression and decompression Reduces overhead and supports more efficient transport behavior.
Advanced bearer handling Duplication, routing support, uplink data switching Supports more complex path and redundancy behavior.

PDCP Data Transfer, Reordering, and Delivery

The procedure side of PDCP should be read as a linked transmit and receive system. On transmit, PDCP accepts data from upper layers, applies the required processing, and sends PDCP PDUs downward. On receive, PDCP checks, reorders, discards duplicates where required, and decides when data is ready to deliver upward.

Reordering is one of the most important receive-side concepts. It is the mechanism that stops early upward release when later data has arrived ahead of earlier data. At overview level, the main control point is t-Reordering, which limits how long the receiver waits before releasing data according to procedure rules. The dedicated transfer page and the runtime-control page carry the deeper walkthrough.

Receive PDUs Reorder buffer t-Reordering Duplicate checks Deliver upward
Show transmit path, receive path, reorder buffer, t-Reordering influence, and final delivery decision.

PDCP Security: Ciphering and Integrity Protection

PDCP is the protocol layer where confidentiality and integrity functions are applied in NR. That includes ciphering and deciphering as well as integrity protection and verification where configured. This is a defining part of PDCP rather than an optional side topic.

For a pillar page, the key point is not the algorithm details. It is the architectural role: PDCP is where the protected protocol view is formed before traffic is handed downward to RLC, and where receive-side verification and reverse processing happen on the way back up.

PDCP processing Transform before RLC Ciphering / deciphering Integrity protection / verify ROHC / EHC Uplink compression logic
Show ciphering and integrity protection grouped with compression as PDCP-side transformations applied before lower-layer transfer.

Header Compression and Decompression in PDCP

Header compression is one of PDCP’s efficiency functions. Release 18 PDCP includes support areas such as ROHC and EHC, and the protocol also covers related compression or decompression capabilities including uplink data compression behavior.

For engineers, the practical takeaway is that PDCP is not only about security and ordering. It is also the layer that can reduce overhead before data is transported further down the stack and then restore the protocol view on reception.

PDCP Duplication, Routing, and Advanced Data Handling

PDCP also covers the more advanced side of bearer handling. That includes PDCP duplication, duplicate PDU discard, routing support, uplink data switching, and uplink data compression or decompression functions.

These features matter when PDCP is used for more than single-path in-order delivery. They let the layer support redundancy, path-aware behavior, and advanced data handling while still controlling what is ultimately delivered upward.

PDCP transmit stream Route A Route B Duplicate discard Deliver
Show one PDCP transmit stream branching into duplicated or routed paths, then converging through duplicate discard and delivery control on the receive side.

PDCP PDUs, PDCP SN, COUNT, and Parameters

PDCP defines its own protocol data units, their formats, and the key parameters needed to interpret them. This includes data PDUs, control PDUs, and the protocol fields that drive trace reading and runtime behavior.

Two core concepts in this area are PDCP SN and COUNT. PDCP SN anchors sequence-aware behavior such as ordering and duplicate handling, while COUNT is a foundational runtime concept tied to protected PDCP operation. The pillar page should flag both clearly without turning into a field-level decode guide.

Format concept Why it matters
PDCP data PDU Carries user or control-plane payload through the PDCP data path.
PDCP control PDU Supports dedicated control behavior defined by the protocol.
PDCP SN Drives ordering, duplicate detection, and receive-side progression.
COUNT Core runtime value tied to protected PDCP operation and sequence context.
Parameters Define how formats and procedures are interpreted in live operation.
PDCP format and runtime map PDU SN COUNT Timers
Read the format view from left to right: the PDU type identifies the packet family, SN gives the sequence context, COUNT ties that sequence context to protected PDCP operation, and timers explain when receive-side or delivery behavior moves forward.

State Variables, Constants, and Timers

PDCP also has its own runtime-control model. The protocol does not rely only on static procedures or packet formats. It also defines state variables, constants, and timers that determine how transmit and receive progression, reordering, protection context, and delivery behavior are controlled in live operation.

At overview level, the most important message is that PDCP runtime behavior is stateful. When reading traces or implementation behavior, engineers should expect sequence progression, reordering decisions, discard behavior, and release timing to be shaped by these defined control values.

Why PDCP Matters in 5G NR

PDCP matters because it brings together several functions that would otherwise be scattered across the stack. It is the layer that combines security, ordering, delivery control, compression, and advanced bearer handling while still remaining close enough to the radio stack to coordinate with RLC and bearer-specific behavior.

In practical engineering work, PDCP is the layer that explains why data was held for reordering, why duplicated traffic was not delivered twice, why protected traffic cannot be read below PDCP, why compression changed the observed payload view, and why bearer context changes can alter runtime delivery behavior.

References

FAQ

Is PDCP mainly a security layer?

No. Security is a major part of PDCP, but PDCP also handles transfer, reordering, sequence-aware behavior, compression, duplication, duplicate discard, and advanced bearer data handling.

Why does PDCP need reordering if RLC already exists below it?

Because PDCP has its own receive-side delivery rules and sequence-aware behavior. RLC and PDCP solve different problems at different layers, and PDCP still needs to decide when data is ready for upward release.

What is the difference between PDCP SN and COUNT?

PDCP SN is the visible sequence concept used for ordering and progression, while COUNT is a broader runtime value associated with protected PDCP operation and sequence context.

Does PDCP support compression only through ROHC?

No. Release 18 scope also includes EHC and related uplink compression or decompression capabilities in addition to ROHC.