One Way to Stop Overloading Your Telephony Server

There is a subset of your staff doing most of the work. This is the well-known Pareto Principle, where 80% of results are achieved by 20% of causes. 20% of your employees are doing 80% of the work. 20% of your clients are responsible for 80% of your profits. Understanding how this works in your cloud-based call center can help you be more efficient. Having 20% of your telephony servers handling 80% of the calls can be a recipe for disaster.

You may have one number that comes in on one trunk, and use smart IVR routing to get calls to the right spot. That’s pretty common. Your SIP provider may only allow one IP to communicate with it. That’s also pretty common. If you just point it to the first of many telephony servers, though, that server is going to be doing a lot of work. One strategy is to have agents distributed across multiple servers to spread things out. Another is to have multiple trunks. None of these solutions is ideal for heavy usage cases. On commodity or Cloud hardware, you will reach the capacity of a server, and be stuck. It’s worse if you have occasional bursts of activity over one trunk or another.

Load balancing is very important under heavy call volumes. For telephony, this is usually accomplished by having a load-balancing SIP Proxy in front of your telephony servers. Handling the media (voice, usually) is the hard part of a Voice over IP (VoIP) call. Signalling is fairly lightweight. Telling the server a call is coming in, accepting it, saying “Yes, I’m still here” is really just some text being passed back and forth. Taking the audio, encoding it, breaking it into packets and sending it off, possibly recording it, is the hard part.

One interesting fact about most VoIP traffic, such as SIP, is the signalling and media can happen on different servers. In the case where only one server is allowed to connect to the provider, this almost always means the signalling. The media can, and often does, connect to a different server.

On inbound, a SIP proxy handles the easy part. It can also decide which of the available servers will take the next call, and arrange the details between your server and your service provider. This way, there’s not one single server in a multi-server call center that’s struggling with 80% of the call volume.

For outbound, the usual solution is to have your trunk proxied, and the outbound load distributed evenly. This usually means spreading your agents out so the outbound call volume doesn’t overwhelm the server. Again, your SIP proxy looks like the trunk provider to each of the servers using the proxy. The call gets dialed, then the media is processed as normal.

In either case, whether inbound or outbound, you can avoid having the Pareto Principle cause disruption. The better you do with call distribution, the fewer complaints you’ll have with call problems.