[asterisk-users] Country numbering plan resources
jtodd at digium.com
Sun Dec 14 00:57:20 CST 2008
On Dec 12, 2008, at 7:10 PM, Michael wrote:
> Is there any good free / accurate online resources with detailed
> numbering plans? Failing that let's get something running ourselves.
I'll avoid the good discussion on this thread that has been made
already to date. The answer is: "It's not simple." I wish it was,
but that data is typically in the hands of companies who do NOT want
to share it, because errors on your part make money on their part, and
those companies don't really want to see you exist at all in the first
place. It would be great if this could be a shared resource of some
sort, but I don't expect that we'll ever see that with E.164 numbering
- the entrenched interests in that number space have zero interest in
making the data available for many political, technical, and fiscal
In the past, I've received a full breakdown of rates from my carriers
for North America, as I have typically purchased directly from North
American carriers who give me a 5, 6, or 7 tier model of prices across
the country. LNP has confused the issue a bit, but not enough to
warrant dips into the LNP database to determine if mobile numbers are
being delivered on landline, or vice versa.
For most of the world not in country code 1, I typically get just two
rates: landline and mobile. In some very large nations, mobile may be
broken down into a few carriers, but not often. Carriers almost
always will NOT give out number ranges for what is mobile versus what
is landline. They just say "Mobile: $V.WXYZ Landline: $A.BCDE" and
leave it to me to figure out what is what. This, of course, is
disingenuous - obviously they know what is mobile and what is
landline, since they need it for their own billing purposes. But they
would NEVER try to help out a customer like that, since it makes the
customer more informed and less likely to just swallow an incorrect
So in a recent job (not Digium) I had to get the Telcordia GDDS
database. Cost varies depending on what kind of use you have, but I
seem to recall ranging from $20k per year to $Absurd per year. It was
useful - recall that mobile rates can be 10x or even 20x what landline
rates are, so billing your customers in the same bracket as you are
billed by your vendors becomes startlingly important when you hit the
millions of minutes per month mark in international termination.
Then, you'll need to create a database that tracks what each one of
your vendors gives you for mappings, create a linkage between their
terminology or number formats to the GDDS database, and extract to
create a routing table. Non-trivial, but not super-difficult. Get a
big machine with gobs of RAM and store all of your databases in
cache. The US I seem to recall had (for each carrier) something like
420,000 rows in one configuration. Multiply by the number of carriers
you are using, add in the 60,000 or so rows for international per
carrier... it gets to be a pretty plump routing table.
"You must be _this_ tall to ride this wholesale ride."
We created an external Java app that would take the origin number out
of our Asterisk arrays and then do a database lookup. Total delay
between receipt of the INVITE and the INVITE being out to the "best"
vendor was around .3 seconds, so not bad. But there is a reason that
there are whole companies doing routing and rating engines.
John Todd email:jtodd at digium.com
Digium, Inc. | Asterisk Open Source Community Director
445 Jan Davis Drive NW - Huntsville AL 35806 - USA
direct: +1-256-428-6083 http://www.digium.com/
More information about the asterisk-users