Asterisk VoIP News

Thursday, June 16, 2005

Paul Mahler: Asterisk Scalability

Paul Mahler from Signate is now discussing the scaling of Asterisk to thousands of calls:

The main topic will be performance and how you measure it, as well as reliability and scaling up to and including the hardware and configuration.

Asterisk can be grown to any size you like. There is no limit to how large you can make an Asterisk system.

Use faster servers
Use more servers
Use external devices

They used SIPP to do the load testing. Asterisk has now outgrown this test suite, and they are looking at using Asterisk to load test Asterisk in the future. You can find information on the benchmarking suite on their website.

The Dell 750 test machine was a 2.8Ghz P4, RHEL 3, 2GB RAM, SATA, 800Mhz front side bus and a SATA drive.

The Signate Telephony Server 5000 uses 1.4Ghz Itanium, 2GB RAM, NUMA Bus, SATA drive, RHEL3.

They did two benchmarks, taking voicemails and simultaeneous SIP calls.

The source for the benchmark is in XML format.

They used the the milliwatt test to provide audio on bridged SIP calls.

They received the following results:

47 Simultaneous VoiceMail messages
333 Simultaneous SIP Calls
122 Pass through calls
Slightly less than 47% CPU Utilisation

Their Telephony Server 5000 is not an intel based PC, uses 64 bit Asterisk.

Single 2U Chassis
1 or 2 CPUs
NUMA Bus 6.4Gbps
4 PCI/PCI-X slots (3 available)
DVD
SATA or SCSI drives
2 to 24 GB Memory
Gigabit ethernet

They were able to get 4997 calls with the series 1 or passthrough ~2500 calls. At this stage, SIPP fell appart. This is the reason they would like to develop a new benchmarking suite based on Asterisk.

They think that with these figures Asterisk will outshine any other system.

The other option is to cluster your Asterisk boxes (I.E. Asterisk server farm).

Using external devices such as gateways and routers so that the load is passed off from Asterisk, allowing it to only do the call switching.

Reliability =< use more servers, fewer boards per server, external gateways, routers.

Use standard Asterisk and Linux.