[Freeswitch-users] Settings for maximum performance
Kristian Kielhofner
kris at kriskinc.com
Wed May 19 08:45:55 PDT 2010
On Wed, May 19, 2010 at 10:55 AM, Max Clark <max.clark at gmail.com> wrote:
> Hi all,
>
> We are evaluating FreeSWITCH as a replacement for our current
> commercial SBCs - before anyone points it out, we need a B2BUA for
> sane CDR generation (aka billing) and there is some ideas for future
> functionality that would leverage more of the FreeSWITCH platform.
>
> That being said we are currently forcing static IPs, disabling
> registration and presence and setting inbound-late-negotiation for the
> sip profiles. "Client" gateways are being authenticated using remote
> IP ACLs and a dial string prefix. The dialplan looks like this...
>
> http://dpaste.com/196561/
>
> The box in question has two Intel Xeon 5130 dual core processors w/ 4
> GB Ram (being upgraded, trying to figure out how much ram we should
> have). Disks are 4x 15k RPM SCSI in a Raid 10. Operating system is
> CentOS 5.4 x86_64.
>
> FreeSWITCH is being started with "-nc -nonat -waste".
>
> What things should we be looking at to squeeze as much performance as
> possible out of these boxes?
>
> Thanks,
> Max
Instead of using -waste on the CLI you should be setting the correct
ulimit parameters in your init script:
ulimit -c unlimited
ulimit -d unlimited
ulimit -f unlimited
ulimit -i unlimited
ulimit -n 999999
ulimit -q unlimited
ulimit -u unlimited
ulimit -v unlimited
ulimit -x unlimited
ulimit -s 240
ulimit -l unlimited
ulimit -a
Something like that, at least. It sounds like you've already done
most of this, but:
- Disable all NAT/STUN/etc handling in your profiles. Your FreeSWITCH
instance is not behind NAT (you can still detect NAT from your
endpoints)
- Check, check, double check your SIP profile settings. Session
timers? Comfort noise? TCP? Do you need these?
- Increase the maximum number of sessions and sessions per second in
switch.conf. Make sure the RTP port ranges "jive" with what your
network expects.
- Look at the timer test results when FreeSWITCH starts up. Make sure
its not working too hard just to maintain a timer.
- Disable any unneeded modules in modules.conf.
- Don't use proxy_media. You probably don't really want it.
- Use as many SIP profiles as you can (I believe each SIP profile runs
in its own thread).
- Make sure APIC, MSI/MSI-X, etc are all working. Make sure you've
got decent NICs and drivers loaded.
- Email consulting at freeswitch.org :)
--
Kristian Kielhofner
http://www.astlinux.org
http://blog.krisk.org
http://www.star2star.com
http://www.submityoursip.com
http://www.voalte.com
More information about the FreeSWITCH-users
mailing list