Description
A Call Detail Record (CDR) is a standardized, machine-readable log entry that captures the essential parameters of a service usage event within a 3GPP network. It is not a single, monolithic record but a family of record types defined for different services (e.g., MOC, MTC, SMS-MO, SMS-MT, GPRS) and generated by various network functions. The core network elements responsible for session and bearer management, such as the MSC Server for circuit-switched calls, the SGSN and GGSN for GPRS, or the MME, SGW, and PGW in the EPC, are the primary CDR generators. These nodes collect relevant information in real-time during the service instance and format it according to strict specifications defined in 3GPP TS 32.250 and related documents.
The architecture of CDR generation and handling involves several key components. The Charging Trigger Function (CTF), embedded within the network element (e.g., MSC, PGW), detects chargeable events and assembles the relevant charging information into a Charging Data Record. This CDR is then forwarded via a standardized interface (like Ga or Rf) to a Charging Data Function (CDF) in offline charging, or to an Online Charging System (OCS) in real-time scenarios. The CDR itself contains numerous fields, including but not limited to: the served party identifiers (MSISDN, IMSI), serving network identity, date and timestamps for session start and stop, duration, data volumes (uplink/downlink), QoS parameters applied, and identifiers for the specific service used. For roaming scenarios, the CDR will also contain Visited and Home PLMN identifiers.
Its role extends far beyond simple billing. CDRs are the primary source for post-processing systems that perform billing mediation, fraud detection, interconnect settlement with other operators, and detailed traffic analysis. The format and content of CDRs have evolved significantly from simple circuit-switched call logs to complex records encompassing IMS sessions, VoLTE calls, and massive IoT data transactions. The standardization ensures interoperability between network equipment from different vendors and between operators for roaming settlements. The processing of CDRs involves collection, correlation (e.g., matching a start record with its corresponding stop record), formatting for specific billing systems, and secure archival, forming the backbone of the operator's business support system (BSS).
Purpose & Motivation
The CDR exists to provide an accurate, auditable, and standardized record of service usage, which is indispensable for commercial telecommunications operations. Its primary purpose is to enable billing and charging, transforming network resource consumption into billable events for subscribers (postpaid) or for real-time credit control (prepaid). Without CDRs, operators would have no objective mechanism to charge for services, making commercial mobile networks financially unviable. It solves the fundamental problem of metering network usage in a multi-vendor, multi-operator environment.
Historically, the concept predates 3GPP, originating in fixed-line telephony (as referenced by ITU-T). In early mobile networks, the need became even more critical due to mobility, roaming, and a wider array of services beyond simple voice calls. The limitations of proprietary, non-standardized logging mechanisms were significant barriers to interoperability, especially for roaming where the home operator must bill its subscriber based on records generated by a visited foreign network. The 3GPP standardization of CDR formats, generation rules, and transfer protocols provided this essential common language.
Furthermore, CDRs address operational and business intelligence problems beyond pure billing. They provide the raw data for traffic engineering, network planning, fraud management (by detecting unusual calling patterns), and regulatory compliance (e.g., lawful interception logging). The evolution of CDRs to include detailed QoS parameters, location information, and service-specific attributes allows operators to implement sophisticated tariff plans, service quality guarantees, and new business models, making them a cornerstone of both network management and business operations.
Key Features
- Standardized format for interoperability across vendors and operators
- Generation triggered by chargeable events (session start, stop, volume threshold)
- Contains comprehensive service data (identities, timestamps, duration, volumes, QoS)
- Supports both offline (post-event billing) and online (real-time charging) scenarios
- Essential for roaming billing and interconnect settlement
- Serves as primary data source for billing mediation, fraud detection, and traffic analysis
Evolution Across Releases
Introduced the standardized CDR framework for 3GPP UMTS networks, defining core record types for circuit-switched (MSC) and packet-switched (SGSN, GGSN) domains. Established the basic structure, mandatory/optional fields, and the Ga interface for CDR transfer from the GPRS nodes to the charging gateway. Laid the foundation for correlating partial records (e.g., SGSN-CDR and GGSN-CDR for a single PDP context).
Defining Specifications
| Specification | Title |
|---|---|
| TS 21.905 | 3GPP TS 21.905 |
| TS 22.115 | 3GPP TS 22.115 |
| TS 22.121 | 3GPP TS 22.121 |
| TS 22.234 | 3GPP TS 22.234 |
| TS 22.950 | 3GPP TS 22.950 |
| TS 22.976 | 3GPP TS 22.976 |
| TS 23.039 | 3GPP TS 23.039 |
| TS 23.060 | 3GPP TS 23.060 |
| TS 23.125 | 3GPP TS 23.125 |
| TS 23.140 | 3GPP TS 23.140 |
| TS 23.167 | 3GPP TS 23.167 |
| TS 23.218 | 3GPP TS 23.218 |
| TS 23.222 | 3GPP TS 23.222 |
| TS 23.228 | 3GPP TS 23.228 |
| TS 23.682 | 3GPP TS 23.682 |
| TS 23.815 | 3GPP TS 23.815 |
| TS 23.851 | 3GPP TS 23.851 |
| TS 23.923 | 3GPP TS 23.923 |
| TS 24.229 | 3GPP TS 24.229 |
| TS 24.802 | 3GPP TS 24.802 |
| TS 26.891 | 3GPP TS 26.891 |
| TS 28.203 | 3GPP TS 28.203 |
| TS 28.204 | 3GPP TS 28.204 |
| TS 28.816 | 3GPP TS 28.816 |
| TS 28.843 | 3GPP TS 28.843 |
| TS 28.849 | 3GPP TS 28.849 |
| TS 29.333 | 3GPP TS 29.333 |
| TS 29.421 | 3GPP TS 29.421 |
| TS 32.240 | 3GPP TR 32.240 |
| TS 32.250 | 3GPP TR 32.250 |
| TS 32.251 | 3GPP TR 32.251 |
| TS 32.252 | 3GPP TR 32.252 |
| TS 32.260 | 3GPP TR 32.260 |
| TS 32.270 | 3GPP TR 32.270 |
| TS 32.271 | 3GPP TR 32.271 |
| TS 32.272 | 3GPP TR 32.272 |
| TS 32.273 | 3GPP TR 32.273 |
| TS 32.277 | 3GPP TR 32.277 |
| TS 32.278 | 3GPP TR 32.278 |
| TS 32.295 | 3GPP TR 32.295 |
| TS 32.296 | 3GPP TR 32.296 |
| TS 32.297 | 3GPP TR 32.297 |
| TS 32.298 | 3GPP TR 32.298 |
| TS 32.299 | 3GPP TR 32.299 |
| TS 32.808 | 3GPP TR 32.808 |
| TS 32.825 | 3GPP TR 32.825 |
| TS 32.846 | 3GPP TR 32.846 |
| TS 32.850 | 3GPP TR 32.850 |
| TS 32.869 | 3GPP TR 32.869 |
| TS 33.849 | 3GPP TR 33.849 |