Description
The Charging Function (CHF) is a fundamental component within the 5G Core Network (5GC) architecture, specifically part of the Charging framework. It operates as a producer of charging events, interacting with other Network Functions (NFs) like the Session Management Function (SMF) and Policy Control Function (PCF) via service-based interfaces (e.g., Nchf). The CHF is responsible for collecting usage information, applying charging policies, and generating Charging Data Records (CDRs) or Charging Events. These records are then forwarded to the Charging Data Function (CDF) for long-term storage and eventual processing by the billing system.
Architecturally, the CHF is defined as a standalone Network Function that can be deployed independently, supporting both offline and online charging modes. In online charging, it performs credit control in real-time, granting or denying service units based on a user's account balance and policy rules. This involves direct interaction with the user's balance management system. For offline charging, it collects usage data after the service is rendered, correlating events from multiple NFs to produce consolidated CDRs. The CHF supports a converged charging system, meaning it can handle charging for any service type (e.g., data, voice, IoT, network slicing) through a unified framework.
Key components of the CHF's operation include the Charging Trigger Function (CTF), which is logically embedded within other NFs like the SMF to detect chargeable events, and the Charging Data Function (CDF) for record storage. The CHF itself implements the charging logic, determining tariff times, applying rating, and managing quotas. It uses standardized reference points such as Nchf (for service-based communication with other NFs) and Rf/Ga (for legacy offline/online charging interfaces if needed). Its design is highly flexible, supporting event-based, session-based, and volume-based charging, which is essential for 5G's diverse service offerings like network slicing and edge computing.
The CHF's role is critical for monetizing 5G services. It enables operators to implement sophisticated, real-time charging strategies, such as dynamic pricing, QoS-based charging, and slice-specific billing. By decoupling charging from session management, 5G allows for more agile service deployment and innovative business models, including third-party service charging. The CHF ensures that all network resource usage is accurately measured, rated, and recorded, forming the basis for revenue assurance and customer billing in modern telecom networks.
Purpose & Motivation
The CHF was introduced in 3GPP Release 15 as part of the new 5G Core (5GC) architecture to address the limitations of previous charging systems in 4G EPC. In 4G, charging was tightly coupled with specific network elements like the PGW (via Gy/Gz interfaces), which made it inflexible and difficult to adapt to new services. The 4G charging architecture was primarily designed for traditional mobile broadband, struggling with real-time, service-differentiated charging required for IoT, network slicing, and edge services.
The primary motivation for creating a dedicated CHF was to enable a converged, service-based charging framework that could support the diverse use cases promised by 5G. This separation allows charging logic to be applied independently of the underlying network topology or session state, facilitating innovation. It solves the problem of monolithic charging systems by providing a modular, cloud-native NF that can scale dynamically and integrate with modern IT systems via APIs.
Historically, charging evolved from simple call detail records in circuit-switched networks to more complex data charging in packet-switched networks. The CHF represents the next step, designed for a software-defined, service-oriented core. It addresses the need for real-time charging for on-demand services, support for network slicing where each slice may have a different charging model, and the ability to charge for third-party applications and services directly through the network. This enables new revenue streams and business models essential for 5G's economic viability.
Key Features
- Converged charging for all service types (data, voice, IoT, slices)
- Support for both Online (OCS) and Offline (OFCS) charging modes
- Service-Based Architecture (SBA) with Nchf interface
- Real-time credit control and quota management
- Flexible charging triggers and event correlation
- Integration with Policy Control for charging policy enforcement
Evolution Across Releases
Introduced as a new standalone Network Function in the 5G Core. Defined the service-based interface Nchf for communication with SMF, PCF, and other NFs. Established the framework for converged charging, supporting both offline and online charging models decoupled from session management.
Enhanced support for network slicing charging, allowing differentiated charging per slice. Introduced charging enhancements for edge computing and non-3GPP access. Improved charging for service exposure and API-based services.
Extended charging capabilities for IoT and massive IoT services, including support for small data transmissions and new service requirements. Added enhancements for charging in integrated access and backhaul (IAB) scenarios.
Further evolution for enhanced enterprise and industrial IoT charging, including time-sensitive networking. Introduced support for charging aspects related to AI/ML network data analytics and enhanced service continuity.
Continued enhancements for advanced services, including charging for extended reality (XR) applications and refined models for network-as-a-service. Focused on automation and efficiency in charging operations.
Expected to include further refinements for 5G-Advanced, potentially covering new service paradigms and integration with next-generation billing systems. Focus on scalability and support for emerging 6G study items.
Defining Specifications
| Specification | Title |
|---|---|
| TS 23.501 | 3GPP TS 23.501 |
| TS 23.503 | 3GPP TS 23.503 |
| TS 28.201 | 3GPP TS 28.201 |
| TS 28.203 | 3GPP TS 28.203 |
| TS 28.204 | 3GPP TS 28.204 |
| TS 28.815 | 3GPP TS 28.815 |
| TS 28.816 | 3GPP TS 28.816 |
| TS 28.822 | 3GPP TS 28.822 |
| TS 28.827 | 3GPP TS 28.827 |
| TS 28.840 | 3GPP TS 28.840 |
| TS 28.849 | 3GPP TS 28.849 |
| TS 29.507 | 3GPP TS 29.507 |
| TS 29.510 | 3GPP TS 29.510 |
| TS 29.512 | 3GPP TS 29.512 |
| TS 29.513 | 3GPP TS 29.513 |
| TS 29.514 | 3GPP TS 29.514 |
| TS 29.525 | 3GPP TS 29.525 |
| TS 29.561 | 3GPP TS 29.561 |
| TS 29.594 | 3GPP TS 29.594 |
| TS 32.240 | 3GPP TR 32.240 |
| TS 32.255 | 3GPP TR 32.255 |
| TS 32.256 | 3GPP TR 32.256 |
| TS 32.257 | 3GPP TR 32.257 |
| TS 32.260 | 3GPP TR 32.260 |
| TS 32.271 | 3GPP TR 32.271 |
| TS 32.277 | 3GPP TR 32.277 |
| TS 32.279 | 3GPP TR 32.279 |
| TS 32.290 | 3GPP TR 32.290 |
| TS 32.291 | 3GPP TR 32.291 |
| TS 32.846 | 3GPP TR 32.846 |
| TS 32.847 | 3GPP TR 32.847 |
| TS 33.127 | 3GPP TR 33.127 |
| TS 33.128 | 3GPP TR 33.128 |
| TS 33.515 | 3GPP TR 33.515 |
| TS 33.928 | 3GPP TR 33.928 |