CCR

Credit-Control-Request

Management →
Introduced in Rel-8 Also in: Core Network

CCR is a Diameter-based message used in 3GPP Policy and Charging Control to request credit authorization for a user's data session, enabling real-time charging and policy enforcement.

Category
Management
Introduced
Rel-8
Where
Services › Codecs
Also touches
1 segments
Specifications
17 specs
CCR Description Purpose Related Classification Specifications

Description

The Credit-Control-Request (CCR) is a fundamental Diameter command within the 3GPP Policy and Charging Control (PCC) architecture, specifically defined in the Diameter Credit-Control Application (DCCA) per RFC 4006 and adapted in 3GPP specifications. It is a request message sent by a Policy and Charging Enforcement Function (PCEF) or a Traffic Detection Function (TDF) to a Policy and Charging Rules Function (PCRF) to initiate, update, or terminate a credit-control session. The CCR message carries essential information such as the subscriber's identity (e.g., IMSI, MSISDN), service data flow information, requested QoS parameters, and usage reports, allowing the PCRF to make informed decisions on policy rules and charging.

In operation, when a user initiates a data session, the PCEF (typically residing in the PDN Gateway or GGSN) sends an initial CCR (CCR-Initial) to the PCRF to request policy and charging rules. The PCRF, possibly interacting with an Online Charging System (OCS) via the Sy reference point, evaluates the request against subscriber profiles and network policies. It then responds with a Credit-Control-Answer (CCA) containing the authorized policy and charging rules, which may include granted QoS, gating decisions, and charging information like quota allocations. During the session, the PCEF sends update CCRs (CCR-Update) to report usage (e.g., volume or time consumed) and request further authorization, and a termination CCR (CCR-Terminate) when the session ends to finalize charging.

The CCR message structure includes Attribute-Value Pairs (AVPs) that convey detailed session parameters. Key AVPs include the CC-Request-Type (indicating INITIAL_REQUEST, UPDATE_REQUEST, or TERMINATION_REQUEST), the CC-Request-Number for sequencing, Subscription-Id for user identification, QoS-Information for bearer characteristics, and multiple instances of the Used-Service-Unit AVP to report data, time, or service-specific usage. This granular data enables real-time, service-aware charging models such as volume-based, time-based, or event-based charging, and supports advanced policy enforcement like traffic shaping and service prioritization.

CCR's role extends beyond basic charging; it is integral to dynamic policy control. By reporting service data flow detection and usage in real-time, CCR allows the PCRF to adapt policies based on network conditions, subscriber tier, or application type. This facilitates features like sponsored data, zero-rating, and bandwidth on-demand. In deployments with Offline Charging, CCR may be used to report usage to the Offline Charging System (OFCS) via the Ga reference point, though its primary design is for online interactions. The message is transported over the Diameter protocol on the Gx reference point (between PCEF and PCRF) or the Sd reference point (between TDF and PCRF), ensuring reliable, secure, and standardized communication for PCC operations.

Purpose & Motivation

CCR was introduced to address the limitations of static, batch-oriented charging systems in earlier mobile networks (e.g., 2G/3G), which could not support real-time service control and flexible charging models required for evolving data services. Prior approaches, such as those based on CAMEL for prepaid services, were often circuit-switched focused and lacked integration with dynamic policy enforcement. The rise of packet-switched services and diverse data applications necessitated a mechanism for real-time credit authorization and policy decision-making to prevent revenue leakage, enable prepaid data plans, and allow operators to offer differentiated services.

The creation of CCR within the PCC framework in 3GPP Release 8 was motivated by the need for a standardized, online charging interface that could interact seamlessly with policy control. It solves the problem of managing subscriber quotas in real-time, ensuring that users do not exceed their credit limits while allowing continuous service. By decoupling charging from policy enforcement, CCR enables operators to implement complex business models, such as tiered pricing, application-specific charging, and promotional offers, without network downtime. It also supports convergence of prepaid and postpaid systems by providing a unified interface for online credit control.

Historically, without CCR-like mechanisms, operators struggled with post-session billing disputes and could not dynamically adjust services based on credit status. CCR's introduction, as part of the Diameter-based PCC architecture, provided a scalable, interoperable solution that underpins modern LTE and 5G networks. It addresses the critical need for immediate feedback on resource usage, facilitating not only charging but also network resource optimization and enhanced user experience through real-time policy adjustments.

Classification

Part ofPCRF
Related approachesPCEFOCS

Evolution Across Releases

Rel-8 Initial

Introduced CCR as part of the initial Policy and Charging Control (PCC) architecture in EPS. Defined the Diameter Credit-Control-Request command for online charging and policy enforcement between PCEF and PCRF over the Gx interface. Supported basic credit control for data sessions with INITIAL, UPDATE, and TERMINATION request types, enabling real-time quota management and dynamic policy rules.

Explore further

Broader topics and technologies where CCR plays a role.

Defining Specifications

3GPP specifications that define or reference CCR, with the latest known release. Sourced from the 3GPP document catalog — see methodology.

SpecificationTitleRelease
TS 26.818 vf00 Audio Media Profiles Test Results for VR Streaming Rel-15
TR 26.952 vj00 EVS Codec Selection, Verification & Characterization Rel-19
TR 26.976 vj00 AMR-WB Codec Characterization & Verification Rel-19
TR 26.978 vj00 AMR Noise Suppression Selection Phase Technical Report Rel-19
TS 29.212 vj00 Gx/Gxx/Sd/St Diameter Protocol Rel-19
TS 32.251 vj00 PS Domain Charging Management Rel-19
TS 32.260 vj10 IMS Charging Management Rel-19
TS 32.270 vj00 MMS Charging Management Specification Rel-19
TS 32.271 vj20 3GPP LCS Charging Management Spec Rel-19
TS 32.272 vj00 Charging for Push-to-Talk over Cellular (PoC) Rel-19
TS 32.273 vj00 MBMS Charging Management Rel-19
TS 32.276 vj00 VCS Online Charging from Proxy Function Rel-19
TS 32.280 vj00 Advice of Charge (AoC) Framework Rel-19
TS 32.293 vj00 Proxy Function in Domestic Service Provider Rel-19
TS 32.296 vj00 Online Charging System (OCS) Architecture Rel-19
TS 32.299 vj00 Diameter Charging Applications for 3GPP Rel-19
TS 32.825 va00 Study on Rc Reference Point for ABMF Rel-10
Patrick Zandl

About the author: Patrick Zandl (b. 1974)

Telecommunications specialist, technology journalist (founder of the Mobil server), and developer who has been running since 2025 — the largest Czech-language resource on AI-assisted programming. Formerly Chief Wizard Architect at Prusa3D and head of development for Turris at CZ.NIC; currently a consultant and instructor on AI implementation in companies.