A wholesale carrier adds a fast-growing originator. A provider that serves outbound call centres takes on more dialling traffic. Several campaigns hit their busiest window at the same time.
These businesses serve different customers, but they can meet the same capacity problem: incoming call attempts approach or pass 1,000 calls per second, even while concurrent calls still look manageable.
At that point the operator needs more than extra channels. They need a platform that can process the attempt rate, keep records accurate, and leave routing controls and reports usable while traffic peaks.
At Kolmisoft, a growing customer hit the limits of our current M4 platform. We should have locked their peak CPS requirements earlier. Their experience also pushed us to study how M4 could support businesses that operate past our current capacity of about 1,000 CPS.
Which businesses need high CPS?
Not every wholesale carrier or call centre needs more than 1,000 CPS. The need comes from the traffic pattern, how concentrated that pattern is, and the combined demand across customers.
Wholesale carriers serving multiple originators
A wholesale operator may carry traffic from many customers. Each originator can look fine on its own, while their peaks together put heavy load on the platform.
Growth is often uneven. One customer can raise its attempt rate much faster than the rest, and that one account changes the capacity needs of the whole deployment.
Operators need both numbers in view: total incoming CPS, and how much each originator contributes. If you plan only around the largest customer, you can still miss simultaneous peaks across several accounts.
Providers serving outbound call centres and diallers
Outbound dialling can create many attempts that never become answered calls. Busy destinations, unanswered calls, and rejected attempts still consume processing.
That creates a capacity need that concurrent-call figures alone cannot describe. A provider may still have free channels while the platform is already struggling to accept new attempts.
For these businesses, visibility matters as much as throughput. Operators need to see which customers create the load, how attempts fail, and whether a routing change improves the picture.
Large outbound operations running multiple campaigns
Several campaigns that start or accelerate together can create concentrated peaks.
Average daily traffic can look comfortable while a short interval places far higher demand on the platform. Capacity planning has to account for how campaigns overlap and how long their peaks last.
A brief burst and a sustained high attempt rate are different operating conditions. You need both understood before you choose a deployment.
Growing providers carrying mixed traffic
Some providers run wholesale, outbound, and other voice traffic on shared infrastructure.
As the mix changes, older capacity assumptions stop helping. An increase in attempts can stress shared resources even when answered-call counts move only a little.
The useful question is: what must the whole platform support when these traffic sources peak together?
Why concurrent calls do not tell the whole story
Concurrent calls measure how many calls are active at once. Calls per second measure how fast new calls are attempted. In this article, CPS means incoming call attempts per second.
The two measurements are related, but they are not interchangeable. For the operator-side basics, read calls per second vs concurrent calls and why dialer 503s happen when channels still look free.
Many short or unsuccessful attempts can create a high CPS workload without a large concurrent-call count. Longer connected calls produce a different balance.
Daily call volume is another incomplete measure. The same volume spread flat across a day places different demands on a platform than the same volume packed into busy periods.
A useful capacity discussion therefore includes:
- Total peak incoming CPS.
- Whether that peak lasts seconds, minutes, or longer.
- Peak traffic from individual originators.
- Concurrent calls during those periods.
- Expected growth and changes in traffic mix.
A concurrent-call licence upgrade does not, by itself, raise CPS processing capacity.
What becomes difficult at high traffic levels?
A softswitch must do more than accept incoming attempts.
It must make routing decisions, handle signalling, produce accurate records, and give operators access to the information they need to run the business.
As traffic rises, a bottleneck can appear in any part of that chain.
Processing attempts fast enough
Attempts consume resources even when calls never connect. How much work each attempt needs depends on the deployment and its routing behaviour.
If attempts arrive faster than the system can process them, delays and failures follow. The operator needs to know the supported operating range before production traffic reaches it.
Keeping records and reports usable
High attempt rates also increase the call data the platform must handle.
Reporting infrastructure can come under pressure alongside call processing. Elasticsearch documents how excess indexing work can saturate a cluster and affect search and other operations; see their indexing pressure documentation.
For an operator the consequence is practical: investigating traffic gets harder in the moments when clear information is most valuable.
Maintaining control during peaks
Operators need to inspect failures, adjust routes, and answer customer questions during an incident.
If administrative access becomes slow or unavailable, the impact extends past call processing. The team loses the tools it needs to diagnose and respond.
Higher capacity therefore has to include operational usability, not only throughput.
What a growing customer taught us
One of our largest customers grew into a traffic pattern our current M4 platform could not sustain. One originator alone generated bursts near 2,000 CPS, above our current capacity of about 1,000 CPS.
During those periods, reporting and administrative access became difficult. We lost the customer.
We should have established their peak attempt rate earlier and made the capacity boundary clearer during sales and onboarding.
The experience also showed us a product requirement we needed to examine: how to support growing operators whose traffic approaches or passes that boundary.
Better qualification helps us recommend suitable deployments today. Development past the current capacity addresses operators who need more.
For how operators contain a single hot originator on their side today, see which dialer customer burned your CPS route.
Where M4 stands today
Our current stated M4 capacity is about 1,000 CPS on a multi-server architecture (see also MOR vs M4 SBC). Operators who plan traffic near or above that level should discuss their requirements with us before they commit to a deployment.
That conversation needs to cover the full traffic profile and the supporting infrastructure. A headline CPS figure only makes sense in the context of configuration, workload, and operating conditions.
We are working toward higher capacity. Until we test and establish improvements, do not treat them as available production capability.
Possible approaches beyond 1,000 CPS
Raising capacity means finding where the current constraints sit and judging how each change affects the complete platform.
Several engineering approaches may help.
Reducing the work required for each attempt
Profiling can find expensive processing steps, repeated lookups, or inefficient data handling.
Improving those areas may raise throughput. Any change must still preserve correct routing and accurate accounting.
Distributing processing across multiple components
Sharing traffic across processing nodes is an established approach in SIP infrastructure. Tools such as Kamailio provide traffic-distribution and overload-control mechanisms; see the Kamailio dispatcher documentation.
Distributing incoming traffic is only part of the challenge. Shared services, billing, reporting, and failure handling also need to carry the higher load.
Improving how call data reaches reports
Separating some reporting work from immediate call processing may help absorb peaks and reduce competition for resources.
This introduces trade-offs. Queues must stay manageable, records must be preserved, and operators need to know how current their reports are.
Making overload more predictable
Every deployment has limits. Monitoring and traffic controls should help operators spot rising pressure and see which originators contribute to it.
As capacity grows, predictable behaviour near those limits remains essential.
These are possible engineering directions. They are not a promise that any one approach will deliver a specific CPS figure.
What would demonstrate meaningful progress?
A useful benchmark needs to explain the conditions behind its result.
That includes the hardware, configuration, traffic profile, concurrent calls, routing workload, and duration of the test.
It should also examine whether records stay accurate, reports stay usable, and the platform recovers in a reliable way after overload.
A short peak in a simplified test does not establish sustained production capacity. Operators need a supported operating range with clear conditions.
As development progresses, those are the results that matter.
What traffic do you need to support?
The customer experience that prompted this work showed us how fast a growing operator’s requirements can change.
We are investigating how M4 can support higher attempt rates while preserving the visibility and control operators need.
If your business is approaching or passing 1,000 CPS, we want to understand your requirements. Tell us your total peak incoming CPS, burst duration, concurrent calls, and what becomes difficult during busy periods.
We will be clear about what M4 supports today and discuss how your traffic requirements could shape the work ahead.
Contact us to discuss your high-CPS requirements.
Need more than about 1,000 CPS?
Tell us your peak incoming CPS, burst duration, and concurrent calls. We will be clear about what M4 supports today.