3.2. PDP Context Deactivation Procedure
3.2.1. Technical Overview
The PDP Context Deactivation procedure is the session management procedure that terminates an established PDP context between the UE and the GGSN in a GPRS core network with the Gn/Gp architecture (TS 23.060 clause 9.2.4). TS 24.008 calls the UE the MS; this chapter uses the term UE throughout. The UE, the SGSN, or the GGSN can start the procedure (TS 23.060 clauses 9.2.4.1, 9.2.4.2, and 9.2.4.3). When the HLR requests the detach of a UE that has PDP contexts for emergency services, the SGSN also starts the procedure for each PDP context of the UE that is not for emergency services (TS 24.008 clause 6.1.3.4.2). The procedure releases the control-plane and user-plane tunnels of GTP over the Gn/Gp interface, releases the radio resources of the PDP context, updates or terminates the associated PCC session over the Gx reference point, stops the accounting of the PDP context over the Gi reference point, and releases a dynamically allocated PDP address. In Iu mode, the SGSN releases the RAB over the IuPs interface with the RAB Assignment procedure, and in A/Gb mode, the SGSN can instead run the packet flow context procedures with the BSS (TS 23.060 clause 9.2.4.1, steps 5 and 6). The procedure has these high-level effects:
- On the UE
-
The SM state of the UE moves from
PDP-ACTIVEtoPDP-INACTIVE-PENDINGwhen the UE sends the deactivation request (TS 24.008 clause 6.1.3.4.1), and toPDP-INACTIVE, in which no PDP context exists, when the deactivation completes (TS 24.008 clause 6.1.2.1). In Iu mode, the network releases the RAB of the PDP context, and in A/Gb mode, the UE and the network release the logical link locally if no other PDP context uses the logical link (TS 24.008 clause 6.1.3.4.1). After a successful deactivation, the UE releases the NSAPI and the TI of the PDP context, and can assign them to another PDP context (TS 24.008 clause 6.1.3.4). - On the SGSN
-
The SGSN removes the PDP context from its session tables, tells the RNC or the BSS to release the associated radio resources, and deletes the GTP tunnels with the GGSN over the Gn/Gp interface (TS 23.060 clause 9.2.4.1).
- On the GGSN
-
The GGSN removes its PDP context record and the bindings of the user-plane TEIDs of the PDP context, and stops the accounting collection over the RADIUS or Diameter. The GGSN notifies the PCRF of the termination of the PDP context, or of the termination of the IP Connectivity Access Network (IP-CAN) session when the PDP context is the last PDP context of the IP-CAN session (TS 29.212 Annex A.3.4 and A.3.5). If the UE used a dynamic PDP address that the GGSN allocated, and the PDP context is the last PDP context associated with this PDP address, the GGSN releases the PDP address and makes the address available to other UEs (TS 23.060 clause 9.2.4.1, step 3).
3.2.2. Call Flow
The call flow shows the UE-initiated variant of the procedure in Iu
mode, which TS 23.060 clause 9.2.4.1 shows in Figure 75; Figure 74 shows
the same procedure in A/Gb mode. TS 23.060 shows the SGSN-initiated
variant in Figure 76 (clause 9.2.4.2) and the GGSN-initiated variant in
Figure 77 (clause 9.2.4.3). Three parts of the call flow are optional:
the Diameter exchange over the Gx reference point, which the GGSN runs
only as the PCEF of dynamic PCC; the RADIUS accounting stop over the Gi
reference point, which the GGSN runs only if the GGSN sent a RADIUS
Accounting-Request (START) message for the PDP context (TS 29.061
clause 16.3.1); and the RAB release, which the SGSN runs only if a RAB
exists for the PDP context (TS 23.060 clause 9.2.4.1, step 5). The
figure shows the RADIUS Accounting-Response message after the Delete
PDP Context Response message because the GGSN does not wait for the
Accounting-Response message before the GGSN replies to the SGSN (TS
29.061 clause 16.3.1). The call flow omits the CAMEL procedure C1 of TS
23.060 clause 9.2.4.1, and it expands step 5 of Figure 75, Radio Access
Bearer Release, into the messages of the RAB Assignment procedure.
3.2.3. Step-by-Step Description
-
The UE starts the deactivation by sending a NAS SM
Deactivate PDP Context Requestmessage (TS 24.008 clause 9.5.14) to the SGSN through the radio access network. When the UE sends this message, the UE enters thePDP-INACTIVE-PENDINGstate and starts timer T3390 (TS 24.008 clause 6.1.3.4.1), whose value is 8 seconds (TS 24.008 Table 11.2c). The message identifies the PDP context by its TI and carries an SM cause, for example #36 "regular deactivation", #37 "QoS not accepted", or #25 "LLC or SNDCP failure (A/Gb mode only)" (TS 24.008 clause 6.1.3.4.1). If the UE deactivates all active PDP contexts that share the same PDP address and APN, the UE includes the Tear down indicator IE; the UE then deactivates the other PDP contexts locally, without peer-to-peer signaling (TS 24.008 clause 6.1.3.4). The UE also includes the Tear down indicator IE when the UE deactivates the PDP context that the PDP Context Activation procedure created (TS 23.060 clause 9.2.4.1, step 1), and a UE that supports S1 mode always includes the IE when the UE deactivates the default PDP context (TS 24.008 clause 6.1.3.4). The message can also carry the PCO (TS 24.008 clause 9.5.14.2). -
The SGSN checks the TI and sends a GTPv1-C
Delete PDP Context Requestmessage (TS 29.060 clause 7.3.5) to the GGSN over the Gn/Gp interface. The message tells the GGSN to release the control-plane and user-plane GTP tunnels of the PDP context that the NSAPI identifies. The GTP header carries the GGSN TEID for control-plane messages. The NSAPI is the only mandatory IE (TS 29.060 Table 11). The SGSN copies the Teardown Ind IE from theDeactivate PDP Context Requestmessage if the UE included it, and sets the Teardown Ind to "1" when the PDP context is the last PDP context of the PDN connection; with the Teardown Ind set to "1", the GGSN tears down all PDP contexts that share the PDN connection. The SGSN copies the PCO transparently from theDeactivate PDP Context Requestmessage, includes the User Location Information, which holds the CGI or the SAI of the UE, together with the ULI Timestamp, which records when the SGSN acquired the User Location Information, and includes the MS Time Zone if the MS Time Zone changed since the SGSN last reported it. If the SGSN sends the message because of a network problem, the SGSN includes the Cause IE, for example "Network Failure" (TS 29.060 clause 7.3.5). -
When the GGSN receives the request, and the GGSN acts as the PCEF of dynamic PCC, the GGSN sends a Diameter
Credit-Control-Request(CCR) message to the PCRF over the Gx reference point. The content of the message depends on whether other PDP contexts of the IP-CAN session stay active, because in GPRS an IP-CAN session ends only when the last PDP context of the IP-CAN session ends (TS 29.212 Annex A.3.5). If other PDP contexts stay active, the GGSN sends a CCR-U message, that is a CCR message with theCC-Request-TypeAVP set toUPDATE_REQUEST(2), and reports the PCC rules of the PDP context as inactive in theCharging-Rule-ReportAVP; when the PCRF performs the bearer binding, the GGSN also includes theBearer-IdentifierAVP and theBearer-OperationAVP set toTERMINATION(TS 29.212 clause 4.5.6 and Annex A.3.4). If the PDP context is the last PDP context of the IP-CAN session, the GGSN sends a CCR-T message, that is a CCR message with theCC-Request-TypeAVP set toTERMINATION_REQUEST(3) (TS 29.212 clause 4.5.7 and Annex A.3.5), which can carry the reason for the termination in theTermination-CauseAVP, for exampleDIAMETER_LOGOUT(1) (IETF RFC 6733 section 8.15). Both messages identify the Gx session by theSession-IdAVP and carry theCC-Request-NumberAVP. If the GGSN and the PCRF support the RAN-NAS-Cause feature, the GGSN includes the location of the UE in the3GPP-User-Location-InfoAVP and the time zone of the UE in the3GPP-MS-TimeZoneAVP, if available (TS 29.212 clauses 4.5.6 and 4.5.7). The GGSN also delivers the User Location Information and the UE Time Zone to the PCRF when the PCRF requested them (TS 23.060 clause 9.2.4.1, step 3). -
The PCRF acknowledges the request with a Diameter
Credit-Control-Answer(CCA) message to the GGSN over the Gx reference point. The message carries theResult-CodeAVP set toDIAMETER_SUCCESS(2001) (IETF RFC 6733 section 7.1.2), theCC-Request-TypeAVP with the same value as in the request, and theCC-Request-NumberAVP. In reply to a CCR-U message, the PCRF can make a new policy decision and, when the PCRF performs the bearer binding, move the PCC rules of the terminated PDP context to a remaining PDP context; the GGSN removes the PCC rules that the PCRF does not move (TS 29.212 Annex A.3.4). In reply to a CCR-T message, the PCRF only acknowledges the request, and the CCR-T and CCA-T exchange ends the Diameter Credit Control session of the IP-CAN session (TS 29.212 clause 4.5.7). -
If the GGSN sent an
Accounting-Request(START) message for the PDP context, the GGSN sends a RADIUSAccounting-Request(STOP) message to the external AAA server over the Gi reference point (TS 29.061 clauses 16.3.1 and 16.4.4). The GGSN can send oneAccounting-Request(STOP) message for each PDP context, primary or secondary, and the message carries the final usage counters of the PDP context, for example theAcct-Input-Octets,Acct-Output-Octets, andAcct-Session-Timeattributes. When the PDP context is the last PDP context of the IP-CAN session, the GGSN includes the 3GPP Vendor-Specific sub-attribute3GPP-Session-Stop-Indicator; the AAA server does not consider the IP-CAN session terminated until the AAA server receives this sub-attribute (TS 29.061 clause 16.2). -
The GGSN removes the PDP context from its session tables, releases the bindings of the user-plane GTP-U TEIDs, and releases the dynamic PDP address if the PDP context is the last PDP context associated with this PDP address (TS 23.060 clause 9.2.4.1, step 3). The GGSN then returns a GTPv1-C
Delete PDP Context Responsemessage (TS 29.060 clause 7.3.6) to the SGSN over the Gn/Gp interface. If the GGSN sent anAccounting-Request(STOP) message, the GGSN sends the response at once, without waiting for the RADIUSAccounting-Responsemessage (TS 29.061 clause 16.3.1). The GTP header carries the SGSN TEID for control-plane messages. The message carries the Cause, set to "Request accepted" (128), or to "Non-existent" (192) when the GGSN received the request for a PDP context that does not exist; in the second case, the GTP header carries the TEID value zero (TS 29.060 clause 7.3.6). The message can also carry the PCO (TS 29.060 Table 12). The User Location Information, the ULI Timestamp, and the MS Time Zone appear in this message only when the SGSN sends the response in the GGSN-initiated variant of the procedure (TS 29.060 clause 7.3.6). -
If the GGSN sent an
Accounting-Request(STOP) message, the external AAA server acknowledges the message with a RADIUSAccounting-Responsemessage to the GGSN over the Gi reference point. If the AAA server assigned the IP address of the UE, the AAA server can make the address available for assignment again after the AAA server receives anAccounting-Request(STOP) message for every PDP context of the IP-CAN session (TS 29.061 clause 16.2). -
When the SGSN receives the response, the SGSN removes the PDP context from its session database and sends a NAS SM
Deactivate PDP Context Acceptmessage (TS 24.008 clause 9.5.15) to the UE (TS 23.060 clause 9.2.4.1, step 4). The message carries the TI, and can carry the PCO, which the SGSN copies transparently from theDelete PDP Context Responsemessage (TS 29.060 clause 7.3.6). When the UE receives this message, the UE stops timer T3390 (TS 24.008 clause 6.1.3.4.1) and enters thePDP-INACTIVEstate for the PDP context that the TI identifies (TS 24.008 clause 6.1.2.1). -
In Iu mode, the SGSN releases the access stratum resources of the PDP context with the RAB Assignment procedure, if a RAB exists for the PDP context (TS 23.060 clause 9.2.4.1, step 5). The SGSN sends a RANAP
RAB Assignment Requestmessage to the RNC over the IuPs interface, with the RAB to release in the RABs To Be Released List IE (TS 25.413 clause 8.2). For each RAB, the message carries the RAB ID, which contains the NSAPI of the PDP context (TS 25.413 clause 9.2.1.2), and the Cause (TS 25.413 clause 9.2.1.4), which is typically "Normal Release" (83) for a regular deactivation. -
The RNC releases the radio bearers of the RAB and sends an RRC
Radio Bearer Releasemessage (TS 25.331 clause 10.2.30) to the UE over the Uu interface. The message tells the UE to release the RLC and PDCP entities of the radio bearers. The message carries the RRC transaction identifier and the RB information to release list, which holds the RB identity of each radio bearer to release, and can carry the RAB information to reconfigure list. -
The UE releases the radio bearers and returns an RRC
Radio Bearer Release Completemessage (TS 25.331 clause 10.2.31) to the RNC over the Uu interface, to confirm that the UE released the radio resources. The message carries the RRC transaction identifier. -
The RNC releases its local resources and returns a RANAP
RAB Assignment Responsemessage to the SGSN over the IuPs interface. The message carries the RAB ID of each released RAB in the RABs Released List IE, which confirms that the RNC released the transport resources of the PDP context (TS 25.413 clause 8.2).
3.2.4. Summary of Key Information Elements
The following table summarizes the key IEs of the main messages of the procedure, grouped by protocol.
| Protocol | Message | Key IEs |
|---|---|---|
NAS SM (TS 24.008) |
|
TI, SM cause, Tear down indicator, PCO |
NAS SM (TS 24.008) |
|
TI, PCO |
GTPv1-C (TS 29.060) |
|
TEID Control Plane (GTP header), NSAPI, Teardown Ind, PCO, User Location Information (CGI or SAI), ULI Timestamp, MS Time Zone, Cause |
GTPv1-C (TS 29.060) |
|
Cause ("Request accepted", 128, or "Non-existent", 192), TEID Control Plane (GTP header), PCO |
Diameter over Gx (TS 29.212) |
|
|
Diameter over Gx (TS 29.212) |
|
|
RADIUS over Gi (TS 29.061) |
|
|
RANAP (TS 25.413) |
|
RABs To Be Released List: RAB ID, Cause |
RANAP (TS 25.413) |
|
RABs Released List: RAB ID |
RRC (TS 25.331) |
|
RRC transaction identifier, RB information to release list (RB identity), RAB information to reconfigure list |
3.2.5. Possible Failures and Required Actions
The abnormal cases in this section come from TS 24.008 clause 6.1.3.4.3, the GTPv1-C Cause values come from TS 29.060 clause 7.7.1, Table 38, and the mapping from GTPv1-C Cause values to NAS SM Cause values comes from TS 29.060 Annex B, Table B.3.
- Expiry of timer T3390 or T3395
-
The node that starts the deactivation starts a supervision timer when the node sends the
Deactivate PDP Context Requestmessage: the UE starts timer T3390, and the network starts timer T3395 (TS 24.008 clauses 6.1.3.4.1 and 6.1.3.4.2). Both timers have a value of 8 seconds (TS 24.008 Tables 11.2c and 11.2d). If theDeactivate PDP Context Acceptmessage does not arrive before the timer expires, the node retransmits the request and restarts the timer, up to four times, so that the node sends the request five times in total. The nodes then act as follows:-
On each of the first four expiries, the node that started the deactivation retransmits the
Deactivate PDP Context Requestmessage and restarts timer T3390 or T3395. -
On the fifth expiry of timer T3390, the UE releases all resources that the UE allocated for the PDP context and erases the data of the PDP context.
-
On the fifth expiry of timer T3395, the network erases the data of the PDP context for that UE.
-
- Collision of UE-initiated and network-initiated deactivation
-
The UE and the network can each send a
Deactivate PDP Context Requestmessage before either node receives the request of the other node. In this case, the UE and the network each reply with aDeactivate PDP Context Acceptmessage, the UE stops timer T3390, and the network stops timer T3395 (TS 24.008 clause 6.1.3.4.3). - Network-initiated deactivation with reactivation requested
-
The GGSN or the SGSN can deactivate a PDP context and request that the UE re-establish the connectivity to the same APN at once. When the SGSN determines that a gateway relocation is desirable for the Selected IP Traffic Offload (SIPTO) function, the SGSN deactivates the PDN connection with the "reactivation requested" cause, and the UE then typically re-establishes the PDN connection to the same APN (TS 23.060 clause 9.2.4.2). The GGSN requests the reactivation with GTP Cause #6, "Reactivation Requested" (TS 29.060 clause 7.7.1, Table 38), and tears down all PDP contexts of the same PDN connection at the same time (TS 29.060 clause 7.3.5). In the GGSN-initiated variant, the nodes act as follows:
-
The GGSN sends a
Delete PDP Context Requestmessage to the SGSN with the Cause set to #6, "Reactivation Requested", and the Teardown Ind set to "1" (TS 29.060 clause 7.3.5). -
If the SGSN supports the Cause IE in this message, the SGSN maps GTP Cause #6 to SM Cause #39, "Reactivation requested", in the
Deactivate PDP Context Requestmessage that the SGSN sends to the UE (TS 29.060 clause 7.3.5 and Table B.3). -
When the UE receives SM Cause #39 for a PDP context that the UE activated with an APN, the UE stops timer T3396 if timer T3396 runs for that APN, and returns a
Deactivate PDP Context Acceptmessage. The UE then typically starts a new UE-initiated PDP Context Activation procedure for the same APN to restore the data connectivity, and also reactivates the other PDP contexts that the UE activated and that the network released in the same deactivation (TS 24.008 clause 6.1.3.4.2).
-
3.2.6. References
| Specification | Clauses and coverage |
|---|---|
TS 23.060 |
|
TS 24.008 |
|
TS 29.060 |
|
TS 29.061 |
|
TS 25.413 |
|
TS 25.331 |
|
TS 29.212 |
|
IETF RFC 6733 |
|