Author Image

By: Aivis Olsteins

In News


VoIP Routing Part 2: Priority based Routing

Continuing discussion on inner workings of routing mechanisms in VoIP, let's discuss Priority based routing

Least Cost Routing or LCR discussed in previous post is not the only method of routing in telecom and VoIP in particular. There are cases when other routing methods can be more appropriate. Let's discuss another popular routing method: Priority Routing.

In the priority routing specific destination or breakout is explicitly routed to one or more carriers, regardless of the cost considerations. That might be due to many reasons, including contractual, legal, regulatory etc. In this case the routes are defined in fixed order, like in example below:


Destination Provider Priority number
UK Mobile Provider 2 1
Provider 3 2
Provider 1 3
UK Provider 3 1
Provider 4 2


In the table above we assume smaller number of priority means highest choice, i. e. “first priority” is higher than “second priority” etc. So in case the call is being made to “UK mobile” numbers, the routing will return the providers in the following order:

Provider 2, Provider 3, Provider 1

What happens if for some reason call is unable to be established via any of the three choices? We know, that UK Mobile codes (447) are a subset of entire UK number range (44). Should we also include routes to UK itself? There is a chance that Provider 4 might deliver a call, but since it is not listed in UK Mobile destinations, we are not looking anywhere outside this destination.


The setting which controls whether routing engine should look further, to the less specific code or not, is sometimes called hunt-stop (in some systems it is named “No Jump”). Setting it to “YES” will prevent routing engine from returning choices with less specific codes. Lets see table below:


Destination Hunt-stop Provider Priority number
UK Mobile No Provider 2 1
Provider 3 2
Provider 1 3
UK Yes Provider 3 1
Provider 4 2

The example above shows the scenario where hunt-stop is disabled for UK Mobile. Therefore the routing engine will also return choices for UK, i. e. less specific code. Note, that Provider 3 appears twice: in UK Mobile and UK. To avoid redundancy, the routing engine should not return that choice twice. The expected result for UK Mobile would be:

Provider 2, Provider 3, Provider 1, Provider 4

Equal Priority and Weights.

In some cases in priority routing we have two or more providers which we want to put on say priority. That is perfectly possible, and the routing engine would ideally return choices in the round robin fashion. In real life, however, routing engines are mostly stateless and weighted random is acceptable choice, given that number of calls usually is high enough for random choice to be accurate enough.

That also helps with the case where some of the same priority choices can accept more calls than other. In this cases we assign relative weights to the choices, like in table below:


Destination Hunt-stop Provider Priority number Weight
UK Mobile No Provider 2 1 1
Provider 3 1 3
Provider 1 2 N/A
UK Yes Provider 3 1 N/A
Provider 4 2 N/A


So in case of call to UK Mobile, we would want to see approx 75% of calls going to Provider 3 as the first choice and 25% to the Provider 2 as the first choice.

To sum up, the choices would be:

  • In 75% of all requests: Provider 3, Provider 2, Provider 1, Provider 4
  • In 25% of all requests: Provider 2, Provider 3, Provider 1, Provider 4

Next we will discuss quality based routing.


About Author
Author Image

With more than 25 years in the industry, Aivis Olsteins is founder of DataTechLabs, and has been involved in every aspect of the company through its development. He has large expertise in telecom networks, databases, large data processing and other advanced technical topics.

Get in Touch

If you have something to say, please use the contact form below to get in touch with us. We will get back to you as soon as possible.

Mail Us

DataTechLabs SIA, Muzikas str 12A
Jurmala, LV-2008, Latvia.

Call Us

+371 67 65 25 28
+ 1 202 499 1550

E-mail Us