Diameter Overload Control

This chapter describes the overview and implementation of Diameter Overload Control feature on ePDG and P-GW.

This chapter discusses the following topics for this feature:

Feature Description

Overview

This feature is implemented to support Overload Control on Diameter interfaces such as Gx, S6b and SWm and also to prevent network overload and outages. Whenever there is an overload condition at the Diameter Servers or DRA and request times out, the clients (ePDG/P-GW) are typically unaware of the overload condition and attempt to send the message on an alternate connection with the Diameter server causing some more traffic in the network. In order to handle this overload condition effectively, a new vendor-specific Diameter Experimental Result-Code 5198 (DIAMETER_OVERLOAD_RETRY_NOT_ALLOWED_TO_ANY) is defined.

When the overloaded PCRF/DRA receives a message, it includes the result-code 5198 in the response message. On receiving the experimental result-code, call is terminated based on the failure-handling configuration. If failure-handling is configured as local-policy, then the call is continued with local-policy without retrying the secondary server.

In Releases prior to 19, no indication was available to P-GW and ePDG when the Diameter Server or the DRA is overloaded. When a message sent to the primary link on Diameter is dropped or unanswered, P-GW/ePDG tried the same message on the secondary peer and resulted in the overloading of Diameter Server.

In 19 and later releases, the following changes are implemented to support Overload Control on Gx interface:

  • A new vendor-specific Diameter Experimental Result-Code 5198 (DIAMETER_OVERLOAD_RETRY_NOT_ALLOWED_TO_ANY) is added to indicate the overload state of PCRF.
  • When the failure handling template is not configured and if the Experimental Result-Code (5198) is received in CCR-U, then the current call is terminated.
  • If the Assume Positive feature is configured, the call is continued without retrying the secondary server.
  • The default action for Experimental Result-Code error (5198) is retry and terminate. Retry and terminate will be the failure handing action irrespective of the configured value.
  • New statistics are added to the output of show ims-authorization policy-control statistics command to display the number of times the Experimental Result-Code 5198 has been received. Separate statistics are also introduced to display the message level information.

To support Overload Control on S6b and SWm interfaces, the following changes are implemented:

  • A new vendor-specific Diameter Experimental Result-Code 5198 (DIAMETER_OVERLOAD_RETRY_NOT_ALLOWED_TO_ANY) is added to indicate the overload state of Diameter agent.
  • Failure handling template is introduced for S6b and SWm interfaces, and associated to AAA group authentication.
  • The default action for Experimental Result-Code (5198) is retry and terminate. For Diabase error, the failure-handling action will be retry and terminate irrespective of the configured value.
  • When the Experimental Result-Code (5198) is received and the failure-handling command is configured as continue , then call is continued without retrying the secondary server. The continue action is applicable only to aaa-custom15 dictionary.
  • When the Result-Code (5198) is received in DEA/AAA request, the call is terminated without the Session Terminate Request (STR) for S6b and SWm interfaces.
  • New statistics are added to the output of show diameter aaa-statistics to indicate the number of times the specific failure handling actions are applied through the failure-handling template.
  • When GGSN/P-GW receives the experimental result code 5198, the GTP cause code is mapped to NO_RESOURCES_AVAILABLE.

Relationships to Other Features

Diameter Overload Control feature interworks with Assume Positive feature. The failure handling action depends on the configuration of Assume Positive feature and Diameter Overload Control feature. If the Assume Positive feature is configured and Diameter Overload Control feature is enabled, the call is continued without retrying the secondary PCRF server.

Limitations

The following are the limitations of this feature:

  • It is assumed that the Diameter Agent (DRA or MRA on PCRF) should be able to identify that the servers within its own segment and in alternate segments are overloaded as well.
  • If the failure handling template is present, then the configuration to terminate the call on receiving the Experimental-Result-Code (5198) should be enabled. If the configuration is to retry and terminate, then the message is retried to the secondary server.
  • CLI command to not send terminate message should be configured under the failure handling template.
  • For S6b/SWm, for diabase error, the failure-handling action will be retry and terminate irrespective of the configured value.
  • For terminate wo-term-req will work only when Experimental-Result-Code (5198) is received. For rest, it will be treated as terminate.

Configuring Diameter Overload Control

The following sections provide the configuration commands to enable the Overload Control on Diameter Interfaces.

Defining Failure Handling Template

The failure handling template defines the action to be taken when the Diameter application encounters a failure supposing a result-code failure, Tx-expiry or response-timeout. The application will take the action given by the template.

The commands illustrated below define the failure handling template.

configure 
    failure-handling-template template_name 
         end 

Configuring Local Policy Parameters

The commands illustrated below configure the failure handling parameters. In support of the Diameter Overload Control feature, the without-retry keyword has been added to the failure handling template configuration to fallback to local-policy without retrying the secondary PCRF server.

configure 
    failure-handling-template template_name 
         msg-type { any | authentication info request | authorization-request | check-identity-request | credit-control-initial | credit-control-terminate | credit-control-update | eap-request | eap-termination-request | notify-request | profile-update-request | purge-ue-request | update-location-request | user-data-request } failure-type { any | diabase-error | diameter result-code { any-error | result-code [ to end-result-code ] } | diameter exp-result-code { any-error | result-code [ to end-result-code ] } | resp-timeout | tx-expiry } action { continue [ local-fallback [ without-retry ] | retry-server-on-event | send-ccrt-on-call-termination | without-retry ] | retry-and-terminate [ max-transmissions | without-term-req ] | terminate [ without-term-req ] } 
         end 

Notes:

  • without-retry : This keyword specifies to continue the session without retrying the secondary PCRF server, when in Assume Positive mode. By default, the Diameter message is retried to secondary PCRF before falling back to local-policy.
  • This keyword is introduced to support Overload Control on Diameter interfaces such as Gx, S6b and SWm and also to prevent network overload and outages. For more information on the commands used in this configuration, refer to the Command Line Interface Reference guide.

Associating Failure Handling Template

The commands illustrated below associate a configured failure handling template with the AAA group authentication application.

configure 
    context context_name 
         aaa group group_name 
              diameter authentication failure-handling-template template_name 
              end 

Notes:

  • failure-handling-template : Associates the failure handling template to the authentication interface. By default, the template is not associated in the AAA Group.
  • When the failure-handling-template is configured and the failure-handling CLI is also enabled in the AAA Group configuration, the template is given the higher preference.

Verifying the Diameter Overload Control Configuration

Use the following commands in Exec mode to display/verify the configuration of Diameter Overload Control feature.

show diameter aaa-statistics 
show ims-authorization policy-control statistics 

Monitoring and Troubleshooting the Diameter Overload Control Feature

This section provides information regarding show commands and/or their outputs in support of the Diameter Overload feature on the ePDG and P-GW.

show diameter aaa-statistics

The following statistics are added to the output of the show diameter aaa-statistics command to track the number of times the Experimental Result-Code (5198) is received from PCRF.

  • FH Behavior – Indicates the number of times the specific failure handling action is applied through the failure-handling-template.
    • Continue
      • With Retry
      • Without Retry
    • Retry and Terminate
      • Retry and Terminate
      • Retry Term without STR
    • Termination
      • Terminate
      • Terminate without STR
  • Diameter Overload Control Stats – Indicates the number of times the Result-Code 5198 is received in a message.
    • AAA
    • DEA

show ims-authorization policy-control statistics

The following statistics are added to the output of the show ims-authorization policy-control statistics command to track the number of times the Experimental Result-Code (5198) is received from PCRF.

  • Diameter Overload Control – Added under DPCA Experimental Result Code Stats
  • Diameter Overload Control Stats
    • CCA-Initial
    • CCA-Update
    • CCA-Terminate
  • Fallback – Added under FB Behavior statistics
  • Fallback Without Retry – Added under FB Behavior statistics

Debugging Statistics

When the Experimental-Result-Code 5198 is received, the call is terminated and the GTP cause code should be mapped to "No Resources Available".

Extension Header Flag: 0 
                                  Message Type: CREATE_SESSION_RSP 
EGTP-Packet: 
 CAUSE(2, 0): NO_RESOURCES_AVAILABLE 

Bulk Statistics for Diameter Overload Control Feature

Diameter Authentication Schema

The following statistics are included in the Diameter Authentication Schema in support of the Diameter Overload Control feature.

  • overload-ctrl-aaa
  • overload-ctrl-dea
  • fh-continue-retry
  • fh-continue-wo-retry
  • fh-retry-and-term
  • fh-retry-and-term-wo-str
  • fh-terminate
  • fh-terminate-wo-str

For descriptions of these variables, see the Statistics and Counters Reference guide.

IMSA Schema

The following statistics are included in the IMSA Schema in support of the Diameter Overload Control feature.

  • dpca-expres-overload-ctrl-ccai
  • dpca-expres-overload-ctrl-ccau
  • dpca-expres-overload-ctrl-ccat
  • dpca-ccfh-continue-lp-wo-retry

For descriptions of these variables, see the Statistics and Counters Reference guide.