Description
Performance-oriented Congestion Control (PCC) is a comprehensive framework within 3GPP standards that provides dynamic policy control and charging functionality for IP-based services. It is a cornerstone of the Evolved Packet Core (EPC) in LTE and 5G systems, though its origins trace back to Release 7. The PCC architecture centralizes decision-making for QoS and charging, allowing network operators to apply precise controls per user and per service flow. At its heart, PCC involves key functional entities: the Policy and Charging Rules Function (PCRF), the Policy and Charging Enforcement Function (PCEF), the Application Function (AF), and the Subscription Profile Repository (SPR) or Unified Data Repository (UDR). These elements work in concert to authorize resources, enforce policies, and ensure appropriate charging based on real-time inputs.
The PCC framework operates through a series of standardized interfaces, primarily the Gx interface between PCRF and PCEF, the Rx interface between PCRF and AF, and the Sy interface between PCRF and OCS (Online Charging System). How it works begins with the establishment of an IP-CAN (IP Connectivity Access Network) session by the User Equipment (UE). The PCEF, typically residing in the Packet Data Network Gateway (PGW) in LTE or the SMF/UPF in 5G, detects the session and requests policy rules from the PCRF via Gx. The PCRF then makes decisions by consolidating information from multiple sources: subscriber data from SPR/UDR (e.g., allowed services, QoS profiles), service information from AF (e.g., required bandwidth for a video stream), and network status from internal policies or the Traffic Detection Function (TDF). It then provisions these decisions as PCC rules to the PCEF for enforcement.
Key components of PCC include PCC rules, which are sets of information enabling the detection of a service data flow and defining parameters for its treatment. Each PCC rule contains a rule identifier, service data flow filters (e.g., 5-tuple IP filters), precedence, QoS parameters (QCI, ARP, bitrates), charging information (metering method, charging key), and enforcement actions. The PCEF uses these rules to perform deep packet inspection (DPI) to identify flows, apply QoS marking (setting DSCP or allocating bearer resources), rate limit, and generate charging data records (CDRs) or interact with online charging systems. This allows for granular control, such as prioritizing VoIP traffic over best-effort web browsing or applying zero-rating for specific applications.
PCC's role extends beyond basic QoS; it is integral to network slicing, edge computing, and network automation in 5G. In 5G Core, the Policy Control Function (PCF) assumes the PCRF role, interacting with the Session Management Function (SMF) via the N7 interface. PCC principles enable dynamic policy adjustments based on network slicing SLAs, location changes, or congestion events. For instance, during network congestion, PCC can throttle non-essential traffic or offer sponsored data services. The framework supports both static policies (pre-configured) and dynamic policies (session-specific), providing flexibility for operators to innovate with service offerings while maintaining network performance and monetization.
Purpose & Motivation
PCC was created to address the limitations of static, pre-configured policy and charging mechanisms in earlier mobile data networks (e.g., GPRS). Before PCC, QoS and charging were often based on simple APN (Access Point Name) settings or subscriber profiles without real-time adaptability. This rigidity made it difficult for operators to offer differentiated services, manage network congestion dynamically, or implement sophisticated charging models like tiered data plans, zero-rating, or sponsored data. The explosion of IP-based services (video streaming, VoIP, IoT) in the mid-2000s demanded a more agile system that could respond to application needs and network conditions in real time.
The primary problem PCC solves is the efficient and monetizable management of scarce network resources amidst diverse traffic types. It enables operators to enforce policies that align with business objectives—for example, ensuring premium subscribers experience high-quality video while limiting heavy users during congestion. PCC also facilitates service innovation by allowing third-party application providers to interact with the network via the AF (e.g., through the Rx interface) to request specific QoS for their services, enabling partnerships and new revenue streams. This was a paradigm shift from network-as-a-pipe to network-as-a-service.
Historically, PCC's development in Release 7 was motivated by the convergence of IMS (IP Multimedia Subsystem) and non-IMS services over packet-switched domains. It provided a unified policy control framework for both, replacing earlier disjointed mechanisms like the Go interface for IMS. As networks evolved to LTE and 5G, PCC became even more critical due to increased data volumes, low-latency requirements, and network slicing. It addressed the need for automation in policy decision-making, reducing operational overhead and enabling real-time charging for on-demand services. PCC thus underpins modern mobile broadband economics, allowing operators to balance performance, fairness, and profitability in a competitive landscape.
Classification
Detected Changes Across Releases
from 3GPP Change RequestsSpecific changes extracted from the „Change history“ tables of 3GPP specifications (428 CRs across 6 releases). Complements the general historical overview above with the evidence-based evolution of this function.
Studied in Rel-7, normative work from Rel-15.
In Release 15, the PCC function was enhanced with the introduction of **Service Gap Control**, including its applicability in both idle and connected mode. The release also introduced **Support of PCC rule versioning** and provided updates to the **QoS Notification Control** description and data model. Furthermore, specific corrections were made for notification control related to GBR QoS flows.
- Introduction of the multi-talker control TS 23.379CR0086
- TS 23.401 Subscription Control for EPC_DC_NR TS 23.401CR3225
- Control of Secondary RAT data volume reporting TS 23.401CR3285
- Subscription Control for EPC_DC_NR: handover from Gn/Gp SGSN TS 23.401CR3306
- Introduction of Service Gap Control TS 23.401CR3328
- Enhanced VoLTE performance CR for TS 23.401 TS 23.401CR3335
+ 74 more changes
In Release 16, the PCC function was enhanced to support traffic switching, steering and splitting, particularly for ATSSS (Access Traffic Steering, Switching and Splitting). Key updates included specific PCC rule corrections and decision enhancements for ATSSS and xBDT, along with the integration of input for PCC decisions from the NWDAF (Network Data Analytics Function). Furthermore, the release introduced DN (Data Network) authorization for policy control and updated the Npcf_SMPolicyControl_Create service operation.
- Functional alias supplements for the MCData transmission and reception control procedures TS 23.282CR0145
- PCC support for traffic switching, steering and splitting TS 23.503CR0185
- Input for PCC decision from NWDAF TS 23.503CR0246
- Restricting incoming private communications - call control TS 24.379CR0481
- Preconfigured regroup – X.2.3.1 Controlling create request TS 24.379CR0514
- Preconfigured regroup –X.2.3.2 Controlling remove request TS 24.379CR0515
+ 105 more changes
In Release 17, the PCC function was enhanced to introduce policy control based on satellite backhaul information and to enable dynamic changes to Access and Mobility (AM) Policies. It gained new capabilities for controlling the data rate per network slice, including with assistance from the NWDAF, and added support for Advanced Interactive Services. Furthermore, PCC was extended to support Mission Critical services, such as control for MCPTT login limits and authorization limits for MCVideo, and to manage User Plane latency requirements within PCC rules.
- Message Store control TS 23.282CR0255
- Access and mobility policy control functionality to enable dynamic change of AM Policies TS 23.503CR0520
- Policy control based on satellite backhaul information TS 23.503CR0539
- PCC to support Advanced Interactive Service TS 23.503CR0536
- Policy control of data rate per network slice TS 23.503CR0552
- Policy control enhancement for local notification TS 23.503CR0587
+ 89 more changes
In Release 18, the PCC function was enhanced to support policy control for Low Latency, Low Loss, Scalable Throughput (L4S) and for Packet Delay Variation monitoring and reporting. It was also updated to incorporate new inputs for PCC decisions, specifically Satellite backhaul category information and DN Performance Analytics usage in PDTQ policy. Furthermore, the release introduced the exposure of traffic characteristics, performance monitoring, and congestion information for groups of UEs via a new NEF service.
- Application level control signalling over 5G MBS sessions TS 23.434CR0124
- Updating MBS with dynamic PCC TS 23.434CR0133
- KI#4 23.503 PCC rule for common EAS, DNAI selection TS 23.503CR0776
- Policy control for dynamic satellite backhaul TS 23.503CR0788
- DN Performance Analytics usage in PDTQ policy TS 23.503CR0799
- Exposure of traffic characteristics and performance monitoring for a group of UEs, using new NEF service TS 23.503CR0819
+ 82 more changes
In Release 19, the PCC function was enhanced to support N6 delay measurement within PCC rules and to provide an Expedited Transfer Indication in those rules. It also introduced uplink rate control for QoS flows at the RAN and added support for the MDBV and average window within the Alternative QoS Profile. Furthermore, procedures were updated to improve failure detection and recovery for the PCEF and PCF, including support for IMS restoration after a PCRF/PCF failure.
- Information flows and procedures to support ad hoc group standalone short data service using signalling control plane TS 23.282CR0317
- Support of multi-talker floor control for ad hoc group calls TS 23.379CR0358
- MCPTT control plane user plane separation TS 23.379CR0447
- Subscription control for time reference information delivery in EPS TS 23.401CR3796
- PCC enhancements for support of identified non-3GPP devices TS 23.503CR1310
- PCC rule enhancement to support N6 delay measurement TS 23.503CR1325
+ 44 more changes
In Release 20, the PCC function was enhanced with new policy controls based on abnormal user plane traffic analytics and traffic pattern analytics. It also introduced policy support for network energy saving, specifically involving BDT and PDTQ, and included a correction for multi-talker control configuration.
- Policy control based on abnormal user plane traffic analytics and traffic pattern analytics TS 23.503CR1599
- Adding BDT, PDTQ and UE policy control for network energy saving TS 23.503CR1612
- Policy control based on new Abnormal User Plane Traffic Analytics TS 23.503CR1613
- Multi-talker control configuration correction TS 23.379CR0522
Explore further
Broader topics and technologies where PCC plays a role.
Defining Specifications
3GPP specifications that define or reference PCC, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TS 23.060 vj00 | GPRS Service Description Stage 2 | Rel-19 |
| TS 23.203 vj20 | Policy and charging control architecture | Rel-19 |
| TS 23.207 vj00 | End-to-End QoS Framework for GPRS | Rel-19 |
| TS 23.228 vj50 | IMS Stage-2 Service Description | Rel-19 |
| TS 23.282 vk00 | MCData Functional Architecture & Info Flows | Rel-20 |
| TS 23.379 vk00 | MCPTT Functional Architecture | Rel-20 |
| TS 23.401 vj50 | Evolved Packet System (EPS) Stage 2 Description | Rel-19 |
| TS 23.434 vk00 | Service Enabler Architecture for Verticals | Rel-20 |
| TS 23.468 vj00 | Group Communication System Enablers for LTE | Rel-19 |
| TS 23.503 vk00 | 5G Policy and Charging Control Framework | Rel-20 |
| TS 23.701 vc00 | WebRTC Access to IMS Architecture Study | Rel-12 |
| TS 23.722 vf10 | Common API Framework (CAPIF) for 3GPP Northbound APIs | Rel-15 |
| TR 23.780 ve00 | MBMS for Mission Critical Communication Services | Rel-14 |
| TR 23.799 ve00 | Study on Next Generation System Architecture | Rel-14 |
| TS 23.803 v1700 | PCC Architecture Harmonization Study | Rel-7 |
| TR 23.975 vj00 | IPv6 Transition Scenarios for 3GPP Networks | Rel-19 |
| TS 24.229 vj50 | IMS call control protocol based on SIP and SDP | Rel-19 |
| TS 24.281 vj40 | MCVideo Signalling Control Specification | Rel-19 |
| TS 24.379 vj50 | Mission Critical Push To Talk (MCPTT) call control | Rel-19 |
| TR 24.980 vg00 | MCPTT IMS Profile for Gm Reference Point | Rel-16 |
| TS 26.501 vj30 | 5G Media Streaming (5GMS) Architecture | Rel-19 |
| TS 26.510 vj10 | Media Delivery APIs for 5GMS and RTC Systems | Rel-19 |
| TS 26.512 vj10 | 5G Media Streaming Protocols & APIs | Rel-19 |
| TS 26.802 vj20 | Multicast Enhancements for 5G Media Streaming | Rel-19 |
| TS 26.804 vj10 | 5G Media Streaming Extensions Study | Rel-19 |
| TS 26.822 vj20 | 5G RTP Configurations Study Phase 2 | Rel-19 |
| TR 26.924 vj00 | MTSI QoS Improvement Study | Rel-19 |
| TR 26.928 vj00 | Study on eXtended Reality (XR) in 5G | Rel-19 |
| TR 26.998 vj00 | 5G AR/MR Glasses Integration Study | Rel-19 |
| TS 28.318 vj10 | Management and Orchestration for Energy Utilities | Rel-19 |
| TS 29.061 vj00 | Packet Domain Interworking for PLMN | Rel-19 |
| TS 29.201 vj00 | RESTful Rx Interface for AF-PC Communication | Rel-19 |
| TS 29.213 vj20 | PCC Signalling Flows and QoS Mapping | Rel-19 |
| TS 29.214 vj20 | Policy and Charging Control over Rx | Rel-19 |
| TS 29.215 vj00 | S9 Reference Point Stage 3 Specification | Rel-19 |
| TS 29.217 vj00 | Policy and Charging Control (PCC) for Np Interface | Rel-19 |
| TS 29.244 vj40 | PFCP Specification for Control/User Plane Separation | Rel-19 |
| TS 29.512 vj40 | 5G Session Management Policy Control Service | Rel-19 |
| TS 29.513 vj40 | 5G PCC Signalling Flows & QoS Mapping | Rel-19 |
| TS 29.514 vj40 | 5G System; Policy Authorization Service; Stage 3 | Rel-19 |
| TS 29.806 vc10 | P-CSCF Restoration Analysis & Solutions | Rel-12 |
| TS 29.809 vc00 | Diameter Overload Control Study | Rel-12 |
| TS 29.810 vd00 | Diameter Load Control Study | Rel-13 |
| TS 29.816 va00 | PCRF Failure & Restoration Study | Rel-10 |
| TS 29.817 vc10 | Study on XML-based Rx interface for PCC | Rel-12 |
| TS 29.827 vg00 | Policy and Charging for Volume Based Charging | Rel-16 |
| TS 29.866 vj00 | IMS Disaster Prevention & Restoration Enhancement | Rel-19 |
| TS 29.890 vg00 | CT3 5G System Technical Report | Rel-16 |
| TS 32.251 vj00 | PS Domain Charging Management | Rel-19 |
| TS 32.255 vk10 | Telecom Management; Charging for 5G Data Connectivity | Rel-20 |
| TS 32.279 vj00 | 5G MBS Session Converged Charging | Rel-19 |
| TS 32.296 vj00 | Online Charging System (OCS) Architecture | Rel-19 |
| TS 32.298 vj30 | Charging Data Record (CDR) Parameter Specification | Rel-19 |
| TS 32.409 vj00 | IMS Performance Management Measurements | Rel-19 |
| TS 32.808 v1800 | Common User Profile Storage Framework | Rel-8 |
| TS 32.843 vd00 | PS Domain Online Charging in Roaming | Rel-13 |
| TS 32.862 ve00 | Service KQI Standardization Study | Rel-14 |
| TS 33.827 ve00 | LI for S8 Home Routed VoLTE Roaming | Rel-14 |
| TS 36.101 vj30 | LTE UE Radio Transmission & Reception Requirements | Rel-19 |
| TS 36.300 vj00 | E-UTRAN Radio Interface Protocol Architecture Overview | Rel-19 |
| TS 36.714 | 3GPP TR 36.714 | Rel-7 |
| TS 36.715 | 3GPP TR 36.715 | Rel-7 |
| TS 36.716 | 3GPP TR 36.716 | Rel-7 |
| TS 36.833 | 3GPP TR 36.833 | Rel-7 |
| TS 37.579 vi40 | Mission Critical services conformance testing | Rel-18 |
| TR 37.901 vf10 | UE Application Layer Data Throughput Performance | Rel-15 |
| TS 38.133 vj20 | 5G UE Radio Requirements for RRC_IDLE Mobility | Rel-19 |
| TS 38.716 | 3GPP TR 38.716 | Rel-7 |
| TS 38.717 | 3GPP TR 38.717 | Rel-7 |