CRF

Charging Rules Function

Core Network
Introduced in Rel-6
The Charging Rules Function (CRF) is a core network element responsible for authorizing and providing charging rules to the Policy and Charging Enforcement Function (PCEP). It determines how user sessions should be charged based on subscriber profiles, service usage, and network policies, enabling flexible and dynamic charging models in 3GPP networks.

Description

The Charging Rules Function (CRF) is a critical component within the 3GPP Policy and Charging Control (PCC) architecture, specifically defined in the Release 6 framework and maintained through subsequent releases. It operates as the central logic entity that makes decisions about how charging should be applied to individual IP-CAN (IP Connectivity Access Network) sessions. The CRF receives service information from the Application Function (AF) and subscriber information from the Subscription Profile Repository (SPR), then combines this data with operator-defined policies to generate specific charging rules.

Architecturally, the CRF interfaces with several key PCC elements through standardized reference points. The Rx interface connects the CRF to the Application Function, allowing the AF to communicate service-specific information that may influence charging decisions. The Sp interface provides access to subscriber data stored in the SPR, including service profiles, allowed services, and charging-related parameters. Most importantly, the CRF communicates with the Policy and Charging Enforcement Function (PCEF) via the Gx interface, through which it provisions the authorized charging rules for enforcement.

The CRF's operation follows a well-defined sequence. When a user establishes an IP-CAN session, the PCEF typically requests charging rules from the CRF. The CRF evaluates multiple inputs: the subscriber's profile from the SPR, any service information from the AF, and the network operator's policy rules. Based on this evaluation, it determines appropriate charging parameters such as charging method (online, offline, or both), rating groups, service identifiers, and applicable thresholds. These parameters are encapsulated in Charging-Rule-Definition AVPs (Attribute-Value Pairs) and sent to the PCEF for implementation.

Within the charging rules, the CRF specifies whether online charging (interactive, credit-based) via the Online Charging System (OCS) or offline charging (batch processing) via the Offline Charging System (OFCS) applies. For online charging, it defines credit control parameters and quota management rules. For offline charging, it specifies Charging Data Record (CDR) generation triggers and formatting rules. The CRF can also modify charging rules during an active session in response to changing conditions, such as service upgrades, location changes, or quota exhaustion, ensuring charging remains aligned with the current service context.

The CRF's role extends beyond simple rule provisioning to include policy interaction. While the Policy and Charging Rules Function (PCRF) handles QoS policy decisions in later architectures, in earlier PCC implementations and specific deployments, the CRF may incorporate policy decision logic or work closely with policy functions. This integration ensures charging rules correlate with the authorized QoS, preventing scenarios where charging and service quality policies conflict. The CRF thus serves as the intelligent charging decision point that translates business rules, subscriber entitlements, and service characteristics into technically enforceable charging instructions.

Purpose & Motivation

The CRF was introduced in 3GPP Release 6 as part of the comprehensive Policy and Charging Control (PCC) architecture to address the limitations of earlier charging systems in handling diverse, IP-based services. Prior to PCC, charging mechanisms were often static, service-specific, and tightly coupled with network elements, making it difficult to implement flexible, real-time charging for emerging multimedia services. Operators needed a centralized, dynamic system that could adapt charging based on actual service usage, subscriber profiles, and network conditions.

The primary problem the CRF solves is the decoupling of charging logic from enforcement functions, enabling more sophisticated charging models. Without the CRF, charging rules would need to be pre-configured in network elements, limiting operators' ability to offer personalized charging plans, real-time service upgrades, or context-aware billing. The CRF provides the intelligence to make charging decisions dynamically, considering factors like service type, content value, time of day, subscriber tier, and remaining balances.

Historically, the creation of the CRF was motivated by the transition from circuit-switched voice services to packet-based multimedia services in 3G networks. This shift required charging systems that could handle variable bit rates, multiple simultaneous services, and quality-based differentiation. The CRF, as part of the PCC framework, enabled operators to monetize new services like video streaming, gaming, and enterprise applications through granular, policy-driven charging rather than simple volume-based billing. It provided the foundation for service-aware networks where charging could be aligned with both network resource consumption and the perceived value of services to subscribers.

Key Features

  • Dynamic charging rule authorization based on multiple inputs
  • Integration with Application Function for service-aware charging
  • Access to subscriber profiles via Subscription Profile Repository
  • Provisioning of charging rules to PCEF via Gx interface
  • Support for both online and offline charging methods
  • Session-based charging with mid-session modification capability

Evolution Across Releases

Rel-6 Initial

Introduced the CRF as a standalone functional entity within the initial Policy and Charging Control (PCC) architecture. Defined its role in authorizing charging rules based on service information from AF and subscriber data from SPR. Established the Gx interface for provisioning charging rules to PCEF and the Rx interface for receiving service information from AF.

Defining Specifications

SpecificationTitle
TS 23.125 3GPP TS 23.125
TS 23.203 3GPP TS 23.203
TS 26.926 3GPP TS 26.926
TS 29.214 3GPP TS 29.214
TS 32.102 3GPP TR 32.102
TS 32.272 3GPP TR 32.272
TS 32.278 3GPP TR 32.278