To ensure efficient device failover to the backup/secondary application server, the
Unable to show "metadata-from": No such page "_space_variables"
uses the Address Reachability Service (ARS) to determine if the target server is reachable, providing the ability to "blacklist" a server IP address if it is found to be unreachable, as well as the ability to remove the server from the blacklisted state. ARS profiles can be created to configure blacklisting and recovery algorithm variants.
These ARS profiles can be assigned to the services section of a SIP trunk group to enforce the blacklisting and recovery of any SIP peer(s) associated with the trunk group. If no recovery algorithm is specified when configuring a SIP ARS profile, the recovery algorithm default values are used as indicated below:
recoveryAlgProbeDuration: 1 second
recoveryAlgProbeInterval: 1 second
recoveryAlgProbeMethod: sip-options
recoveryAlgProbeNumResponses: 1
recoveryAlgTimerDuration: 1 second
recoveryAlgorithm: probe
Traffic is shared across all
Unable to show "metadata-from": No such page "_space_variables"
Session Control Module (SCM) processes. For INVITE time outs, an IP Peer is blacklisted only when the same SCM process reaches the configured number of INVITE timeouts within the configured timeout duration.
For a single shot call scenario (i.e. lab testing), it may be necessary to gather additional timeouts to see an IP Peer get blacklisted. Once the peer is blacklisted, the same data is available across all SCM processes.
Similarly, when a peer is not blacklisted but is in the process of being blacklisted because of time outs, the 'show' command to check ARS Status may give inconsistent results depending upon the SCM process which responds first to the command.
Command Syntax
% set profiles services sipArsProfile <profile name>
blkListAlgRetryAfterType sip-503
blkListAlgTimeoutsDuration <1-3600>
blkListAlgTimeoutsNumTimeouts <1-3600>
blkListAlgTimeoutsType sip-invite
blkListAlgorithms <retryafter|timeouts>
failureResponseCodes <400-699 | all |all4xx | all5xx | all6xx>
midDialogArsScreenLevel <always | never | onlyIfNotBlackListDueto503>
recoveryAlgProbeDuration <1-3600>
recoveryAlgProbeInterval <1-600>
recoveryAlgProbeMethod sip-options
recoveryAlgProbeNumResponses <1-32>
recoveryAlgTimerDuration <1-3600>
recoveryAlgorithm <probe|timer>
Command Parameters
The SIP ARS Profile Parameters are as shown:
SIP ARS Profile Parameters
Parameter | Length/Range | Description |
---|
sipArsProfile
| 1-23 | <profile name> – The name of the SIP Address Reachability Service profile.
|
blkListAlgRetryAfterType
| N/A | Use to specify the SIP status code type which includes a 'Retry-After' value (currently, the only supported value is sip-503 ). sip-503 – When a SIP 503 message is received with Retry-After field from downstream server, this option puts that server into blacklist to prevent new call requests (SIP INVITEs) from retransmitting, and starts a Recovery Algorithm to recover the server from blacklist after the duration specified in the Retry-After header contained in the received SIP 503 message.
|
blkListAlgTimeoutsDuration
| 1-3600 | Duration (in seconds) in which the specified number of timeouts must occur. (default = 1). |
blkListAlgTimeoutsNumTimeouts
| 1-3600 | The number of timeout events for a single INVITE transaction (including any retransmissions) before black listing the address. (default = 1). |
blkListAlgTimeoutsType
| N/A | The timeout trigger type (currently, only sip-invite is available): sip-invite – Use SIP INVITE messages as a timeout trigger.
|
blkListAlgorithms
| N/A | Identifies blacklisting algorithm to use for this ARS Profile. Select one or both. retryafter – Use the blkListAlgRetryAfterType (trigger) as the blacklisting criteria.timeouts (default) – Use the timeout of the specified SIP message for blacklisting the server. The objects blkListAlgTimeoutsType , blkListAlgTimeoutsNumTimeouts , and blkListAlgTimeoutsDuration must also be specified.
|
failureResponseCodes | 400-699, or (all, all4xx, all5xx, all6xx) | Use this parameter to define one or more response codes to treat as failure responses. The options include the following: 400-699 – Enter a single code, or enter multiple codes within square brackets and separating each entry with a space. For example, [409 505 699]all – include all response codes from 400-699all4xx – include all 4xx response codesall5xx – include all 5xx response codesall6xx – include all 6xx response codes
INFO: When you use more than one value, enclose the values in square brackets [ ], separating each value with a space. Entering a value without using brackets appends the value to the existing configuration. NOTE: Ensure failureResponseCodes values for Path Check Profile and SIP ARS Profile within the same zone/trunk group use similar values to avoid unexpected behavior. For example, it is not advisable to set Path Check Profile failureResponseCode to "all " and SIP ARS Profile failureResponseCodes to "all4xx" and "all6xx" . See Path Check Profile (CLI). |
midDialogArsScreenLevel | N/A | Use this parameter to control when to apply ARS to a mid-dialog request. always – ARS is applied to all mid-dialog requests in a call.never (default) – ARS is not applied to mid-dialog requests.onlyIfNotBlackListDueto503 – ARS is applied to mid-dialog requests unless blacklist due to 503 is encountered.
|
recoveryAlgProbeDuration
| 1-3600 | Duration (in seconds) in which the specified number of responses must occur. (default = 1). |
recoveryAlgProbeInterval
| 1-600 | The probe interval value, in seconds. (default = 1). |
recoveryAlgProbeMethod
| N/A | Specifies the probe method (currently, only sip-options is available). |
recoveryAlgProbeNumResponses
| 1-32 | The number of consecutive responses to occur before removing an entry from the black list. (default = 1). |
recoveryAlgTimerDuration
| 1-3600 | Duration (in seconds) that the IP address remains blacklisted. (default = 1). |
recoveryAlgorithm
| N/A | The recovery algorithm to use once the peer is blacklisted. probe (default) – The ARS initiates an active "ping" to the blacklisted server until it gets a response. Once the number of consecutive responses are received as defined by the recoveryAlgProbeNumResponses parameter, the address is removed from the blacklist.timer – The ARS removes the entry for the blacklist after a configured duration.
|
Command Examples
The following example configures a SIP ARS profile named "ARSPROFILE1" using the various objects and parameters.
% set profiles services sipArsProfile ARSPROFILE1
blkListAlgorithms retryafter,timeouts
blkListAlgTimeoutsType sip-invite
blkListAlgTimeoutsNumTimeouts 45 blkListAlgRetryAfterType
sip-503
% set profiles services sipArsProfile ARSPROFILE1
blkListAlgTimeoutsDuration 34 recoveryAlgProbeDuration
546 recoveryAlgProbeInterval 78 recoveryAlgProbeMethod
sip-options recoveryAlgProbeNumResponses 6
recoveryAlgTimerDuration 456 recoveryAlgorithm probe
% show profiles services sipArsProfile
sipArsProfile ARSPROFILE1 {
blkListAlgorithms timeouts,retryafter;
blkListAlgTimeoutsType sip-invite;
blkListAlgTimeoutsNumTimeouts 45;
blkListAlgTimeoutsDuration 34;
blkListAlgRetryAfterType sip-503;
recoveryAlgorithm probe;
recoveryAlgTimerDuration 456;
recoveryAlgProbeMethod sip-options;
recoveryAlgProbeInterval 78;
recoveryAlgProbeNumResponses 6;
recoveryAlgProbeDuration 546;
}
To configure a single failureResponseCodes
value for a SIP ARS Profile:
% set profiles services sipArsProfile ARSPROFILE1 failureResponseCodes 404
To set multiple failureResponseCodes
values:
% set profiles services sipArsProfile ARSPROFILE1 failureResponseCodes [404 503 all6xx]
To delete a single failureResponseCodes
value:
% delete profiles services sipArsProfile ARSPROFILE1 failureResponseCodes all6xx
To delete all failureResponseCodes
values:
% delete profiles services sipArsProfile ARSPROFILE1 failureResponseCodes []