Posts

VoIP applications need dynamic routing decisions

If it’s Friday, I’ll Take the Scenic Route Home

VoIP applications need dynamic routing decisions

VoIP applications need dynamic routing decisions

In my opinion, Waze is the best navigation application in the market today. Actually, Waze is much more than just a navigation app: it’s a community of travelers and commuters who are constantly contributing to form one of the earliest and largest crowd-sourcing platforms. By using on-line navigation data and user notifications, Waze maps traffic jams and sends drivers a variety of notifications including hazardous situations on the road, police presence, and speed cameras.

When it comes to navigation setup, Waze is very much like other navigation applications; the navigation setup is static. The main setup decision related to routing that the user is required to do is choosing between the route with the shortest distance or the one with the fastest time.  In addition, the Waze user can decide to avoid toll roads, highways, ferries, complex turns and dirt roads.

The fact that the setup is static is a real shortcoming, since routing preferences may change during the course of a single day. For instance, in the morning when you’re in a hurry to get to work you might not mind using toll roads. But on your way back home, you might be quite happy to take it easy and go via the scenic route, enjoying the springtime aroma of orange blossom along the way. To achieve this with Waze or any other navigation application, you would need to modify your routing preferences twice a day.

VoIP routing applications suffer from the same issue: how to make decisions based on a variety of criteria. In an ideal scenario where the network is free of any impairments, the main VoIP routing criteria would simply be the cost to the desired destination (i.e. least cost routing). However, in real life, there are so many other competing criteria which need to be taken into consideration, e.g. VoIP delay, VoIP quality, bandwidth, connection health, the time of day, user policy, security, load balancing and call admission control.

Unlike a navigation application, in a VoIP routing application, most of these additional criteria can’t be configured with a simple binary yes or no. For instance, in the case of voice quality, the user would prefer the call to be transported via the route with the best quality while, at the same time, ensuring that the cost is as low as possible.  The same goes for voice delay, signalling impartments, etc. The network administrator would like his calls to take the optimal route, but how can he configure the priorities and weights for these competing criteria?  A tricky problem.

Currently, most VoIP routing applications handle this issue by associating weights to the main routing criteria. This means that the user associates a weight to each criteria giving each criteria a priority.  The routing algorithm takes into consideration the criteria based on their associated weights and calculates the routes accordingly.

An alternative scheme is basing the entire routing calculation on one criterion (usually cost). Any additional routing considerations are applied to the main rule as relevant on a call by call basis.

For instance, all routing rules can disregard VoIP quality in general, but a VoIP quality condition will be applied ONLY when it is relevant, e.g. any calls made specifically to New York must be routed via a high quality connection disregarding the cost.

With this per route association approach, routing rules can get quite complex but since the additional conditions are applied on a route by route basis they are still easy to configure and easy to maintain. Imagine how convenient it would be to be able to configure a routing rule which, for example, determines that calls from the CEO to the New York sales manager on Mondays between 8:00am and 10:00 am must be routed via best quality route. Now try to figure out how to configure the same routing rule using a Waze-like static routing configuration.

I wish that Waze had route options like playlists, aligned with users’ personal moods: happy routes, contemplative routes, romantic routes, routes for birthdays etc., maybe even combined with recommended music per route. In today’s dynamic lifestyle, we can’t rely on a static, generic setup.  We need tools that let us customise our needs as simply as possible, since routing is everything.

 

To find out more about how AudioCodes helps simplify call routing in complex enterprise and service provider VoIP networks, download our white paper today.