Description
The Charging Collection Function (CCF) is a critical component within the 3GPP charging architecture, specifically part of the Offline Charging System (OFCS). Its primary role is to act as a central collection point for Charging Data Records (CDRs) generated by various network functions (NFs) involved in a subscriber's session. These NFs include the Serving GPRS Support Node (SGSN), Gateway GPRS Support Node (GGSN), Call Session Control Function (CSCF), and later evolved nodes like the Mobility Management Entity (MME), Serving Gateway (S-GW), and Packet Data Network Gateway (P-GW). The CCF receives these CDRs via standardized interfaces, primarily using the Rf reference point based on the Diameter protocol.
Architecturally, the CCF sits between the network elements generating charging information and the Billing Domain (BD). Upon receiving CDRs, the CCF performs several key processing steps. First, it performs correlation, which involves linking multiple partial CDRs generated by different network nodes for a single subscriber session (e.g., a voice call or data session) into a single, coherent record. This is crucial because a session may traverse multiple network domains (e.g., access, core). The CCF uses correlation identifiers provided within the CDRs to perform this task accurately.
After correlation, the CCF formats and consolidates the records. It may apply validation checks to ensure data integrity and completeness. The processed and aggregated CDRs are then forwarded to the Billing Domain for rating, invoicing, and settlement. The CCF's operation can be session-based, where it collects records for the duration of a service, or event-based, for one-time transactions. Its design ensures reliability, often involving mechanisms to handle CDR storage, duplication detection, and guaranteed delivery to prevent revenue loss.
In the evolved 5G architecture, while the term CCF is less frequently used in its original form, its functional responsibilities are distributed and evolved within the Charging Function (CHF) as part of the 5G Charging Framework. However, the core principles of collection, correlation, and forwarding of charging information remain fundamental. The CCF's implementation is vital for supporting complex charging scenarios, including those for roaming, inter-operator settlements, and the detailed accounting required for service-based architectures and network slicing.
Purpose & Motivation
The CCF was created to address the growing complexity of charging in mobile networks, especially with the introduction of packet-switched data services in 3GPP Release 99 (UMTS). Prior circuit-switched systems had relatively straightforward charging models based on call duration. The advent of GPRS and later IP Multimedia Subsystem (IMS) services introduced multi-session, multi-service, and multi-operator scenarios where charging data was generated by numerous, geographically distributed network nodes. Without a centralized collection and correlation function, it would be nearly impossible to accurately reconstruct a complete billing record for a single user's activity, leading to billing errors, revenue leakage, and an inability to support advanced tariff models.
The CCF solved the problem of fragmented charging information. It provided a standardized, reliable mechanism to gather CDRs from all involved network functions, correlate them into a unified session record, and deliver them securely to the billing system. This enabled operators to implement detailed, accurate billing for new data services like internet browsing, video streaming, and IMS-based voice (VoIP). It also became foundational for inter-operator accounting in roaming scenarios, where charging data must be exchanged between home and visited networks.
Furthermore, the CCF's introduction formalized the offline charging architecture within 3GPP, separating the real-time charging control (handled by the Online Charging System) from the post-event billing data collection. This separation allowed for scalable, high-performance billing systems capable of handling the massive volume of CDRs generated in modern mobile networks. Its evolution has been driven by the need to support ever-more complex services, quality-of-service (QoS) differentiated charging, and ultimately the service-based architecture of 5G, where its functions are integrated into a more flexible Charging Function.
Key Features
- Centralized collection of Charging Data Records (CDRs) from multiple network functions
- Correlation of partial CDRs from different nodes into unified session records
- Reliable forwarding of formatted CDRs to the Billing Domain
- Support for standardized Diameter-based Rf interface for CDR delivery
- Validation and integrity checking of charging information
- Handling of both session-based and event-based charging data
Evolution Across Releases
Introduced the CCF as a core component of the Offline Charging System (OFCS) for UMTS/GPRS networks. It defined the initial architecture for collecting CDRs from SGSN and GGSN nodes via the Ga interface, focusing on correlation and forwarding for packet-switched data services.
Extended CCF functionality to support IMS (IP Multimedia Subsystem) charging. Introduced the Diameter-based Rf reference point for communication between IMS network elements (like CSCF) and the CCF, enabling detailed charging for multimedia sessions.
Enhanced CCF to support Policy and Charging Control (PCC) architecture. Integrated with the Policy and Charging Rules Function (PCRF) and evolved packet core nodes for more granular, service-aware charging based on QoS and service data flows.
In 5G, the traditional CCF's functions were absorbed and evolved within the new Charging Function (CHF) as part of the 5G Service-Based Architecture (SBA). The CHF combines offline and online charging capabilities, interacting with other Network Functions via service-based interfaces (e.g., Nchf).
Defining Specifications
| Specification | Title |
|---|---|
| TS 21.905 | 3GPP TS 21.905 |
| TS 23.066 | 3GPP TS 23.066 |
| TS 23.125 | 3GPP TS 23.125 |
| TS 23.205 | 3GPP TS 23.205 |
| TS 23.218 | 3GPP TS 23.218 |
| TS 23.234 | 3GPP TS 23.234 |
| TS 23.700 | 3GPP TS 23.700 |
| TS 23.804 | 3GPP TS 23.804 |
| TS 23.815 | 3GPP TS 23.815 |
| TS 23.958 | 3GPP TS 23.958 |
| TS 23.979 | 3GPP TS 23.979 |
| TS 24.229 | 3GPP TS 24.229 |
| TS 26.804 | 3GPP TS 26.804 |
| TS 28.849 | 3GPP TS 28.849 |
| TS 28.879 | 3GPP TS 28.879 |
| TS 29.078 | 3GPP TS 29.078 |
| TS 29.222 | 3GPP TS 29.222 |
| TS 29.234 | 3GPP TS 29.234 |
| TS 29.819 | 3GPP TS 29.819 |
| TS 31.115 | 3GPP TR 31.115 |
| TS 32.250 | 3GPP TR 32.250 |
| TS 32.254 | 3GPP TR 32.254 |
| TS 32.260 | 3GPP TR 32.260 |
| TS 32.272 | 3GPP TR 32.272 |
| TS 32.278 | 3GPP TR 32.278 |
| TS 32.280 | 3GPP TR 32.280 |
| TS 32.291 | 3GPP TR 32.291 |
| TS 33.122 | 3GPP TR 33.122 |
| TS 33.700 | 3GPP TR 33.700 |
| TS 33.790 | 3GPP TR 33.790 |
| TS 36.742 | 3GPP TR 36.742 |