[Asterisk-biz] Large Asterisk Setup (~500 Concurrent Calls +Scalability)

Leandro Tenorio leandro_tenorio at ciudad.com.ar
Wed Apr 20 13:52:35 MST 2005


	I'm sure that most of the Asterisk users in the list will not agree
we me, but in such large implementations, I prefeer to use a quite different
approach.
	In this kind of implementations I prefeer to use any TDM-VoIP
gateway (Quintum / Cisco / etc, there are a lot of them, even used equipment
for less than $6k, new ones cost like $12k with 4T1s/E1s) and then use
asterisk for extentions and all the services you want to provide.
	why, It's far more stable, easy to configure/maintain, and less pof
in a specific designed equipment than a server.
	I also suggest you to put two asterisk servers for services, user
registration, etc.

LTenorio



-----Original Message-----
From: asterisk-biz-bounces at lists.digium.com
[mailto:asterisk-biz-bounces at lists.digium.com] On Behalf Of Matt Roth
Sent: Wednesday, April 20, 2005 5:14 PM
To: Commercial and Business-Oriented Asterisk Discussion
Subject: [Asterisk-biz] Large Asterisk Setup (~500 Concurrent Calls
+Scalability)

List Members,

I am involved in the process of designing a large Asterisk setup for a call
center.  A graphical overview of our tentative design can be found
here:

http://home.comcast.net/~mroth01/LargeAsteriskSetup.gif

Originally, we planned to implement this design by purchasing one
multi-processor machine and putting multiple quad-span T1 cards (Wildcard
TE4xxPs) into it.  Through research, it was determined that the PCI bus
couldn't handle the digital signal processing (DSP) from more than one
quad-span card.

The goal of our new design is to offload the DSP to the Asterisk slave
servers, then route the calls via IAX2 trunks to the Asterisk master server.
The Asterisk master server will provide us with a centralized point for
queuing, digital recording, and music on hold, as well as configuration,
monitoring, and reporting.  Configuration of the Asterisk slave servers
would be limited to setting up extensions to terminate the incoming T1s and
setting up IAX2 trunks to the Asterisk master server.
These configurations would be rare, so the slave servers would be configured
manually on the boxes themselves.

Failover of the primary slave servers will be provided by backup slave
servers configured to mirror one or more of the primary slave servers'
extensions and IAX2 trunks.  The master server will be mirrored as well.  On
failure, automatic T1 switching is an option, but we would initially be
doing it manually.

Scalability is provided by adding machines to the slave server pool, up to
the point where the master server can no longer handle the call volume.

An example of a typical incoming call's flow follows:
- The call originates from the PSTN and reaches an inbound Asterisk slave
server via an inbound T1.
- The Asterisk slave server handles DSP and routes the call to the Asterisk
master server via an IAX2 trunk.
- The Asterisk master server handles queuing the call and eventually routes
it to a SIP phone via a SIP channel.

An example of a typical outgoing call's flow follows:
- The call originates from a SIP phone and reaches the Asterisk master
server via a SIP channel.
- The Asterisk master server routes the call to an outbound Asterisk slave
server via an IAX2 trunk.
- The outbound Asterisk slave server handles DSP and passes the call off to
the PSTN via an outbound T1.

Note that the master server must handle protocol bridging between IAX2 and
SIP, but will not have to do any transcoding because we can control the
codecs used on the servers and the SIP phones.  Digital recording as well as
monitoring, reporting, and configuration tasks will be offloaded to client
machines via mounted drives and the Asterisk Management API in order to
lessen the burden on the Asterisk master server.  The Asterisk master server
will also be responsible for opening a socket connection to an agent station
on each incoming call in order to pass the phone number that the call came
in on.

We have done a lot of research and were unable to find any documented cases
of a centralized design of this scale.  This is our preliminary design and
is apt to have a few holes, mistakes, and possibly deal-breaking oversights.
Please provide any opinions that you have on the overall feasibility of this
design as well as any hardware recommendations for each of the components or
suggestions for improving the overall scheme.  If you see any bottlenecks we
have overlooked, please point them out and give any suggestions for
circumventing them.
Any ideas on how large this system could be scaled would also be
appreciated.

I also have a question regarding DSP: Does outbound DSP (digital to
analog) require less processing than inbound DSP (analog to digital), and if
so by what ratio?

There is a spot on the wiki
(http://www.voip-info.org/wiki-Asterisk%20hardware%20recommendations)
regarding this size Asterisk setup, but it has not been addressed yet.
Hopefully, this will be the start of filling in that hole.

Thank you for your time,

Matthew Roth
http://voip-info.org/tiki-index.php?page=Running%20Asterisk%20on%20Debian
_______________________________________________
Asterisk-Biz mailing list
Asterisk-Biz at lists.digium.com
http://lists.digium.com/mailman/listinfo/asterisk-biz




More information about the asterisk-biz mailing list