White paper. SIP An introduction



Similar documents
Chapter 10 Session Initiation Protocol. Prof. Yuh-Shyan Chen Department of Computer Science and Information Engineering National Taipei University

TECHNICAL CHALLENGES OF VoIP BYPASS

Introduction to VoIP Technology

VIDEOCONFERENCING. Video class

Indepth Voice over IP and SIP Networking Course

Overview of Voice Over Internet Protocol

Chapter 2 PSTN and VoIP Services Context

SIP : Session Initiation Protocol

NAT TCP SIP ALG Support

Need for Signaling and Call Control

Application Notes for Configuring Avaya IP Office 9.0 with HIPCOM SIP Trunk Issue 1.0

MODELLING OF INTELLIGENCE IN INTERNET TELEPHONE SYSTEM

SIP Trunking and Voice over IP

Manual. ABTO Software

An Introduction to VoIP Protocols

NTP VoIP Platform: A SIP VoIP Platform and Its Services

Avaya IP Office 8.1 Configuration Guide

SIP A Technology Deep Dive

How to Configure the Allworx 6x, 24x and 48x for use with Integra Telecom SIP Solutions

EarthLink Business SIP Trunking. ININ IC3 IP PBX Customer Configuration Guide

Version 0.1 June Xerox WorkCentre 7120 Fax over Internet Protocol (FoIP)

EE4607 Session Initiation Protocol

Application Notes for Configuring Cablevision Optimum Voice SIP Trunking with Avaya IP Office - Issue 1.1

Creating your own service profile for SJphone

SIP Essentials Training

EarthLink Business SIP Trunking. Switchvox SMB 5.5 & Adtran SIP Proxy Implementation Guide

A Scalable Multi-Server Cluster VoIP System

TSIN02 - Internetworking

Basic Vulnerability Issues for SIP Security

Application Notes for Avaya IP Office 7.0 Integration with Skype Connect R2.0 Issue 1.0

SIP Trunking Manual Technical Support Web Site: (registration is required)

SIP (Session Initiation Protocol) Technical Overview. Presentation by: Kevin M. Johnson VP Engineering & Ops

EarthLink Business SIP Trunking. NEC SV8100 IP PBX Customer Configuration Guide

EarthLink Business SIP Trunking. Toshiba IPedge Customer Configuration Guide

Mediatrix 3000 with Asterisk June 22, 2011

IP Office Technical Tip

Configuring SIP Trunking and Networking for the NetVanta 7000 Series

Formación en Tecnologías Avanzadas

SIP Trunking Quick Reference Document

Bria BlackBerry Edition User Guide

IP Telephony Deployment Models

Session Initiation Protocol (SIP) The Emerging System in IP Telephony

Implementing Intercluster Lookup Service

Media Gateway Controller RTP

MITEL SIP CoE. Technical. Configuration Notes. Configure MCD 4.1 for use with SKYPE SIP Trunking. SIP CoE

A Comparative Study of Signalling Protocols Used In VoIP

Application Notes for Configuring Intelepeer SIP Trunking with Avaya IP Office Issue 1.0

Sample Configuration for SIP Trunking between Avaya IP Office R8.0 and Cisco Unified Communications Manager Issue 1.0

INdigital SIP trunk interconnection

MITEL SIP CoE. Technical. Configuration Notes. Configure MCD 6.X for use with babytel SIP trunks. SIP CoE

IP PBX. SD Card Slot. FXO Ports. PBX WAN port. FXO Ports LED, RED means online

SIP Trunking. Service Guide. Learn More: Call us at

Application Notes for Configuring Broadvox SIP Trunking with Avaya IP Office - Issue 1.0

AT&T IP Flex Reach/ IP Toll Free Configuration Guide IC 3.0 with Interaction SIP Proxy

Online course syllabus. MAB: Voice over IP

Configuration Notes 290

ADTRAN SBC and Cisco Unified Call Manager SIP Trunk Interoperability

Integrating Voice over IP services in IPv4 and IPv6 networks

Integration of GSM Module with PC Mother Board (GSM Trunking) WHITE/Technical PAPER. Author: Srinivasa Rao Bommana

Technical Configuration Notes

SIP INTEROP TEST DESCRIPTION

SIP, Session Initiation Protocol used in VoIP

Application Note. Onsight Connect Network Requirements V6.1

How to Configure the NEC SV8100 for use with Integra Telecom SIP Solutions

Technical Configuration Notes

SIP Trunking Application Notes V1.3

Dial91 iphone User Guide

Internet Technology Voice over IP

INdigital ESinet SIP interconnection

SIP PBX TRUNKING WITH SIP-DDI 1.0

SIP Security Controllers. Product Overview

MITEL SIP CoE. Technical. Configuration Notes. Configure the Mitel 3300 MCD 4.1 for use with Paetec Broadworks Softswitch. SIP CoE

Integrate VoIP with your existing network

Avaya IP Office SIP Trunk Configuration Guide

ARCHITECTURES TO SUPPORT PSTN SIP VOIP INTERCONNECTION

VOICE OVER IP AND NETWORK CONVERGENCE

Link2VoIP SIP Trunk Setup

Integrating Citrix EasyCall Gateway with SwyxWare

Session Initiation Protocol (SIP)

Voice over IP Fundamentals

How to make free phone calls and influence people by the grugq

NetComm V90 VoIP Phone Quick Start Guide Draft Release 0.1

P160S SIP Phone Quick User Guide

Session Initiation Protocol (SIP)

Application Notes for Configuring SIP Trunking between McLeodUSA SIP Trunking Solution and an Avaya IP Office Telephony Solution 1.

Application Notes for Configuring SIP Trunking between Metaswitch MetaSphere CFS and Avaya IP Office Issue 1.0

This specification this document to get an official version of this User Network Interface Specification

Dial91 Android Edition User Guide

Cisco Networks (ONT) 2006 Cisco Systems, Inc. All rights reserved.

SIP: Ringing Timer Support for INVITE Client Transaction

Understanding Voice over IP Protocols

Operation Manual Voice Overview (Voice Volume) Table of Contents

nexvortex Setup Guide

How to Configure the Avaya IP Office 6.1 for use with Integra Telecom SIP Solutions

Voice Traffic over SIP Trunks

The SIP School- 'Mitel Style'

IP Ports and Protocols used by H.323 Devices

EarthLink Business SIP Trunking. NEC SV8300 IP PBX Customer Configuration Guide

MAXCS Release 7.0. Application Note: Remote MultiVoIP Gateway Configuration. Intended audience: AltiGen Authorized Partners

Application Notes for BT Wholesale/HIPCOM SIP Trunk Service and Avaya IP Office 8.0 Issue 1.0

Transcription:

White paper An introduction

Table of contents 1 Introducing 3 2 How does it work? 3 3 Inside a normal call 4 4 DTMF sending commands in sip calls 6 5 Complex environments and higher security 6 6 Summary 7 7 The dictionary 8

1. Introducing Session Initiation Protocol () is used to initiate, maintain and terminate multimedia sessions between different parties. Usually these sessions consist of audio, but sometimes they consist of video. is the standard protocol used in Voice over IP (VoIP) applications and unified communication platforms. is for example supported by AXIS C3003-E Network Horn Speaker and AXIS A8004-VE Network Video Door Station and constitute a new way to connect, integrate and control your Axis network products. 2. How does it work? In order to communicate using at least two clients are needed. A client can be a hardphone, softphone, mobile client or enabled Axis product. Each client is assigned its own address. A address looks like an email address with a sip: prefix, for example, sip:bob@biloxi.ex.com [sip:<user>@<provider>]. This identifier can be used across a number of devices and is analogous to the use of a telephone number linked to a SIM card that can be used in a number of devices. 2.1 Peer-to-peer setup the simple way A system can take many forms. In its simplest form, the system consists of two or more User Agents (UA) communicating directly with each other. This can be called a peer-to-peer setup, a direct call setup or local setup. A typical address in this case would look like sip:<local-ip>, for example, sip:192.168.0.90 Example: In a simple setup the Axis products can use for setting up audio and/or video communication with other devices on the same network, without having a server or PBX. User Agent A AXIS A8004-VE Adress: sip:192.168.1.101 Onvif / VAPIX User Agent B Enabled Phone 1 2 3 4 5 6 7 8 9 * 0 # Adress: sip:192.168.1.100 In the same time they can be connected as any other Axis device to the video management system using the open APIs VAPIX or ONVIF Profile S. AXIS C3003-E Adress: sip:192.168.1.102 VAPIX Video management Software In order to make a peer-to-peer call from one UA to another on a local network all that is needed is the address containing the unit s IP address. Note that not all clients support peer-to-peer calls. 2.2 Using a server (PBX) adding more possibilities A -based VoIP infrastructure scales very well. The next step up in size is to use a registrar, Private Branch Exchange (PBX) or server, as a central hub. The UAs register with the registrar and can then reach each other s UAs simply by dialling an extension on the PBX. A typical address in this case would look like sip:<user>@<domain> or sip:<user>@<registrar-ip> such as sip:6007@ mysipserver.net. A PBX works like a traditional switchboard, showing the clients current status, allowing call transfers, voicemail, redirections and much more. A server usually includes proxy, registrar and redirect functionality. Proxies route calls and provide additional logic to incoming calls. Registrars accept register requests and act as a location service for the domain that it handles. Redirect servers redirect the client to contact an alternative address. 3

The server can be set up as a local entity or it can be located offsite. It can be hosted on an intranet or it can be hosted by a third party provider. When making calls across sites, calls are normally initially routed through a set of proxies. These proxies query the location of the address to be reached. Example: Axis products can connect to a server running either locally or hosted by a third-party provider. The server handles the setup and termination of calls between devices on the local network or over the Internet. User Agent A AXIS A8004-VE In this setup the address of the device is independent of its IP address and the server makes the device accessible as long as it is registered to the server. Adress: sip.mydoor@company.com AXIS C3003-E Adress: sip.mydoor@company.com PBX Server sip.company.com User Agent B Enabled Phone 1 2 3 4 5 6 7 8 9 * 0 # Adress: sip.office@company.com In order to use your device with a server you need to create an account on the server with a specified user ID and password. To register your device to the server, you need to set up an account on the device entering the server address, user ID and password. 2.3 Using trunks assigning a telephone number Using a trunk, UAs can even be switched to the traditional analog telephone network (PSTN). This way you can assign a traditional telephone number to the UA. Example: User Agent A AXIS A8004-VE Using a trunk with a service provider you can assign an external phone number to your device. This way you can make calls between a network speaker or door station and regular telephones. sip.mydoor@company.com Phone number: 1-800-1234-501 AXIS C3003-E Trunk Provider sip.provider.com Phone Normal Phone Phone number: 1-800-1234-567 sip.mydoor@company.com Phone number: 1-800-1234-502 When used with a trunk the device connects to the server in the way described above. The service provider will usually charge extra for external numbers. 3. Inside a normal call In order to make a call a sequence of steps are performed to exchange information between the UA initiating and receiving the call. When initiating a call, the initiator sends a request or an INVITE to the recipient s address. The IN- VITE contains a Session Description Protocol (SDP) body describing the media formats available and contact information for the initiator of the call. 4

1 2 3 4 5 6 7 8 9 0 # * Upon receiving the INVITE, the recipient immediately acknowledges this by answering with a 100 TRYING response. IP Network The receiving UA then compares the offered media formats described in the SDP with its own. If a common format can INVITE be decided, the UA alerts the recipient that there is an incoming call and sends a provisional response back to the 100/Trying initiating UA - 180 RINGING. 180/Ringing When the recipient decides to pick up the call, a 200 OK response is sent to the initiator to confirm that a connection ACK has been established. This response contains a negotiated RTP Media Session SDP indicating to the initiator which media formats should be used and to where the media streams should be sent. BYE The negotiated media streams are now set up using the Real-time Transport Protocol (RTP) with parameters based on the negotiated SDP and the media travels directly between the two parties. The initiator sends an acknowledgement (ACK) via to acknowledge that it has set up the media streams as agreed. The session is still active but it is no longer involved in the media transfer. When one of the parties decides to end the call, it sends a new request BYE. Upon receiving a BYE, the receiving party acknowledges this with a 200 OK and the RTP media streams are then stopped. 3.1 SDP negotiating what format is used Session Description Protocol (SDP) is a format for describing streaming media initialization parameters. The SDP body contains information about which media formats (that is, codecs) are supported by the clients and the clients preferred codec selection order. Typical audio codecs used for calls are PCMU, PCMA, G.722, G.726 and L16. If multiple overlapping codecs are supported by both the initiator and the recipient, the codec with the highest priority on the recipient side will normally be selected. The choice of codecs ultimately affects the bandwidth so careful consideration should be taken to meet compatibility requirements to other UAs and to maintain a bandwidth requirement that suits the use case. For example, in a local network where all clients support L16, the choice of uncompressed audio works well. However, if the UA is to be accessed via the Internet through a 3G mobile phone, PCMU is be a better choice. 3.2 Calls in complex infrastructures In a more complex infrastructure setup, the initiation looks a bit different as the session is set up step-by-step for each hop. However, once the session is set up, traffic is normally not routed, instead travelling directly between the different parties as in the previous example. Initiator User Agent Recipient User Agent User Agent A AXIS A8004-VE Media RTP Stream App IP Network User Agent B Enabled Phone INVITE 100/Trying 180/Ringing ACK RBX Server Initiator User Agent INVITE 100/Trying 180/Ringing ACK RTP Media Session BYE Recipient User Agent RBX Server INVITE 100/Trying 180/Ringing ACK AXIS C3003-E 5

4. DTMF sending commands in calls Dual-Tone Multiple-Frequency (DTMF) is a format used to send information over a telephone connection. DTMF signals can be sent in calls and can be used to give instructions to a device. The DTMF character range consists of numbers 0-9, letters A-D, * and #. For example, while in a call to a -enabled door station, the DTMF character 5 could be sent from the phone s keypad, which can be configured to be interpreted by the receiver as the command for unlocking the door. There are three different ways of sending DTMF in a call: > > The traditional in-band method, where the signal is actually an audio pulse interleaved with the audio stream. However, this is unreliable and only works with non-compressed codecs. > > The INFO method, where the DTMF character is sent in a message in the signaling stream. This method is very reliable and out-of-band. However, there is limited support. > > The RTP method (RFC2833), where the DTMF character is encoded as an RTP package and sent out-of-band. This is the de facto standard and it has wide support. 5. Complex environments and higher security Complex network environments, such as corporate networks, can provide difficulties when using. The same is true if you want to use encryption. 5.1 NAT traversal navigating complex networks In a more complex network environment, it may be necessary to utilize Network Address Translation (NAT) traversal techniques. NAT is a way of translating IP addresses on a private local network to a public representation. This means that all units in a private subnetwork share a common IP address prefix, for example, 192.168.1.XXX. This is the address they use when communicating with each other. When they communicate with another network, this address is translated to the router s public address appended with a port mapping. > > 192.168.1.24 => 184.13.12.33:44221 > > 192.168.1.121 => 184.13.12.33:24325 and so on. As the translation table is stored in the router, in most cases it is not possible for an external user to learn the address of a NAT:ed device. When communicating over, this can result in one of the following problems: > > Unable to initiate, update or terminate a session, that is, it is not possible to call, hold or hang up. > > No media stream(s). > > One directional media stream(s). NAT traversal: NAT changes the source address of each packet to a public IP address with different source ports Switch Router INTERNET 213.31.218.101:5001 213.31.218.101:5002 213.31.218.101:5003 192.168.0.1 192.168.0.2 192.168.0.3 6

To solve these issues, supports three different NAT traversal techniques: > > STUN This is a way of asking a server at a known location what the unit s public address is. The STUN server returns the public IP and port mapping used to make the request. The result is then used in the signaling and media transfer and it works in most situations. > > TURN When using TURN, all traffic is relayed through a known server. This adds an extra overhead as the machine hosting the TURN server must be powerful enough to route all media for each client using the service. This is a more expensive solution but can work in some situations where STUN is not working. > > ICE The ICE protocol gathers all IP addresses it can find that are related to a UA and then tries to calculate which one should be used. When used in combination with STUN and TURN on both the initiating and receiving UA, it increases the chances of successfully establishing calls. 5.2 Using encryption together with The signalling traffic is normally sent over the connectionless UDP protocol. It can also be sent over TCP and in that case, it can also be encrypted with Transport Layer Security (TLS). To ensure that a secure connection is used for a call, the protocol utilizes an addressing scheme called Secure (S), which requires that the transport mode is set to TLS. When making a call, the dialled address is prefixed with sips: rather than sip ; that is, sips:bob@biloxi.ex.com instead of sip:bob@biloxi.ex.com. This mandates that each hop must be secured with TLS and requires the receiving end to employ the same safety level. Calling a sip prefixed address when using TLS only ensures that the first hop is encrypted. To obtain the highest level of security, the following measures should be taken: > > Transport mode should be set to TLS. > > The sips prefix should be used at all times. > > INFO should be used for sending DTMF tones as this is sent in the encrypted channel. Note that not all clients support Secure. 6. Summary The session initiation protocol () provides an additional interface for system integration for security products. It is a widely adopted standard in the telecommunications industry. Having this interface provides increased flexibility for interconnectivity and everyday use. Open, standardized interfaces are requested by system integrators, developers and end users, increasing the value offered to them as products can be used in a variety of systems. Axis products with support are made to be used both for security and communication. Setting up a system can be very easy. However, in the case of complicated network topologies or when security requirements and extra call handling functionality is required, server and NAT traversal techniques need to be used, requiring more technical understanding of the installer or technician. 7

7. The dictionary 3G API codec DTMF Hardphone ICE IP Mobile client NAT PBX PSTN RTP SDP SIM server S URI ( address) Softphone STUN TCP TLS TURN UDP UA VoIP Third generation mobile telecommunications technology Application Programming Interface coder-decoder Dual-Tone Multi-Frequency signaling Hardware that makes telephone calls, that is, a phone Interactive Connectivity Establishment Internet Protocol Software program on a mobile device that makes telephone calls Network Address Translation Private Branch Exchange Public Switched Telephone Network, that is, the normal telephone network Real-time Transport Protocol Session Description Protocol Subscriber Identity Module Session Initiation Protocol Main component of an IP PBX Handles call setup and call tear down Also called Proxy or Registrar Secure Uniform Resource Identifier The unique address of the UA Software program that makes telephone calls Session Traversal Utilities for NAT Transmission Control Protocol Transport Layer Security Traversal Using Relays around NAT User Datagram Protocol User Agent Both end points of a communication session Voice over IP 8

65435/EN/R1/1510 About Axis Communications Axis offers intelligent security solutions that enable a smarter, safer world. As the global market leader in network video, Axis is driving the industry by continually launching innovative network products based on an open platform - delivering high value to customers through a global partner network. Axis has long-term relationships with partners and provides them with knowledge and ground-breaking network products in existing and new markets. Axis has more than 2,000 dedicated employees in more than 40 countries around the world, supported by a network of over 75,000 partners across 179 countries. Founded in 1984, Axis is a Sweden-based company listed on NASDAQ Stockholm under the ticker AXIS. For more information about Axis, please visit our website www.axis.com. 2015 Axis Communications AB. AXIS COMMUNICATIONS, AXIS, ETRAX, ARTPEC and VAPIX are registered trademarks or trademark applications of Axis AB in various jurisdictions. All other company names and products are trademarks or registered trademarks of their respective companies. We reserve the right to introduce modifications without notice.