Why ENUM is so important
This is a guest post from Jay Daley, Chief Executive of .nz Registry Services.
The best way to explain ENUM is to start by talking about email and remind ourselves how that works.
If you are a consumer and you want email then your ISP will generally provide it for you as part of their service. They assign you an email address that ends with their domain name, configure you on their email server and away you go. Not much different from a consumer telephone service, but possibly less functional because you can't port an email address like this to another provider as you can with telephone numbers.
If you are an enterprise (or a geek) then you have much more control over how to implement email. You would almost certainly use your own domain name and after that you have choices. You could for example, run your own email server and so have email access to the rest of the world without any active involvement from your ISP, all they do is carry the data as they do for any other application.
Both consumers and enterprises can choose a hosted email service like Hotmail or Gmail. They are free for consumers, low cost for enterprises, fully-featured with regular innovation and can be accessed from anywhere at the same cost.
Email of course is automatically mobile. You can generally take your laptop anywhere and access your email whether the server is managed by your ISP, in the office or outsourced. Wherever you are the only cost is the local Internet access cost, you most certainly don't pay more to access your email from a cafe hotspot in another country.
If you contrast telephony with email you can see just how little control even enterprises have over such a basic application.
You can't manage your telephony without involving a telephone company as you can with email. You could run your own telephone switch but you still need a telephone company to put their own dedicated lines in to make it work, lines that you can't use for any other purpose.
You don't have anything like the same mobility. There are mobile phones but not all phones are mobile, not all numbers are portable and if you are abroad then you will certainly expect to pay more, possibly so much more that there is no point in even using your phone.
The economics are quite different too. With email you pay for Internet connectivity and then run your email over that. You don't pay more for sending more emails, nor do you pay more the further the email has to travel.
To be fair, there is a downside. Spam is far more prevalent than unsolicited calls and much more time is wasted as a result. This is partly mitigated by the control you have over what emails you accept, but spam is still a significant problem.
So how do we make telephony more like email, more like any other application that runs on the Internet?
You might think the answer is just to implement an Internet telephony (VoIP) server and go from there, which would be ideal since almost every enterprise that is replacing their telephone system goes over to VoIP. But there's a problem, a big problem, that stops VoIP servers in different companies from connecting over the Internet - they don't know how to find each other.
Let's go back to email for a moment to explain how email servers find each other. If you send an email to me at jay@nzrs.net.nz then your email server looks in the DNS for a special record called an MX record for the domain name nzrs.net.nz. That MX record gives the name of my email server, which your email server then contacts to deliver the mail. That's how all email works, point to point between email servers that look up how to find each other in the DNS. Easy.
When we think about how VoIP servers could contact each other we can see the problem. If you dial me on 04 931 6970 then your VoIP server gets the number and stops dead because it has no idea what to do with it. What it wants to do is look up the name of my VoIP server from that number and make the call, but it can't, because it hasn't got anywhere to go to look it up. Yes, I know you could always configure your VoIP server with the name of my VoIP server but that soon becomes unmanageable.
This is where we need to use the DNS, a global distributed directory, to look up the name of my VoIP server. And this is where ENUM comes in. Ta da!
When you send an email the lookup into DNS uses the domain name, but for telephone calls you don't have a domain name, only a telephone number. So the first thing that ENUM does is turn telephone numbers into domain names. My telephone number ends up being the domain name 0.7.9.6.1.3.9.4.4.6.e164.arpa (try reading it backwards) and under that I publish the name of my VoIP server in a NAPTR record. You still dial the telephone number and your VoIP server does the translation behind the scenes, performs the look up and the connection is made, no telco, no special lines, no fuss.
That's really what ENUM is about - control - giving you the same control over telephony that you have over email. That's why it is so important.
