Description
The Policy and Charging Enforcement Function (PCEF) is a critical logical entity within the 3GPP Policy and Charging Control (PCC) framework, introduced in Release 7. It resides at the border between the mobile core network and external packet data networks (e.g., the internet). Functionally, the PCEF is embedded within the gateway that handles the user plane traffic, such as the Gateway GPRS Support Node (GGSN) in GPRS/UMTS, the Packet Data Network Gateway (P-GW) in EPS (LTE), and the User Plane Function (UPF) in 5GC. Its primary role is to enforce in real-time the policy and charging control decisions made by the Policy and Charging Rules Function (PCRF).
The PCEF operates by intercepting user data flows (identified by IP 5-tuple or other filters) and applying the specific rules instructed by the PCRF. These rules are conveyed via the Gx reference point (or N7 in 5GC) and are encapsulated in Policy and Charging Control (PCC) rules. Each PCC rule contains information for enforcement and charging. For enforcement, the PCEF performs functions like gating (blocking or allowing flows), bandwidth control (setting uplink/downlink maximum bit rates, QoS Class Identifier), priority management, and redirection. For charging, the PCEF applies the charging method (online, offline, or both), identifies the relevant charging key, and reports usage events (e.g., volume, duration) to the Online Charging System (OCS) via the Gy interface or the Offline Charging System (OFCS) via the Gz interface.
Its operation is dynamic and session-aware. The PCEF interacts with the PCRF during session establishment, modification, and termination. It can also trigger updates by informing the PCRF of events it detects in the user plane, such as a change in user location, depletion of quota, or the start of a new service data flow. This closed-loop feedback allows for highly granular and responsive policy control. For example, when a user starts a video stream, the PCEF, upon instruction from the PCRF, can dynamically open a dedicated bearer with guaranteed bit rate, apply specific charging rates, and later downgrade the QoS when the stream ends. This architecture centralizes policy logic in the PCRF while decentralizing high-performance enforcement to the traffic-chokepoint gateways via the PCEF.
Purpose & Motivation
The PCEF was created to solve the limitations of static, pre-configured policy and charging mechanisms in earlier mobile data networks (pre-Release 7). Initially, policy control (like access control and QoS) and charging were largely separate, static functions configured directly on the gateway. This made it difficult to implement dynamic, service-aware, and user-specific policies in real-time. Operators could not easily offer tiered service plans, real-time spending controls, or optimized QoS for specific applications like VoIP or video.
The introduction of the PCC architecture, with the PCEF as its enforcement arm, was motivated by the need for a standardized, flexible, and centralized policy control framework. It separated the policy decision logic (PCRF) from the enforcement (PCEF), enabling real-time interaction between the network's control plane and user plane. This solved key business and technical problems: it allowed for sophisticated service differentiation, enabling new revenue models like sponsored data, zero-rating, and quality-on-demand. Technically, it provided the tools for efficient network resource management, ensuring critical services received necessary bandwidth while preventing any single user or service from overwhelming the network.
Furthermore, it integrated charging directly with policy enforcement, enabling accurate, flow-based charging that could align with marketing offers (e.g., social media data packs). The PCEF's role at the gateway makes it the ideal point for enforcement, as all user traffic must pass through it, allowing for comprehensive visibility and control. Its creation was a foundational step towards the service-aware, monetizable, and efficiently managed mobile broadband networks that followed.
Key Features
- Enforces dynamic PCC rules (gating, QoS, bandwidth limits) on user plane traffic
- Embedded within the data session gateway (GGSN, P-GW, UPF)
- Interacts with PCRF via Gx/N7 interface for rule provisioning and event reporting
- Applies flow-based charging, reporting usage to OCS (Gy) and/or OFCS (Gz)
- Supports service data flow detection and triggering of PCRF sessions
- Enables dynamic QoS control, including dedicated bearer establishment
Evolution Across Releases
The PCEF was introduced as a core component of the new Policy and Charging Control (PCC) architecture. Initially defined for the GPRS/UMTS core network, it was embedded in the GGSN. It established the Gx interface to the PCRF for dynamic rule provisioning and the Gy/Gz interfaces for online/offline charging, enabling real-time, service-aware policy enforcement and charging for the first time.
Defining Specifications
| Specification | Title |
|---|---|
| TS 23.203 | 3GPP TS 23.203 |
| TS 23.207 | 3GPP TS 23.207 |
| TS 23.228 | 3GPP TS 23.228 |
| TS 23.468 | 3GPP TS 23.468 |
| TS 23.701 | 3GPP TS 23.701 |
| TS 26.924 | 3GPP TS 26.924 |
| TS 29.154 | 3GPP TS 29.154 |
| TS 29.201 | 3GPP TS 29.201 |
| TS 29.212 | 3GPP TS 29.212 |
| TS 29.213 | 3GPP TS 29.213 |
| TS 29.214 | 3GPP TS 29.214 |
| TS 29.215 | 3GPP TS 29.215 |
| TS 29.219 | 3GPP TS 29.219 |
| TS 29.244 | 3GPP TS 29.244 |
| TS 29.250 | 3GPP TS 29.250 |
| TS 29.251 | 3GPP TS 29.251 |
| TS 29.810 | 3GPP TS 29.810 |
| TS 29.816 | 3GPP TS 29.816 |
| TS 29.817 | 3GPP TS 29.817 |
| TS 29.827 | 3GPP TS 29.827 |
| TS 32.240 | 3GPP TR 32.240 |
| TS 32.251 | 3GPP TR 32.251 |
| TS 32.296 | 3GPP TR 32.296 |
| TS 32.409 | 3GPP TR 32.409 |
| TS 32.843 | 3GPP TR 32.843 |