Session Initiation Protocol (SIP) Technology
Session Initiation Protocol (SIP) Technology
Session Initiation Protocol (SIP) Technology
Contents
SIP Overview .............................................................................................................................3 SIP Architecture ........................................................................................................................4 Call Setup ..................................................................................................................................5 Applications ..............................................................................................................................6 SIP Advantages/Disadvantages ..............................................................................................8 Using IxVoice in SIP Testing .....................................................................................................8 Glossary ................................................................................................................................. 11
Copyright 1998-2004 Ixia. All rights reserved. Ixia and its licensors retain all ownership rights to the IXIA 100, 400 and 1600 hardware and software and its documentation. Use of Ixia hardware and software is governed by the license agreement accompanying your original purchase. This manual, as well as the hardware and software described in it, is furnished under license and may only be used or copied in accordance with the terms of such license. The information in this manual is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Ixia. Ixia assumes no responsibility or liability for any errors or inaccuracies that may appear in this book. Except as permitted by such license, no part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, recording, or otherwise, without the prior written permission of Ixia. RESTRICTED RIGHTS LEGEND Use, duplication, or disclosure by the U.S. Government is subject to restrictions as set forth in subparagraph 14(g)(iii) at FAR 52.227 and subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013. All other companies and product names and logos are trademarks or registered trademarks of their respective holders.
Ixia Corporate Headquarters 26601 W. Agoura Rd. Calabasas, CA 91302 USA Website General Investor Relations Sales Customer Support Training www.ixiacom.com info@ixiacom.com ir@ixiacom.com sales@ixiacom.com support@ixiacom.com training@ixiacom.com
SIP Technology
SIP Technology
SIP Architecture
The SIP architecture identifies two basic components: The SIP User Agent (UA) the endpoint component, which can be represented by a hardware or software device implementing SIP (e.g., an IP phone), and consists of two main components: User Agent Client (UAC) that initiates the calls User Agent Server (UAS) that answers the calls The SIP Network Server handles signaling associated with multiple calls providing name resolution and user location; it consists of three main groups: SIP Register Server receives registration messages from endpoints regarding current user location and maps the SIP addresses with the physical
location(s) in the domain where the endpoint is located. These mapping data are stored in a database, which can reside on the same machine or on a remote server. SIP Proxy Server forwards the SIP messages to multiple proxy servers, creating a search tree, in order for the SIP messages to reach their destination. There are two different operating modes for these servers: stateless (the server forgets all the information once the request is sent) and stateful (the server save previous routing information and is able to use it for improving the message transfer). SIP Redirect Server helps endpoints to find the desired address by redirecting them to try another server.
SIP Technology
Call Setup
The diagram below illustrates a basic SIP call setup scenario, using the following messages: INVITE initiates session. The session description is included in the message body. Re-INVITE is used to change session state. ACK confirms session establishment and can be used only with INVITE. BYE terminates session. CANCEL cancels a pending INVITE. OPTIONS capability inquiry. REGISTER binds a permanent. address to current location and it may convey user data. If a call is to be routed through a number of different Proxy servers Redirect server is
used. When a caller UA sends an INVITE request to the redirect server, the redirect server contacts the location server to determine the path to the called party, and then the redirect server sends that information back to the caller. The caller then acknowledges receipt of the information. The caller then sends a request to the device indicated in the redirection information (which could be the callee or another server that will forward the request). Once the request reaches the callee, it sends back a response and the caller acknowledges the response. RTP is used for the communication between the caller and the callee.
UAC INVITE
Proxy Server
Proxy Server
UAS
Moved Temporarily ACK INVITE INVITE Moved Temporarily ACK INVITE Ringing Ringing Ringing
ACK
ACK
BYE OK
BYE OK
BYE OK
Applications
SIP has been described as a simple protocol with profound implications. It addresses many of the major issues of the development of Internet telephony a technology that is predicted to change the way businesses and people talk to each other. The main applications implemented with SIP are: Unified Communications A SIP session can contain any combination of media (voice, data, video, etc.). These sessions can be modified at any time by adding new parties or by changing the nature of the session. SIP allows browsers to become augmented with multimedia capability. Using SIP, simple, but very powerful, services like click-to-dial become possible. User profiles can be managed through a web interface and voice plug-ins are incorporated into browser technology. SIP uses MIME, the de facto standard for describing content on the Internet, to convey information about the protocol used to describe the session and has an URL-style addressing system. It uses the Domain Name System (DNS) to deliver requests to the server that can appropriately handle them. Unified Messaging - e-mail, voicemail, faxes, and phone messages are accessible from the same box. Alternatively, people use many different devices to communicate. Unified messaging helps people that use different communication devices, media, and technologies to communicate at any time and under their own control. Directory Services Directory services are to a network what white pages are to the telephone system. They store information about things in the real world, such as people, computers, printers, and so on, as objects with
descriptive attributes. People can use the service to look up objects by name; or, like the yellow pages, they can be used to look up services. Network managers use directories to manage user accounts and network resources. From a manager's viewpoint, a directory service is like an inventory of all the devices on the network. Any device can be located by using a graphic interface or by searching for its name or some properties (e.g., color printer). Once located, a manager can control the device (e.g., disable it or block certain users from accessing it). The directory is a central database where all objects and users are managed. IP-PBX functionality Software based IP_PBX that is compliant with the SIP standard can be utilized in a single office setting or multiple office locations, offering flexibility and options for future expansions. Voice-enhanced e-commerce a website contains click-to dial links that establish a session between the enduser and the website organization. This kind of service could be a part of a value-added web-hosting service offered by a service provider or it could be developed by an enterprises IT department. Web Call Centers a web page may be popped when a particular number is called (with SIP, it is just as easy to direct an user to a web page as it is to a telephone). SIP supports IVR (Interactive Voice Response) features, navigating users through options and providing auto-responses to common requests. In addition, SIPs forking facility is perfect for fulfilling the ACD (Automated Call Distribution) function. Instant Messaging (IM) and Presence because a SIP session can consist of any form of communication, it is
SIP Technology
possible to promote an IM session to a telephone call or even a whiteboard or video session at the click of a button. It is also easy to invite other people to join your session, creating spontaneous conference calls. Using third party call control, a conference service could even check the presence status of people due to join a conference and when all the parties are available it could establish the session by connecting them all to a conference bridge. Presence goes hand-in-hand with the evolution of voice services. A network that has dynamically updated information about an users preferences and availability can perform more intelligent call routing than todays PSTN or existing find-me/follow-me services. Mobile phones and PDAs Because SIP client software is lightweight, it can be embedded in mobile phones and PDAs so that these services can cross all platforms. Using SIP as the signaling protocol means that sessions can be established between different devices that then negotiate the appropriate media capability. These devices becomes means of accessing those services associated with a user instead of being closed, proprietary systems. Wireless LAN VoIP Telephone Handsets dedicated portable
telephone handsets, supporting Voice over IP on an 802.11 wireless LAN connection. They may use SIP and other proprietary protocols (i.e., Skinny) and may also support wireless telephony protocols (i.e., GSM) Desktop Call Management - SIP enables a convergence at the desktop. Voice services can be assimilated into other applications to change the way we use our computers. The information management capabilities of the Internet can be used to transform communication systems and improve productivity. Using SIP features such as user profiling, presence management and instant messaging, third party call control and integration with media, many services can be created by service providers or enterprise IT departments. All the advanced telephony services inherited from the Intelligent Network are supported by SIP. This includes services such as call forwarding, call hold, call waiting, etc. SIP can be integrated into product such as: IP phones. Media Gateways. Web-enabled telephony portals. Internet call centers. Softswitches. Application servers.
SIP Technology
SIP is, more or less, equivalent to the Q.931 and H.225 components of H.323. These protocols handle call setup and call signaling. Both SIP and H.323 can be used as signaling protocols in IP networks.
A comparison between SIP and H.323 is shown below, illustrating the advantages and disadvantages of the two systems.
Table 1. Advantages and disadvantages of SIP and H.323. H.323 Robust but consumes more call set up time. Requires about twelve packets for callsetup. Provides floor control within a session. Has more elaborate capability exchange (H.245). Provides a multipoint controller for conferences. Requires both TCP and UDP during the callsetup. Implementation is complex and time-taking. SIP Simple, scalable, and extensible. Requires about four packets for call-setup. Cannot provide. Minimal capability exchange, enough for IP telephony. Not required for SIP multicast conferences. Basically runs on UDP. Reliability achieved through retransmissions. Supports TCP also, if UDP is not supported. Easy to implement.
SIP Functional test library is included in the Ixias IxVoice framework and contains functions that test the implementation of the SIP IETF RFC 3261 protocol, emulate SIP phones, generate calls and automate the functionality and interoperability testing. It contains low-level message flow functions that encapsulate the SIP protocol stacks and access the call signaling and transport layers. IxVoice has the ability to execute simultaneously test scenarios with functions from different modules (e.g., originate a call from H323 and terminate it on SIP to exercise a SIP/H323 translator or initiate on H.323, terminate on SIP and transfer to another endpoint in using MGCP or Skinny). On an established SIP connection media streaming can be generated/received, using functions from the RTP module.
Using the SIP low-level functions, the user can access in-depth SIP messages by: Sending SIP message and verifying the received message for according to the SIP syntax. Generating messages that establish and terminate transactions. Modifying the sequence of messages in order to generate invalid transactions. Generating requests and responses for the legacy and spurious dialogs both for legacy and current systems. Defining a correct call flow and simulating legacy user agents. Key features Simulate multiple SIP phones. Generate and receive SIP messages. Generate SIP traffic outside the protocol requirements.
SIP Technology
Predefined templates for standard SIP messages. Predefined procedures and test scenarios for functionality testing. Predefined and user-defined variables may be used in the call flow context. Correlate media payloads (tones, voice, T.38 fax) with SIP signaling and perform QoV analysis. Measure the timing between successive SIP messages. Interworking testing using VoIP(H.323, MGCP, Skinny) and T1/ E1/ Analog Test Libraries. Up to 650 maximum simultaneous active calls. Up to 400 distinct endpoints with different IP addresses. Up to 800 distinct endpoints with the same IP address. Up to 280,661 BHCC. Test types The most important testing issues that can be performed using IxVoice: Automated Functionality testing Using the SIP low-level functions, the user can access in-depth SIP messages by: Load SIP message templates and modify them according to the testing needs. Generate messages to establish and terminate transactions.
Verify if the SIP messages are according to the SIP syntax. Generate invalid transactions. Generating requests and responses for the legacy and spurious dialogs. Interoperability compatibility with the existing implementations. Quality of Service (QoS) multiinterface tests to measure QoS parameters, such as: response time, one way delay, jitter, packet loss. Devices under test Proxy servers. Redirect servers. Register servers. SIP phones. Applications Test the functionality of: Proxy servers, Redirect servers, Register servers, SIP phones, by: VoIP call signaling testing (SIP to SIP/ H.323/ Skinny / MGCP). Advanced, in-depth feature testing (i.e. Hold, Unhold, Blind Transfer). Stress testing with maximum designed level of calls. Worst case testing with controlled delay between SIP messages. Interoperability between a specific SIP implementation at SUT level and an existing one. Negative testing generate SIP messages with erroneous parameters.
SIP Technology
10
SIP Technology
Glossary
ATM Asynchronous Transfer Mode A high-speed network technology that is designed for LANs, WANs, carrier and service provider networks, and Internet core networks. It is a connection-oriented switching technology, as opposed to a connectionless technology such as IP. Voice encoding/decoding mechanism. Codecs are used to compress the voice signal into data packets. Each codec has different bandwidth requirements. An H.323 terminal, gateway or Multipoint Controller Unit (MCU). An endpoint can call and be called and it can generate or end information streams. A gateway is basically a protocol converter, i.e., a network point that connects networks using different protocols so that data can be exchanged seamlessly between endpoints. Used by terminals and gatekeepers to communicate. It is used to exchange signal about call registrations, admissions and terminations. This protocol runs over UDP. This protocol is used to establish connections between two terminals. This protocol runs over TCP. The ITU-T recommendation that describes how endpoints in an H.323 network perform modeswitching and exchange capabilities such as codec support via the terminal capability set. The ITU standard for video conferencing over packetswitched networks such as LANs and the Internet. Provides a way to send short messages to other people on the Internet, usually in real time, although delayed delivery is supported. One of a large family of specifications that define the transmission of information over data networks. It tracks the Internet addresses of nodes, routes outgoing messages, and recognizes incoming messages. A general term for the technologies that use the Internet Protocol's packet-switched connections to exchange voice, fax, and other forms of information that have traditionally been carried over the dedicated circuit-switched connections of the public switched telephone network (PSTN).
Copyright Ixia, 2004 11
Codec
Endpoint
Gateway
IP Internet Protocol
SIP Technology
Redirect Server
A device that receives SIP requests, strips out the address in the request, check its address tables for any other addresses that can be mapped to the one in request, and then returns the result of the mapping address to the client. A device that processes requests from UACs (User Agent Client) for registration of their current location. Registrar servers are often co-located with a redirect or proxy server. RTP runs on top of the User Datagram Protocol (UDP) and gives priority to video packets over data packets. A protocol that describes a format for conveying descriptive information about multimedia sessions. An ASCII-based protocol that provides telephony services similar to H.323, but is less complex and uses less resource. It creates, modifies, and terminates sessions with one or more participants. SIP is a request-response protocol, dealing with requests from clients and responses from servers. In SIP, a client application that initiates the SIP request. In SIP, a server application that contacts the user when a SIP request is received, then returns a response on behalf of the user. The response accepts, rejects or redirects the request. A transport-layer protocol that has no error checking, flow control or reliability mechanism. It is a best effort, connection less transport of voice, video and data. This is used as a faster means of transport for voice calls. The X.25 protocol is an ITU recommendation that defines connections of terminals and computers to packet-switching networks.
Registrar Server
RTP Real Time Transport Protocol SDP Session Description Protocol SIP Session Initiation Protocol
X.25
12
SIP Technology