Brian Waters | 13d9601 | 2017-12-08 16:53:31 -0600 | [diff] [blame] | 1 | # 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 | |