Monday, 9 July 2007

What is a Phone Call? Pt 1 - Originate, Interconnect and Terminate

Following on from my last post, What is A Telco, I thought I'd share some of my thoughts about what a phone call is.

Most users have a fairly simple explanation of what a phone call is. They pick up the phone, and dial (or find an entry in the contact list). Their phone places a call, and the guy at the other end either answers, or goes to voicemail, or hits an error state. The errors could include "Number not available" "Cellphone out of range" etc.

But when you start digging under the covers that's a pretty simplistic explanation. It's a bit like asking a checkout girl how the barcode scanner works - "I lift up your item, scan it, and the screen says what it is and how much it costs." Course it does. Ask someone from NCR, they might have a different answer.

I'm gonna peek under the covers. See what's ticking.

Let's start by thinking of a call from one cellphone to another, in different countries, where the phones are owned by different operators, let's call them Giant Telco, and Big Cell. Arthur gets his cell phone and mobile calling plan from Giant Telco. Brenda gets hers from Big Cell.

Arthur places a call from his phone to Brenda. Except of course he can't call Brenda's phone direct, as there is no direct network connection between the two. So in fact, Arthur is placing a call to Giant Telco, asking them to hook up his phone to Brenda's. Arthur has no idea what network Brenda is on, but he does know that she's in a different country, because the dialling code tells him that. So he won't get billing surprises later. But that's another post!

Giant Telco now has this call request come in. Let's call this a call leg. It now has to find Brenda's phone and make it ring, while keeping Arthur's phone connected. Fortunately numbering ranges are fairly well understood between Giant Telco and Big Cell, so this is easy. Unfortunately Giant Telco and Big Cell don't have networks that link together. So Giant Telco needs to route the call with another carrier, let's call them Deep Sea Net, as they specialize in underwater fibre. Deep Sea Net gets the network between Giant Telco and Big Cell set up and tickety boo, then Big Cell starts hunting round for Brenda's cell phone. Fortunately it keeps a good track of where Brenda's phone is using a piece of kit called an HLR, so it knows exactly where to send the call. Finally Brenda's phone rings, she answers, completing a new call leg. Her leg is joined with Arthurs, they can talk. It's good to talk.

This all sounds expensive, and that's because the infrastructure to support all of this IS expensive. If you want to start your own telco, it's probably not a good idea to start building all of this, even assuming that you have permission to dig up roads to lay copper, get permission to broadcast radio frequencies etc. If you want to do that, then you are reading the wrong blog. This blog is about starting your own telco with none of that.

How do all these telcos get paid? Probably the paying customer in the example above is Arthur. He gives some money to Giant Telco, probably based on the number of seconds or minutes that his call to Brenda was running. Lucky old Giant Telco gets to keep the lions share of this money, but not all. The payment they get is for call origination charge, as the call started on their network, with Arthur's device being an endpoint on that network.
Deep Sea Net gets paid by Giant Telco, because the call went over their network. This is for interconnect charges. In some scenarios there may be many parties involved in interconnects, and indeed some Telcos offer various interconnect services for sale. I'm guessing there are some financial gurus and regulatory types who spend their time battling over interconnect fees. But going down that route isn't going to get you up and running very fast.
Finally, Big Cell gets paid by Giant Telco too, for terminating the call. In some cases (this happens a lot in the USA) Brenda gets charged for receiving a call. This doesn't seem fair to me, but Big Cell keeps signing up more consumers, so I guess the model works.

Similar things happen with Internet Charges. I buy broadband from my ISP, who manages their own network (though it may be a virtual network too!), and they then buy back bone from large carriers (yep, most of them are Telcos). This is another digression.

Back to Arthur and Brenda's call. I've described the experience of making a phone call that we are all used to now, not many of us really remember when we had to talk to an operator for each call we placed! Fans of old movies see this all the time. 
However there is a new breed of call, in which a central intermediary originates both calls from their own network. JaJah is doing this, it's also the way the BT Web21C SDK works. We know this as a Third Party Call. Here's how it might be implemented, Arthur presses a button on a web page, lets call it www.brenda.com that says "Call Brenda." The web site prompts him for his phone number. Then the site calls him - it's originating the call. When he answers the site calls Brenda - it's originating the second call. When Brenda answers the two calls are connected. Arthur could've been viewing a web page rendered on his cell phone of course!

Three very special things are happening here.

Firstly, both Big Cell and Giant Telco are only getting termination fees, for terminating their respective legs of the call. It's probable (but not certain) that Deep Sea Net is still in on the game, and due some fees. This depends on the relationship www.brenda.com has with Big Cell and Giant Telco; or more likely the relationship that www.brenda.com's telephony provider has with Big Cell and Giant Telco. You could speculate that the bigger the provider, the better and more efficiently they can manage their interconnects - potentially on just their own network if they are large enough. This leads into the algorithmically complex area of Least Cost Routing. This is simplified somewhat these days by the internet, where a bunch of voice traffic now can go over managed IP links such as VPN's, such as might link two Enterprise IPBX's

Secondly, the billing pattern has changed. Even though Arthur clicked the button, the _customer_ requesting the call is www.brenda.com. The telephony provider will charge them. brenda.com then hasthe choice as to whether they want to absorb the cost, or somehow bill Arthur or Brenda. How they do that is now up to them. Depends on their business model (ad supported telephony anyone?)

The other special thing that happened (and you may not have noticed, I didn't make it clear) is that Brenda didn't give out her phone number to Arthur. She's chosen to hide it behind the "Call Brenda" button on her web site.

Clearly the customer experience for Arthur is not as good as a cellphone originated call. But if the cost is orders of magnitude less, then it's likely that Arthur will accept having to answer his phone in order to call Brenda!

Indeed, I personally believe that this experience is better than a cellphone originated voip call, using a client such as Skype. Arthur would still be picking up costs for his data connection in that case anyway, and this normally isn't cheap. Plus the carriers have the ability to throttle voip traffic over their cellular networks if they wish. The third party call I describe here is using the plain old telephone service(POTS), that has cost billions and handles huge number of calls every day. With a quality of service we are used to, often 5 nines or more