System information
although the underlying causes will be different. As loads increase, the system will have
increasing difficulty maintaining connections. For a PBX, such a situation is nothing
short of disastrous, so careful attention to performance requirements is a critical con-
sideration during the platform selection process.
Table C-1 lists some very basic guidelines that you’ll want to keep in mind when plan-
ning your system. The next section takes a close look at the various design and imple-
mentation issues that will affect its performance. Keep in mind that no guide can tell
you exactly how many calls a server can handle. There are an incredibly high number
of variables that can affect the answer to the question of how many calls Asterisk can
handle. The only way to figure out how many calls a server can handle is to test it
yourself in your own environment.
The size of an Asterisk system is actually not dictated by the number of
users or sets, but rather by the number of simultaneous calls it will be
expected to support. These numbers are very conservative, so feel free
to experiment and see what works for you.
Table C-1. System requirement guidelines
Purpose Number of channels Minimum recommended
Hobby system No more than 5 400-MHz x86, 256 MB RAM
SOHO system (small office/home office—
less than three lines and five sets)
5 to 10 1-GHz x86, 512 MB RAM
Small business system Up to 25 3-GHz x86, 1 GB RAM
Medium to large system More than 25 Dual CPUs, possibly also multiple servers in a distributed
architecture
With large Asterisk installations, it is common to deploy functionality across several
servers. One or more central units will be dedicated to call processing; these will be
complemented by one or more ancillary servers handling peripherals (such as a data-
base system, a voicemail system, a conferencing system, a management system, a web
interface, a firewall, and so on). As is true in most Linux environments, Asterisk is well
suited to growing with your needs: a small system that used to be able to handle all
your call-processing and peripheral tasks can be distributed among several servers when
increased demands exceed its abilities. Flexibility is a key reason why Asterisk is ex-
tremely cost-effective for rapidly growing businesses; there is no effective maximum or
minimum size to consider when budgeting the initial purchase. While some scalability
is possible with most telephone systems, we have yet to hear of one that can scale as
flexibly as Asterisk. Having said that, distributed Asterisk systems are not simple to
design—this is not a task for someone new to Asterisk.
640 | Appendix C: Preparing a System for Asterisk