How to Build Least Cost Routing (LCR) in the Real Word

What is Least Cost Routing?

Least Cost Routing (LCR), is an algorithm that attempts to route each phone call using the lowest cost provider out of a predefined vendor pool. Traditionally, “in-switch” routing has been setup to handle Least Cost Routing.

Least Cost Routing Example

  • Call from New York City (1-212-222) to Phoenix (1-520-891)

  • Vendor Pool - Vendor A ($0.02); Vendor B ($0.01); Vendor C ($0.03)

  • Least Cost Routing Order: Vendor B, Vendor A, Vendor C


Least Cost Routing Real-World Implementation

The simple example above is illustrative of how Least Cost Routing works in theory, but leaves out many of the complexities that are involved with actually implementing LCR in the real world.

Operational Barriers to Least Cost Routing

Data Size

The North American Numbering Plan (NANP) has more than 180,000 different destinations if broken out to the six digit (NPA-NXX). Going to the 7th (NPA-NXX-Y) will yield over 650,000 destinations. Keep in mind that each vendor will offer this many rates. Even if you are working with a modest number of vendors, this you will be dealing with a massive number of codes and rates.

Multiple Jurisdictions

Least Cost Routing is difficult in practice

Least Cost Routing is difficult in practice

Not only do service providers need to route to hundreds of thousands of different destinations with different prices based upon the number dialed, but it also matters where the call is originating from. For example, a call from New York City to Buffalo (Intra-state) will have a different price than a call from Los Angeles to the same phone number in Buffalo (Inter-state). The same is true for a call originating from overseas (Indeterminate) or across the street (local). In effect, service providers are not dealing with 180,000 or 650,000 rates per vendor, the are dealing with 720,000 or 2,600,000 rates per vendor! Keep in mind this is just in North America, global termination adds thousands of more codes and additional complexity.

Local Number Portability

Over 300,000 numbers are ported in the US on a daily basis. In total, approximately 40% of all US numbers have been ported to another carrier. When a number is ported from one carrier to another, it’s cost structure changes. In other-words, until the owner of the number is confirmed, it is impossible to know it’s true costs.

Frequent Rate Updates

In order to stay competitive, many voice vendors will update rates at least once per month. Assuming only 4 vendors, this means a turnover of anywhere from 3,000,000 to over 10,000,000 rates and routes per month, per switch, and rebuilding route tables every time changes are made!

Least Cost Routing using a SIP Redirect Server

In the past, when there were fewer voice vendors, fewer switches, and fewer destination codes, routing was built in a switch database. Today, it is no longer practical or even possible in most cases to build routing in that manner. RouteNGN uses SIP redirect messaging to convey route instructions on a call-by-call basis to any RFC 3261 compliant device. With RouteNGN users can build and implement complex global routing algorithms using vendor rates, complete with configurable profit protection, in a matter of minutes.