Voice over IP - eMyTextBooks

Search:  

Free online books - just read it!

See live article   •   Voice over IP
 

Voice over IP

Voice over IP


This book is a work in progress. Please feel free to add, correct or provide comments/criticism via the Discussion page.

Table of contents

Introduction

Voice over IP (or VoIP) is an emerging technology allowing encapsulation of voice telephony services within IP (Internet Protocol) for transmission over IP networks, such as the Internet.

VoIP technology provides cheap and flexible voice telephony by utilizing packet-switched networks for voice data, providing a much cheaper solution than traditional circuit-switched telecommunications services, while also allowing termination of IP calls closer to the intended destination, avoiding long-distance tolls.

With the global prevalence of broadband technology at home, interest in telecommutation technology and a move away from traditional copper line telephony, there is a lot of industry interest in VoIP technology.

Purpose

The purpose of this book is to provide a comprehensive introduction to Voice over IP technology and its benefits, as well as describe the relationship between VoIP components, and provide assistance in real-world implementation of Voice over IP.

This book is intended for those who posess moderate to high computing skills. The initial sections of the book, dealing with VoIP history and simple VoIP deployment for home and small business users, is specifically written to allow those interested in VoIP technology to get an opportunity to try it out without getting too technical. For those more tecnically inclined, subjects such as VoIP protocol analysis and advanced PBX functions are discussed toward the end of the book.

Moving away from traditional telephony

There are many compelling reasons for individuals and businesses to invest in Voice over IP. For smaller businesses or home users who frequently make long distance or timed phonecalls, to larger commercial ventures looking to reduce costs on site-to-site telephony.

The range of VoIP plans available also allow more flexibility and cost control. Because VoIP termination does not involve any physical rental or consume resources when idle, plans are available on a per-use or prepaid basis, on a monthly subscription basis, or in any number of other configurations.

A successful VoIP deployment requires good planning and a good understanding of the strengths and weaknesses of IP Telephony. Using the right hardware, the right VoIP provider(s), and a customised dialplan can save significant amounts of money.

Both the positive and negative aspects of VoIP technology are detailed in the following sections.

Benefits of VoIP

Cheaper long-distance - Because VoIP calls can be terminated anywhere in the world, long-distance calls can be made for much cheaper rates. For example, if you are a European VoIP user who frequently calls US numbers, you can purchase VoIP termination credit from a US VoIP provider, which will generally offer near local call prices from anywhere in the world.

Incoming Calls - For the same reason as above, VoIP provides the ability to obtain incoming telephone numbers from anywhere around the world, routed to you over the Internet. It's possible to obtain US 1-800 numbers, for example, no matter what your location.

No copper rental - Without the need for a circuit from your residence or business to your telephone company's exchange, your monthly costs can reduce significantly.

Dial-Plan freedom - Using a dial plan, you have the ability to direct your softphone, hardware phone or VoIP gateway to send calls to different VoIP gateways or via land-line, depending on the number dialled. You also have the ability to set priority numbers, directing the gateway to drop an existing call in favour of the priority call where no lines are available.

Free IP-to-IP Calls - Where both the caller and recipient are using VoIP to place/recieve calls, and where the correct configuration exists (see the section on ENUM at the end of this book), calls can be placed entirely over the internet without any charge.

VoIP Issues

As with any new technology, Voice over IP has its share of issues which must be considered carefully before implementation.

Emergency and Information services - There is no guarantee that calls terminated over IP for numbers such as 911 and 411 (in the United States) will be correctly routed. Due to the lack of location-specific termination of Voice over IP calls, it is not possible for such services to determine your location, and it is possible that the gateway your calls are terminating on does not have access to such numbers at all.

This limitation, and suggestions for workarounds, are discussed later in this book.

Bandwidth Issues - VoIP protocols can be very sensitive to both bandwidth limitations and network latency. Generally, VoIP calls must be placed via a broadband connection. Where there is heavy bandwidth utilization, high network latency, or the gateway is a significant distance from the user, call quality can be heavily degraded with the posibility that there will be no VoIP service at all.

See the chapter entitled traffic shaping and bandwidth control later in this book for suggestions on how this can be controlled.

NAT/PAT Issues - NAT (Network Address Translation) and PAT (Port Address Translation) are used to provide connectivity to machines in many situations such as private networks which require Internet connectivity.

With NAT, a gateway/router system will translate an IP address from the source address provided by the machine into another IP address entirely. NAT is often confused with PAT, however NAT provides a 1:1 relationship, eg. 192.168.10.10 will be translated to 203.10.10.10.

PAT is a slightly different translation. With PAT, one or more public IP addresses exist for any number of private/translated addresses. In the most common setup, a home user may have a residential DSL connection and a single public IP address, however they may have several computers on a private network behind their gateway/router which require internet connectivity.

With PAT, the router/gateway will translate all private IP addresses into the public address provided, and will keep track of which ports established via this address belong to which private IP addresses, allowing the machines to share the public IP address.

VoIP protocols often have inherent issues with NAT and PAT. Due to the prevalence of these gateway devices for cable, wireless and DSL users, even users with single machines may find that PAT is performed by default via their router.

Please see the section immediately below entitled VoIP Protocols for more information on which protocols in particular are affected by NAT and PAT and how to avoid problems.

Voice over IP Technology

The term VoIP is often used to describe general IP telephony technology. Behind this term lies a range of different protocols, languages used to communicate between a range of different devices and vendors.

These protocols are one of the most important factors in choosing a VoIP solution. It is generally impossible to get different devices to communicate, unless they support the same protocol.

VoIP Protocols

The following protocols are associated with VoIP voice call termination and inter-gateway communication.

H.323

SIP (Session Initiation Protocol) - The SIP protocol is a standard developed by the IETF (Internet Engineering Task Force) (http://www.ietf.org) for use in establishing multimedia sessions such as voice, instant messaging and video, amongst other applications.

SIP is also responsible for the implementation of other voice session related functions such as holding voice calls, transferring calls, or hosting several voice conversations simultaneously (call conferencing).

IAX (Inter Asterisk eXchange) - The IAX protocol was developed by a team of open-source developers working on the Asterisk (http://www.asterisk.org) project, a very popular and successful open-source PBX described later in this document.

There is not much industry support for IAX, however support has been slowly increasing. There has been a lack of good documentation for the IAX protocol, and many commercial vendors are hesitant to give their support to a protocol not ratified by a standards body such as the IETF or ITU.

IMS (IP Multimedia Subsystem) - IMS is currently in development and testing phases, and was originally developed as a protocol for carrying 3G telephony data. It is seen as an extension of the SIP protocol, however it is not in wide use at the moment.

LTP (Lightweight Telephony Protocol) - the LTP is a binary lightweight protocol that is NAT friendly and based entirely on free codecs. It is easily understood and in use since 1999.

VoIP Phone Hardware/Software

VoIP hardware and software implementations allow phonecalls to be placed over IP. Software which uses a computer's soundcard device to provide voice input and output is known as a Softphone.

Several hardware devices exist to provide VoIP telephony. ATA devices provide standard phone ports, allowing standard phone handsets and other devices such as fax machines to utilize VoIP services. Specialised VoIP handsets are also available, often providing advanced features supported by VoIP gateways.

Hardware phones generally provide a better quality VoIP experience than Softphones, however the convenience of not requiring extra hardware, and the smaller expense involved in Softphone products make softphones a popular choice.

Softphones


Xten eyeBeam VoIP Softphone screenshot

Softphones utilize a computer's soundcard device to provide voice input (via microphone) and output (via headphones/speakers) without the need for extra hardware. There are also handsets and headsets available which plug into the soundcard and resemble normal phone headsets/handsets, making softphone use more comfortable.

Xten X-Lite (http://www.xten.com/index.php?menu=products&smenu=xlite) is a popular free Softphone which provides all necessary features to initiate and receive phonecalls via SIP.

VoIP Handsets

ATA Adaptors


Image of a Sipura SPA-2000 dual port ATA device.

ATA (Analog Telephone Adaptor) Devices provide the ability to connect standard telephone handsets to a hardware unit which provides VoIP capability.

An advantage of ATA devices is the ability to connect other telephony devices, such as TTY devices, FAX machines, Pay TV units and even modems.

VoIP Gateway Systems

This chapter deals with the complex world of VoIP gateway systems. These systems are responsible for providing some amount of call control and routing from VoIP phone devices.

Each of these systems is responsible for receiving calls from a VoIP handset, ATA or softphone device via a supported VoIP protocol, consulting a dial-plan or other call routing table, and correctly routing the call. Other features made available by some or all of these gateways include:

Authentication - Ensuring that clients have permission to use VoIP resources.

Call Accounting - Providing tracking of calls via the gateway, including reports and cost controls.

Complex Dialplans - Most dialplans configured on simple devices such as ATAs and softphones only allow for a very straightforward dialplan configuration. Using a VoIP gateway such as Asterisk, factors such as time of day, or even values obtained from external sources can be used to determine which path a call should take.

Hardware Integration - Most gateways provide the ability to interface with physical hardware such as FXS (internal line) and FXO (PSTN line) cards to create a PBX system. They additionally provide the dialplan configuration to determine which calls should route via IP, and which should utilize a card. It is important when selecting gateway software to evaluate which devices they support, and ensure yours is listed. Some devices (for example, Cisco line cards) may require the vendor's specific implementation of VoIP gateway for any support at all.

Internal Numbering - Some gateways offer the ability to provide internal extension numbering for clients, allowing one VoIP device to dial another device registered on your local gateway using a short internal extension number.

When would you use a VoIP gateway?

In which situations would you use a VoIP gateway product?

Generally, if you require an advanced configuration such as advanced call accounting for billing, cost controls, complex dialplans, or the ability to call between extensions, you should implement a gateway solution.

If you are interested in integrating extra hardware such as FXO cards (interfaces to the PSTN) you MUST use a gateway product.

If you are designing VoIP solutions for mid-large size business, or will be requiring IVR (Interactive Voice Response) functionality, you should implement a VoIP gateway.

Open-Source GatewaysCommercial Gateways
Asterisk
Bayonne
OpenSER
SIP Express Router
[Yate (http://yate.null.ro)]

Asterisk: The open-source PBX

Asterisk (http://www.asterisk.org) is an extremely popular open-source PBX system which runs on Linux, BSD, Windows and even Apple OS X. The project is sponsored by Digium (http://www.digiumcom), a PBX hardware manufacturer.

Asterisk has support for ENUM, e911, Caller ID, all call controls such as Forwarding, Conferencing, Hold, Transfer and Call Waiting. Additional features suchas Call Monitoring, Call Recording and Privacy Controls also exist.

In addition to the above, Asterisk is able to provide IVR functions, allowing interactive voice prompts, call queueing, and many many advanced call routing features.

In all, Asterisk is a remarkably full featured commerical-grade PBX system available free of charge.

Bayonne

OpenSER

Web page: http://openser.org

OpenSER is a robust and powerful SIP server. Released under GPL, OpenSER is the first free server with integrated TLS, offering secure VoIP communications. It has an architecture designed for scalability and flexibility and high performances.

Main characteristics:

 - SIP proxy/registrar/redirect server (RFC3261)
 - transaction stateful
 - UDP/TCP/TLS support
 - modular architecture
 - scripting configuration file with pseudo-variables 
 - authentication, authorization and accounting via database, radius or text files
 - enum support
 - NAT traversal system
 - formatted logging
 - least cost routing
 - Call Processing Language (CPL)
 - MySQL/Postgres/Flat files database backend
 - sever monitoring

SIP Express Router

[Yate (http://yate.null.ro)] - Yet Another Telephony Engine


Yate is a next-generation telephony engine; while currently focused on Voice over Internet Protocol (VoIP), its power lies in its ability to be easily extended. Voice, video, data and instant messaging can all be unified under Yate's flexible routing engine, maximizing communications efficiency and minimizing infrastructure costs for businesses.

Yate can be used as a:

   * VoIP server
   * VoIP client
   * VoIP to PSTN gateway
   * PC2Phone and Phone2PC gateway
   * H.323 gatekeeper
   * H.323 multiple endpoint server
   * SIP session border controller
   * SIP router
   * SIP registration server
   * IAX server and client
   * IP Telephony server and client
   * Call center server
   * IVR engine
   * Prepaid and postpaid cards system

VoIP PABX Integration

Advanced VoIP Configuration

Traffic shaping and bandwidth control

Correctly terminating emergency calls

Particular attention should be given to ensuring that emergency calls on VoIP lines are handled correctly. In some cases, it may not be possible to provide useful or reliable emergency service via VoIP services. In this case, it may be possible to offload emergency calls to a landline service.

If reliable emergency service is not available, the handset or VoIP device should clearly be marked with a warning.

Some VoIP providers allow emergency calls to be routed via their service, however this is only of use if you are within an area covered by the receiving emergency call centre. Additionally, a lack of bandwidth or internet service can lead to loss of emergency service via telephone.

Suggestions for dealing with emergency calls

If a functioning landline handset is nearby, it is advisable to attach a notice to the VoIP device directing emergency calls to the landline. It is much easier for emergency services to assist if they have information on your location which is generally not available via VoIP calls.

Where calls are handled by a gateway administered by yourself or your organisation, and the ability to route certain calls via landline exists, the dialplan for your VoIP gateway should immediately route emergency calls via the landline, and where possible, any active conversations should be dropped if there arenot sufficient lines to handle the call.

It's important to find out whether your VoIP provider(s) offer emergency numbers, what areas they are able to cover and whether they are able to provide enhanced emergency services such as e911 initiatives which allow providers to transmit information on subscribers to 911 call centres.

Ensure that emergency calls are routed via the most appropriate gateways in your dial plan.

Incoming telecommuncations services

IVR (Interactive Voice Response) application

ENUM/E164 Technology

The following section is quite technical, as it deals with complicated infrastructure and the integration of VoIP into core internet technologies.

The ENUM protocol (described in RFC document RFC 3761 (http://www.ietf.org/rfc/rfc3761.txt)) translates standard telephone number routing (known as E.164, as the ITU defines the standard by which telephone numbers are assigned in the E.164 standard) into an addressing scheme able to route to VoIP (eg. SIP/H323) gateways using DNS technology.

ENUM technology allows VoIP servers to use the DNS infrastructure to query routing paths for terminating voice calls given a phone number.

When a call is initiated to a given phone number, a VoIP gateway capable of ENUM service will query the provided number in DNS to determine whether there is a path other than the PSTN line available to the destination service.

This allows providers to advertise paths via VoIP to services otherwise only available via a VoIP to PSTN gateway.

ENUM records may contain other information in addition to a VoIP gateway address, such as a web URL or e-mail address.

Private vs Public ENUM databases

The public ENUM database is a collection of ENUM records, known as NAPTR RRs in DNS speak, which map telephone numbers to VoIP service gateways. These records are stored in a heirarchical tree beneath the e164.arpa domain.

Records within the e164.arpa domain are delegated to their responsible owner via the E.164 addressing convention. Much like the in-addr.arpa domain, which is used to provide mapping of IP addresses to names, these records are delegated in blocks to the agency responsible for this number assignment.

The agency is then responsible for further smaller delegations where necessary. As a result, it is unlikely that individuals or small businesses will have access to provide ENUM records for their telephone numbers.

It also stands to reason that telephone companies would be hesitant to allow telephone calls destined o their customers to instead terminate over the internet, as much of a phone company's revenue would be derived from call termination fees, charged to carriers for calls terminating on a company's network.

This is unfortunate for end users. Via the ENUM database, you would have the opportunity to direct VoIP-based calls to terminate over the internet via your VoIP gateway, rather than via a phone line.

For this reason, several free ENUM databases have been created to allow users to share alternate IP-based paths to their phone numbers. Most ENUM aware gateways will allow additional 'search domains' to be configured, providing access to these unofficial databases.

Whilst configuring a gateway to query these extra domains can dramatically reduce costs by terminating calls over IP, therefore freeing copper lines/voice channels for both the caller and recipient, there is an important factor to consider. If a malicious or unauthenticated entry is added, an attacker can direct calls for a phone number to an arbitary VoIP gateway.

Consider the example of rival businesses. If Business A were tech-savvy and entered their competitor's number into a public directory, directing calls to their own VoIP gateway, any calls placed via a VoIP gateway configured to query that directory would be directed to Business A's phone, rather than the intended recipient, Business B.

Some of these directories require voice verification of ownership when you register phone numbers. Others do not require verification or have dispute resolution policies which deal with disputes on a case by case basis.

Another less serious but still important consideration is the posibility that your information will be harvested from the database, or sold by the database owner. ENUM information may be valuable to advertisers or phone spammers, as it would provide them with a list of valid phone numbers, and allow them to call for free via IP.

Public ENUM registries

Free Registries

e164.org (http://www.e164.org) - International E.164 database.

e164.dk (http://www.e164.dk) - Danish E.164 database.

q.nemox.net - Austrian E.164 database. This was the first public ENUM database on the Internet.

SIP.edu Exchange (http://www.bluelavasoftware.com/cgi-bin/edit/BLWeb/SipedueXchange) - The SIP.edu exchange provides access to many educational VoIP gateways, for institutions such as MIT, UC Berkeley, UCLA, and others.

thevpf.com (http://www.thevpf.com) - The Voice Peering Fabric registry.

Commerical Registries

ENUM Trial Registries

Many ENUM trial registries are becoming available. Most of these registries are regional, and often are limited by telephony provider, limited number of trial participants, or a trial fee.

Australian ENUM Trial (http://www.enumregistry.com/) - Fee applies for registration

Austrian ENUM Trial (http://enum.nic.at/) - Open to Austrian residents, a fee applies for registration.

German ENUM Trial (http://www.enum-trial.de/index_frame_ie.html)

Japanese ENUM Trial (http://etjp.jp/english/) - Open to ETJP contributors since 2003. Currently has 46 members.

Taiwan ENUM Trial (http://service.enum.org.tw/)

UK ENUM Trial (http://www.ukenumgroup.org/)

VoIP Resources

www.enum.info - Information about the ENUM system.

www.voip-info.org - An excellent wiki resource for VoIP users interested in how to deploy, debug, administer and enhance VoIP systems.

Appendices

Appendix A: Glossary of Terms

ATAAnalog Telephone Adaptor
Broadband
DSLDigital Subscriber Line
IPInternet Protocol - IP is the common protocol, or language, used by all devices on the Internet to communicate regardless of vendor.
NATNetwork Address Translation - The translation of a Network (IP) Address to another address by a gateway or router device
PAT
PBXPrivate Branch Exchange
POTSPlain Old Telephone System. See PSTN below.
PSTNPublic Switched Telephone Network
RFCRequest For Comments
SIPSession Initiation Protocol


Also helps finding: VoiceoverIP, Voiceover, overIP, voce, voici, vioce, voie, vocie, voise, coice, boice, voive, oice, oice, vice

   
 
  
Add to bookmarks
Top Articles
 
Ada Programming/Keywords/for
Ada Programming/Keywords/function
Ada Programming/Keywords/is
Ada Programming/Keywords/null
Ada Programming/Keywords/renames
Cookbook:Chicken
Cookbook:Cup
Cookbook:Garlic
Cookbook:Ingredients
Cookbook:Salt
Cookbook:Sugar
Cookbook:Tablespoon
Cookbook:Teaspoon
Main Page
SA NCS:Accounting
SA NCS:Dramatic Arts
SA NCS:Electrical Technology
SA NCS:Geography
SA NCS:Life Orientation
SA NCS:Mechanical Technology
SA NCS:Tourism
Search LiveJournal blogs for Voice over IP
 

Watch Anime  •  Free Animated Greetings  •  Internet Advertising  •  Shops •  US Business Directory

Copyright @ 2005 eMyTextBooks.com
This article is from Wikibooks. All text is available under the terms of the GNU Free Documentation License.