I'm going out on a limb with this column by focusing on a technology that's been over-hyped for yearsVoice over IP (VoIP). Nevertheless, after using VoIP for the past 3 months with great success, I believe it might be one of the most important technologies to emerge for mobile devices.
Before we begin, let me provide a word of caution: VoIP is illegal in some countries, typically those that have a national telecommunications monopoly. In the United States, VoIP is perfectly legal, although telecom companies don't care for it. If you have any doubts about the law in your area, consult an attorney before experimenting with this technology.
Conceptually, VoIP is easy to understand: The sender speaks into a microphone that connects to a PC sound card. The microphone detects sound waves from the sender's voice and converts them into analog signals, which the sound card and, in turn, the PC digitize. A coder-decoder (codec) compresses the resulting digital signal into packet data that travels over the Internet. At the receiver's PC, the process is reversed to play back the sounds originally made by the sender. Conducting this process simultaneously in both directions is known as a full-duplex connection. You can even use this technology over traditional telephone linesmore on that in a minute.
When you consider that Internet packets travel over connections with much more bandwidth than a standard analog telephone line, the VoIP process should work. Nevertheless, a significant technical challenge exists: Conventional telephone transmission over the Public Switched Telephone Network (PSTN) occurs as a continuous stream of data, regardless of whether it's in analog or digital form. By contrast, packet data transmitted over the Internet doesn't necessarily arrive continuously or in orderpackets can even be lost completely. Dealing with the potential for discontinuous, out-of-order, and missing packets makes writing codec software difficult. Nonetheless, it can and has been done.
So why use VoIP? Most Windows-based PCs have Microsoft NetMeeting installedtypically under Start/Programs/Accessories/Communications/NetMeeting. If you run NetMeeting on two PCs on your LAN, the first PC can call the second PC using the second PC's IP address. With headsets on both PCs, the audio quality is excellent. So why bother talking over the computer when there's probably a telephone right next to each PC? Suppose the two PCs are in offices at either end of the country. Pick up the telephone, and you'll be making a long-distance call, typically at business rates of 10 to 20 cents per minute or higher. A VoIP call, by contrast, is free.
VoIP Gateways
Making computer-to-computer calls is interesting, but to be really useful, you need to be able to call conventional telephones. To do so, you need to use a VoIP gateway, which is typically a specialized router that incorporates both IP and PSTN functionality. VoIP gateways typically use either the International Telecommunications Union (ITU) H.323 protocol (http://www.openh323.org) or the Internet Engineering Task Force (IETF) Session Initiation Protocol (SIPhttp://www1.cs.columbia.edu/sip). Both protocols let you switch between real-time multimedia data streams and digital packet data.
For branch offices and small office/home office (SOHO) users like me, public VoIP gateways are available. For the past 3 months I've been using deltathree's iConnectHere gateway. This gateway isn't free, but at less than 3 cents per minute, it's considerably cheaper than conventional long distance. In addition, the iConnectHere service lets me make long-distance calls from a conventional telephone by dialing an access number and entering an account number and PIN. As a result, I can use the same account I use for in-office VoIP calls to make calls while I'm travelingat extremely competitive rates.
deltathree provides PCPhone software, which Figure 1, page 24, shows, for use with its gateway. PCPhone runs on Windows-based desktop, notebook, and Tablet PCs. The software lets you use an IP address to call another computer, the same way you'd use NetMeeting to contact someone (PCPhone can even interoperate with NetMeeting). PCPhone can also call conventional PSTN phone numbersthe application opens a SIP session with the gateway, which in turn completes the call.