Professional Documents
Culture Documents
Technology Primer
SIP Technical Overview
The protocol of choice
From its initial standardization in 1999 by the IETF, Session Initiation Protocol (SIP) has rapidly become the protocol of choice for the deployment of IP Telephony as evidenced by the public service offering and announcements from MCI, Vonage, Packet 8, Telstra, SingTel, etc. SIP was also adopted by the Multiservice Switching Forum (MSF) for VoIP and VoATM trunking (SIP & SIP-T). In addition, SIP received a strong boost in 2000 with its adoption for 3GPP networks (third generation mobile). Even today SIP is used to offer such features as PTT (Push to Talk) functionality and basic presence over 2.5G networks (1xRTT and GPRS). Interaction with other protocols
From the previous definition, SIP is not a media or a management protocol. In other words, SIP does not define new codecs, QoS nor is SIP voice specific. SIP relies on other protocols such as RTP to transport user information (audio, video), DNS for address resolution, Diffserv / RSVP etc., for QoS, Radius / Diameter for AAA (Authentication, Authorization, Accounting), etc. SIP does not describe the audio and media components of a session; instead, it relies on a separate session description (SDP) carried in the body of SIP messages (INVITE and ACK). The diagram on the next page shows the interaction of these protocols. Of interest is the fact that SIP can be implemented over UDP or TCP transport. SIP incorporates mechanisms to cover for packet loss with retransmissions based on timers.
This primer is intended to explain some of the concepts underlying SIP, its main characteristics that make it a powerful protocol and the challenges faced by SIP especially in enterprise networks. This primer is intended to complement the first Mitel SIP Primer by providing additional information on the protocol and its capabilities. Both documents are complementary and can be downloaded from the Mitel web site.
What is SIP?
SIP is a signaling protocol for controlling multi-media sessions. It is used to establish user presence, locate users (SIP enables mobility), as well as set up, modify and tear down sessions.
MITEL
1. SIP elements
At a high level there are two types of SIP elements: User Agents and Servers. User Agents are endpoints in a SIP network: they originate and terminate calls. Examples of User Agents (UA) include: SIP phones (hard sets), laptops or PDA with a SIP client (e.g., softphone), Media gateway (e.g. T1/E1 gateway), access gateway (e.g., FAX gateway), conferencing systems, etc. All these devices also initiate and terminate the media session (voice, video, FAX, etc.). A UA is itself comprised of two entities (software): UAC (initiates call by sending INVITE with E.164 or URI dialing) UAS (receives call requests). More on SIP messages and addressing to follow. There are several types of servers in a SIP network including Proxy server, Redirect server and SIP registrar. A Proxy server performs signaling and relay. In other words, it determines where to send signaling messages and forward requests on behalf of the UA. To do so, it consults databases (DNS, location servers, etc.). It is important to remember that Proxy servers have no media capabilities; they are in the control path only. Proxy servers must pass unrecognized SIP messages
Media Coding
RTP
RTCP
DNS
DHCP
AAA
Transport Network
TCP
SCTP
UDP
IPv4, IPv6
AAL5 Link Layer & Physical Layer ATM Ethernet WiFi, WiMax
PPP
PPP
V.90, V.34
SONET/SDH
MITEL
through unchanged. Thus new features do not require changes to proxy servers used in an infrastructure. This principle enables new features to be deployed in a network by only upgrading the end devices. The routing function can be configured (programmed) according to user preferences, type of call (e.g., 911), least-GW-cost, or other criteria. Note that the proxy server is not the only place where service can be programmed. In fact, service programmability can reside in end-devices as well, such as for visual caller ID, distinctive ringing or possible Call Forwarding. Proxy servers can try several destinations sequentially or in parallel, this capability called forking enables multiple devices to be associated with the same address. There are three types of Proxy servers according to the type of state information they keep: 1) a stateless proxy keeps no state, 2) a transaction stateful proxy only keeps state on pending transactions, while, 3) a call stateful proxy keeps state for the entire duration of a SIP session. Most implementations are stateful proxy-based as this is useful for implementing such services as forward on no reply and also to implement forking. Stateless proxies are easier to scale (especially under heavy load scenarios) and can act as an application-layer load distributor (used in the core of a network). Redundancy designs are easier to achieve with stateless proxies.
A SIP registrar accepts registration requests from users (e.g., I am now at 192.168.0.10) and maintains user location information in a database. Mobility is thus achieved by the use of a REGISTER message (from UA) and by keeping a location database updated. Redirect servers are servers that redirect SIP requests to another device. A redirect server responds to the request with the address to which the request should be redirected to (e.g., a request for nic@mitel.com can be redirected to nic@home.com). SIP does not specify any implementation models for example, all above servers can reside on the same hardware platform. The underlying OS can be Windows, Solaris, Linux or any embedded real time OS (QNX, VxWorks, MontaVista Linux, etc.). For example, VOCAL is an open-source VoIP software from Vovida.org. VOCAL software suite is a robust implementation of the SIP protocol and its various entities and is used widely. It is important to note that the above servers (proxy, redirect and registrar) are all optional SIP components. In fact, a UA may issue an INVITE directly to a targeted endpoint and many telephony features may be implemented directly on the UA. The SIP model is based on intelligent endpoints that can act without other intelligence from the network infrastructure (refer to section below on peer-to-peer vs. centralized model).
SIP Servers
Registrar
Redirect
Proxy
1 REGISTER I am signing up
When a call comes in,a pop-up window lets you know who's calling.
File Edit View Favorites Tools Help Enter a Name or Phone Number... Call
Quick List
Enter a Name or Phone Number... Lastname, First (123-4567) Line 1001 Line 1002
79 People
People to Call
79 People
Missed Calls
11 New Items
Henderson, Frank (234-5678) 2x Today 4:01p Unknown (234-5678) Lee, Bill (2342) Jones, Ralph (5411) Wilson, Pamela (2454) Today 3:11p Today 2:08p 2x Today 1:37p Today 12:59p
6 Media
bernard@mitel.com
nic@home.com
MITEL
2. SIP messages
There are two types of SIP messages: SIP requests (also called METHODs the same way as GET, PUT, DELETE, POST are METHODs for HTTP) and SIP RESPONSEs (shown in the tables below). SIP requests (as defined in RFC3261) include the following core METHODS: INVITE to initiate a session Re-INVITE if, during a call, either party wants to change the media; for example to open a video channel ACK to confirm session establishment and can only be used with INVITE BYE terminates sessions CANCEL to cancel a pending INVITE OPTIONS for capability inquiry REGISTER to bind a permanent address to current location Other SIP method extensions are defined in different RFCs such as: SUBSCRIBE to subscribe to a service state change. Used for presence (subscribe to an event and receive notification), call-back (when other party becomes Code 1XX Type Information Description
available), voice mail notification, any event that can be associated with a trigger (e.g., stock quotes, etc.) NOTIFY notify a change of service state (e.g., new voice message). Works in parallel with SUBSCRIBE MESSAGE for Instant Messaging (user to user messaging). MESSAGE requests carry the content in the form of MIME body parts REFER call transfer PUBLISH publication of presence information to a server SIP is designed so that UAs can discover and negotiate their capabilities including what Methods are supported. Another aspect of negotiating capabilities include codec support, handled by the SDP protocol. One UA in the session generates an SDP message that includes (among other information) all codecs the offerer wishes to use. The answer will indicate whether the stream is accepted or not, along with the codecs that will be used and the IP addresses and ports that the recipient wants to use to receive media. SIP responses use a numerical code (borrowed from HTTP response code, e.g., 404 Not Found) and a reason phrase (see table below).
Request received continuing to process the request. Example: 100 trying, 180 ringing
2XX
Success
The action was successfully received, understood and accepted Example: 200 OK Further action must be taken to complete the request Example: 301 Moved Permanently, 302 Moved Temporaily Request contains bad syntax Example: 400 Bad Request, 401 Unauthorized Request cannot be fulfilled at this server Example: 500 server Internal Error Request is invalid at any server Example: 600 Busy Everwhere
3XX
Redirection
4XX
Client error
5XX
Server error
6XX
Global failure
MITEL
ENUM Description
DSN Server
Proxy Server
MITEL
6 Response: sip:B@2.3.4.5
2 100 Trying
User Agent A
User Agent B
When the called party receives the INVITE request, it determines if it can accept the call in which case, it will ring the phone and sends a provisional response back to the caller (to indicate that the phone is ringing).
9 180 Ringing
10 180 Ringing
8 180 Ringing
User Agent A
User Agent B
When the phone is answered, the called UA sends a final response with the media channels that it can support. Both parties agree on a media channel and the caller UA sends an ACK to the called UA. RTP streams can flow between devices.
14 ACK
User Agent B
Diagrams above borrowed with modifications from Henry Sinnreich & Alan Johnston.
MITEL
SIP is also superior to H.323 in many respects. First, it is flexible in that it can be implemented over TCP, UDP or SCTP and is not restricted to telephony only applications. Second, H.323 protocol structure is inherently much more complex, hence more difficult to implement. Third, SIP is inherently more extensible due to its HTTP-like method / tags / MIME approach. SIP message structure (textual encoding) makes it easier to implement and add new functionality than H.323 that uses the ITUs ASN.1 encoding standard instead of text. Lastly, SIP servers can be stateless (thus easier to scale) and SIP servers can ignore unknown headers whereas compatibility is required to operate; for example an H.323v3 end-device on an existing H.323 infrastructure.
SIP
MGCP MGCP
RTP
Gateway
Gateway
MITEL
Applications
AS
ASP
VoIP Infrastructure
PS/CA MG
MS
VoIP SP
Packet Infrastructure
Routing
Routing Transmission
NSP
CA: Call Agent (MGCP model) MG: Media Gateway (e.g., Nuera) MS: Media Server e.g., Convedia)
MITEL
Call
Third-party control, also called centralized model because it requires a central point of control, may not be desirable in some environments. An alternative approach to perform call control is based on a peer-to-peer model (distributed) which uses SIP REFER and Replaces Header. The Replaces Header is used to logically replace an existing SIP dialog with a new SIP dialog. One use of the Replaces Header is to replace one participant with another and is frequently used in combination with the REFER method, for example to retrieve a parked call.
79 People People to Call Friends (3 of 16 are online) Project Team (1 of 4 online) Brown, Bill (Available) Davidson, Karen (Busy)
11 New Items Henderson, Frank (234-5678) 2x Today 4:01p Unknown (234-5678) Lee, Bill (2342) Jones, Ralph (5411) Wilson, Pamela (2454) Today 3:11p Today 2:08p 2x Today 1:37p Today 12:59p
Quick List
Auto Answer Call Forward Profile In the Office Im in a meeting Context sensitive instructional text displayed here...
79 People
People to Call Friends (3 of 16 are online) Project Team (1 of 4 online) Brown, Bill (Available) Davidson, Karen (Busy)
Message 200 OK
MITEL
9. SIP-based deployment
This section provides three examples of SIP deployment: one in public networks, one in enterprise networks and one in private-public applications. 1. Augmenting existing Class 5 switches with SIP Traditional service providers while wanting to offer new services leveraging the power of SIP also place a great emphasis on preserving their investment in TDM infrastructure. A SIP-based solution should co-exist with the existing Class 5 switches while allowing service providers to generate a new stream of revenues from existing and new subscribers. This is the premise behind products such as the Mitel 3600 Integrated Communications Platform (ICP) server (or product offering from other vendors) that as a SIP Small Business Feature Server, it can connect to legacy switches and deliver a whole range of advanced IP services. Some of these services include web portal, mobility, teleworking and self-provisioning.
Class 5 switch
PRI
Broadband Network
Gateway
MITEL
Traditional PBX PSTN digital IP/ VPIM Site #3 NuPoint UM - SIP IP WAN SMDI
T1
IP/ VPIM
NuPoint UM - SIP
IP / VPIM Site #1
NuPoint UM - SIP
Layer 2
SIP IPBX
2. Migrating to next generation SIP-based messaging systems Many enterprises are faced with the upgrade of their VMS that reach their end of life cycle and look to enable new functionality such as unified messaging. Selecting a SIP-based platform is a difficult choice. In fact, the platform has to integrate with the legacy PBX and legacy VMS (in the case of distributed networks). This implies that the SIP-based Media Server must accommodate analog or digital connectivity to PBXs (in addition to IP) and support message exchange using
VPIM and AMIS. This capability exists today on the Mitel NuPoint Messenger Model 70 IP (offerings from other vendors too). The Mitel solution supports native SIP in addition to the integration to a dozen traditional PBXs. Using a flexible SIP media server, such as the NuPoint Messenger Model 70 IP, enterprises can smoothly migrate to a SIP infrastructure and accommodate distributed as well as centralized messaging architectures as depicted above.
| 11
MITEL
3. Merging IPBX with public VoIP infrastructures using SIP Customers using a hosted or Centrex service, have traditionally had limited access to advanced applications such as teleworking, unified messaging, contact center applications, conferencing and collaboration solutions. On the other hand, customers deploying IPBX face many challenges in deploying multi-site networking including: (1) site-to-site connectivity over IP, (2) managing PSTN connectivity, (3) managing billing (one bill for all sites), (3) configuring dialing plans, (4) call routing, etc.
IPC2 is the SIP answer from Marconi and Mitel (offering available from other vendors) to enable service providers to leverage IPBX for advanced features at the customer premises while offering business trunking and VPN services using a soft-switch architecture (other services are also enabled in this architecture). Business trunking and VPN services enable customers to control their IPBX while billing, call routing and site to site connectivity are handled by the Service Provider.
PSTN
Legacy PBX Mitel 3300 ICP
Network Gateway
Voicemail
IP-VPN
Application Server Media Firewall
Branch Office
Remote Users
Video
MITEL
User Agent 1
User Agent 2
With a B2BUA implementation, it can be easier to offer PBX-like features, manage calls end-to-end (CDR, billing, etc.), implement and enforce policies (CoS, CoR, etc.) and address NAT issues (described in the next section). A market segment where this solution is well received is Small and Medium size businesses (<5,000 users) where customers prefer a central point of service for all users and where policies, security, firewall and other services can be managed, enforced and terminated.
| 13
MITEL
If the call is disconnected can the PSAP contact the initiator of the emergency call? Where to? Who provides this information? Who provides Caller Identity Validation? If there is no intelligence in the network, there may be no VoIP SP involved and ISPs do not track what type of packets are sent. How will the user contact the appropriate PSAP? In the above scenario is the ISP responsible to guarantee call completion? In the long-term, users may not have E.164 numbers What URI is used? Is it ubiquitous? How to determine location information? Who maintains location information? Will it handle mobility? Other issues, not SIP related, include: Mobile and traditional analog phones do not have a power supply whereas most SIP desk phone will stop operating under power loss Who should pinpoint the exact location of user in a WiFi hotzone (and how)? How is this information conveyed to the user? To the PSAP? There are several technologies available that can come to the rescue (e.g., DHCP tagging and extensions to identify location, 802.11 triangulation, GPS, etc.). In general, there is an agreement that a SIP-based VoIP offering should proceed ahead as these issues are being addressed in various organizations (NENA, APCO, CGALIES, ETSI, etc.). To support CALEA (Communications Assistance for Law Enforcement), a telecommunications carrier must ensure that its equipment, facilities, or services are capable of isolating and enabling the government to intercept all wire and electronic communications and providing access to call-identifying information. Using a pure SIP packet-based infrastructure however introduces new challenges in that there is no standard handover interface for packet-based networks into an LEA collection node (Law Enforcement Agency). Furthermore subscribers may not be identified using a fixed directory number but using SIP URL.
MITEL
In conclusion
SIP deployment in the enterprise The main appeal of IPT is to enable new applications including convergence to the user and to lower the total costs of operating a voice network. The main appeal of SIP is in its standards based approach that ultimately offers customers even better ROI (Return on Investment) by offering a wider selection of appliances, servers, services, etc., (side benefit of competition). The ROI is also achieved by not locking customers into a proprietary protocol that will prove expensive to migrate from. To some extent, the success of SIP in public networks contrasts with a milder reception of SIP into enterprise markets where vendor protocols (Cisco / SCCP, Mitel / Minet, Nortel / UniStim, Avaya / CCMS+H323, etc.) are mostly being deployed. It is important to note that a basic level of interoperability can be easily achieved between different vendors (Mitel, Cisco, Polycom, Broadsoft SIP proxy server, etc.). In fact, Mitel SIP phones can be added to a SIP infrastructure with Cisco SIP sets alongside with other sets from Polycom. More advanced features however (IM, security, etc.) or private SIP extensions are not always supported across all vendors and some integration work is required for more complex settings (e.g., contact centers, unified messaging and notification, VPIM to legacy VMS, etc.). While integration is not an issue for service providers or large enterprises, it can represent a substantial effort for medium size organizations (<5,000 users). This could be one of many reasons why SIP is lagging in medium size enterprise networks. As SIP matures and more interoperability testing is conducted, SIP will become the dominant protocol in enterprise markets. For more on SIP, go to: www.voip-info.org/wiki-SIP www.cs.columbia.edu/sip/ www.cs.columbia.edu/sip/faq/ www.greycouncil.com/sipwg/ SIP WG Supplemental Homepage www.sipcenter.com/ The SIP Center www1.cs.columbia.edu/~xiaotaow/sipc/ UoColumbia SIP User Agent (sipc) www.ubiquity.net/products/SIP/SIP_User_Agent.php Ubiquity SIP user agent www.sipforum.com www.softarmor.com For more information or to evaluate Mitel SIP solutions, please contact your local Mitel Sales and Systems Engineer or visit our web site at http://www.mitel.com
| 15
MITEL
Acronyms
1xRTT 3G 3GPP AAA AG APCO AS ASP CDR CGALIES CLASS COR COS DTMF ENUM ETSI FQDN GK GPRS IETF IMP ISP IVR JAIN LDAP MG MGCP MPLS MS MSRP NAPTR NCS NENA NGN PA PUA PBX POTS PSTN QoS RFC Single Carrier Radio Transmission Technology Third Generation (wireless) 3G Partnership Project (UMTS) Authentication, Authorization and Accounting (IETF) Access Gateway Association of Public-Safety Communications Officials Application Server Application Server Provider Call Detail Recording Group on Access to Location Information by Emergency Svs Custom Local Area Subscriber Services, aka Custom Calling features Class of Restriction Class of Service Dual Tone/Multiple Frequency E.164 Numbering in DNS (IETF RFC 2916) European Telecommunications Standards Institute Fully Qualified Domain Name Gatekeeper General Packet Radio Service Internet Engineering Task Force Instant Messaging and Presence Internet Service Provider Interactive Voice Response Java Application Interface Network Lightweight Directory Access Protocol (IETF) Media Gateway Media Gateway Control Protocol (IETF, ITU-T J.162) Multi-Protocol Label Switching Media Server Message Session Relay Protocol Naming Authority Pointer Network Call/Control Signaling (PacketCable MGCP) National Emergency Number Association Next Generation Network Presence Agent Presence User Agent Private Branch eXchange Plain Old Telephone Service Public Switched Telephone Network Quality of Service Request For Comment (IETF)
MITEL
ROI RTCP RTP SCTP SDP SIMPLE SIP SIP-T SNMP SP SRV TDM TRIP UA URI VoIP VPIM XMPP
Return on Investment Real Time Transport Control Protocol (IETF) Real Time Transport Protocol (IETF RFC 1889) Stream Control Transmission Protocol Session Description Protocol (IETF RFC 2327) SIP Instant Messaging and Presence Leveraging Extensions Session Initiation Protocol (IETF) SIP For Telephony (IETF) Simple network management protocol Service Provider Server location records extension to DNS Time Division Multiplexing Telephony Routing over IP (IETF RFC 2871) User Agent Uniform Resource Indicator Voice over IP Voice Profile for Internet Mail Extensible Messaging and Presence Protocol
Acknowledgements
The author would like to thank the many colleagues throughout industry and academia in the IETF SIP, SIMPLE and SIPPING working groups that develop IP communications technology. The information in this document is believed to be accurate at the time of publication. Contact Mitel directly for updated information or for more details.
North America (613) 592 2122 1 800 648 3579 Benelux Tel: +31 (0)30 85 00 030 Fax: +31 (0)30 85 00 031 Middle East Tel: +971 4 3916721 Fax: +971 4 3915288
Latin America (613) 592 2122 1 800 648 3579 Italy Tel: +39 02 2130231 Fax: +39 02 21302333 South Africa Tel: +27 82 559 8688 Fax: +27 11 784 6916
UK Tel: +44 (0)1291 430000 Fax: +44 (0)1291 430400 Germany, Switzerland, Austria Tel: +49 (0)211 5206480 Fax: +49 (0)211 52064899 Asia-Pacific Tel: +852 2508 9780 Fax: +852 2508 9232
France Tel: +33 (0)1 61 37 00 90 Fax: +33 (0)1 61 37 00 99 Portugal and Spain Tel: +34 91 350 66 33 Fax: +34 91 350 70 14
www.mitel.com
THIS DOCUMENT IS PROVIDED TO YOU FOR INFORMATIONAL PURPOSES ONLY. The information furnished in this document, believed by Mitel to be accurate as of the date of its publication, is subject to change without notice. Mitel assumes no responsibility for any errors or omissions in this document and shall have no obligation to you as a result of having made this document available to you or based upon the information it contains. M MITEL (design) is a registered trademark of Mitel Networks Corporation. All other products and services are the registered trademarks of their respective holders. Copyright 2004, Mitel Networks Corporation. All Rights Reserved. GD 7815 PN 51008441RA-EN
Reference Material
The following is a list of reference materials on SIP.
Books
SIP Demystified. Gonzalo Camarillo, McGraw-Hill Telecom, ISBN 0-07-1373403 Internet Communications Using SIP: Delivering VoIP and Multimedia Services with Session Initiation Protocol, Sinnreich, Henry & Alan B. Johnston, John Weily & Sons, Inc., New York (c) 2001, ISBN 0-471-41399-2 SIP: Understanding the Session Initiation Protocol, Alan B. Johnston, Artech House, Boston, London, January 2001, ISBN 1-58053-168-7
Web-based Information
Session Initiation Protocol (SIP) http://www.cs.columbia.edu/sip The Internet Engineering Task Force (IETF) Web site http://www.ietf.org SIP Center http://www.sipcenter.com VOIP Wiki - a reference guide to all things VOIP www.voip-info.org/wiki-SIP The SIP Forum is an industry organization with members from the leading SIP technology companies. Its mission is to advance the adoption of products and services based on SIP. www.sipforum.com
White Papers
The following white papers are available from Mitel OnLine. Examining the Value of SIP in the Enterprise White Paper (PDF 238KB) SIP: Enabling Your Business to Leverage the Power of the Internet Customer Brief (PDF 273KB) SIP Interoperability List (PDF 77KB) SIP Technology Primer - Technical Overview (PDF 2.7MB) SIP Technology Primer - Value Proposition (PDF 490KB) 5215/5220 IP Phones (SIP functionality) Data Sheet - English (PDF 545KB)