Description
CSI GPRS, formally known as CAMEL Subscription Information for GPRS, is a critical component of the Customised Applications for Mobile networks Enhanced Logic (CAMEL) framework applied to packet-switched services. It is not the GPRS core network itself, but rather the subscription data and associated triggers that enable CAMEL-based service control for a subscriber's GPRS sessions. This information is stored as part of the subscriber's profile in the Home Location Register (HLR) or Home Subscriber Server (HSS) and is downloaded to the Serving GPRS Support Node (SGSN) when the subscriber attaches to the network.
The CSI GPRS data includes specific Detection Points (DPs) that act as triggers during a Packet Data Protocol (PDP) context activation or modification procedure. When the SGSN encounters a configured DP (e.g., DP PDP Context Establishment), it suspends the normal procedure and sends a CAMEL Application Part (CAP) message to a designated GSM Service Control Point (gsmSCP). This gsmSCP, which hosts the operator's intelligent service logic, can then influence the session in real-time. Based on its logic, the gsmSCP can instruct the SGSN to allow, deny, or modify the PDP context request. It can also apply specific charging instructions, such as connecting the data session to a CAMEL-based online charging system for real-time credit control, or apply gating functions to control which IP flows are permitted.
This mechanism allows for sophisticated, subscriber-specific handling of data services. For example, it can be used to implement prepaid data plans, where the gsmSCP monitors data volume in real-time and can terminate the session when credit is exhausted. It can enable sponsored data services, where traffic to specific Application Servers (APNs) is zero-rated. It also allows for service-aware policies, such as applying different QoS profiles or routing for different applications initiated by the same subscriber. The SGSN acts as the CAMEL Service Switching Function (gsmSSF) for GPRS, interfacing with the gsmSCP to execute this external control.
Purpose & Motivation
CSI GPRS was developed to extend the intelligent network (IN) capabilities of CAMEL, originally designed for circuit-switched voice calls, into the packet-switched domain of GPRS and later 3G/4G data services. Before its introduction, control and charging for data sessions were relatively static, based on subscription profiles in the HLR and local policies in the SGSN/Gateway GPRS Support Node (GGSN). This lacked the flexibility for real-time, interactive service control required for innovative data offerings like prepaid internet, content-based charging, and partner service integration.
Its creation was motivated by the commercial need for operators to deploy advanced, customizable data services that could be controlled dynamically from a central service logic platform. It solved the problem of applying complex, stateful service logic (like spending limit checks, time-of-day allowances, or application-specific policies) to inherently stateless IP data flows. By leveraging the established CAMEL architecture, it provided a standardized, vendor-interoperable way to introduce intelligent control, enabling new business models for mobile data in the 2.5G and 3G eras. It formed the basis for later Policy and Charging Control (PCC) architectures, bridging the gap between traditional IN and all-IP networks.
Key Features
- Defines CAMEL triggers for GPRS PDP context procedures
- Enables real-time interaction between SGSN (gsmSSF) and gsmSCP
- Supports CAMEL-based online charging for prepaid and real-time data services
- Allows gsmSCP to influence PDP context activation, modification, and termination
- Provides subscriber-specific service logic execution for packet data sessions
- Stored as part of the subscriber profile in HLR/HSS
Evolution Across Releases
Introduced CSI GPRS as part of CAMEL Phase 3, extending CAMEL control to GPRS/UMTS packet sessions. Defined initial Detection Points for PDP Context establishment and provided mechanisms for the gsmSCP to apply charging and gating control, establishing the foundation for intelligent packet data services.
Defining Specifications
| Specification | Title |
|---|---|
| TS 03.071 | 3GPP TR 03.071 |
| TS 21.905 | 3GPP TS 21.905 |
| TS 21.978 | 3GPP TS 21.978 |
| TS 22.060 | 3GPP TS 22.060 |
| TS 22.100 | 3GPP TS 22.100 |
| TS 22.112 | 3GPP TS 22.112 |
| TS 22.228 | 3GPP TS 22.228 |
| TS 22.234 | 3GPP TS 22.234 |
| TS 22.945 | 3GPP TS 22.945 |
| TS 23.018 | 3GPP TS 23.018 |
| TS 23.057 | 3GPP TS 23.057 |
| TS 23.060 | 3GPP TS 23.060 |
| TS 23.078 | 3GPP TS 23.078 |
| TS 23.107 | 3GPP TS 23.107 |
| TS 23.110 | 3GPP TS 23.110 |
| TS 23.119 | 3GPP TS 23.119 |
| TS 23.125 | 3GPP TS 23.125 |
| TS 23.141 | 3GPP TS 23.141 |
| TS 23.171 | 3GPP TS 23.171 |
| TS 23.207 | 3GPP TS 23.207 |
| TS 23.218 | 3GPP TS 23.218 |
| TS 23.221 | 3GPP TS 23.221 |
| TS 23.271 | 3GPP TS 23.271 |
| TS 23.278 | 3GPP TS 23.278 |
| TS 23.976 | 3GPP TS 23.976 |
| TS 23.979 | 3GPP TS 23.979 |
| TS 23.981 | 3GPP TS 23.981 |
| TS 24.228 | 3GPP TS 24.228 |
| TS 24.229 | 3GPP TS 24.229 |
| TS 24.623 | 3GPP TS 24.623 |
| TS 25.304 | 3GPP TS 25.304 |
| TS 25.305 | 3GPP TS 25.305 |
| TS 25.367 | 3GPP TS 25.367 |
| TS 25.413 | 3GPP TS 25.413 |
| TS 26.150 | 3GPP TS 26.150 |
| TS 26.346 | 3GPP TS 26.346 |
| TS 26.937 | 3GPP TS 26.937 |
| TS 26.946 | 3GPP TS 26.946 |
| TS 27.060 | 3GPP TS 27.060 |
| TS 28.655 | 3GPP TS 28.655 |
| TS 28.702 | 3GPP TS 28.702 |
| TS 28.708 | 3GPP TS 28.708 |
| TS 28.709 | 3GPP TS 28.709 |
| TS 29.119 | 3GPP TS 29.119 |
| TS 29.274 | 3GPP TS 29.274 |
| TS 31.111 | 3GPP TR 31.111 |
| TS 31.112 | 3GPP TR 31.112 |
| TS 32.102 | 3GPP TR 32.102 |
| TS 32.240 | 3GPP TR 32.240 |
| 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.273 | 3GPP TR 32.273 |
| 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.401 | 3GPP TR 32.401 |
| TS 32.622 | 3GPP TR 32.622 |
| TS 32.632 | 3GPP TR 32.632 |
| TS 32.652 | 3GPP TR 32.652 |
| TS 32.732 | 3GPP TR 32.732 |
| TS 32.752 | 3GPP TR 32.752 |
| TS 32.756 | 3GPP TR 32.756 |
| TS 32.808 | 3GPP TR 32.808 |
| TS 33.107 | 3GPP TR 33.107 |
| TS 33.108 | 3GPP TR 33.108 |
| TS 43.051 | 3GPP TR 43.051 |
| TS 43.129 | 3GPP TR 43.129 |
| TS 43.130 | 3GPP TR 43.130 |
| TS 43.318 | 3GPP TR 43.318 |
| TS 43.902 | 3GPP TR 43.902 |
| TS 44.060 | 3GPP TR 44.060 |
| TS 44.160 | 3GPP TR 44.160 |
| TS 44.318 | 3GPP TR 44.318 |
| TS 44.901 | 3GPP TR 44.901 |
| TS 45.903 | 3GPP TR 45.903 |
| TS 51.021 | 3GPP TR 51.021 |
| TS 52.402 | 3GPP TR 52.402 |