IP calling for me is a major disappointment at the moment - I've been on far too many conference calls where people are on all manner of different VOIP ways to connect to a call - Skype, Cisco etc etc - it's low quality, tonnes of echo, missed words.
What's even worse is when you have people from another company with a different VOIP provider / technology - then it becomes a joke.
The main takeaway is that landline networks offer impressive reliability and quality of service. If you have people calling into conference calls from mobile phones you have similarly annoying problems.
However VoiP can work amazingly well, it just puts more responsibility in the callee's hands. But if you have reliable internet, with ethernet wiring to your machine, and a decent headset, VoiP can provide better-than-the-average-telephone quality.
All telephony advancements since the POTS line have been about increases in efficiency and additional features. In my opinion, the balance between quality and efficiency occurred at the point where most calls were routed over TDM based circuits. An ideal call would use something like PRI to the end user and SS7, over TDM circuits (T1, SONET) from end-to-end.
These days, an increasing portion of the PSTN is routed over IP networks. Even if you have a POTS line at your home/office, there's a good chance your call will be routed over an IP network if you're calling someone who is not on the same tandem. In many markets, IP reaches all the way to the individual COs that terminate copper to customers.
VoIP can work very well, but it requires a well engineered and controlled network with adequate bandwidth.
With TDM, you split your switching rate in to individual buckets. With T1, you get 24 buckets. End of story. You can't even try to push a 25th channel on T1. There's no such thing. Contrast this with VoIP.
With VoIP, the controls on the number of concurrent transmissions are all software. Channel control and routing are very well separated from the transport layer. You can attempt to stuff 100 G.711 calls on 1.54 mbps of bandwidth. There's nothing implicit about the voice stack that will stop you. The call quality will be non-existent, but you can try it.
The crux of the issue with VoIP boils down to one thing: humans are sensitive to conversational delays. We think that echo is unique to VoIP, but it's not. You actually want callers to hear themselves on the handset. If the listening portion of the handset falls completely silent, the caller will probably think that the line has dropped. On a circuit switched phone call, you hear yourself speak, but you hear yourself in almost real-time. Your brain does automatic echo cancellation.
It is extraordinarily rare for a circuit switched call to experience one-way latency higher than 100ms. That means 200ms maximum RTT. Your average individual starts to notice the delay at 300ms RTT. This means that your VoIP audio (called media) must transport over a link that has an RTT of less than 300ms, including any buffering. Nominally, you want no more than 100ms of consistent latency to support good quality voice.
So, here I go down the rabbit hole, and I know only a little bit about VoIP. I'm not an engineer, but I did stay at a Holiday Inn Express last night :)
I'll sum it up like this: you could take another step back and say that VoIP sucks because we all keep trying to do it over infrastructure that was never designed for it. VoIP at your home/office requires the cooperation of your carrier to get the IP transport for voice media to the carrier termination point in an expedient manner. It's not enough to put QoS on your LAN and expect voice to work well. The voice packets have to be expedited all the way to the other end, and that requires cooperation on the backhaul.
I'm currently using T-Mobile with an unlocked Galaxy Nexus (GSM version). The only feature that I currently use from T-Mobile is their data connection. For voice calls I'm using Google voice and Skype:
(1) With most of my friends I just use Skype for calls, as I have it running on my phone all the time.
(2) As fallback, my Google voice number has Jingle (Google Talk) forwarding enabled and on my phone there's a client that is able to accept Jingle calls. So I'm also reachable on a traditional phone number.
Disadvantage: Unfortunately both applications considerably decrease battery life.
Advantage: Skype voice quality is much better than regular phone calls. I don't need to use one specific endpoint device (my mobile phone), but can also use my laptop to receive calls. I can travel without having to give my new phone number to all my friends.
This is an awesome setup :) And at $30/month prepaid for 5GB with no contract is pretty nice as well. Only 100 minutes, but who needs minutes when you can do this.
I know that Skype explicitly states that it's not a replacement for a phone and can't be used for emergency calling. What about Google Voice? I would assume that it has the same restrictions.
I remember hearing about switching to voip when the 2nd gen ipod touch was getting popular, and i was intrigued enough to put off any handset upgrades on my tmobile account in order to stay out of contract in case this voip thing took off. In the 3 years since i have barely touched my mobile phone in favor of the ipod touch, but i keep the mobile for 911. i hope a fix for that comes up cuz even at the cheapest cell plan it is still a decent 50 bucks/month that i'd much rather throw at a mobile hotspot or data only plan
If you're in the US, then any phone you have has 911 service no matter whether you're subscribed to a plan or not. You can pop the SIM card out entirely and still call 911.
I used to be a happy t-mobile customer thanks to UMA...cell coverage couldn't make it to my house, since it was only 1 bar in my front yard and I live in a block house with a metal roof, but thanks to UMA it didn't matter. Eventually I got tired of having a crappy blackberry phone, which was all they had that supported UMA at the time, so I switched to Verizon which actually does get reception in my house, just barely.
UMA seems to overcomplicate matters greatly. How about just giving me a SIP endpoint that corresponds to my mobile number, and, when there's an incoming call, query my SIP presence, if I'm present, ring the SIP, if not, ring mobile. SIP also supports SMS if I'm not mistaken.
Baking this into a carrier-branded Android/iPhone/Symbian/WP app should be fairly simple, as the SIP implementation already exists for all of these.
UMA works very well. Take the data that would be sent over the cell radio and send it over a wifi IPSEC connection instead. That is pretty much it. Heck it will even do realtime handoff between cell and wifi (in either direction).
The reason why it isn't very widely used is because that requires a very low level of integration. Typically the radio and wifi processing code have to be made by the same company and in the same chip. Blackberries have used UMA for years where it is fantastic. But you can't just add it to a random phone because it is almost certain that there isn't that level of radio and wifi integration available.
I've been in Sri Lanka talking to someone in Philadelphia using UMA (which connects to Tmobile in Washington state) where the traffic was going half way around the world and back again. It works perfectly - the other party didn't even know until I told them.
The newer Kineto solution isn't doing UMA because it can't - the radio interface and handoff isn't there. It does still work, but their code is buggy.
I don't contest that UMA works, I'm sure it does - I claim that it seems complicated, and what you write seems to support that. UMA requires low-level hardware integration, SIP is trivially achievable in software.
> How about just giving me a SIP endpoint that corresponds to my mobile number, and, when there's an incoming call, query my SIP presence, if I'm present, ring the SIP, if not, ring mobile. SIP also supports SMS if I'm not mistaken.
I'm in the Republic Wireless beta, and it's working great so far. There were some echo problems at the beginning, but they seem to have mostly fixed that.
$19 a month for unlimited everything, and it actually works everywhere in my house, unlike AT&T and T-mobile.
I have a T-Mobile phone (HTC Sensation) and I love wifi calling. It works beautifully where my cell coverage is bad and there's a good internet connection (home, work, a ski lodge I was at recently).
I'm on T-Mobile more or less accidentally, and before I got my smartphone, had absolutely no loyalty to them. I didn't even realize the phone had the feature until I got home and started playing with it -- they didn't play it up at all in the store. It would be hard to pull me away from T-Mobile. A competitor would have to offer a huge price break, or wifi calling.
Really puzzling that they don't make a bigger deal of this feature.
Seconding this. I got my first Android phone recently, without even knowing about wifi calling, and it's one of my favorite features. I wish I had it when I was looking for a job and doing all of my phone interviews outside or in my car.
I think the bigger trend here is "internet protocols will win." We see it happening in telephony, television, music, and lots of other places.
Brilliant engineering has gone into the IP stack, with modular support for every aspect of getting information from point A to point B. Packetizing information, routing around network problems, dealing with congestion, choosing whether to prioritize getting every packet correctly vs getting packets in real time, discovering other network nodes, authenticating and authorizing, etc. The internet has all these problems solved pretty nicely, and the stack is flexible enough to do everything from voice calls to email to video streaming.
Yes, we still need infrastructure. Companies who provide cables and towers and satellites and fiber optic links are absolutely necessary. But flowing over those links, everything is moving towards IP.
It's silly that we still ship CDs and DVDs of audio and video data in boxes. It's silly to have a thousand TV channels streaming one-way to your house with no ability for the viewer to choose what they watch and when. It's silly, as this article points out, not to always choose the best pipe for my purpose.
The big trend is that infrastructure and services are being decoupled. "Dumb pipes" is an insulting way to say this: running a data network is still hard. But yes, the pipes should be neutral. We should pay for the best connection and, separately, use the best services we can reach over those connections.
As we keep finding ways to use the pipes for our purposes, we will keep converting all communication to the IP stack. Because it's better. It just is.
Dumb pipes + smart protocols will win. It's just a matter of time.
And now how about a "dirty secret" for Kineto Wireless mentioned in the article several times. When their code is running on an Android device, even when wifi calling is disabled, it spews an endless stream of messages to Android's log (aka logcat). Often several messages every two seconds. Almost all at Error level even though it just appears to be signal strength information. This is ridiculously amateurish. It is highly annoying as a developer to have to keep filtering this crap out. It also implies they don't bother to check what is happening with their own code.
I have emailed their support who didn't respond. I even wrote a Google Plus post about it:
I often find their code gets wedged too. It gets into a state where it isn't working, but you can't enable or disable it. The only recourse is to reboot your phone.
I love the seamless WiFi calling on my Galaxy S2 (running MIUI ROM). When I'm at home or work and have free WiFi, I can make calls for landline prices (and cheaper if the call goes abroad) without launching an additional app etc. When I'm out of WiFi reach, the phone automatically chooses the mobile provider.
Am I the only person who just wants a ip telephone capability for my already Skype capable smart phone? I mean the telcos are dumb pipes so why do we still separately pay for sms separately from the data?
I find it sickening and pathetic that things like "tethering" and "making skype/voip calls" are somehow special features that most providers are trying to keep you away from in every way they can... I have this awesome little device that could do almost all the things I typically do with my PC and I can't do half of them just because a few big-enough corporations decided those features are TOO frakking awesome and they would endanger their holy cash cows.
There is something about lobotomized technology for nothing but greed and political reasons that REALLY rubs me the wrong way...
What's even worse is when you have people from another company with a different VOIP provider / technology - then it becomes a joke.