Description
A Packet Flow Description (PFD) is a data object used within 3GPP's policy and charging control framework to enable application-aware network management. Its primary purpose is to provide the User Plane Function (UPF) or Traffic Detection Function (TDF) with the necessary information to detect traffic belonging to a specific application, such as a video streaming service or a social media app. A PFD is not a rule itself but the descriptive input used to create Packet Detection Rules (PDRs) within the PFCP protocol. A PFD typically contains an application identifier (e.g., a standardized 3GPP App ID or a custom identifier) and one or more packet filters.
These packet filters can be defined at different layers of the protocol stack to allow for flexible and efficient detection. They may include domain names, URLs, URI patterns, or traditional 3-tuple/5-tuple IP information (source/destination IP address, protocol, port numbers). For example, a PFD for a video service might include the domain name of its content delivery network and specific URL patterns for video segments. The entity responsible for PFD management, such as the Policy Control Function (PCF) or an Application Function (AF), provisions these PFDs to the SMF via the N5/N7 interface. The SMF then translates the PFDs into actionable Packet Detection Rules (PDRs) and installs them into the relevant UPF using the PFCP protocol.
Once installed, the UPF uses these derived rules to inspect packets. When a match is found, the UPF can apply the appropriate policy, such as steering the traffic to a specific edge server, applying QoS prioritization, triggering charging events, or blocking the flow. This mechanism is crucial for service differentiation, network optimization, and parental controls. The PFD framework also includes procedures for PFD management, allowing the PCF to provision, update, or remove PFDs dynamically, enabling real-time adjustment to the network's application detection capabilities as new services emerge or traffic patterns change.
Purpose & Motivation
The Packet Flow Description was developed to address the challenge of effectively identifying and managing the exploding variety of Over-The-Top (OTT) application traffic in mobile networks. Traditional policy control relied heavily on static, operator-defined rules based on IP addresses and port numbers, which became ineffective as applications used dynamic ports, encrypted protocols (like HTTPS), and shared content delivery networks, obscuring their identity.
PFDs provide a standardized, flexible method for describing application traffic beyond the limited 5-tuple. By incorporating application-layer identifiers like domain names and URL patterns, they enable much more accurate traffic detection. This accuracy is fundamental for implementing advanced policies like sponsored data (where an application provider pays for the data usage), application-specific QoS boosting (e.g., prioritizing a partner's video service), and intelligent traffic steering to local breakouts or edge caches. The PFD framework, introduced as part of enhanced policy control, empowers operators and third-party service providers to collaborate in creating application-aware networks, moving from managing anonymous IP pipes to managing recognized services and user experiences.
Key Features
- Contains application identifiers and packet filters for accurate traffic detection
- Supports multi-layer filters including domain names, URLs, and IP tuples
- Provisioned by PCF/AF to SMF via service-based interfaces (e.g., N5, N7)
- Translated by SMF into PFCP Packet Detection Rules (PDRs) for UPF enforcement
- Enables dynamic management (provisioning, update, removal) of detection criteria
- Fundamental for application-aware policy, charging, and traffic steering
Evolution Across Releases
Introduced as part of enhanced policy control for EPC and the foundation for 5GC. Defined the PFD data structure and the PFD Management procedures, allowing an external Application Function (AF) to provide application detection information to the Policy and Charging Rules Function (PCRF/PCF) via the new N5 interface.
Defining Specifications
| Specification | Title |
|---|---|
| TS 23.501 | 3GPP TS 23.501 |
| TS 23.503 | 3GPP TS 23.503 |
| TS 23.700 | 3GPP TS 23.700 |
| TS 26.512 | 3GPP TS 26.512 |
| TS 26.804 | 3GPP TS 26.804 |
| TS 29.122 | 3GPP TS 29.122 |
| TS 29.212 | 3GPP TS 29.212 |
| TS 29.244 | 3GPP TS 29.244 |
| TS 29.250 | 3GPP TS 29.250 |
| TS 29.251 | 3GPP TS 29.251 |
| TS 29.510 | 3GPP TS 29.510 |
| TS 29.512 | 3GPP TS 29.512 |
| TS 29.513 | 3GPP TS 29.513 |
| TS 29.519 | 3GPP TS 29.519 |
| TS 29.520 | 3GPP TS 29.520 |
| TS 29.522 | 3GPP TS 29.522 |
| TS 29.551 | 3GPP TS 29.551 |
| TS 38.101 | 3GPP TR 38.101 |