Routing Logic

From Luxvoice

Jump to: navigation, search

Contents

Introduction

The routing logic is the core of the Luxvoice system. It is built on years of experience with the aim to ensure maximum call quality and profitability across all possible call leg combinations.

The design requires a minimum of manual input and intervention so that vast routing tables with elaborate routing logic can be maintained and also human errors are avoided.

Quality metrics (ACD, ASR, PDD) are continuously recorded after each call so that faulty routes or routes with bad quality metrics can be quickly detected and avoided by the routing logic.

Quality metrics, call rates, currency rates and client parameters can be used as input parameters for the routing decision. This allows for any imaginable routing scheme based on quality, price or a combination thereof.

The feedback loop of continuously recorded call metrics and routing logic ensures that the routing decision is continuously optimized.

The routing logic also allows the provider to offer client call tariffs with various price/quality characteristics, e.g. Premium, Standard, Grey. The routing logic observes that outgoing calls are routed according to the clients pricing and quality parameters.

Call flow

On incoming calls the client parameters, call classification and tariff information is attached to the call. The information from the incoming call leg is available also on the outgoing call leg so that the routing logic can use this information.

Outgoing calls are be routed according to the outgoing routing logic, information from the incoming call leg and outgoing route tables and call quality metrics.

Route Fail-over

In a typical configuration the routing engine would sort all possible outgoing routes for any call in the order defined by the routing logic and then try one route after another until one route connects.

Routing Tables

Routing tables are based on rate tables supplied by terminating carriers, client tariff tables or lists of DID numbers hosted on the system. Routing tables can consist of hundreds of thousands of dialing codes belonging to several carriers.

Rate tables of terminating carriers are uploaded in CSV data.

Routing algorithms, variables and parameters

The routing logic can consider various things:

  • Incoming and outgoing call rates
  • Quality metrics, ASR, ACD, PDD
  • Currency rates
  • Possibility to attach several devices/gateways to one client or supplier
  • Real-time failover to different gateways of one provider according to some priority scheme
  • Different rates and routes for one carrier allowing to handle premium, standard, grey routes etc.
  • Anti-loop so that calls are not routed back to the originating carrier
  • Propriety client parameters

Taking the above variables and parameters as input data the routing algorithm determines which routes are tried and in which order they are tried.

The algorithm may for example sort routes according to a quality index, QI = ASR * ACD. The routing engine would then try to connect the call first to the route with highest quality index and if that is congested try all further routes. As the quality metrics are updated after each call the routing engine therefore continuously maximizes the quality.