GTPU Error Indication

Feature Summary and Revision History

Summary Data

Table 1. Summary Data

Applicable Product(s) or Functional Area

cnSGW-C

Applicable Platform(s)

SMI

Feature Default Setting

Enabled - Always-on

Related Documentation

Not Applicable

Revision History

Table 2. Revision History

Revision Details

Release

Support added for signal peer (error indication and configuration is signal peer)

2021.02.3

First introduced.

2021.02.1

Feature Description

cnSGW-C supports the UPF reported GTPU errors in Session Report Request. UPF reports different GTPU errors to CP (cnSGW-C) in PFCP Session Report Request message.

cnSGW-C supports the following report requests.

  • Error Indication Support (ERIR)

  • Graceful Termination (GTER)

  • Session Replacement (SRIR)

How it Works

This section describes how this feature works.

Error Indication Support

When cnSGW-C receives Error Indication with PFCP Session Report Request from UPF, it responds with PFCP Session Report Response and performs as per the configuration.

For cnSGW-C, signaling is based on configuration.

  • S1U - local purge or page-ue

  • S5U - local purge or peer signaling

Table 3. Error Indication Support (ERIR) Report Type

Interface

Configuration

TEID

Action

S1U

Local Purge

Default

Send SxSessionDeleteRequest to clean up on UPF

Purge locally

Dedicated

Send SxModReq (Remove Traffic Endpoint)

Purge locally

IDFT

Send SxMod (Remove IDFT Traffic Endpoint) - async

Purge Bearer locally

Page-UE

Default / Dedicated

Move UE to Idle state

Send Sx_Modification

_Request (Set FAR Action=BUFFER)

S5U

Local Purge

Default

Send SxDeleteSession

Purge locally

Dedicated

Send SxMod (Remove Traffic Endpoint)

Purge Bearer locally

Signal Peer

Default

Send SxMod (Drop) DBR/DSR, SxDelete

Dedicated

Send DBR/DBC (Async), SxMod (Remove Traffic Endpoint)

Default Bearer with s1u as local-purge Call Flow

This section describes Default Bearer with s1u as local-purge call flow.

Figure 1. Default Bearer with s1u as local-purge Call Flow
Table 4. Default Bearer with s1u as local-purge Call Flow Description

Step

Description

1, 2

Initial attach complete.

3, 4, 5

  • UPF sends Sx_Session_Report_Request with report type as ERIR and s1u TEID.

  • cnSGW-C responds with Sx_Session_Report_Response.

6, 7

cnSGW-C processes Sx_Session_Report_Request.

gtpuErrorInd:

s1u: local-purge

If TEID received is for default bearer, submit internal transaction (T2) to clean up bearer (No peer signaling).

  • Send Sx_Session_Deletion_Request.

  • UPF responds with Sx_Session_Deletion_Response.

Dedicated Bearer with s1u as local-purge Call Flow

This section describes Dedicated Bearer with s1u as local-purge call flow.

Figure 2. Dedicated Bearer with s1u as local-purge Call Flow
Table 5. Dedicated Bearer with s1u as local-purge Call Flow Description

Step

Description

1, 2

Initial attach complete.

3, 4, 5

  • UPF sends Sx_Session_Report_Request with report type as ERIR and s1u TEID.

  • cnSGW-C responds with Sx_Session_Report_Response.

6, 7

cnSGW-C processes Sx_Session_Report_Request.

gtpuErrorInd:

s1u: local-purge

If TEID received is for dedicated bearer, submit internal transaction (T2) to clean up bearer (No peer signaling).

  • Send Sx_Session_Modification_Request (Remove Traffic Endpoint).

  • UPF responds with Sx_Session_Modification_Response.

Dedicated Bearer (IDFT) with s1u as local-purge Call Flow

This section describes Dedicated Bearer (IDFT) with s1u as local-purge call flow.

Figure 3. Dedicated Bearer (IDFT) with s1u as local-purge Call Flow
Table 6. Dedicated Bearer (IDFT) with s1u as local-purge Call Flow Description

Step

Description

1, 2

Initial attach complete.

3, 4, 5

  • UPF sends Sx_Session_Report_Request with report type as ERIR and s1u TEID.

  • cnSGW-C responds with Sx_Session_Report_Response.

6, 7

cnSGW-C processes Sx_Session_Report_Request.

gtpuErrorInd:

s1u: local-purge

If TEID received is for dedicated bearer (IDFT), submit internal transaction (T2) to clean up bearer (No peer signaling).

  • Send Sx_Session_Modification_Request (Remove Traffic Endpoint).

  • UPF responds with Sx_Session_Modification_Response.

Default/Dedicated Bearer with s1u as page-ue Call Flow

This section describes Default/Dedicated Bearer with s1u as page-ue call flow.

Figure 4. Default/Dedicated Bearer with s1u as page-ue Call Flow
Table 7. Default/Dedicated Bearer with s1u as page-ue Call Flow Description

Step

Description

1, 2

SGW-UP sends Sx Session Report Req with type as ERIR to SGW service POD.

3, 4

SGW service POD sends Sx Session Report Res to SGW-UPF.

5, 6

PFCP-EP sends Sx Mod Req for all PDNs to SGW service POD.

PFCP-EP sends Sx Session Modification Req to SGW-UP.

7, 8

SGW service POD sends Downlink Data Notification Req to S11-GTP-EP.

S11-GTP-EP forwards Downlink Data Notification to MME.

9, 10

SGW-UP sends Sx session Modification Rsp to SGW service POD.

11, 12, 13

MME sends Downlink Data Notification Rsp Success to S11-GTP-EP.

S11-GTP-EP forwards Downlink Data Notification Rsp Success to SGW service POD.

SGW service POD sends CDL update to CDL endpoint when S-T2 transaction gets completed.

Default Bearer with s5u as local-purge/signal-peer Call Flow

This section describes Default Bearer with s5u as local-purge/signal-peer call flow.

Figure 5. Default Bearer with s5u as local-purge/signal-peer Call Flow
Table 8. Default Bearer with s5u as local-purge/signal-peer Call Flow Description

Step

Description

1, 2

Initial attach complete.

3, 4, 5

GTPU Error detected on UPF.

  • Sx_Session_Report_Request sent to cnSGW-C.

  • cnSGW-C responds with Sx_Session_Resport_Response.

6-11

cnSGW-C processes Session Report Request (ERIR).

If TEID is received for default bearer, submit internal transaction to clean up PDN (behavior depends on CLI configured).

CLI: sgw-profile config

If gtpuErrorInd:

s5u: signal-peer

  • Send Sx_Session_Report_Request to UPF to set (FAR ACTION=DROP).

  • Send Delete Bearer Req to MME.

  • Send Delete Session Request to PGW.

12

Send Sx_Session_Delete_Request to UPF.

13

UPF responds with Sx_Session_Delete_Response.

Dedicated Bearer with s5u as local-purge/signal-peer Call Flow

This section describes Dedicated Bearer with s5u as local-purge/signal-peer call flow.

Figure 6. Dedicated Bearer with s5u as local-purge/signal-peer Call Flow
Table 9. Dedicated Bearer with s5u as local-purge/signal-peer Call Flow Description

Step

Description

1, 2

Initial attach complete.

3, 4, 5

GTPU Error detected on UPF.

  • Sx_Session_Report_Request sent to cnSGW-C.

  • cnSGW-C responds with Sx_Session_Report_Response.

6, 7, 8, 9

cnSGW-C processes Session Report Request (ERIR). If TEID is received for dedicated bearer (s5u), submit internal transaction to clean up bearer.

CLI: sgw-profile config

If gtpuErrorInd:

s5u: signal-peer

  • Send Delete Bearer Req to MME.

  • Send Delete Bearer Command to PGW.

10

Send Sx_Session_Modification_Request (Remove Traffic Endpoint) to UPF.

11

UPF responds with Sx_Session_Modification_Response.

Graceful Termination

When UPF can't recover PDU session during SR/ICSR recovery, it sends PFCP session Report Request to cnSGW with type as Graceful Termination Report (GTER).

When UPF can't load session during session recovery, it sends a GTER indicating to clear up all the interfaces for this reported session.

Graceful Termination Call Flow

This section describes Graceful Termination call flow.

Figure 7. Graceful Termination Call Flow
Table 10. Graceful Termination Call Flow Description

Step

Description

1, 2, 3

Initial attach complete.

4-7

  • UPF sends Sx_Session_Report_Request with report type as GTER and TEID.

  • cnSGW-C responds with Sx_Session_Report_Response.

8-11

cnSGW-C processes Sx_Session_Report_Request and submits internal transaction (T2) to clean up PDN.

  • cnSGW-C sends Sx_Session_Modification_Request to set FAR Action=Drop.

  • UPF responds with Sx_Session_Modification_Response.

12-19

  • Send Delete Bearer Req to MME.

  • Send Delete Session Request to PGW.

20-23

  • Send Sx_Session_Delete_Request.

  • UPF responds with Sx_Session_Delete_Response.

Session Replacement

A Session Replacement (SRIR) is required when peer allocates same GTP-U TEID.

UPF sends SRIR report indicating to delete old session with same TEID. cnSGW-C uses GTPU path failure configuration for SRIR request processing.

Table 11. Session Replacement

Interface

Configuration

TEID

Action

S1U/S5U

Local Purge

Default

Send SxDeleteSession

Purge locally

Dedicated

Send SxMod (Remove Traffic Endpoint)

Purge Bearer locally

Signal Peer

Default

Send SxMod (Drop)

DBR/DSR

SxDelete

Dedicated

Send DBR/DBC (Async)

SxMod (Remove Traffic Endpoint)

IDFT

NA

NA

Send SxMod (Remove IDFT Traffic Endpoint)- async

Purge Bearer locally

Session Replacement for Default Bearer Call Flow

This section describes the Session Replacement (SRIR) for Default Bearer call flow.

Figure 8. Session Replacement for Default Bearer Call Flow
Table 12. Session Replacement for Default Bearer Call Flow Description

Step

Description

1, 2

Initial attach complete.

3, 4

  • UPF sends Sx_Session_Report_Request with report type as SRIR and TEID.

  • cnSGW-C responds with Sx_Session_Report_Response.

5–10

cnSGW-C processes Sx_Session_Report_Request, wrong Session Replacement uses GTPU path failure CLI for peer-signaling or local purge.

If TEID is received for default bearer, submit internal transaction (T2) to clean up PDN.

If CLI, gtpu-path-failure s1u/s5u signal-peer

  • Send Sx_Session_Report_Request to UPF to set FAR ACTION=DROP.

  • Send Delete Bearer Req to MME.

  • Send Delete Session Request to PGW.

11, 12

  • Send Sx_Session_Delete_Request

  • UPF responds with Sx_Session_Delete_Response.

Session Replacement for Dedicated Bearer Call Flow

This section describes the Session Replacement (SRIR) for Dedicated Bearer call flow.

Figure 9. Session Replacement for Dedicated Bearer Call Flow
Table 13. Session Replacement for Dedicated Bearer Call Flow Description

Step

Description

1, 2

Initial attach complete.

3, 4

  • UPF sends Sx_Session_Report_Request with report type as SRIR and TEID.

  • cnSGW-C responds with Sx_Session_Report_Response.

5–10

cnSGW-C processes Sx_Session_Report_Request, wrong Session Replacement uses GTPU path failure CLI for peer-signaling or local purge.

If TEID is received for dedicated bearer, submit internal transaction (T2) to clean up bearer.

If CLI, gtpu-path-failure s1u/s5u signal-peer

  • Send Sx_Session_Report_Request to UPF to set FAR ACTION=DROP.

  • Send Delete Bearer Req to MME.

  • Send Delete Session Request to PGW.

11, 12

  • Send Sx_Session_Modification_Request (Remove Traffic Endpoint)

  • UPF responds with Sx_Session_Modification_Response.

Feature Configuration

This section describes how to configure the GTPU Error Indication feature.

To configure this feature, use the following configuration:

config 
 profile sgw sgw_profile_name 
  gtpu-error-ind 
   s1u [ local-purge | page-ue ] 
   s5u [ local-purge | signal-peer ] 
   end 

NOTES:

  • s1u —S1-U interface.

  • s5u —S5-U interface.

  • local-purge —Locally purge the affected bearers or PDNs without informing peer.

  • page-ue —Reset to S1-Idle state and initiate paging for this UE.

  • signal-peer—Clear the affected bearers or PDNs with signaling towards peer.

Configuration Example

The following is an example configuration.

config
profile sgw sgw1
gtpu-error-ind s1u local-purge
gtpu-error-ind s5u signal-peer s1u local-purge
end

Conifguration Verification

To verify the configuration:

show running-config profile sgw gtpu-error-ind s1u local-purge
profile sgw sgw1
gtpu-error-ind s1u local-purge

OAM Support

This section describes operations, administration, and maintenance information for this feature.

Bulk Statistics

The following are statistics for PDN cleanup due to Error Report.

sgw_pdn_disconnect_stats{app_name="smf",cluster="Local",data_center="DC",instance_id="0",
pdn_type="ipv4",rat_type="EUTRAN",reason="s1u_gtpu_error",service_name="sgw-service"} 1
sgw_pdn_disconnect_stats{app_name="smf",cluster="Local",data_center="DC",instance_id="0",
pdn_type="ipv4",rat_type="EUTRAN",reason="s5u_gtpu_error",service_name="sgw-service"} 1
sgw_pdn_disconnect_stats{app_name="smf",cluster="Local",data_center="DC",instance_id="0",
pdn_type="ipv4",rat_type="EUTRAN",reason="s1u_gtpu_session_replacement",service_name="sgw-service"} 1
sgw_pdn_disconnect_stats{app_name="smf",cluster="Local",data_center="DC",instance_id="0",
pdn_type="ipv4",rat_type="EUTRAN",reason="userplane_requested_graceful_termination",service_name="sgw-service"} 1
sgw_service_stats{app_name="smf",cluster="Local",data_center="DC",fail_reason="",gr_instance_id="1",
instance_id="0",interface="interface_sgw_egress",reject_cause="",service_name="sgw-service",
sgw_procedure_type="s5u_gtpu_error_initiated_bearer_deletion",status="attempted",sub_fail_reason=""} 1
sgw_service_stats{app_name="smf",cluster="Local",data_center="DC",fail_reason="",gr_instance_id="1",
instance_id="0",interface="interface_sgw_egress",reject_cause="",service_name="sgw-service",
sgw_procedure_type="s5u_gtpu_error_initiated_bearer_deletion",status="success",sub_fail_reason=""} 1
sgw_service_stats{app_name="smf",cluster="Local",data_center="DC",fail_reason="",gr_instance_id="1",
instance_id="0",interface="interface_sgw_egress",reject_cause="",service_name="sgw-service",
sgw_procedure_type="s5u_gtpu_session_replacement_initiated_bearer_deletion",status="attempted",sub_fail_reason=""} 1
sgw_service_stats{app_name="smf",cluster="Local",data_center="DC",fail_reason="",gr_instance_id="1",
instance_id="0",interface="interface_sgw_egress",reject_cause="",service_name="sgw-service",sgw_procedure_type=
"s5u_gtpu_session_replacement_initiated_bearer_deletion",status="success",sub_fail_reason=""} 1
sgw_service_stats{app_name="smf",cluster="Local",data_center="DC",fail_reason="",gr_instance_id="1",
instance_id="0",interface="interface_sgw_ingress",reject_cause="",service_name="sgw-service",sgw_procedure_type=
"s5u_gtpu_error_initiated_bearer_deletion",status="attempted",sub_fail_reason=""} 1
sgw_service_stats{app_name="smf",cluster="Local",data_center="DC",fail_reason="",gr_instance_id="1",
instance_id="0",interface="interface_sgw_ingress",reject_cause="",service_name="sgw-service",sgw_procedure_type=
"s5u_gtpu_error_initiated_bearer_deletion",status="success",sub_fail_reason=""} 1
sgw_service_stats{app_name="smf",cluster="Local",data_center="DC",fail_reason="",gr_instance_id="1",
instance_id="0",interface="interface_sgw_ingress",reject_cause="",service_name="sgw-service",sgw_procedure_type=
"s5u_gtpu_session_replacement_initiated_bearer_deletion",status="attempted",sub_fail_reason=""} 1
sgw_service_stats{app_name="smf",cluster="Local",data_center="DC",fail_reason="",gr_instance_id="1",
instance_id="0",interface="interface_sgw_ingress",reject_cause="",service_name="sgw-service",sgw_procedure_type=
"s5u_gtpu_session_replacement_initiated_bearer_deletion",status="success",sub_fail_reason=""} 1

The following SGW ddn_stats_type is added for DDN initiated due to GTPU Error indication on S1u tunnel.

sgw_ddn_stats{app_name="smf",cluster="cn",data_center="cn",ddn_stats_type="gtpu_err_ind_triggered",
instance_id="0",service_name="sgw-service"} 2