4.2 Session State Maintenance
Online charging clients (CTFs) are expected to be proxy-compatible, thus capable of learning the OCS name from the Origin-Realm and Origin-Host of the answer to the session initiation request (for example, CCA-I). This OCS name should be used as the Destination-Realm and Destination-Host of all subsequent in-session requests originated by the online charging client. Online charging clients that are proxy-compatible allow OC-DRA to host-route in-session requests to an OCS. However, there are online charging clients that are not proxy-compatible. These online charging clients may omit the Destination-Host AVP from requests or include the Destination-Host AVP with the OC-DRA Diameter hostname.
In addition to non-proxy-compatible online charging clients, there may also be online charging servers (OCSs) that are not capable of learning the name of the online charging client that originated the session initiation request, but need to be for the purpose of sending re-authorization requests (RARs).
To support such online charging clients and servers and to ensure that in-session requests (for example, CCR-Us and CCR-Ts) are sent to the same online charging server that answered the session initiation request and re-authorization request (for example, RARs) messages are sent to the online charging client that originated the session initiation request, OC-DRA provides the capability to maintain session state based on configuration and message content.
Session state is only applicable when Session-based charging is used and does not apply to Event-based online charging. As such, session state only applies to Diameter messages used for session based charging, which include CCR-I/U/T, CCA-I/U/T, RAR and RAA messages. Event-based charging Diameter messages, CCR-E and CCA-E do not create sessions. Thus, session state is not maintained for these messages.
Given the varying capabilities of online charging clients and servers from various vendors, OC-DRA provides the ability to configure and maintain session state for selective clients and servers while not maintaining session state for clients and servers that are capable of learning server and client names from previous Diameter transactions. OC-DRA supports the Session State configuration settings.
Table 4-1 Session State Configuration Settings
Session State Setting | Scope | Description |
---|---|---|
No Messages | - | Session State is not maintained for any Gy/Ro sessions. |
All Messages | - | Session State is maintained for all Gy/Ro sessions. |
Specific Messages | Specific Realms | Session State is maintained for all sessions that are originated from an online charging client in a specific realm or being sent to an online charging server in the specific realm as configured in | .
Specific Clients | Session State is maintained for all sessions that are originated from specific online charging clients as configured in | .|
Specific Realms + Specific Client | Session State is maintained for all sessions that are originated from specific realms or specific online charging clients. | |
Specific Servers | Session State is maintained for all sessions that are destined to specific online charging servers as configured in | .|
Specific Realms + Specific Servers | Session State is maintained for all sessions that are originated from specific realms or destined to specific online charging servers. | |
Specific Realms + Specific Clients + Specific Servers | Session State is maintained for all sessions that are originated from specific realms or specific online charging clients or destined to specific online charging servers. |
OC-DRA relies on the SBR servers that may be local to the site or located remotely to store the session state information for the life of the session when session state is maintained for a Gy/Ro session. The session state table is keyed by the Diameter Session-Id, a long string that is defined by Diameter to be globally and eternally unique.
Table 4-2 Session State Information
Session State Information | Description |
---|---|
Session ID | Session Identifier from Session initiation request (CCR-I) Session-Id AVP |
CTF Realm | Online Charging Client Realm |
CTF Hostname | Online Charging Client FQDN |
OCS Realm | Online Charging Server Realm |
OCS Hostname | Online Charging Server FQDN |
Subscriber Identifier | Identification of the user that is going to access the service, for example, MSISDN |
Access Point Name | Access Point Name (APN) the user is connected to. |
Creation Time | The timestamp the session state was created in the Session SBR. |
Last Touch Time | The timestamp of when the session state was last accessed for CCR-U or RAR message processing. |
On receipt of an in-session request for a Gy/Ro session whose state is required to be maintained based on session state configuration and message content, OC-DRA replaces the in-session request Destination-Realm and Destination-Host with the OCS or CTF Realm and Host (depending on the direction of the Diameter request message) obtained from the session state associated with the received Session-Id maintained in the Session SBR before forwarding it to DRL for routing.
- or
- (if session is not associated with a configured Access Point Name)
All stale session states maintained in the Session SBR database are automatically removed by the Session Audit.