# Diameter Failure Handling Template Configuration Mode Commands

Diameter Failure Handling Template Configuration Mode is accessed from the Global Configuration Mode. This mode allows an operator to configure failure handling template that can be associated to different Diameter services.

IMPORTANT:

The commands or keywords/variables that are available are dependent on platform type, product version, and installed license(s).
end

Exits the current configuration mode and returns to the Exec mode.
Product:

All
Privilege:

Security Administrator, Administrator
Syntax

    end

Usage:

Use this command to return to the Exec mode.
exit

Exits the current mode and returns to the parent configuration mode.
Product:

All
Privilege:

Security Administrator, Administrator
Syntax

    exit

Usage:

Use this command to return to the parent configuration mode.
msg-type

This command specifies the failure handling behavior in the event of a communication failure with the prepaid server.
Platform:

ASR 5000

ASR 5500
Product:

GGSN, HA, HSGW, IPSG, PDSN, P-GW, S-GW, SAEGW
Privilege:

Security Administrator, Administrator
Syntax

    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 ] } | resp-timeout | tx-expiry } action { continue | retry-and-terminate | terminate }

    no 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 ] } | resp-timeout | tx-expiry }

no

Removes the configuration associated with the failure handling template.
{ 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 }
Defines the failure handling behavior based on the failures in the following request messages:

- Any request
- Authentication-Information Request through S6a or S13 Diameter interface
- Authorization Request through PDIF-EAP, STa, S6b, or Wm interface
- Check-Identity-Information-Request through S6a or S13 interface
- Credit-Control-Initial-Request (CCR-I) through Gx, Gy or Ty interface
- Credit-Control-Terminate-Request (CCR-T) through Gx, Gy or Ty interface
- Credit-Control-Update-Request (CCR-U) through Gx, Gy or Ty interface
- EAP request through Cx, PDIF-EAP, STa, S6b, or Wm interface
- EAP Termination request through Cx, PDIF-EAP, STa, S6b, or Wm interface
- Notify-Request through S6a or S13 interface
- Profile-Update-Request through Sh interface
- Purge-UE-Request through S6a or S13 interface
- Update-Location-Request through S6a or S13 interface
- User-Data-Request through Sh interface

failure-type { any | diabase-error | diameter result-code { any-error | result-code [ to end-result-code ] } | resp-timeout | tx-expiry }

Defines the failure handling behavior based on the different types of failure, for example, Diabase error or any error due to expiry of response timeout or Tx timer, etc.

result-code [ to end-result-code ]: result-code specifies the result code number, must be an integer from 3000 through 9999. end-result-code specifies the upper limit of a range of result codes. end-result-code must be greater than result-code.
action { continue | retry-and-terminate | terminate }
Configures the action to be taken in the event of a communication failure with the server from one of the following:

- continue – In the event of a failure the user session continues. DCCA/Diameter will make periodic request and/or connection retry attempts and/or will attempt to communicate with a secondary peer depending on the peer config and session-binding setting.
- retry-and-terminate – In the event of a failure the user session continues for the duration of one retry attempt with the server. If this retry attempt also fails, the session is terminated.
- terminate – In the event of a failure the user session is terminated.

Usage:

Use this command to specify the behavior in the event of a communication failure with the prepaid server. If there are different failure handling configurations present within the template for the same message type, the action is applied as per the latest error encountered.

Lookup is done first to identify if there is an exact match for message-type and failure-type. If not present, lookup is done for 'any' match for message and failure type.

That is, when there are multiple matches, it is preferred to find a match to a specifically configured value over a match to something configured with any or any-error. If there are multiple best matches, the one with a specifically configured msg-type over a match to msg-type any is preferred.
There are two levels of possible communication failure:

- The TCP connection failed
- DIAMETER routing failed to deliver a request or failed to receive a response.

The specified behavior is used for sessions when no behavior is specified by the server, such as by the CC-Failure-Handling AVP in DIAMETER messages. This command may be entered once for each type of message.
The following are the default action for Diameter result codes:

- For all protocol error codes 3000 to 3999, the default action is terminate. For all transient error codes 4000, 4001, 4004 to 4180, and 4182 to 4999, the default action is continue.
- For transient error codes 4002, 4003, and 4181, the default action is retry-and-terminate.
- For error code 4001, the default action is terminate.
- For permanent error codes 5000 to 5999, the default action is terminate.

Example:
The following command configures to terminate the session when the Diameter application encounters a failure due to Diabase error in the Credit-Control Initial Request (CCR-I) message:

    msg-type credit-control-initial
    failure-type diabase-error action terminate