Description
Packet Identification (PID) refers to a numerical identifier assigned to a packet or a stream of packets to distinguish them from others for the purpose of processing, routing, or management. In 3GPP systems, the PID is not a single, universal identifier but a concept implemented within specific protocol layers and contexts. A primary application is within the Packet Data Convergence Protocol (PDCP) layer for Robust Header Compression (ROHC). Here, the PID is a critical part of the ROHC context, a state maintained separately for each compressed packet flow between a compressor and a decompressor.
How it works in ROHC involves the compressor assigning a Context Identifier (CID), which acts as the PID, to each distinct packet flow (e.g., a specific IP flow with unique source/destination addresses and ports). This CID is included in the compressed packet header. When the decompressor receives the packet, it uses the CID to locate the correct context state, which contains the static and dynamic field information needed to reconstruct the original full header. This mechanism allows multiple independent packet flows to be compressed and decompressed simultaneously over a single radio bearer without confusion.
Beyond ROHC, the PID concept appears in other areas. In the context of MBMS (Multimedia Broadcast Multicast Service), identifiers are used to distinguish different broadcast sessions. In early GPRS specifications, PID could refer to identifiers used in network layer protocols for routing data between the SGSN and external packet data networks. Its role is fundamentally about enabling multiplexing: allowing the network to carry many distinct logical channels or data flows over shared physical and logical resources, and ensuring each packet is delivered to the correct higher-layer application or processing entity.
Purpose & Motivation
The need for Packet Identification arose from the fundamental requirement to support multiple simultaneous data sessions and applications over a single physical connection. Early circuit-switched voice calls required a dedicated channel, but packet-switched data introduced the challenge of sharing bandwidth efficiently among diverse flows (e.g., web browsing, email, VoIP). Without a way to tag packets, the receiver would be unable to separate interleaved data belonging to different applications or sessions, leading to chaos.
In the specific context of header compression, which was crucial for efficient use of scarce radio resources in 2.5G and 3G systems, the PID solved the problem of context management for multiple flows. Simple header compression schemes could handle a single flow, but real devices run multiple applications. The PID (as the Context ID in ROHC) allows a single compression/decompression engine to maintain independent state for numerous flows, dramatically improving spectral efficiency without limiting functionality. It addressed the limitation of earlier, less scalable compression methods.
Thus, PID exists to enable efficiency and multiplexing. It is a foundational tool for managing complexity in layered protocol stacks, allowing higher-layer semantics (like IP addresses and ports) to be efficiently mapped onto lower-layer transport mechanisms. By providing a handle to associate a packet with its specific processing context, it enables advanced features like compression, quality-of-service differentiation, and multicast service delivery, which are all essential for modern, feature-rich mobile broadband.
Classification
Evolution Across Releases
Introduced as a fundamental concept for packet-switched services in UMTS. Initial applications included identifying network layer protocol data units between SGSN and GGSN, and as a foundational element for early header compression techniques, enabling the multiplexing of different packet flows over the newly defined radio access bearers.
Explore further
Broader topics and technologies where PID plays a role.
Defining Specifications
3GPP specifications that define or reference PID, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TR 21.905 vj00 | 3GPP Technical Terms and Definitions | Rel-19 |
| TS 22.240 vj00 | 3GPP Generic User Profile Requirements | Rel-19 |
| TS 25.323 vj00 | Packet Data Convergence Protocol (PDCP) Specification | Rel-19 |
| TS 31.113 v1800 | USAT Interpreter Byte Code Specification | Rel-8 |
| TS 44.065 vj00 | GPRS SNDCP Specification | Rel-19 |