Description
The Session-Termination-Request (STR) is a specific Diameter command-code (275) defined within the Diameter base protocol (RFC 6733) and profiled extensively in 3GPP specifications for various interfaces. It is part of the Diameter session state machine and is used by a Diameter client or server to signal the intentional termination of a Diameter application session. In 3GPP contexts, these sessions often correspond to high-level service sessions like an IP Connectivity Access Network (IP-CAN) session in the Packet Data Network Gateway (PGW) or a Policy and Charging Control (PCC) session in the Policy and Charging Rules Function (PCRF).
The STR command is typically initiated by the node that is terminating the service (e.g., the PGW when a user detaches) and is sent to its peer Diameter node (e.g., the PCRF or Online Charging System). The command carries the Session-Id Attribute-Value Pair (AVP) to uniquely identify the session to be terminated. It also includes other relevant AVPs, such as the Termination-Cause AVP, which indicates the reason for termination (e.g., "DIAMETER_LOGOUT", "DIAMETER_SERVICE_NOT_PROVIDED", "DIAMETER_BAD_ANSWER"). Upon receiving an STR, the recipient must perform all necessary cleanup procedures associated with that session. This includes releasing any internally held resources, updating charging records, and revoking any active policy rules that were provisioned for the session.
The recipient of the STR must respond with a Session-Termination-Answer (STA) command. The STA confirms the session termination and may include final accounting data or other result information. This request-answer exchange ensures both sides of the Diameter dialogue have a synchronized view of session state, preventing resource leaks, billing errors, or stale policy enforcement. The STR/STA mechanism is essential for the reliable operation of online charging, policy control, and mobility management in 4G (EPC) and 5G core networks.
Purpose & Motivation
The STR command exists to provide a reliable, explicit, and standardized mechanism for session termination within the Diameter protocol framework. Prior to Diameter, protocols like RADIUS lacked robust session state management and explicit termination signaling, which could lead to issues such as "session staleness," where network resources remained allocated after a user had disconnected, or inaccurate charging where sessions were not properly closed. The Diameter protocol, and by extension the STR command, was designed to address these shortcomings for complex, stateful network services.
In 3GPP architectures, especially with the introduction of the Policy and Charging Control (PCC) framework, sessions became more complex, involving multiple network functions (PCRF, PCEF, OCS) that needed to coordinate state. An implicit session timeout was insufficient for accurate real-time charging and dynamic policy enforcement. The STR provides a deterministic signal that allows all involved nodes to synchronously perform final accounting calculations, apply any termination-triggered policies, and log the precise reason for session end. This is crucial for prepaid services, where the final deduction must be accurate, and for post-paid services where detailed session records are needed for billing.
Its introduction and profiling in 3GPP (notably from Release 11 onwards for interfaces like Gx, Gy, and S9) was driven by the need for greater reliability in LTE/EPC networks handling high-value data services. It solved the problem of ambiguous session endings, ensuring network resources are promptly freed and financial transactions are correctly settled, which is foundational for commercial mobile broadband operations.
Detected Changes Across Releases
from 3GPP Change RequestsSpecific changes extracted from the „Change history“ tables of 3GPP specifications (3 CRs across 2 releases). Complements the general historical overview above with the evidence-based evolution of this function.
Studied in Rel-11, normative work from Rel-15.
In Release 15, the STR (Session-Termination-Request) function itself is not explicitly detailed in the provided grounding context. The context and listed Change Request titles focus on other areas, such as providing clarifications and corrections for procedures like IP-CAN Session Establishment and the handling of parameters like Max-Requested-Bandwidth during session management over interfaces like Gx and Rx. Therefore, based solely on the given material, no new introduction specific to the STR function in Release 15 can be described.
In Release 17, the enhancement for the Session-Termination-Request (STR) function specifically involved enabling the retrieval of Network Provided Location information within a MESSAGE request, correcting a previous limitation. This update ensured that location information could be properly conveyed during session termination procedures over the relevant interfaces. The change was implemented to improve the accuracy and completeness of information exchanged during session termination events.
- Correction to enable retrieval of Network Provided Location information in a MESSAGE request TS 29.213CR0747
Explore further
Broader topics and technologies where STR plays a role.
Defining Specifications
3GPP specifications that define or reference STR, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TS 29.213 vj20 | PCC Signalling Flows and QoS Mapping | Rel-19 |
| TS 29.219 vj00 | Sy Reference Point Stage 3 Specification | Rel-19 |