Alan
Did you get a chance to review the info I posted? Any ideas/thoughts
would be greatly appreciated.
Matt
On Wed, 2003-01-29 at 10:08, Matt Scifo wrote:
> On Wed, 2003-01-29 at 02:11, Alan DeKok wrote:
> > Matt Scifo <[EMAIL PROTECTED]> wrote:
> > > I didn't even think to look in /proc. I found the same thing. The
> > > threads were spawned according to /proc, yet the daemon is not reporting
> > > thread info in the debug output. Though that still doesn't explain the
> > > horrid numbers I'm seeing.
> >
> > The horrid numbers are due to something else blocking the server
> > (back-end database, disk IO, DNS, etc)
> >
>
> I assumed that was what the issue had to be. Yet I have tuned and
> stripped the server down to the bare minimum and am still seeing
> disappointing numbers.
>
> Let me tell you in more detail exactly how my configuration is set up so
> you can get a better idea about my concerns. As you can see from my
> configuration below, I am still receiving low numbers even when I have
> no back-end database, added disk IO do to writing detail records, and
> hostname lookups are off. Even with no accounting/authentication
> processing, I can never get more than 60 requests per/sec, which is
> disappointing on my hardware and stripped down configuration.
>
> Hardware: Quad Xeon 550mhz with 2g ram and 8g scsi disk
> Software: Redhat 8.0 running Freeradius 0.8.1
> Network: Full Duplex 100mb network
> Configuration: (I removed commented out sections)
>
> ######## BEGIN CONFIGURATION ##############
> prefix = /usr/local
> exec_prefix = ${prefix}
> sysconfdir = /etc
> localstatedir = /var
> sbindir = ${exec_prefix}/sbin
> logdir = ${localstatedir}/log/radius
> raddbdir = ${sysconfdir}/raddb
> radacctdir = ${logdir}/radacct
> confdir = ${raddbdir}
> run_dir = ${localstatedir}/run/radiusd
> log_file = ${logdir}/radius.log
> libdir = ${exec_prefix}/lib
> pidfile = ${run_dir}/radiusd.pid
> max_request_time = 30
> delete_blocked_requests = no
> cleanup_delay = 5
> max_requests = 100000
> bind_address = *
> port = 0
> hostname_lookups = no
> allow_core_dumps = no
> regular_expressions = yes
> extended_expressions = yes
> log_stripped_names = no
> log_auth = no
> log_auth_badpass = no
> log_auth_goodpass = no
> usercollide = no
> lower_user = no
> lower_pass = no
> nospace_user = no
> nospace_pass = no
> checkrad = ${sbindir}/checkrad
> security {
> max_attributes = 200
> reject_delay = 1
> status_server = no
> }
> proxy_requests = no
> $INCLUDE ${confdir}/proxy.conf
> $INCLUDE ${confdir}/clients.conf
> $INCLUDE ${confdir}/snmp.conf
> thread pool {
> start_servers = 100
> max_servers = 150
> min_spare_servers = 30
> max_spare_servers = 50
> max_requests_per_server = 0
> }
> modules {
> detail {
> detailfile = ${radacctdir}/detail-%Y%m%d
> detailperm = 0600
> }
> acct_unique {
> key = "User-Name, Acct-Session-Id, NAS-IP-Address, Client-IP-Address,
> NAS-Port-Id"
> }
> $INCLUDE ${confdir}/sql.conf
> expr {
> }
> }
> instantiate {
> expr
> }
>
> ## I have run tests with all of these enabled, a combination of them
> ## enabled, and even with none of them enabled.
> accounting {
> #acct_unique
> #detail
> #sql
> }
>
> post-auth {
> }
>
> ######## END CONFIGURATION ##############
>
>
>
> Here is debug output from one accounting request packet (with no
> accounting options enabled, hence the "Nothing to do" line)...
>
> rad_recv: Accounting-Request packet from host 66.81.1.206:46298, id=215,
> length=113
> Thread 33 assigned request 2362
> --- Walking the entire request list ---
> Thread 33 handling request 2362, (47 handled so far)
> Cleaning up request 2361 ID 214 with timestamp 3e3811f9
> Nothing to do. Sleeping until we see a request.
> User-Name = "mikem"
> Service-Type = Framed-User
> NAS-IP-Address = 203.63.154.1
> NAS-Port = 1234
> NAS-Port-Type = Async
> Acct-Session-Id = "00002206"
> Acct-Status-Type = Stop
> Called-Station-Id = "123456789"
> Calling-Station-Id = "987654321"
> Acct-Delay-Time = 0
> Acct-Session-Time = 1972
> Acct-Input-Octets = 20972
> Acct-Output-Octets = 30972
> Sending Accounting-Response of id 215 to 66.81.1.206:46298
> Finished request 2362
> Going to the next request
> Thread 33 waiting to be assigned a request
>
>
>
>
> Results from "top" during test shows that radiusd never uses more than
> 20% cpu...
>
> 10:01am up 22:18, 2 users, load average: 0.05, 0.06, 0.00
> 94 processes: 93 sleeping, 1 running, 0 zombie, 0 stopped
> CPU0 states: 0.1% user, 4.0% system, 0.0% nice, 94.0% idle
> CPU1 states: 5.0% user, 1.0% system, 0.0% nice, 92.0% idle
> CPU2 states: 2.0% user, 0.0% system, 0.0% nice, 97.0% idle
> CPU3 states: 3.0% user, 0.0% system, 0.0% nice, 96.0% idle
> Mem: 2064712K av, 175380K used, 1889332K free, 0K shrd, 40860K buff
> Swap: 1052248K av, 0K used, 1052248K free 91536K cached
>
> PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND
> 3536 root 15 0 1732 1732 776 S 14.2 0.0 0:01 radiusd
> <snip>
>
>
>
> I hope I have provided enough information to be useful. Are there any
> other thoughts you can bring to light that could explain this
> performance? I would appreciate any insight you or the other members of
> this list could offer.
>
>
> Matt Scifo
>
>
> -
> List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html