Satellite VoIP using a hardware solution
by John Watson
There are several ways to use VoIP technology. For this application the requirements are that an ordinary telephone handset be used, preferably connected to a standard 2 wire telephone. That phone should behave as normally as possible, with no computer programs or mouse required to place or receive calls. The other end of the connection is the company that provides the dial tone. This should hopefully be done for less than the cost of a cell phone connection. There are companies that provide dial tone via the web, like Ground Control, or you can choose to provide your own dial tone over the internet. All that is needed is a good full time connection (with static IP) to the internet from a home or office and a spare phone line to answer. My choice is to use the office PBX to provide the dial tone, connect that to a Multitech MVP 120 FXO (now obsolete), and connect that to the internet with it's own public routable IP address. The maximum bandwidth requirement is only 32k bps. Now for the coach. At this end we simply have to buy a telephone set, plug it into a device similar to the (now obsolete) Multitech MVP 110 FXS modem and connect it to one of the dedicated static IP ports of the HNS Satellite Internet system. Let's just assume for the moment that we chose to do it that way. We would use the DW4020 router with the 5 dedicated static IP addresses. Here's how it works:|
When a call comes in, the telephone office (or business PBX unit) puts a ringing signal on a pair of wires connected to the FXO modem. That term comes from phone company language that means that it looks like a telephone set. The modem answers the phone and then tries to find its mate, over the internet. That's why we need a static IP. The multitech modems will not use a DNS server to look up the address from a name, so DNS2GO or similar services won't work. There has to be an IP address in a table somewhere to help one modem find the other. After finding the mate to the modem, messages are sent the request the FXS modem at the remote end to send a ringing signal to the telephone set. Again, in telephone speak, the FXS means that it looks like the switch, it provides the dial tone and ringing signal. From here on, analog voice and tones are converted to digital messages and then back again to make it look like simply two telephones and a wire.
Now let's take that solution and try to save some money at the remote end. If we drop the service from 5 IP to a single IP, that will save on the monthly service charges. With a single static IP address to be used by all the computer devices at the remote end, some sort of Network Address Translation router is needed. That router would have to pick out the incoming VoIP packets and send those to the VoIP modem. If the modems are using the standard H.323 protocol, then finding those packets is very difficult and not possible for the W2K ICS, W2K Server NAT, or the BW4020. The SonicWall TELE3 or SOHO3 products with the latest firmware downloads can route the H.323 protocol. The SonicWall is also a powerful Virtual Private Network product, more on that in the VPN area. If for some reason you would prefer to use a pc as the server/router instead of the BW4020, all is not lost. You can find an old pair of Multitech VoIP modems like the MVP110 and MVP120 that are capable of running Multitech Proprietary protocol. This is a much simpler protocol that simply uses UDP packets on ports 900, 5004 and 5005. Under the W2K Server with NAT, these packets can easily be routed to one of your LAN addresses. These older devices are out of production, and getting harder to find.
In another variation, the modems can be programmed to work in groups, so that when dialed, they would return a secondary dial tone and accept one or more digits that would select which remote location to be connected. One fixed location could support several remote satellite users, but only one at a time.
There are performance issues to be considered. When voice goes into the phone, the modem encodes this analog voice data into digital data using a program, NetCoder 6.4. The VoIP modem from Multitech allows 15 choices of coders. NetCoder 9.6 is usually recommended, but the speed on the Hughes Satellite not good enough for 10k bandwidth plus overhead. The 6.4k data requirement is much more compatible. There is also the possibility of adding forward error correction data. That seems to take more bandwidth that it is worth. The remote end hears perfectly, due the the large downlink bandwidth. The other end suffers dropouts in reception. This is due to lost packets. If a packet is received in error and re-transmitted, the re-transmitted packet is received too late to be of any use. A good measure is the ping test. If ping times exceed 1500ms more than once in 10 pings, then VoIP will be useless on this connection, get out the cell phone.
About the author: John is a programmer/consultant who fulltimes in his motorhome. He frequently boondocks out of cell-phone range, and needs VoIP to keep his business up and running.