I’m currently using g.729 codec which apparently uses 31.2 Kbps
If my bandwidth is unmetered with an upLink of 1000Mbps how many concurrent calls can I make?
Base on the above, i should be able to call ~32,000 concurrent calls
but from my understanding asterisk uses port 10,000 - 20,000 and each calls takes 2 ports:
1 incoming and 1 outgoing so each asterisk machine can technically call 5000 correct me if im wrong?
Can this be increased?
this is what i dont know…
how many concurrent call is recommended for each core at which speed?
Not sure how I can test this or if someone had experience with it would be awesome.
You can customize the RTP port range in rtp.conf, 10K-20K is just the default.
Don’t forget the overhead for each call
How many calls is your ITSP prepared to accept from you at once?
Bandwidth depends on more than the codec, e.g. you can get a lot more into the bandwidth using IAX trunking than with SIP.
Processor loading and the ability to effectively multithread can be very dependant on what you doing with the calls (orders of magnitude). The standard advice is to benchmark with your traffic, but it is likely you will need a load balancing proxy.
whats the overhead for each call?
its just a theoretical question tbh I want to know if I ever need a certain amount I should take this information into consideration.
The best way of finding that is use tcpdump and wireshark to look at he real life values.
I think RTP has upwards of 12 bytes, then you need to add UDP, IP and MAC level headers. This is for one leg. If both legs are remote, you need to double this. Also you need some reserve capacity for things like DNS, routing protocols, and call setup I’m not sure how modern ethernet works, but you may need capacity for collisions.
Looks like the grand total for just RTP is about 60 bytes: http://www.uoverip.com/voip-packet-overhead/
it depends your hardware. my hardware that 8 Thread on Virtual Box , with pjsip sip stack , Asterisk can handle 1350 concurrent call with 90 cps without RTP, basic call bridge. but it depends so many thing as below
- Codec type
- your Scenairo and used modules.
you can test your scenairo with sipp