Description
In 3GPP policy and charging control (PCC) architecture, a packet flow is the fundamental unit of user data traffic that is subject to policy enforcement and charging. It is defined as a specific user data flow carried through the PCEF, which is the entity in the core network responsible for enforcing policy decisions and collecting charging information. A packet flow can be an IP flow, meaning it is identified by the 5-tuple of source IP address, destination IP address, source port, destination port, and protocol. This granularity allows the network to apply different QoS treatments, charging rates, and gating decisions to different types of traffic within the same bearer or PDN connection.
The concept of a packet flow is central to the PCC architecture introduced in 3GPP Release 6 and further refined in subsequent releases. The Policy and Charging Rules Function (PCRF) or, in later releases, the Policy Control Function (PCF), makes policy decisions based on service data flow (SDF) templates that describe packet flows. These decisions are then enforced by the PCEF, which is typically located in the Packet Data Network Gateway (PGW) or the Session Management Function (SMF) in 5G. The PCEF maps the packet flows to bearers or QoS flows and applies the appropriate QoS parameters, such as QCI (QoS Class Identifier) or 5QI (5G QoS Identifier), and charging rules.
Packet flows are identified through packet filters, which are sets of criteria that match packets based on their header information. These filters are used to classify incoming packets into the correct packet flow. The PCRF provides the PCEF with service data flow templates that contain these packet filters, along with associated policy and charging control rules. The PCEF then installs these rules and enforces them on the user plane traffic. This enables differentiated treatment of traffic, such as prioritizing VoIP packets over file downloads, or applying zero-rating for specific applications.
In the evolution of 3GPP standards, the definition of packet flow has remained largely consistent, with the core meaning being a user data flow through the PCEF. However, in Release 20, the definition was updated to a more generic "specific flow of user data packets from and/or to the UE," reflecting the broader applicability of the concept in 5G and beyond, where the PCEF may be distributed and the traffic handling more complex. This change aligns with the service-based architecture and the introduction of new network functions like the SMF and UPF (User Plane Function).
Packet flows are essential for enabling fine-grained policy control, charging, and QoS enforcement in mobile networks. They allow operators to manage network resources efficiently, ensure fair usage, and create new revenue streams through differentiated services. The concept is also used in network slicing, where different packet flows can be mapped to different slices with distinct performance characteristics. Overall, packet flow is a foundational concept in 3GPP policy and charging frameworks, enabling flexible and dynamic management of user data traffic.
Purpose & Motivation
The packet flow concept was introduced to provide a granular and flexible way to apply policy and charging rules to user data traffic in mobile networks. Before its introduction, policy control and charging were often applied at the bearer level, which was too coarse to differentiate between different types of traffic within the same bearer. This limitation made it difficult for operators to offer differentiated services, such as prioritizing certain applications or applying different charging rates based on the type of content. The packet flow concept solves this problem by allowing the network to identify and treat individual IP flows or groups of flows separately, even within the same bearer.
The introduction of packet flow in Release 6 coincided with the development of the Policy and Charging Control (PCC) architecture, which aimed to enable service-aware policy control and charging in packet-switched networks. The PCC architecture required a mechanism to describe and enforce policies on a per-service basis, and the packet flow provided that mechanism. It allowed the PCRF to make decisions based on service data flow templates and the PCEF to enforce them on specific packet flows. This was a significant advancement over previous approaches that lacked such granularity.
Over time, the packet flow concept has evolved to support new requirements, such as the need for more dynamic policy control in 5G networks. The Release 20 definition change to "a specific flow of user data packets from and/or to the UE" reflects the need to accommodate new traffic patterns and network architectures, including edge computing and network slicing. The packet flow remains a key enabler for operators to manage network resources, ensure QoS, and monetize their networks through innovative services.
What changed in its specifications
The latest release-to-release comparison of specifications that define Packet flow. Each summary describes the whole specification, not only this term.
NB-IoT/eMTC support for Non-Terrestrial Networks: adds QCI characteristic for satellite access, note on GEO/LEO delays, and PCRF policy control for satellite PDN connections.
Full comparison in TS 23.203 →Rel-19 TS 23.503 adds Network Slice Replacement and Energy Saving Indicator reporting, Application Function influence on payload header handling, and Local Offloading Management Policy for edge computing. It also adds ATSSS Phase 4 multi-access steering (MPQUIC-E, ATSSS-LL), spending-limit policy for roaming, and PCF use of network analytics.
Full comparison in TS 23.503 →Release Timeline
Evolution Across Releases
An overview written from the defining specifications, not a verified change history. For the exact text, open the specifications listed below.
Initial definition introduced: "a specific user data flow carried through the Traffic Plane Function. A packet flow can be an IP flow." This established the concept as part of the PCC architecture, with the Traffic Plane Function (later renamed PCEF) as the enforcement point.
Defining Specifications
3GPP specifications that define or reference Packet flow, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TS 23.125 v700 | Flow Based Charging Architecture | Rel-7 read |
| TS 23.203 vk10 | Policy and Charging Control Architecture | Rel-20 read |
| TS 23.503 vk30 | 5G Policy and Charging Control Framework | Rel-20 read |
| TS 29.214 vk00 | Rx Interface for Policy and Charging Control | Rel-20 read |