Description
The Charging Gateway (CG) is a critical component within the 3GPP charging architecture, specifically defined as part of the Offline Charging System (OFCS). Its primary role is to function as a collection and forwarding point for Charging Data Records (CDRs) or Charging Data Function (CDF) sessions. Network elements that generate charging information, such as the Gateway GPRS Support Node (GGSN) in 3G, the Packet Data Network Gateway (P-GW) in 4G, or the Session Management Function (SMF) in 5G, are known as Charging Trigger Functions (CTFs). These CTFs send charging events to the CG using the Ga reference point, which is based on the Diameter base protocol with the 3GPP Charging Data (Charging Data, 32.299) application.
Architecturally, the CG sits between the CTFs in the network and the central billing domain or Billing System (BS). It receives CDRs from multiple CTFs, performing initial processing, temporary storage, and consolidation. A key technical function is the correlation of partial CDRs that belong to the same service session but may be generated by different network nodes or at different times. The CG ensures the integrity and sequence of these records before forwarding them in a batch to the Billing Domain via the Bx interface. The Bx interface typically uses a file-based transfer protocol like FTP or SFTP, carrying files formatted according to 3GPP TS 32.297 (Charging Data Record (CDR) file format and transfer).
Internally, the CG comprises several logical functions. It includes a Diameter stack for Ga interface communication, a CDR processing engine for validation and correlation, a reliable storage subsystem for holding CDRs before transfer (often with redundancy), and a file generation module for creating the final transfer files. It also handles error scenarios, such as retransmission of lost CDRs or notification of failures to the CTF. Its operation is governed by charging characteristics and profiles that dictate how records are to be handled for different subscribers or services.
In the broader 5G Service-Based Architecture (SBA), while the traditional CG as a standalone network element is still defined, similar functions can be integrated within the Charging Function (CHF) as part of the Converged Charging System (CCS). However, the CG remains vital in deployments where a clear separation is required between the real-time network functions and the offline, bulk-oriented billing systems. It provides a buffer, absorbing peaks in charging data generation and ensuring that transient issues in the billing domain do not impact the core network's ability to generate charging events, thereby maintaining both network performance and billing accuracy.
Purpose & Motivation
The Charging Gateway was created to address the fundamental business need for reliable and accurate subscriber billing in packet-switched mobile networks. As services evolved beyond simple voice calls to include GPRS, IMS, and rich data services, the volume and complexity of charging data exploded. Network elements like GGSNs were not designed to handle direct, reliable connections to potentially distant and heterogeneous billing systems. Sending CDRs directly from each network node posed significant risks: it could overload the billing system, cause data loss during network congestion, and require each node to implement complex file transfer and error-handling logic, increasing their cost and complexity.
Historically, before the standardization of the CG, operators faced challenges in consolidating charging data from numerous network elements. This led to unreliable data transfer, billing inaccuracies, and revenue leakage. The CG, introduced in 3GPP Release 8 as part of a matured offline charging framework, solved this by acting as a dedicated mediation layer. It abstracts the billing system from the network, allowing CTFs to use a simple, real-time Diameter protocol (Ga) to push records, while the CG assumes responsibility for the reliable, batched transfer to the billing domain using robust file-based mechanisms. This separation of concerns improves scalability and operational efficiency.
Furthermore, the CG enables critical functions like CDR correlation and pre-processing, which are essential for services that involve multiple network components (e.g., a video call using both access and IMS resources). By performing these functions centrally, it reduces the processing burden on individual CTFs and ensures a consistent, unified view of a subscriber's session for billing purposes. Its creation was motivated by the need for a standardized, carrier-grade solution to ensure revenue assurance as mobile networks became the primary platform for digital services.
Key Features
- CDR Collection via Ga Interface using Diameter protocol
- Reliable Storage and Forwarding of charging records to the Billing System
- CDR Correlation and Consolidation from multiple network sources
- File-Based Transfer to Billing Domain using Bx interface (e.g., FTP/SFTP)
- Error Handling and Retransmission mechanisms for failed CDR transfers
- Buffering and Load Balancing to protect billing systems from traffic spikes
Evolution Across Releases
Introduced the Charging Gateway as a standardized network function within the Offline Charging System (OFCS). Defined its initial architecture with the Ga interface (Diameter-based) for receiving Charging Data Records (CDRs) from CTFs like the GGSN, and the Bx interface for file-based transfer to the Billing Domain. Established its core capabilities for CDR collection, temporary storage, and reliable forwarding.
Defining Specifications
| Specification | Title |
|---|---|
| TS 29.234 | 3GPP TS 29.234 |
| TS 32.240 | 3GPP TR 32.240 |
| TS 32.251 | 3GPP TR 32.251 |
| TS 32.272 | 3GPP TR 32.272 |
| TS 32.273 | 3GPP TR 32.273 |
| TS 32.278 | 3GPP TR 32.278 |
| TS 32.295 | 3GPP TR 32.295 |
| TS 36.101 | 3GPP TR 36.101 |
| TS 36.300 | 3GPP TR 36.300 |
| TS 36.302 | 3GPP TR 36.302 |
| TS 36.306 | 3GPP TR 36.306 |
| TS 36.321 | 3GPP TR 36.321 |
| TS 36.331 | 3GPP TR 36.331 |
| TS 37.473 | 3GPP TR 37.473 |
| TS 38.212 | 3GPP TR 38.212 |
| TS 38.300 | 3GPP TR 38.300 |
| TS 38.321 | 3GPP TR 38.321 |
| TS 38.331 | 3GPP TR 38.331 |
| TS 38.473 | 3GPP TR 38.473 |
| TS 38.521 | 3GPP TR 38.521 |
| TS 38.825 | 3GPP TR 38.825 |
| TS 38.838 | 3GPP TR 38.838 |
| TS 38.863 | 3GPP TR 38.863 |
| TS 38.889 | 3GPP TR 38.889 |