Description
The Diameter Credit Control Application (DCCA) is a standardized protocol within the 3GPP architecture that provides a framework for real-time credit authorization and quota management. It operates as an application on top of the Diameter base protocol (RFC 6733), leveraging Diameter's reliable transport, failover mechanisms, and security features. DCCA defines specific command codes, Attribute-Value Pairs (AVPs), and state machines to facilitate communication between network elements that provide services (the Diameter clients) and a central credit control server (the Diameter server). This communication is crucial for implementing online charging systems (OCS) where service authorization must be granted in real-time based on the user's account balance or credit limit.
The core operation of DCCA revolves around a request-and-grant model for service units. When a user initiates a service (e.g., a data session, voice call, or SMS), the network element (e.g., P-GW, S-CSCF) acting as the Diameter Credit Control Client (CC-Client) sends a Credit-Control-Request (CCR) message to the Credit Control Server (CC-Server, typically part of the OCS). This request includes information such as the user's identity (e.g., IMSI, MSISDN), the requested service, and requested service units. The CC-Server evaluates the user's account, applies tariffing, and determines if credit is available. It then responds with a Credit-Control-Answer (CCA) message, either granting a quota of service units (e.g., data volume, time duration) or denying the request. The client then monitors the user's consumption against this granted quota.
As the user consumes the service, the CC-Client tracks usage. When the granted quota is exhausted or a threshold is reached, the client sends an intermediate CCR (UPDATE) to request additional units. Upon service termination, a final CCR (TERMINATION) is sent to report the total used units, allowing the server to debit the user's account accurately. This session-based, stateful interaction ensures precise, real-time billing. DCCA supports multiple service contexts simultaneously for a single user through different rating groups and service identifiers, allowing for complex tariff plans (e.g., separate quotas for voice, data, and premium content).
Key architectural components include the CC-Client, embedded in network function like the PCEF (Policy and Charging Enforcement Function) for data or the S-CSCF for IMS services, and the CC-Server within the OCS. The protocol defines several AVPs specific to credit control, such as CC-Request-Type, CC-Request-Number, Granted-Service-Unit, Used-Service-Unit, Validity-Time, and Multiple-Services-Credit-Control for handling multiple quotas. DCCA's role is integral to the 3GPP Online Charging System (OCS) architecture, providing the standardized signaling interface (Gy reference point) between the PCEF and OCS, and the Ro reference point for IMS online charging.
Purpose & Motivation
DCCA was created to address the critical need for a standardized, robust, and real-time credit control mechanism in evolving telecommunications networks, particularly with the rise of packet-switched services and prepaid business models. Prior to its standardization, proprietary protocols or adaptations of the RADIUS protocol were used for similar purposes. These solutions were often limited in scalability, lacked support for complex session-based services, and made interoperability between different vendors' network elements and billing systems difficult. The shift to all-IP networks and the introduction of rich, session-based services in 3G and later 4G/LTE demanded a more sophisticated approach.
The primary problem DCCA solves is revenue assurance for service providers offering prepaid and convergent charging services. It prevents revenue leakage by ensuring services are only rendered after confirming the user has sufficient credit or quota. It enables real-time control, allowing operators to offer 'pay-as-you-go' models for data, voice, and messaging, which are dominant in many global markets. Furthermore, DCCA supports advanced business models like spend-limit controls for postpaid users, quota-based service plans (e.g., daily data bundles), and real-time balance notifications. Its creation was motivated by the limitations of the older RADIUS-based mechanisms, which were stateless, had limited attribute space, and lacked the inherent reliability and security features of Diameter. DCCA, built on Diameter, provided a stateful, session-oriented, extensible, and more secure protocol designed for the complex charging scenarios of modern mobile networks.
Key Features
- Real-time credit authorization and quota management
- Stateful, session-based protocol for accurate usage tracking
- Support for multiple concurrent services per user via Multiple-Services-Credit-Control AVP
- Direct integration with the 3GPP Online Charging System (OCS) architecture
- Defines the standardized Gy (PCEF-OCS) and Ro (IMS-OCS) reference points
- Failover and failback mechanisms inherited from the Diameter base protocol
Evolution Across Releases
Introduced DCCA as the foundation for the 3GPP Online Charging System (OCS). It defined the core protocol for the Gy reference point between the Policy and Charging Enforcement Function (PCEF) and the OCS, enabling real-time credit control for packet-switched services in the EPS. Established the basic CCR/CCA message flow, key AVPs for quota management, and the session state model.
Defining Specifications
| Specification | Title |
|---|---|
| TS 32.251 | 3GPP TR 32.251 |
| TS 32.270 | 3GPP TR 32.270 |
| TS 32.271 | 3GPP TR 32.271 |
| TS 32.272 | 3GPP TR 32.272 |
| TS 32.276 | 3GPP TR 32.276 |
| TS 32.278 | 3GPP TR 32.278 |
| TS 32.281 | 3GPP TR 32.281 |
| TS 32.293 | 3GPP TR 32.293 |
| TS 32.869 | 3GPP TR 32.869 |
| TS 32.870 | 3GPP TR 32.870 |