Hardware: based on ESX host:
    4 core 2.1GHz processor (have 24 cores to play with)
    8GB Memory (have more as needed)
    CentOS 5.7 x84_64 (latest patches)
    MySQL 5.5.20 - Same VM and supplied by Oracle
FreeRadius 2.1.12-7 - complied here, with MySQL libraries for version 5.5.20

Limitations so far:
4 million dial-in potential users (16 million gets a bit slow - so looking for other improvements) In bound transaction rate (sustained mix of 1:1.5 of radius authentication:Radius accounting) 2048 Response time (so far and improving) < 500mS (current gains are from reworking MySQL data tables, structures, and indexes)

CPU utilisation is still low (as reported by VSphere) ~15% ie MySQL is running well, and so is FR. Packet loss increases to 10% 2.5K transactions/sec.

I am looking to use activeMQ to relieve some of the 3ggp (3ggp-Location etc.), add enrichment; and then ultimately manage quotas with overuse getting PoD.

The activeMQ is on another host (utilisation of the primary network interface isn't that high; but will be looking to use a second interface, or even using the radius VM to host the activeMQ queue, with an additional VM running quota management.

NB Quota is measured in credits, and other systems can charge credits - so there isn't a 'fixed' byte usage for radius accounting to count down. Also there is another system based on netflow managing nearer real time (well 5 minutes) actual data usage.

I've wanted to limit the number of threads, as if the activeMQ server fails, I don't want radius to fail (users shouldn't be penalised because of poor systems management/setup). It's all a bit too open ended for me to feel comfortable with this as a solution as it stands.

I'll be testing a local activeMQ server later today, with a view to either give it up as a bad idea, or to find some other way (postath database processing?).

My feeling is that I've yet to unleash the real power of FR; but it's far from obvious to me, as to how to improve MySQL performance with FR. Reading others: dumping MySQL (albeit in a MySQL configuration -> local file + reload) way seems the next step.

Simon

On 02/14/2012 07:20 AM, Alan DeKok wrote:
Simon Earthrowl wrote:
  FR 2.1.12-1 and 2.1.12-7, but also looked at 3.0.0.
I manage to get 2048 perl threads (assumed from /netstat -ap/ - as I'm
interfacing into Apache's ActiveMQ), then when I hit 2049 threads FR
crashes.
   See doc/bugs for how to deal with crashes.

   And 2K threads?  There's something wrong with your architecture if you
need that.  Your backend is VERY slow, or your load is too high, or
you've under-provisioned your machines.

   The biggest mistake is that you're talking about solutions, not
problems.  Using 2K threads is a solution.  Since you haven't specified
what the problem is, there may be OTHER solutions which work better.

   e.g. If you're doing something crazy like using 2K threads, the usual
response is "don't do that"

   Alan DeKok.
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Follow us on Twitter at  EseyeM2M
Surface mount embedded SIMs in stock - adapter kit available for testing in a 
SIM socket
"Smart Metering Technology of the Year Award 2012- Shortlisted'
Eseye Ltd , Company No:  06397669 - Surrey Technology Centre, Guildford, UK   
+44 1483 685200

-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to