FreeBSD anyone?
Dusty Doris
freeradius at mail.doris.cc
Thu Nov 10 07:59:10 CET 2005
> Thanks for the advice.
Didn't get a change to get good numbers for you today, but here is at
least something.
I took a look at our records for today and we have about 70,000
entries, with only 1500 of them without a stop yet. I can't get a good
estimate at packets right now because I'm not sure how many updates we
receive.
But if I were to take a guess and say there is 1 update per user session
(very rough guess), then that puts us at about 210,000 packets in 24 hours
with 1 start, 1 update, and 1 stop. That makes our average about
2.5/second.
Now, there are probably at least a few more than 1 update, so that number
could be a bit higher. Also, our usage definately has big peaks during
certain times of the day. But, I'd guess that we don't hit much more than
20-30/second during those peaks.
>
> I've found that the performance problem goes away when I test with interim
> accounting records instead of start records.
>
> I haven't figured out why start records generate such a performance hit. Any
> ideas?
That seems odd to me. I don't have any ideas on that, looking at the
queries in sql.conf it seems to me that the accounting start should be
faster since it begins with just a plain insert vs the update starting
with an update that contains a where clause.
Do you have a my.cnf file tuning that db? I can't explain update vs
insert, but it could help with performance.
Did you tweak sql.conf or radiusd.conf either? Perhaps you could try
adjusting the num_sql_socks and connection_failure_retry_delay numbers in
sql.conf and the thread pool section of radiusd.conf.
Also, you can do many other things to help especially turning off radutmp.
I'd also comment out any other modules that aren't used. Actually read
tuning_guide in the doc dir, there are some good comments there.
Also, remember that the sql performance is going to be primarily dependant
on your configuration vs freeradius in general. For example, the CPU,
disk speed, ram, etc.. will have more of an influence than anything else.
> We're currently looking at radrelay. That sounds like a good idea.
Its been working great for us.
However, in the CVS head they now have sqlrelay which I'd definately
considering taking a look at. It does the same thing as radrelay, but
sends over sql queries to your db instead of radius packets. Might be
nice to not have to worry about an additional process (radiusd) on your
sql servers. I'll test it out one of these days if I ever get some spare
time.
-Dusty
More information about the Freeradius-Users
mailing list