VOIP – Voice over IP Overview

Introduction Voice over IP (VOIP), otherwise known as IP telephony, is the delivery of voice information over Internet Protocol (IP) packet switched networks. This means sending voice information in digital form in discrete packets rather than in the traditional circuit-committed protocols of the public switched telephone network (PSTN). A major advantage of VOIP is that it can avoid the tolls charged by ordinary telephone service by utilising fixed charge IP network services such as broadband. Recent development with SIP (see below) technology and hardware supporting this standard has resulted in the production of a number of commercially marketed SIP handsets, both wired and wireless networks, removing the need for a PC or laptop running a software handset, or “softphone”, to connect to VOIP services. A subscription to a local server from a SIP handset or softphone provides you with all the normal telephony features including voice and fax, as well as text and even video services.

SIP (Session initiation protocol) is an Internet standard specified by the Internet Engineering Task Force (IETF) in RFC 2543. SIP is used to initiate, manage, and terminate interactive sessions between one or more users on the Internet. SIP, which borrows heavily from HTTP and the e-mail protocol SMTP, provides scalability, extensibility, flexibility, and capabilities for creation of new services. SIP is increasingly used for Internet telephony signalling, in gateways, PC phones, softswitches, and softphones, but it is not limited to Internet telephony and can be used to initiate and manage any type of session, including video, interactive games, and text chat.

VOIP Technology (current) VOIP networks are becoming an ever increasing part of the office and home network with many brands now producing reasonably priced VOIP equipment and phones. Software phones have also become much more flexible with support for the many codecs (compressor/decompressors) available to perform video as well as voice data encoding compatible with standard computer equipment such as soundcards and webcams. With the recent spread of wireless network coverage across the country it is now possible to buy 802.11b wireless SIP phones, enabling users to roam freely within a wireless network such as within a company. Other mobile technologies such as Mobile-IPv6 have also been developed enabling user to roam different IPv6 supported networks whilst maintaining the same “home location” IP address.

VOIP Servers There are many different VOIP servers available both commercially and open source. At the time of writing one of the most popular servers is [ASTERISK], with its ability to be able to handle complex dialling plans and a wide range of voice, fax, text and video codecs, as well as switchboard, voicemail and operator support. Asterisk provides support for H.323 clients as well as those using the newer SIP standard. It also provides the proprietary IAX (Inter- Asterisk eXchange) protocol to enable the interconnection of multiple asterisk servers, with the ability to forward communications between servers or use one server as backup for another. The downside of Asterisk is the current lack of IPv6 support. [SER] (SIP Express Router) has a smaller footprint than Asterisk, supporting only SIP clients and services. It uses a full scripting language for its configuration, cutting down on the number of individual configuration files and improving scalability, at the expense of requiring operators to learn a new language. The configuration language provides full control over routing and aliasing, so it would probably be possible to mimic a large number of the features of Asterisk using scripts. SER also has inbuilt support for IPv6 as well as IPv4, and can listen on ports under both protocols concurrently, giving the advantages of IPv6 such as mobility and removing the need for NAT (network address translation). Other packages available include [VOCAL] which also supports both IPv4 and IPv6, however no testing was done with the package prior to writing this report. VOCAL suffers from the disadvantage that the source code (decompressed) was, last time we checked, a formidable 78.1Mb, as opposed to 9.8Mb for SER or 37Mb for Asterisk. This did not encourage us to try using the package.

VOIP Clients As with the server technology the more popular clients, software and hardware, mainly support the IPv4 protocol with support for IPv6. Some good examples of commercially available clients include [WINDOWS MESSENGER] for windows, [SJPHONE] for and Windows, neither of these being open source. [KPHONE] and [LINPHONE] are 2 excellent open sources software packages for Linux, both providing an easy to use GUI (Graphical user interface) to enable an easy setup. LinPhone was the only client found capable of IPv6 support natively without requirements for patching, however the interface does not supply a long enough field to enter a full IPv6 address therefore hostnames of IPv6 machines have to be used. As with the servers, there are many IPv4 client implementations available, both commercial and freely available, as well as a number of hardware implementations (SIP handsets). Examples of commercially produced clients include [WINDOWS MESSENGER] for Windows and [SJPHONE] for Linux and Windows. Neither of these

VOIP – Voice over IP Overview David Tarrant ([email protected]) Toby Hunt ([email protected]) Page 1 of 2 implementations currently support IPv6, and Windows Messenger lacks DTMF (dial tone) generation facilities which prevents its use with Voicemail and other touch-tone operated services. Free implementations include [KPHONE] and [LINPHONE], both available for Linux. KPhone uses the KDE library, while LinPhone has a GNOME GTK-based graphical interface. KPhone has been patched to support IPv6, but the patched version is now quite old and refused to compile on our test machines. LinPhone was the only client found to support IPv6 without patching, though there did seem to be an issue with a length restriction on one of the user interface text input boxes, preventing the entry of full IPv6 IP addresses in one of the server configuration fields. This was overcome by using hostnames rather than IPs when supplying server information to LinPhone. We have not yet had access to any hardware client implementations, but we are not aware of any commercially available hardware IPv6 handsets.

Conclusion There are many options for configuration of a successful VOIP network. The servers vary in complexity depending on requirements, from simple home or small office internal phone systems up to full city capacity telecoms providers with PTSN endpoints. There are also many types of client technology, with the majority of operating systems are now supported. Up-to-date information can usually be found on the VOIP Wiki at http://www.voip-info.org/, which covers information on VOIP technologies and news in the industry.

References

[ASTERISK] Asterisk VOIP Server http://www.asterisk.org

[SER] SIP Express Router http://www.iptel.org/ser

[VOCAL] Vovida Open Communication Application Library http://www.vovida.org/

[WINDOWS MESSENGER] http://www.microsoft.com/windows/messenger/ - Click the link in small print for Messenger 5.0 which supports SIP

[SJPHONE] SJLabs SJPhone http://www.sjlabs.com/

[KPHONE] KPhone http://www.wirlab.net/kphone/index.html

[LINPHONE] http://www.linphone.org

VOIP Wiki http://www.voip-info.org/

VOIP – Voice over IP Overview David Tarrant ([email protected]) Toby Hunt ([email protected]) Page 2 of 2