FreeRADIUS can't make progress under certain load
rihad
rihad at mail.ru
Sun Sep 11 14:41:23 CEST 2011
On 09/11/2011 04:58 PM, Alan DeKok wrote:
> rihad wrote:
>> On 09/11/2011 01:58 PM, Alan DeKok wrote:
>>> Your Perl script is breaking the server. Fix it.
>> I know that. The auth& billing software we're using is admittedly slow.
> Then stop your complaints about FreeRADIUS. Don't change FreeRADIUS.
> It's fine.
>
>> But see how easy it was to lower max_requests and allow FreeRADIUS to
>> make progress on its own during load spikes (like when a NAS reboots).
> That is a bad solution, and one which makes the problem worse.
>
It's a working one. Just think of it: some of the new requests get
dropped because the server thinks it can't handle them right now: it has
already received max_requests req's during the past cleanup_delay seconds.
Doesn't my tweak do exactly this:
src/main/event.c can_handle_new_request():
/*
* FUTURE: Add checks for system load. If the system is
* busy, start dropping requests...
*
* We can probably keep some statistics ourselves... if
* there are more requests coming in than we can handle,
* start dropping some.
*/
?
>> PPPoE clients (most of which are ADSL modems) retry auth anyway. Noting
>> in radiusd.conf that max_clients shouldn't be set higher than the system
>> can process within cleanup_delay seconds might save some poor soul their
>> spare time in the future.
> I doubt that. Everyone else ensures that their system can handle the
> load.
>
>> Let me just quote Mr. Arran again:
>>> Your NAS is also behaving very strangely. FreeRADIUS only gives up on
>>> processing a request if a request with a duplicate ID, SRC IP, and SRC
>>> PORT but a different REQUEST AUTHENTICATOR is received.
>>>
>>> When a NAS retransmits it should use the same ID, SRC IP, SRC PORT and
>>> REQUEST AUTHENTICATOR.
>> By this it should be clear that it's not NAS resending unanswered auth
>> requests, but rather ADSL modems issuing _new_ requests.
> That doesn't matter, even if it was true.
>
> Pretty much every piece of equipment you have is horribly broken.
> Your solution is to break FreeRADIUS rather than the fix the equipment.
>
> Alan DeKok.
> -
> List info/subscribe/unsubscribe? See http://www.freeradius.org/list/devel.html
>
>
More information about the Freeradius-Devel
mailing list