[RADIATOR] Unexpected behavior with UseStatusServerForFailureDetect in AuthBy LOADBALANCE

Todor Genov todor.genov at mtnbusiness.co.za
Thu May 9 19:59:43 CDT 2013


P.S a worse scenario unfolds when the downstream host is responding to Auth (and Status-Server), but not to Accounting. In this case Accounting is still being load-balanced to the downstream host, but all requests enter an infinite re-transmit loop until they are accepted.

With high volumes of Accounting traffic and prolonged outages on the downstream host this can turn into a resource exhaustion DoS.

--
todor

Excerpts from Todor Genov's message of Fri May 10 01:33:15 +0200 2013:
> Hi,
> 
> I have found an issue where the "Retries" clause is ignored when using UseStatusServerForFailureDetect with "AuthBy LOADBALANCE".
> In a scenario where a downstream proxy becomes unresponsive requests enter a re-transmit loop until the next Status-Server keepalive detects the host has failed and only then requests are ignored.
> 
> To replicate use the following config:
> 
> <Realm DEFAULT>
>     <AuthBy LOADBALANCE>
>         Retries 3
>     RetryTimeout 1
>         UseStatusServerForFailureDetect
>     KeealiveTimeout 300
>     NoreplyTimeout 1
>         <Host localhost>
>             AuthPort 1822
>             AcctPort 1823
>         </Host>
>     </AuthBy>
> </Realm>
> 
> A single Access-Request is re-transmitted 300 ( KeepaliveTimeout/RetryTimeout ) times instead of 3. Once the request is eventually ignored the following can be seen in the logs: 
> 
> Fri May 10 01:19:33 2013: INFO: AuthRADIUS : Could not find a working host to forward a (76) after 301 seconds. Ignoring
> Fri May 10 01:19:33 2013: INFO: AuthRADIUS : No reply after 301 seconds and 3 retransmissions to 127.0.0.1:1822 for a (227)
> 
> When using the same config with "AuthBy RADIUS" the behavior is as expected and the request is re-transmitted only three times then ignored:
> 
> Fri May 10 01:08:41 2013: INFO: AuthRADIUS : Could not find a working host to forward a (1) after 4 seconds. Ignoring
> Fri May 10 01:08:41 2013: INFO: AuthRADIUS : No reply after 4 seconds and 3 retransmissions to 127.0.0.1:1822 for a (129)
> 
> Thanks.
> 


More information about the radiator mailing list