SLA on quality

Does anyone have any ideas how we could provide and monitor and SLA on quality and issues with a phone server? We have a client who wants us to provide an SLA with some kind of payment in the event of a breach of the SLA.

The problem is how to structure it. We already do this for other server platforms, and for hardware can monitor the uptime, with email we can send and receive emails and check the time it takes to complete the loop, internet lines we can monitor the response time etc.

But with VOIP I find it harder to find a workable metric. We can, and will, provide SLAs on the hardware hosting the server and the internet line we install but the client wants us to refund in the event of a lack of quality. We cant base it on issues reported by the user as this basically pays the client for reporting issues, whether they are valid or not.

Anyone know whether other people are doing something like this and how they do it?


This is a very difficult one as in order to provide such SLAs you need to be able to be in control of the whole infrastructure from end to end as you can’t provide SLAs on things that you don’t control. If you do control everything then it would be standard to offer SLAs on Jitter, End to end delay, and of course up time. But how you measure these is another difficult one. There are commercial products like this: But I don’t know anything open source.

Interestingly we use prtg for our hardware and email slas as well as snmp graphing. I’ll check out their jitter product.


The only way to quantify quality is with Perceptual Speech Quality Measurements and MOS scores. It is incredibly complex and not workable.

It was pointed out unless you have trunks from a provider that give you an equal or better SLA and full control of the path from the phone to your server then you have no way to police policy and control QoS and ultimately the quality of the call the user perceives.

To my knowledge nobody provides a meaningful SLA on call quality in the IP trunking business. If the customer was offered one I would love to see it (in fact I would pay to see it).

Customers need to understand what they are buying. If you are reselling a carriers network you need to talk about it. If you are an ITSP you should have sufficient pride that data center tours and a discussion of your processes to take care of the customers call would be sufficient to squelch the customer concern.

If the customer is deluded to thinking that an Internet based phone service is going to replace the current ISDN service without any issues then that customer is on a fast track to being a churn statistic.

Lastly you should have enough references if you have any time in the business that your customers should be able to sell for you and overcome this objection.

The fact you are even entertaining the request and don’t know what to do with it indicates a lack of experience in the business or you are trying to position some hosted/managed service offering as far more than it is.

Next year I will pass 10 years of running/growing/funding an ITSP, I can spot problem customers from a mile away. This one already is one.

Now onto the tools that frankly you should already know about:

At the most basic level most phones support RTCP-XR stats and Asterisk has had a rudimentary collector built in. It’s far better to let your SBC take care of this, OpenSIPS can catch these and put them in a database. Commercial SBC’s have service level assurance support.

On the network level, Cisco provides and entire IP SLA library to work with.

If you are trying to track down impairment on a network you manage tools such as RTP Toolbox are very handy though most smaller carriers simply learn to “see” the patterns of impairment in a wire shark trace You do have a SPAN port on your core switch and a full time probe in case you need to look at a stream? If not you better get one set up. If you don’t have a managed switch you need to stop selling and take an honest look at who you are.

This is probably the best commercial tool suite:

I hope I have stimulated some thinking.