RFC 4006

Diameter Credit-Control Application
Standards Track
August 2005
Abstract: The Diameter Credit-Control Application (DCCA) provides real-time credit control for various services. In 3GPP, it is the foundation for the Gy/Ro online charging interface and the Gx policy charging control interface.
Canonical source: https://www.rfc-editor.org/rfc/rfc4006  |  IETF Datatracker

1. Introduction

▶

DCCA enables real-time credit management for prepaid and postpaid services. The credit-control client (e.g., PGW, PCEF) requests credit from the credit-control server (OCS) before, during, and after service delivery.

In 3GPP, DCCA is used on the Gy interface (PGW/UPF to OCS) for online charging and adapted for the Gx interface (PCEF to PCRF) for policy and charging control.

2. Credit-Control Commands

▶
Command Code CC-Request-Type Description
CCR/CCA 272 INITIAL_REQUEST (1) Session start — reserve initial credit
CCR/CCA 272 UPDATE_REQUEST (2) Mid-session — request additional credit or report usage
CCR/CCA 272 TERMINATION_REQUEST (3) Session end — report final usage
CCR/CCA 272 EVENT_REQUEST (4) One-time event (SMS, MMS)

3. Credit-Control Flow

▶
  UE         PGW/PCEF              OCS (Credit Server)
|            |                        |
|  Service   |                        |
|  Request   |                        |
|----------->|                        |
|            |  CCR (INITIAL)         |
|            |  [Service-Id, Rating-  |
|            |   Group, Requested-    |
|            |   Service-Unit]        |
|            |----------------------->|
|            |                        |
|            |         CCA (2001 OK)  |
|            |   [Granted-Service-    |
|            |    Unit, Validity-Time]|
|            |<-----------------------|
|            |                        |
|  Service   |                        |
|  Granted   |                        |
|<-----------|                        |
|            |                        |
| (Usage...) |                        |
|            |  CCR (UPDATE)          |
|            |  [Used-Service-Unit,   |
|            |   Requested-Service-U] |
|            |----------------------->|
|            |         CCA (2001 OK)  |
|            |<-----------------------|
|            |                        |
| (Session   |  CCR (TERMINATION)     |
|  End)      |  [Used-Service-Unit]   |
|            |----------------------->|
|            |         CCA (2001 OK)  |
|            |<-----------------------|

4. Key AVPs

▶
AVP Code Description
CC-Request-Type 416 INITIAL/UPDATE/TERMINATION/EVENT
CC-Request-Number 415 Sequence number within session
Requested-Service-Unit 437 Credit amount requested (volume/time/events)
Granted-Service-Unit 431 Credit amount granted by OCS
Used-Service-Unit 446 Usage reported by client
Validity-Time 448 Time (seconds) the granted units are valid
Rating-Group 432 Service category for rating
Service-Identifier 439 Specific service ID

5. Security Considerations

▶
  • Credit-control messages contain sensitive billing data — transport MUST be secured
  • Replay attacks on CCR could cause double-charging — End-to-End ID provides protection
  • Credit-control server must enforce rate limiting to prevent credit exhaustion attacks
  • Session state must be synchronized between client and server to prevent billing discrepancies