Description
The External Protocol Data Unit (EPDU) is a conceptual data structure defined within specific 3GPP protocol specifications to facilitate the transparent transfer of protocol data between peer entities across a layered architecture. It is not a standalone protocol but a defined container or encapsulation format used by other protocols. An EPDU typically encapsulates a complete Protocol Data Unit (PDU) from a higher layer, including its header and payload, allowing the lower-layer service to treat it as an opaque data block for delivery. This mechanism ensures that the lower layer does not need to interpret or modify the internal structure of the higher-layer PDU, maintaining protocol independence and encapsulation principles.
One of the primary applications of the EPDU is within the Service Data Adaptation Protocol (SDAP) in the 5G New Radio (NR) user plane, as specified in 3GPP TS 38.415. In this context, the SDAP layer receives QoS Flows from the core network. For each QoS Flow, the SDAP protocol data unit consists of an SDAP header and an SDAP data PDU. The SDAP data PDU itself can carry an EPDU, which contains the complete PDU from the upper layer (typically the IP layer). The SDAP entity processes the EPDU based on QoS flow mapping and reflective QoS rules, adding or removing the SDAP header as needed, but does not alter the contents of the encapsulated EPDU. This allows for efficient mapping of IP packets to radio bearers without requiring the SDAP layer to understand IP header semantics.
Another significant use case is in positioning protocols, such as the LTE Positioning Protocol (LPP) defined in TS 36.355. In LPP, an EPDU is used to carry messages from other positioning protocols (e.g., LPPe - LPP extensions) within a standard LPP message container. This enables extensibility and allows for the transport of vendor-specific or future positioning protocol data in a backward-compatible manner. The LPP layer simply encapsulates the external protocol's entire PDU as an EPDU within an LPP message, forwarding it to the peer. The peer's LPP layer extracts the EPDU and delivers it to the appropriate external protocol entity for processing. This design pattern promotes modularity and allows different protocol stacks to interoperate without tight coupling.
Purpose & Motivation
The concept of the External Protocol Data Unit was standardized to address the need for clean separation and transparent tunneling between protocol layers or between different protocol suites. In complex telecommunications systems, it is often necessary for one protocol to carry data generated by another, potentially unrelated, protocol without requiring the carrying protocol to understand the internal format or semantics of the carried data. Prior to such formalization, ad-hoc encapsulation methods could lead to interoperability issues, reduced flexibility, and increased complexity when introducing new protocols or extensions.
In the context of 5G SDAP, the EPDU mechanism was crucial for the design of a flexible user plane that supports diverse services with different QoS requirements. SDAP needed to map IP flows to radio bearers based on QoS rules, but treating IP packets as opaque EPDUs meant the SDAP layer's design could be simplified and made future-proof. It could handle any upper-layer PDU format (IPv4, IPv6, Ethernet, or future protocols) without change, as long as it was presented as an EPDU. This supports the 5G vision of a service-based architecture capable of supporting a wide array of vertical industries.
For positioning protocols like LPP, the EPDU serves as an extensibility enabler. Positioning technology evolves rapidly, with new methods and enhancements being developed. By defining a standard container (the EPDU) for external positioning protocol data, LPP can transport messages for new, unforeseen protocols without requiring changes to the base LPP specification. This allows device and network vendors to innovate and add proprietary or standardized extensions (like LPPe) in a structured, interoperable way, ensuring that core LPP implementations remain stable while supporting new features.
Key Features
- Serves as a container for a complete higher-layer Protocol Data Unit (header and payload)
- Enables transparent tunneling between protocol layers without semantic interpretation
- Used in 5G SDAP for mapping QoS Flows containing IP packets to radio bearers
- Employed in LPP for carrying messages from external positioning protocols
- Promotes protocol independence and modularity in system design
- Facilitates backward-compatible extensibility for future protocols
Evolution Across Releases
Initially defined within the LTE Positioning Protocol (LPP) specifications to provide a standardized container for carrying PDUs from external or extension positioning protocols (e.g., LPPe). This allowed for the encapsulation of non-LPP positioning data within LPP messages, enabling protocol extensibility and vendor-specific enhancements without modifying the core LPP structure.
Defining Specifications
| Specification | Title |
|---|---|
| TS 36.355 | 3GPP TR 36.355 |
| TS 37.355 | 3GPP TR 37.355 |
| TS 38.415 | 3GPP TR 38.415 |