Difference between revisions of "Softswitch performance"

From Kolmisoft Wiki
Jump to navigationJump to search
 
(100 intermediate revisions by 7 users not shown)
Line 1: Line 1:
'''The number of simultaneous calls is limited only by the capabilities of your machine.'''
The system performance in ideal conditions (no extensive GUI usage and no transcoding):


* MOR single-server solution - up to 500 concurrent calls, up to 50 CPS (most of the time it's closer to 20).
* MOR [[Implementations | multi-server solution]] - up to 2000 concurrent calls, up to 100 CPS


* M4 single-server solution - up to 500 concurrent calls, up to 100 CPS
* M4 [[M4_System_Architecture | multi-server solution]]- up to 10 000 concurrent calls, up to 1000 CPS.


<br>
== Factors that influence softswitch performance ==


* [[Recommended_hardware_for_MOR_server | Hardware specifications]] (CPU, RAM, HDD type - 5400/7200 rpm, SSD, SAS, Raid, NIC etc.)
* Network (routers/switches)
* Providers (connectivity, quality, PDD)
* CPS (if you accept a lot of short calls at the same time (so called dialer or call center traffic), softswitch performance decreases)
* Structure of call (signalling only or signalling with media)
* Processes, running on the same time (if you generate invoices, statistics or run other processes, softswitch performance decreases)
* Additional functionality usage (if you record calls, use different IVR structures, softswitch performance decreases)
* Codec and protocol used
* Protocol and codec conversion (in case of transcoding performance decreases two times)
* Calls length (if you accept a lot of short calls at the same time (so called dialer or call center traffic), softswitch performance decreases)
* DB and GUI on same server or on the separate (if you separate DB and GUI, you can increase performance)
* SIP balancer present or not (if you use SIP balancer in front of the servers, you can increase performance)
* Business model (Calling Card, Callback and Call Center calls decreases softswitch performance)
* etc
<br>
See also: [http://blog.kolmisoft.com/how-do-you-select-a-softswitch-based-on-concurrent-calls/ How do you select a softswitch based on concurrent calls?]


==2008.02.18 906 simultaneous calls (1801 channels)==
<br>


* 2 x Quad-Core Xeon 5300 "clovertown"
== Screenshots from real use cases ==
* 4 Gb RAM
* Debian 4.0
* 2.6.18-5-amd64 #1 SMP Tue Oct 2 20:37:02 UTC 2007 x86_64 GNU/Linux
* Asterisk 1.4.15
* canreinvite=no*
* ~15% calls with transcoding (~85% calls no transcoding)
* '''CPU busy 58% (42% idle)'''
[[Image:asterisk906.jpg|300 px]]
[[Image:top906.jpg|300 px]]


<br><br>
In all of the below examples, companies were using [[Recommended_hardware_for_MOR_server | recommended hardware]].  
==2008.05.10 834 simultaneous calls ==


* Debian Etch
=== MOR, single server solution, Wholesale Transit business ===


uname -a
'''Implementation''': single server with 24 cores, GUI is not used almost at all.
Linux cl-t041-080cl 2.6.18-6-686-bigmem #1 SMP Sun Feb 10 22:21:07 UTC 2008 i686 GNU/Linux


cat /proc/cpuinfo
'''Results''': up to 500 concurrent calls, up to 1500 call attempts per minute.
8 x Intel(R) Xeon(R) CPU          E5405  @ 2.00GHz
cpu MHz        : 2000.190
cache size      : 6144 KB


cat /proc/meminfo
[[File:8.png]]
MemTotal:     6229536 kB


asterisk -vvvvR
[[File:9.png]]
Asterisk 1.4.18.1, Copyright (C) 1999 - 2008 Digium, Inc. and others.
<br><br>


  module show like mor
=== MOR, 4-servers solution, Wholesale Transit business ===  
app_mor.so                    MOR Billing Solution v0.6.0              0


'''Implementation''': [[SIP_balancer | SIP balancer]], 3 Asterisk (MOR) servers and DB/GUI server.


[[Image:834calls.png|300 px]]
'''Results''': 1200 concurrent calls,  1500 call attempts per minute.


[[File:115_Load_Stats.png]]


[[File:115_Load_Statsatm.png]]
<br><br>
<br><br>


==2008.01.17 637 simultaneous calls (1274 channels)==
* 2 x Quad-Core Xeon 5300 "clovertown"
* 4 Gb RAM
* Debian 4.0
* 2.6.18-5-amd64 #1 SMP Tue Oct 2 20:37:02 UTC 2007 x86_64 GNU/Linux
* Asterisk 1.4.15
* canreinvite=no*
* no transcoding
* '''CPU busy 10% (90% idle)'''


<br><br>
<br><br>
==2008.01.17 608 simultaneous calls (1215 channels)==


* 2 x Quad-Core Xeon 5300 "clovertown"
=== M2, 7-servers solution, Wholesale Transit business ===
* 4 Gb RAM
* Debian 4.0
* 2.6.18-5-amd64 #1 SMP Tue Oct 2 20:37:02 UTC 2007 x86_64 GNU/Linux
* Asterisk 1.4.15
* canreinvite=no*
* '''CPU busy 6.7% (93.3% idle)''' no transcoding
* CPU 30-35% with transcoding


[[Image:608calls.png|300 px]]
'''Implementation''': [[SIP_balancer | SIP balancer]], 5 Freeswitch (M2) servers and DB/GUI server.


<br>
'''Results''': 6105 concurrent calls, up to 6400 call attempts per minute.
----
<br>


* canreinvite=yes means that voice traffic goes from client to provider, directly bypassing the MOR system.
[[File:6105cc.png]]
<br><br>
<br><br>
==How can I increase the number of simultaneous calls?==


Easiest way to increase the number of simultaneous calls is to connect an additional Asterisk server to your current MOR server.


Other implementations which can help you to increase the number of simultaneous calls can be found [[Implementations | here]].
==See also==
* [[CPS_Limit | CPS Limit]]
* [[Recommended_hardware_for_MOR_server | Recommended hardware]]
* [http://blog.kolmisoft.com/how-do-you-select-a-softswitch-based-on-concurrent-calls/ How do you select a softswitch based on concurrent calls?]
* [[Performance Suggestions]]

Latest revision as of 13:56, 21 December 2023

The system performance in ideal conditions (no extensive GUI usage and no transcoding):

  • MOR single-server solution - up to 500 concurrent calls, up to 50 CPS (most of the time it's closer to 20).
  • MOR multi-server solution - up to 2000 concurrent calls, up to 100 CPS
  • M4 single-server solution - up to 500 concurrent calls, up to 100 CPS
  • M4 multi-server solution- up to 10 000 concurrent calls, up to 1000 CPS.


Factors that influence softswitch performance

  • Hardware specifications (CPU, RAM, HDD type - 5400/7200 rpm, SSD, SAS, Raid, NIC etc.)
  • Network (routers/switches)
  • Providers (connectivity, quality, PDD)
  • CPS (if you accept a lot of short calls at the same time (so called dialer or call center traffic), softswitch performance decreases)
  • Structure of call (signalling only or signalling with media)
  • Processes, running on the same time (if you generate invoices, statistics or run other processes, softswitch performance decreases)
  • Additional functionality usage (if you record calls, use different IVR structures, softswitch performance decreases)
  • Codec and protocol used
  • Protocol and codec conversion (in case of transcoding performance decreases two times)
  • Calls length (if you accept a lot of short calls at the same time (so called dialer or call center traffic), softswitch performance decreases)
  • DB and GUI on same server or on the separate (if you separate DB and GUI, you can increase performance)
  • SIP balancer present or not (if you use SIP balancer in front of the servers, you can increase performance)
  • Business model (Calling Card, Callback and Call Center calls decreases softswitch performance)
  • etc


See also: How do you select a softswitch based on concurrent calls?


Screenshots from real use cases

In all of the below examples, companies were using recommended hardware.

MOR, single server solution, Wholesale Transit business

Implementation: single server with 24 cores, GUI is not used almost at all.

Results: up to 500 concurrent calls, up to 1500 call attempts per minute.

8.png

9.png

MOR, 4-servers solution, Wholesale Transit business

Implementation: SIP balancer, 3 Asterisk (MOR) servers and DB/GUI server.

Results: 1200 concurrent calls, 1500 call attempts per minute.

115 Load Stats.png

115 Load Statsatm.png




M2, 7-servers solution, Wholesale Transit business

Implementation: SIP balancer, 5 Freeswitch (M2) servers and DB/GUI server.

Results: 6105 concurrent calls, up to 6400 call attempts per minute.

6105cc.png


See also