Difference between revisions of "Softswitch performance"

From Kolmisoft Wiki
Jump to navigationJump to search
 
(115 intermediate revisions by 7 users not shown)
Line 1: Line 1:
It is important to note that simultaneous calls depends only on hardware you are using.
The system performance in ideal conditions (no extensive GUI usage and no transcoding):


==2009.02.06 550 sim. calls H323 ==
* 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


* [[H323 pass-through test]]
* 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.


==2008.03.01 1575 simultaneous calls (2049 channels)==
<br>
== Factors that influence softswitch performance ==  


* 2 x Quad-Core Xeon 5300 "clovertown"
* [[Recommended_hardware_for_MOR_server | Hardware specifications]] (CPU, RAM, HDD type - 5400/7200 rpm, SSD, SAS, Raid, NIC etc.)
* 4 Gb RAM
* Network (routers/switches)
* Debian 4.0
* Providers (connectivity, quality, PDD)
* 2.6.18-5-amd64 #1 SMP Tue Oct 2 20:37:02 UTC 2007 x86_64 GNU/Linux
* CPS (if you accept a lot of short calls at the same time (so called dialer or call center traffic), softswitch performance decreases)
* Asterisk 1.4.15
* Structure of call (signalling only or signalling with media)
* canreinvite=no*
* Processes, running on the same time (if you generate invoices, statistics or run other processes, softswitch performance decreases)
* ~15% calls with transcoding (~85% calls no transcoding)
* Additional functionality usage (if you record calls, use different IVR structures, softswitch performance decreases)
* '''CPU busy 83% (17% idle)'''
* Codec and protocol used
* Comments:
* Protocol and codec conversion (in case of transcoding performance decreases two times)
** why channels/2 != calls?
* Calls length (if you accept a lot of short calls at the same time (so called dialer or call center traffic), softswitch performance decreases)
** because not all of them was connected
* DB and GUI on same server or on the separate (if you separate DB and GUI, you can increase performance)
** and when the system is loaded the channels stats update slow
* SIP balancer present or not (if you use SIP balancer in front of the servers, you can increase performance)
** in that day we got to almost 3500 cc
* Business model (Calling Card, Callback and Call Center calls decreases softswitch performance)
** when you have a lot of invites, the system get very slow
* etc
** we got to 220 setup calls per second
<br>
** and the system was very havy
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?]
** in that load, your app was very good, however mysql become the bottlenack
** so i had to tweak it a little bit, but we already talked about it.
** with your app, from the time we installed, we already did more then 30M minutes.
** this setup can handle around 4k cc easly with no high rate cs per second


[[Image:asterisk1575.png|300 px]]
<br>


<br><br>
== Screenshots from real use cases ==
==2008.02.18 906 simultaneous calls (1801 channels)==


* 2 x Quad-Core Xeon 5300 "clovertown"
In all of the below examples, companies were using [[Recommended_hardware_for_MOR_server | recommended hardware]].  
* 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>
=== MOR, single server solution, Wholesale Transit business ===  
==2008.05.10 834 simultaneous calls ==


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


uname -a
'''Results''': up to 500 concurrent calls, up to 1500 call attempts per minute.
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
[[File:8.png]]
8 x Intel(R) Xeon(R) CPU          E5405  @ 2.00GHz
cpu MHz        : 2000.190
cache size      : 6144 KB


cat /proc/meminfo
[[File:9.png]]
MemTotal:      6229536 kB
<br><br>


asterisk -vvvvR
=== MOR, 4-servers solution, Wholesale Transit business === 
Asterisk 1.4.18.1, Copyright (C) 1999 - 2008 Digium, Inc. and others.


module show like mor
'''Implementation''': [[SIP_balancer | SIP balancer]], 3 Asterisk (MOR) servers and DB/GUI server.
app_mor.so                    MOR Billing Solution v0.6.0              0


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


[[Image:834calls.png|300 px]]
[[File:115_Load_Stats.png]]
 
[[File:115_Load_Statsatm.png]]
<br><br>




<br><br>
<br><br>


==2008.01.17 637 simultaneous calls (1274 channels)==
=== M2, 7-servers solution, Wholesale Transit business ===  


* 2 x Quad-Core Xeon 5300 "clovertown"
'''Implementation''': [[SIP_balancer | SIP balancer]], 5 Freeswitch (M2) servers and DB/GUI server.
* 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)'''


'''Results''': 6105 concurrent calls, up to 6400 call attempts per minute.
[[File:6105cc.png]]
<br><br>
<br><br>
==2008.01.17 608 simultaneous calls (1215 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*
* '''CPU busy 6.7% (93.3% idle)''' no transcoding
* CPU 30-35% with transcoding
[[Image:608calls.png|300 px]]


<br>
----
<br>


* canreinvite=yes means that voice traffic goes from client to provider directly bypassing MOR system
==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