FreeRADIUS performance information (tuning, benchmark)

Phil Mayers p.mayers at imperial.ac.uk
Tue Jul 24 14:49:27 CEST 2012


On 24/07/12 13:26, Andrei Petru Mura wrote:
> I'm running FreeRADIUS on a PC with a dual CPU of 2 GHz and 2 GB of RAM.
> It is working with PostgreSQL database.
> When I perform tests with radperf, running :
>
> radperf -s -f ../users.csv -p 800 -a pap 10.3.1.1 auth radiussomething
>
> where users.csv file contains 10000 user names with password, I get this
> output:
>
> Total succeeded   :  3811
>      Total failed      :  6189
>      Total no reply    :  0
>      Total time (s)    :  10.588
>      Packets/s         :  944
>      Response times:
> < 10 usec  : 0
> < 100 usec : 0
> < msec     : 0
> < 10 msec  : 1
> < 0.1s     : 3758
> < s        : 5897
> < 10s      : 344
> < 100s     : 0
> (the result is a good one taking in account the packets amount processed
> per second - related to more tests that I did).
> I would need a sever able to manage a much greater amount of users ( >
> 50000, up to 1000000). But for now I'm interested how to get the server
> working well with ~(50000<->100000) users.

The number of users isn't too important, I suspect.

What matters is the authentication rate (number of auths/sec) and the 
accounting rate (acct/sec).

You also need to ensure your SQL database can reply sufficiently 
quickly. This might depend on the number of users, since SQL query 
performance is a complex mixture of table size, indexing and load.

1000 auths/sec is quite a lot. It implies you need to perform 1000 SQL 
queries/sec (at LEAST).

Try this: convert your SQL users into a "users" text file, like so:

username	Cleartext-Password := "password"

...and disable SQL, then re-run the test. I think it will perform a lot 
better. If so, then you know that the bottleneck is SQL, and that you 
should focus your efforts there.

> What configuration do I need for this (I mean hardware configuration)?

You should really have >1 server, for resilience if nothing else.

If you are using SQL you will need fast disks, with a big cache.

> What are the best recommended improvements that should be done? Would
> JRadius module help on improving performance? (I'm not familiar about
> JRadius).

I seriously doubt it. Why do you think JRadius would help?


More information about the Freeradius-Users mailing list