1 Lesson 1 Abstract Introduction to VoIP Technology This first lesson of contains the basic knowledge about the terms and processes concerning the Voice over IP technology. The main goal of this lesson is to make the reader be familiar with the essential knowledge about VoIP before starting to write VoIP communication programs. Introduction Before you start programming VoIP applications, you need to have a stable basic knowledge about voice over IP technology. You need to understand the basic terms and see how VoIP communication is built up, so when you finally start working on your VoIP solution you will only need to put your knowledge into practice. This lesson gives you a basic overview about VoIP technology and the related terms and shows the processes that go behind the scene while communicating via VoIP. This knowledge is essential for everyone who wants to write a VoIP application as without understanding the basics writing a VoIP program at least difficult. When you start to write your own VoIP programs and have some difficulties with the basic processes, you can always come back and check them in this lesson and you will find it easier to work with the knowledge you get from this material. Basic Terms and Definitions Voice over IP is a collection of technologies and protocols that define the basic rules for communication through the Internet Protocol. VoIP works by encoding voice information into a digital format, which can be carried across IP networks in discrete packets. The process of VoIP communication basically consists of voice digitization, connection establishment, data transmission and voice decoding at the remote end. These processes use a lot of hardware and software equipments. The process itself is basically similar to the traditional telephone communication but has some differences from it too. Figure 1 shows the basic architecture for VoIP technology. The parts of the VoIP system will be introduced in the following sections. 1.
2 Figure 1 - Voice over IP architecture diagram In the ordinary telephone network the connection between two telephones was established by a switchboard. In the VoIP model this role is dedicated to the soft switch. It is a software solution that controls connection between the end-points where there is no end to end VoIP connection is not available. The soft switch can be divided into two parts, the media gateway and the call agent. The call agent is mainly responsible for call routing, network signaling and billing. The media gateway is used to connect different physical networks in order to provide end-to-end connectivity. It functions very similarly to a typical network switch in that it can create a heterogeneous link between endpoints, regardless of the network media in between. In addition, the Media Gateway can also connect a VoIP circuit to a PSTN circuit, allowing the use of VoIP even when only one of the endpoints is VoIP enabled. The VoIP telephone sets can be divided into two classes, softphones and hard phones. Hard phones are the traditional telephone devices that are capable for VoIP communication. If the soft switch is the switchboard for VoIP the softphone is the telephone solution originally dedicated to VoIP communication. It is a software with all the telephone functions that can run on an ordinary personal computer and uses the main hardware devices (sound card, microphone, speaker) for realizing the communication. Analog Terminal Adapters (ATA) perform analog and digital conversions between a traditional analog phone and the broadband modem, allowing users to use the VoIP service with an existing phone. The ATA functions much as a Media Gateway does, translating data between analog and digital communication. ATAs typically have two ports: a telephone jack (FXS port) 2.
3 and a LAN port. This enables a user to plug into the FXS port an analog telephone, and then attach the ATA to the network with an UTP cable. This way the analog telephones will be available for VoIP calls too. The voice digitization, compression or conversion back to analog data need the implementation of certain coder-decoder solutions called CODECs. These codecs are defined in standards that have to be supported by the VoIP communication entities like softphones, hardphones, ATAs in order to be able to communicate. Ozeki VoIP SIP SDK contains the support for the following codecs: G.711, G.722, G.729, ilbc, Speedx. The information about these codecs can be found on the web page. The core IP network is a segment of the Internet (or is special cases the Internet itself) that guarantees a quality of service when transporting a stream of IP packets between voice applications. The signaling gateway is responsible for notifying a VoIP end point that another end point requests for communication. This process is called signaling. The main goal of the signaling gateway is to implement the difference between the VoIP signaling and the PSTN notifying system in order to provide the communication between VoIP and non-voip networks. A VoIP trunk gateway is an interface that facilitates the use of plain old telephone service (POTS) equipment, such as conventional phone sets and fax machines, with a voice over IP network. The VoIP trunk gateway is basically used for connecting the Private Branch Exchange (PBX) to the PSTN. The VoIP solutions are connected to a PBX that is a software or hardware that establishes the connection between the end points using a SIP account. The Session Initiation Protocol (SIP) was originally designed as a means of notifying or inviting users to Internet multicast and broadcast sessions. It provides control over multimedia sessions. Implemented at the application layer, it is capable of establishing, modifying, and terminating sessions. In the context of IP telephony, these sessions are the VoIP calls themselves, and SIP is used to place the calls, modify them in-session (for example, inviting other users for features such as three-way calling), and to hang up. Also integrated into SIP s design is mobile capability, because SIP handles name mapping and redirection servers. This allows users to use IP telephony without regard to their physical or network location. 3.
4 Session Initiation Protocol The primary SIP functions are the following: User location and name translation - this ensures that the caller reaches the called end point User availability - the presence information about the user, indicates if the user is willing to engage in communication Users capabilities - This allows the group on the call to agree on the different features supported. If a certain CODEC rate is not supported by SIP, there is room for negotiation. Session setup - it is used for communication session establishment by using session parameters Session management - it is used for modifying session parameters and invoking services The SIP communication is made via SIP requests and responses. The following tables contain these with some basic explanation about them Table 1 - SIP requests Request type INVITE ACK BYE CANCEL OPTIONS PRACK REGISTER Description Indicates a user or service is being invited to participate in a call session. Confirms that the client has received a final response to an INVITE request. Terminates a call, and can be sent by either the caller or the callee. Cancels any pending searches but does not terminate a call that has already been accepted. Queries the capabilities of servers Provisional acknowledgement Registers the address listed in the To header field with a SIP server. Registrations can require authentication. The SIP requests are sent to the PBX from the VoIP clients and the PBX sends back some SIP responses in return or vice versa. The connection between two clients is established by these SIP request-response collections and after the connection is established the PBX gets out of the line and the two clients can communicate directly. 4.
5 The following table contains the SIP response categories that can be sent between a VoIP client and the PBX. Table 2 - SIP responses Response type SIP 1xx SIP 2xx SIP 3xx SIP 4xx SIP 5xx SIP 6xx Description Informational responses (for example, 180 Ringing) Successful responses (for example, 200 OK) Redirection responses (for example, 302 Temporarily Moved) Client failure responses (for example, 404 User Not Found) Server failure responses Global failure responses Figure 2 shows an average communication flow between two VoIP clients from the registration to the PBX, through the connection establishment and the actual communication till the end of the communication. 5.
6 Figure 2 - SIP communication between two VoIP clients and a PBX 6.
7 The figure shows the whole VoIP communication process and the related SIP messages. The first step of the communication must be the registration to the PBX. This is shown by the red arrows in the figure. The registration is mainly a REGISTER request and an OK response pair. In some cases the registration can consist of more messages when the clients have to possess a SIP account for authentication. In those cases the PBX sends back the SIP registration data and the client has to send another REGISTER request with the provided SIP account. A successful registration is always completed by the PBX sending an OK 200 message to the client. When both clients are registered to the PBX they can request for communication line establishment. This is shown in the figure by the green arrows. The communication start request is an INVITE message that is sent from a client to the PBX. The PBX sends back a synchronous TRYING message to the client and sends the INVITE message to the other client. The called client sends back a TRYING response and, if the connection can be established, it also sends back a RING message that is transferred from the PBX to the caller client. When the called client accepts the call an OK message is sent to the PBX, and it also sends an OK response to the caller client. At this point the connection between the two clients is established and the PBX gets out the communication. The communication itself is made directly between the two VoIP clients and it is shown in the figure by the black arrow. When one of the clients want to end the call a BYE SIP request is sent from it to the PBX and it transfers it to the other end point. The other client sends back an ACK message that is sent to the first client too. This ACK notifies the client that the remote party acknowledged the end call request. After this the communication line is closed and both clients stop the software tools and hardware devices that were in use during the communication. The SIP messages for ending the communication is shown by the magenta arrows in the figure above. At this point you are familiar with the basic terms and processes that have to be considered, implemented or supported when you want to build a VoIP solution. Many of these tools are provided by Ozeki VoIP SIP SDK and there are some that you will need to implement, but it is essential that you know the basic concepts behind VoIP communication in order to write appropriate VoIP solutions. Source Code This first lesson is about the basic terms and processes about VoIP technology, therefore it does not contain any source codes. The next lessons will be more of practical approach and will mainly be based on source code explanations and practices. 7.
8 Summary This introductory lesson of gave you a comprehensive picture about Voice over IP and related terms and process. If you have read through this material carefully, you have all the basic knowledge to start writing a VoIP application. If you want to check that you have understood all the topics that were covered in this lesson, please answer the following questions. You can check the correct answers on the following page or in the previous sections of the course material. Knowledge Check Questions 1. What are the basic similarities between analog telephones and VoIP communication devices? 2. What is Session Initiation Protocol and what is it used for? 3. What is a PBX for? 4. How can a VoIP communication line be established between two end points? 8.
9 Correct Answers for Knowledge Check Questions 1. The analog telephone communication and the VoIP communication basically use the same devices, just in case of the VoIP model, some devices like the switchboard or the telephone itself can be implemented as software solutions. 2. Session Initiation Protocol contains the tools for establishing and handling VoIP communication lines. It defines request and response messages that are for notifying the VoIP tools about the communication process change and status. 3. Private Branch Exchange is a hardware or software tool that is basically responsible for the establishment of communication between two end points. It can also be connected to the Public Switched Telephone Network and so can provide communication lines between VoIP and non-voip end points. 4. The communication line between two VoIP clients is set by sending certain SIP messages between the end points through the PBX. The establishment starts with an INVITE call that is followed by TRYING and RING messages. The establishment is successful when the remote client accepts the call by sending an OK SIP message that is followed by an ACK message from each client. After the successful establishment of the call the PBX gets out of the communication line and the clients can talk to each other directly. 9.
IP PBX PHONE SYSTEM T. C. ISTANBUL AREL UNIVERSITY FACULTY OF SCIENCE AND ARTS DEPARTMANT OF MATHEMATIC AND COMPUTER by Seda TEMEL JULLY, 2013 IP PBX PHONE SYSTEM Dissertation written by Seda TEMEL 100101060
V200R002C01 Issue 01 Date 2012-06-10 HUAWEI TECHNOLOGIES CO., LTD. 2012. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means without prior written
C H A P T E R 4 Session Initiation Protocol The Session Initiation Protocol (SIP) is an Internet Engineering Task Force (IETF) standard call control protocol, based on research at Columbia University by
Voice User Guide Model No. SPA3102 Copyright and Trademarks Specifications are subject to change without notice. Linksys is a registered trademark or trademark of Cisco Systems, Inc. and/or its affiliates
Mediatrix 4400 Digital Gateway VoIP Trunking with a Legacy PBX June 21, 2011 Proprietary 2011 Media5 Corporation Table of Contents Table of Contents... 2 Introduction... 3 Mediatrix 4400 Digital Gateway
16-Channel VoIP Gateway Card Getting Started Model No. KX-TDA0490 Thank you for purchasing a Panasonic 16-Channel VoIP Gateway Card. Please read this manual carefully before using this product and save
VoIP 101: An introduction to the basics of Voice over Internet Protocol How to guide Introduction You may have heard of VoIP that it s the future of telephone service, and that you can save a lot of money
VoIP Glossary Analog audio signals: Analog audio signals are used to transmit voice data over telephone lines. This is done by varying or modulating the frequency of sound waves to accurately reflect the
Voipswitch Manual for version 340 and higher by Gabriel Georgescu 1 OVERVIEW 3 SOFTSWITCH 4 REQUIREMENTS. 10 PROGRAM INSTALLATION. 10 LAUNCHING THE MAIN APPLICATION VOIPSWITCH 12 GATEWAYS 18 GK/REGISTRAR
Internet Telephony Terminology Understanding the business phone system world can be a daunting task to a lay person who just wants a system that serves his or her business needs. The purpose of this paper
Report Number: I332-016R-2005 Security Guidance for Deploying IP Telephony Systems Systems and Network Attack Center (SNAC) Released: 14 February 2006 Version 1.01 SNAC.Guides@nsa.gov ii This Page Intentionally
Documentation on SIP PBX trunking with SIP-DDI 1.0 and the related QSC product IPfonie extended Version 1.1, date: september 15th, 2011 page 1/22 List of references Author Document Roland Hänel "Technical
How to Successfully Select and Implement a Hosted VoIP System Written by Igal Rabinovich, CEO IT Help Central How to Successfully Select and Implement a Hosted VoIP System Page 1 TABLE OF CONTENTS EXECUTIVE
VoIP User Guide - Setting up your VoIP system from Gradwell dot com VoIP User Guide Author: Communication Arts, for Gradwell Effective from: August 2006 Document version: Edition 2 Gradwell dot com ltd,
IceWarp Unified Communications VoIP Service Reference Version 10.4 Printed on 13 April, 2012 Contents VoIP Service 1 Introduction... 1 The Big Picture... 4 Reference... 5 General... 5 Dial Plan... 7 Dial
Integrating VoIP Phones and IP PBX s with VidyoGateway Updated February 2011 INDEX: I. ABSTRACT.1 II. III. IV. VIDYOGATEWAY OVERVIEW.. 1 NETWORK TOPOLOGIES AND DEFINITIONS...2 CONNECTING TO VIDYOCONFERENCES
VoIP communication Deploying the PBX220 IP Telephone System Technical Manual PBX220 1 Menu Getting Started... 4 Introduction... 5 Packing list... 6 Specification... 6 Hardware Setup... 7 First Login to
VoIP communication AX210 IP Telephone System User Manual 1 AX210 Menu Getting Started... 3 Introduction... 4 Packing list... 5 Specification... 5 Hardware setup... 6 First Login to Wizard... 7 Extension...
header for SPIE use Comparison of H.323 and SIP for IP Telephony Signaling Ismail Dalgic a, Hanlin Fang b a 3Com Corporation Technology Development Center 5400 Bayfront Plaza, M/S 3219, Santa Clara, CA
Fax over IP Contents Introduction Why Fax over IP? How Real-time Fax over IP works Implementation with MessagePlus/Open Summary About this document This document describes how Fax over IP works in general
X-Lite 4 for Windows User Guide CounterPath Corporation CounterPath Corporation Suite 300, One Bentall Centre 505 Burrard Street, Box 95 Vancouver, BC V7X 1M3 Tel: 604.320.3344 email@example.com www.counterpath.com
Avaya Solution & Interoperability Test Lab Application Notes for Configuring Broadvox SIPTrunking with Avaya IP Office R9.0 - Issue 1.0 Abstract These Application Notes describe the procedures for configuring
Document Scope This solutions document describes how to deploy and manage SonicWALL s integrated VoIP security features to enable the secure deployment of VoIP communications in a variety of network environments.
How Small Businesses Can Use Voice over Internet Protocol (VoIP) Internet Technology for Voice Communications Small businesses will find this booklet useful for learning how VoIP works and for clarifying