Home / 5G / Protocols / PDCP / Services and Functions

5G PDCP Services and Functions

This page is the PDCP service and function reference. In PDCP terms, services describe the interface view of the protocol, while functions describe the internal behaviors that realize those services.

Use it to check the upward and downward service model, the main PDCP function groups, and the capability areas that lead into deeper pages on architecture, delivery, security, and format and runtime interpretation.

Quick facts

Technology 5G NR
Topic PDCP services and functions
Main spec areas TS 38.323 sections 4.3, 4.3.1, 4.3.2, and 4.4
Service view What PDCP provides upward and expects downward
Function view What PDCP internally performs to realize those services
Maximum sizes PDCP SDU up to 9000 bytes and PDCP Control PDU up to 9000 bytes

Contents

  1. Introduction to PDCP Services and Functions
  2. Why Services and Functions Matter in PDCP
  3. Services Provided to Upper Layers
  4. Services Expected from Lower Layers
  5. PDCP Service Model in the NR Stack
  6. Core PDCP Functions Overview
  7. Data Transfer and PDCP SN Handling
  8. Compression and Decompression Functions
  9. Security Functions in PDCP
  10. Discard, Reordering, and Delivery Functions
  11. Routing, Duplication, and Advanced Data Handling
  12. How Services and Functions Connect to PDCP Procedures
  13. Why This PDCP Function Map Matters
  14. References
  15. FAQ
  16. Related PDCP Pages / Next Reading

Introduction to PDCP Services and Functions

PDCP sits between upper layers and lower bearer transport, so it needs both a clear interface contract and a clear internal capability set. The interface contract is the service model. The internal capability set is the function model.

This page uses that distinction to explain PDCP in a cleaner way. It first shows what PDCP provides to upper layers and what it expects downward, then it maps the functions that implement transfer, compression, protection, discard, reordering, duplication, and advanced handling.

Services and functions Reference map Service exposure Upward and downward contracts Transfer and delivery SN, reordering, discard Security and compression Ciphering, ROHC, EHC, UDC Procedure pages Next detailed references Child pages Deep dives
Show service exposure on one side, function blocks on the other, and deeper procedure pages branching from the function map.

Why Services and Functions Matter in PDCP

Engineers often mix services and functions together, but the distinction is useful. Services describe the external contract of PDCP: what upper layers can rely on and what lower layers must provide. Functions describe the behaviors PDCP performs internally to deliver that contract.

This matters because the same function map can support different service expectations depending on bearer type, lower-layer mode, and configuration. Understanding both views makes later procedure reading much clearer.

Services Provided to Upper Layers

PDCP provides its services to the RRC or SDAP layers. The upward service set includes user-plane transfer, control-plane transfer, compression-related support, and security-related support.

Two explicit size limits belong in this service view: the maximum supported size of a PDCP SDU is 9000 bytes, and the maximum supported size of a PDCP Control PDU is also 9000 bytes.

Service provided upward Meaning
Transfer of user-plane data PDCP supports delivery of user-plane traffic upward and downward through its bearer-specific path.
Transfer of control-plane data PDCP supports control-plane bearer traffic where relevant.
Header compression PDCP can provide compression capability as part of its upward service model.
Uplink data compression PDCP can provide uplink data compression capability where configured.
Ciphering PDCP provides confidentiality-related service support to the bearer path.
Integrity protection PDCP provides integrity-related service support where configured.

Services Expected from Lower Layers

PDCP also has a downward-facing contract. Per RLC entity, a PDCP entity expects either an acknowledged data transfer service, including indication of successful delivery of PDCP PDUs, or an unacknowledged data transfer service.

In special association cases, the expectations expand further. A PDCP entity expects data transfer from an SRAP entity if it is associated with SRAP, and it expects data transfer from the N3C if it is associated with N3C.

Service expected downward Meaning
Acknowledged data transfer service PDCP can rely on an RLC service that includes successful-delivery indication of PDCP PDUs.
Unacknowledged data transfer service PDCP can also operate above an RLC service that transfers data without that acknowledgement model.
SRAP data transfer Expected when the PDCP entity is associated with an SRAP entity.
N3C data transfer Expected when the PDCP entity is associated with the N3C.

PDCP Service Model in the NR Stack

The service model is easiest to understand as a stack-facing contract. Upward, PDCP exposes data-transfer, compression, and protection-related services to RRC or SDAP. Downward, it expects transfer behavior from RLC, and in special cases from SRAP or N3C.

This makes PDCP the middle contract layer in the bearer path. Upper layers do not need to think directly in terms of RLC mode details, and lower layers do not need to implement PDCP-specific compression or protection logic. PDCP sits between those worlds.

RRC / SDAP PDCP service model Provides upward services Expects downward services RLC / SRAP / N3C
Show services provided upward to RRC or SDAP and services expected downward from RLC, plus SRAP or N3C association cases.
Services provided upward User-plane and control-plane transfer Compression support Ciphering and integrity support Services expected downward Acknowledged or unacknowledged transfer SRAP association cases N3C association cases
Contrast the upward-facing service list against the lower-layer service expectations in one interface-view diagram.

Core PDCP Functions Overview

This is the capability map of PDCP. If the services sections explain what PDCP offers and expects, the functions section explains the concrete behaviors inside PDCP that make those services possible.

The PDCP function scope includes transfer, PDCP SN maintenance, compression, security, discard handling, routing, duplication, reordering, in-order or out-of-order delivery, and duplicate discarding.

PDCP Function center Transfer and SN Delivery shaping Security / compression Routing / duplication
Group data transfer, SN handling, compression, security, discard, reordering, routing, duplication, and duplicate discard as one PDCP capability map.
PDCP function Why it exists
Transfer of data Support user-plane or control-plane traffic through the PDCP bearer path.
Maintenance of PDCP SNs Maintain sequence-aware progression and support ordering-related behavior.
ROHC Provide header compression and decompression using ROHC.
EHC Provide header compression and decompression using EHC.
UDC Provide uplink data compression and decompression using UDC.
Ciphering and deciphering Apply and remove confidentiality protection.
Integrity protection and verification Apply and check integrity protection where configured.
Timer based SDU discard Discard data when timer-based conditions require it.
PDU Set discard Discard associated PDU sets under the relevant procedure conditions.
PSI based SDU discard Discard data according to PSI-based rules where relevant.
Routing Support split-bearer and DAPS-oriented transmit-side path handling.
Duplication Support redundant PDCP transmission behavior.
Reordering and in-order delivery Control receive-side sequencing and orderly release upward.
Out-of-order delivery Support configured delivery modes that relax strict ordering.
Duplicate discarding Prevent repeated delivery of duplicated PDCP information.
Feature group Included functions Primary engineering concern
Transfer and sequence control Data transfer and PDCP SN maintenance Move traffic and track progression.
Compression and efficiency ROHC, EHC, and UDC Reduce overhead and support efficient bearer transport.
Security Ciphering, deciphering, integrity protection, and verification Apply confidentiality and integrity at PDCP.
Delivery shaping Discard, reordering, in-order delivery, out-of-order delivery, duplicate discard Control what the receiver releases upward and when.
Advanced bearer handling Routing and duplication Support multi-path and redundant bearer behavior.

Data Transfer and PDCP SN Handling

Data transfer is the simplest PDCP function to name and one of the broadest to understand. It covers how PDCP accepts upper-layer traffic, processes it as needed, and passes it downward, then performs the inverse role on the receive side.

PDCP SN maintenance sits directly beside that transfer role. It gives PDCP the sequence-aware foundation needed for ordering, duplicate handling, delivery control, and other runtime behaviors. This page keeps SN handling at overview level and leaves format and procedural detail to the dedicated child pages.

Compression and Decompression Functions

PDCP includes multiple compression-related capabilities. These include header compression and decompression using ROHC, header compression and decompression using EHC, and uplink data compression and decompression using UDC.

The key point at service-and-function level is that PDCP is responsible for these efficiency-oriented transformations. This page does not expand into the algorithm detail, but it makes clear that compression is a built-in capability area of PDCP rather than an external add-on.

Compression ROHC EHC UDC Security Ciphering Deciphering Integrity protection / verify Delivery control Reordering Discard Duplicate handling
Show ROHC, EHC, and UDC grouped beside security and delivery control as major PDCP function families.

Security Functions in PDCP

PDCP is the layer where ciphering and deciphering are performed, and where integrity protection and integrity verification are applied where configured. This makes PDCP the main radio-side execution layer for these protection functions.

For a service-and-function page, the important point is architectural placement rather than cryptographic detail. Security is part of what PDCP offers and part of what PDCP internally does, which is why it appears in both the service list and the function list.

Discard, Reordering, and Delivery Functions

Several PDCP functions exist to shape receive behavior and delivery behavior rather than raw packet transport. These include timer based SDU discard, PDU Set discard, PSI based SDU discard, reordering and in-order delivery, out-of-order delivery, and duplicate discarding.

Taken together, these functions explain why PDCP is more than a security wrapper. It is also the layer that decides when data should still wait, when it can be released upward, and when repeated or stale information should be discarded.

Routing, Duplication, and Advanced Data Handling

PDCP also supports advanced bearer handling. The function list includes routing for split bearers and DAPS bearer plus duplication. These functions matter when one bearer path is not a single straightforward transmit-receive flow.

This page keeps the explanation broad and navigational. The main message is that PDCP is the bearer-aware layer that can support path selection and redundancy, while still keeping delivery control and duplicate discard under the same functional umbrella.

PDCP transmit path Split bearer route Duplicate path Routing / duplication logic Deliver
Show PDCP transmit flow branching into routed or duplicated paths, then converging through delivery and duplicate-handling logic.

How Services and Functions Connect to PDCP Procedures

The services and functions described here are realized by deeper PDCP procedures. Entity handling controls how the protocol instance is created and reconfigured. Data transfer procedures realize the main bearer path. Discard, status reporting, and data recovery handle exception cases. Security, compression, and duplication procedures realize the corresponding function families.

The function map is therefore not a detached overview. It is the index to the deeper procedure pages that make PDCP work in live operation.

Function area Best next page
Architecture and entity context Overview and Architecture
Data transfer and reordering Data Transfer, Reordering and Delivery
Security Ciphering and Integrity Protection
Formats, SN, and COUNT PDU Formats, SN, COUNT and Parameters
Discard, status, and recovery Entity Handling, Discard, Status and Recovery

Why This PDCP Function Map Matters

Understanding the PDCP service model and function map first makes the rest of the protocol easier to read. It explains which behaviors belong to the external interface, which belong to the internal engine, and how compression, security, discard, duplication, and delivery control fit into one coherent bearer-facing layer.

In practical work, this page helps engineers decide where to go next: a stack question points back to architecture, a runtime question points toward reordering or timers, a security question points toward the protection page, and a format question points toward PDUs, SN, and COUNT.

References

FAQ

Why separate services and functions when reading PDCP?

Because services describe the interface contract of PDCP, while functions describe the internal behaviors PDCP performs to realize that contract.

Which upper layers receive PDCP services?

PDCP provides services to the RRC or SDAP layers depending on bearer context.

Is successful-delivery indication part of the lower-layer service view?

Yes. It is part of the acknowledged data transfer service expected by a PDCP entity from an associated RLC entity.

Does PDCP only support in-order delivery?

No. PDCP supports reordering and in-order delivery, and it also supports out-of-order delivery where configured.