blob: a25f1600f9b213be88b7d4e9426c17b0c30c8f8c [file] [log] [blame]
Brian Waters13d96012017-12-08 16:53:31 -06001# This file contains information for configuring the rt_busypeers extension.
2# To find how to have freeDiameter load this extension, please refer to the freeDiameter documentation.
3#
4# The rt_busypeers extension has two purposes.
5# - when the local peer receives an error DIAMETER_TOO_BUSY from a peer,
6# this extension catchs this error and attempts to retransmit the query to another peer if it makes sense, i.e.:
7# * the peer issuing the error is not the peer referenced in the Destination-Host AVP of the message,
8# * we have a direct link with the peer that issued the error (see parameter RetryDistantPeers below)
9#
10# - When a request is forwarded by the local peer, start a timer and if the corresponding answer/error has
11# not been received within RelayTimeout seconds, either send to another peer or return a DIAMETER_TOO_BUSY
12# error, depending on the RetryMaxPeers parameter.
13#
14# This extension is mainly useful for Diameter agents, for Diameter clients it is recommended to
15# implement this logic directly in the client application.
16
17
18# Parameter: SkipTooBusyErrors
19# If defined, this parameter disables the handling of Diameter Errors message with a Result-Code set to DIAMETER_TOO_BUSY in this extension.
20# When this parameter is defined, the parameter RetryDistantPeer has no effect.
21# Default: parameter is not defined.
22#SkipTooBusyErrors;
23
24
25# Parameter: RetryDistantPeers
26# By default, the extension only retries to send messages if the peer that issued the DIAMETER_TOO_BUSY error is directly connected to
27# the local peer (not through a Diameter agent). This avoids the situation where the message is sent to a different relay that will deliver
28# to the same busy peer afterwards. If the parameter is defined, then the extension will also retry sending messages for errors generated in
29# distant peers. This should increase the chance that the message is delivered, but also can increase the load of the network unnecessarily.
30# Default: parameter is not defined.
31#RetryDistantPeers;
32
33
34# Parameter: RetryMaxPeers
35# This parameter specifies the limit on the number of times a request can be re-sent to a different peer, before the local relay gives up and
36# forwards the error to upstream.
37# Default: 0, meaning all possible candidates are attempted before give up.
38#RetryMaxPeers=0;
39
40
41# Parameter: RelayTimeout
42# If the value of this parameter is not 0, it specifies the number of milliseconds (1/1000 s) that the local relay waits for an answer to a
43# forwarded request before considering the remote peer is busy and taking corrective action (similar as if that relay had returned TOO_BUSY status).
44# Note: this parameter does not apply for requests issued locally. In that case, the extension issuing the request should directly specify the timeout.
45# Default: 0, meaning that there is no timeout parameter.
46#RelayTimeout=0;
47