Session Initiation Protocol: High-impact Technology - What You Need to Know: Definitions, Adoptions, Impact, Benefits, Maturity, Vendors
118 pages
English

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris

Session Initiation Protocol: High-impact Technology - What You Need to Know: Definitions, Adoptions, Impact, Benefits, Maturity, Vendors , livre ebook

-

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus
118 pages
English
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus

Description

The Session Initiation Protocol (SIP) is an IETF-defined signaling protocol, widely used for controlling multimedia communication sessions such as voice and video calls over Internet Protocol (IP). The protocol can be used for creating, modifying and terminating two-party (unicast) or multiparty (multicast) sessions consisting of one or several media streams. The modification can involve changing addresses or ports, inviting more participants, and adding or deleting media streams. Other feasible application examples include video conferencing, streaming multimedia distribution, instant messaging, presence information, file transfer and online games.


This book is your ultimate resource for Session Initiation Protocol. Here you will find the most up-to-date information, analysis, background and everything you need to know.


In easy to read chapters, with extensive references and links to get you to know all there is to know about Session Initiation Protocol right away, covering: Session Initiation Protocol, Authenticated Identity Body, Call Admission Control, Distributed Universal Number Discovery, H.248, H.323, Hookflash, Inter-Asterisk eXchange, IpTTY, Jingle (protocol), List of SIP request methods, List of SIP response codes, Media Gateway Control Protocol, Media Gateway Control Protocol (Megaco), Media Gateway Control Protocol (MGCP), Message Session Relay Protocol, MiNET, Network Voice Protocol, Network-based Call Signaling, Open Phone Abstraction Library, Open Settlement Protocol, Real-time Transport Protocol, Registration, Admission and Status, RTP audio video profile, Signaling Compression, Simple Gateway Control Protocol, SIP Trunking, Skinny Call Control Protocol, Skype protocol, T.37 ITU-T recommendation, T.38 ITU-T recommendation, UNIStim, Anti-tromboning, Back-to-back user agent, Call Agent, Call origination, Chatter bug, Comfort noise, Host Media Processing, International gateway, Internet telephony service provider, IP Multimedia Subsystem, Lawful interception, Mouth-to-ear delay, Multimedia Telephony, Origination, Packet loss concealment, PacketCable, Purple minutes, Session border controller, Signaling gateway, SIP connection, Softphone, STUN, Survivable Branch Appliance, Talkspurt, Traversal Using Relay NAT, Trunking gateway, Vishing, Voice chat, Voice engine, Voice peering, VoIP spam, VoIP VPN, WebCall, White, black and grey routes, Wideband audio


This book explains in-depth the real drivers and workings of Session Initiation Protocol. It reduces the risk of your technology, time and resources investment decisions by enabling you to compare your understanding of Session Initiation Protocol with the objectivity of experienced professionals.

Sujets

Informations

Publié par
Date de parution 24 octobre 2012
Nombre de lectures 0
EAN13 9781743046890
Langue English
Poids de l'ouvrage 3 Mo

Informations légales : prix de location à la page 0,1598€. Cette information est donnée uniquement à titre indicatif conformément à la législation en vigueur.

Extrait

Topic relevant selected content from the highest rated entries, typeset, printed and shipped.
Combine the advantages of up-to-date and in-depth knowledge with the convenience of printed books.
A portion of the proceeds of each book will be donated to the Wikimedia Foundation to support their mission: to empower and engage people around the world to collect and develop educational content under a free license or in the public domain, and to disseminate it effectively and globally.
The content within this book was generated collaboratively by volunteers. Please be advised that nothing found here has necessarily been reviewed by people with the expertise required to provide you with complete, accurate or reliable information. Some information in this book maybe misleading or simply wrong. The publisher does not guarantee the validity of the information found here. If you need speciîc advice (for example, medical, legal, înancial, or risk management) please seek a professional who is licensed or knowledgeable in that area.
Sources, licenses and contributors of the articles and images are listed in the section entitled “References”. Parts of the books may be licensed under the GNU Free Documentation License. A copy of this license is included in the section entitled “GNU Free Documentation License”
All used third-party trademarks belong to their respective owners.
Contents
Articles Session Initiation Protocol Authenticated Identity Body Call Admission Control Distributed Universal Number Discovery H.248 H.323 Hookflash Inter-Asterisk eXchange IpTTY Jingle (protocol) List of SIP request methods List of SIP response codes Media Gateway Control Protocol Media Gateway Control Protocol (Megaco) Media Gateway Control Protocol (MGCP) Message Session Relay Protocol MiNET Network Voice Protocol Network-based Call Signaling Open Phone Abstraction Library Open Settlement Protocol Real-time Transport Protocol Registration, Admission and Status RTP audio video profile Signaling Compression Simple Gateway Control Protocol SIP Trunking Skinny Call Control Protocol Skype protocol T.37 ITU-T recommendation T.38 ITU-T recommendation UNIStim Anti-tromboning Back-to-back user agent
1 6 6 7 8 9 21 21 23 23 25 26 28 29 30 32 34 34 35 36 37 38 42 43 47 48 49 50 51 56 57 60 61 62
Call Agent Call origination Chatter bug Comfort noise Host Media Processing International gateway Internet telephony service provider IP Multimedia Subsystem
Lawful interception Mouth-to-ear delay Multimedia Telephony Origination Packet loss concealment PacketCable Purple minutes Session border controller Signaling gateway SIP connection Softphone STUN Survivable Branch Appliance Talkspurt Traversal Using Relay NAT Trunking gateway Vishing Voice chat Voice engine Voice peering VoIP spam VoIP VPN WebCall White, black and grey routes Wideband audio
References Article Sources and Contributors Image Sources, Licenses and Contributors
63 65 65 66 67 67 68 69 79 83 83 84 85 86 89 89 94 94 95 96 99 99 99 101 101 103 104 104 105 105 107 107 108
110 113
Article Licenses License
114
Session Initiation Protocol
Session Initiation Protocol
TheSession Initiation Protocol(SIP) is an IETF-defined signaling protocol, widely used for controlling multimedia communication sessions such as voice and video calls over Internet Protocol (IP). The protocol can be used for creating, modifying and terminating two-party (unicast) or multiparty (multicast) sessions consisting of one or several media streams. The modification can involve changing addresses or ports, inviting more participants, and adding or deleting media streams. Other feasible application examples include video conferencing, streaming multimedia distribution, instant messaging, presence information, file transfer and online games. SIP was originally designed by Henning Schulzrinne and Mark Handley starting in 1996. The latest version of the [1] specification is RFC 3261 from the IETF Network Working Group. In November 2000, SIP was accepted as a 3GPP signaling protocol and permanent element of the IP Multimedia Subsystem (IMS) architecture for IP-based streaming multimedia services in cellular systems. The SIP protocol is an Application Layer protocol designed to be independent of the underlying transport layer; it can run on Transmission Control Protocol (TCP), User Datagram Protocol (UDP), or Stream Control Transmission [2] Protocol (SCTP). It is a text-based protocol, incorporating many elements of the Hypertext Transfer Protocol [3] (HTTP) and the Simple Mail Transfer Protocol (SMTP).
Protocol design [4] SIP employs design elements similar to the HTTP request/response transaction model. Each transaction consists of a client request that invokes a particular method or function on the server and at least one response. SIP reuses most of the header fields, encoding rules and status codes of HTTP, providing a readable text-based format. SIP works in concert with several other protocols and is only involved in the signaling portion of a communication session. SIP clients typically use TCP or UDP on port numbers 5060 and/or 5061 to connect to SIP servers and other SIP endpoints. Port 5060 is commonly used for non-encrypted signaling traffic whereas port 5061 is typically used for traffic encrypted with Transport Layer Security (TLS). SIP is primarily used in setting up and tearing down voice or video calls. It has also found applications in messaging applications, such as instant messaging, and event subscription and notification. There are a large number of SIP-related Internet Engineering Task Force (IETF) documents that define behavior for such applications. The voice and video stream communications in SIP applications are carried over another application protocol, the Real-time Transport Protocol (RTP). Parameters (port numbers, protocols, codecs) for these media streams are defined and negotiated using the Session Description Protocol (SDP) which is transported in the SIP packet body. A motivating goal for SIP was to provide a signaling and call setup protocol for IP-based communications that can support a superset of the call processing functions and features present in the public switched telephone network (PSTN). SIP by itself does not define these features; rather, its focus is call-setup and signaling. However, it was designed to enable the construction of functionalities of network elements designated to proxy servers and user agents. These are features that permit familiar telephone-like operations: dialing a number, causing a phone to ring, hearing ringback tones or a busy signal. Implementation and terminology are different in the SIP world but to the end-user, the behavior is similar. SIP-enabled telephony networks can also implement many of the more advanced call processing features present in Signaling System 7 (SS7), though the two protocols themselves are very different. SS7 is a centralized protocol, characterized by a complex central network architecture and dumb endpoints (traditional telephone handsets). SIP is a peer-to-peer protocol, thus it requires only a simple (and thus scalable) core network with intelligence distributed to the network edge, embedded in endpoints (terminating devices built in either hardware or software). SIP features are implemented in the communicating endpoints (i.e. at the edge of the network) contrary to traditional SS7 features, which are implemented in the network.
1
Session Initiation Protocol
Although several other VoIP signaling protocols exist (such as BICC, H.323, MGCP, MEGACO), SIP is distinguished by its proponents for having roots in the IP community rather than the telecommunications industry. SIP has been standardized and governed primarily by the IETF, while other protocols, such as H.323, have traditionally been associated with the International Telecommunication Union (ITU). The first proposed standard version (SIP 2.0) was defined by RFC 2543. This version of the protocol was further refined and clarified in RFC 3261, although some implementations are still relying on the older definitions.
SIP network elements ASIP user agent(UA) is a logical network end-point used to create or receive SIP messages and thereby manage a SIP session. A SIP UA can perform the role of aUser Agent Client(UAC), which sends SIP requests, and theUser Agent Server(UAS), which receives the requests and returns a SIP response. These roles of UAC and UAS only last [5] for the duration of a SIP transaction. A SIP phone is a SIP user agent that provides the traditional call functions of a telephone, such as dial, answer, [6] [7] reject, hold/unhold, and call transfer. SIP phones may be implemented by dedicated hardware controlled by the phone application directly or through an embedded operating system (hardware SIP phone) or as a softphone, a software application that is installed on a personal computer or a mobile device, e.g., a personal digital assistant (PDA) or cell phone with IP connectivity. As vendors increasingly implement SIP as a standard telephony platform, often driven by 4G efforts, the distinction between hardware-based and software-based SIP phones is being blurred and SIP elements are implemented in the basic firmware functions of many IP-capable devices. Examples are [8] devices from Nokia and Research in Motion. Each resource of a SIP network, such as a User Agent or a voicemail box, is identified by a Uniform Resource [9] Identifier (URI), based on the general standard syntax also used in Web services and e-mail. A typical SIP URI is of the form: sip:username:password@host:port. The URI scheme used for SIP issip:. If secure transmission is [5] required, the schemesips:is used and SIP messages must be transported over Transport Layer Security (TLS). In SIP, as in HTTP, the user agent may identify itself using a message header field 'User-Agent', containing a text description of the software/hardware/product involved. The User-Agent field is sent in request messages, which means that the receiving SIP server can see this information. SIP network elements sometimes store this [10] information, and it can be useful in diagnosing SIP compatibility problems. SIP also defines server network elements. Although two SIP endpoints can communicate without any intervening SIP infrastructure, which is why the protocol is described as peer-to-peer, this approach is often impractical for a public service. RFC 3261 defines these server elements: Aproxyserver "is an intermediary entity that acts as both a server and a client for the purpose of making requests on behalf of other clients. A proxy server primarily plays the role of routing, which means its job is to ensure that a request is sent to another entity "closer" to the targeted user. Proxies are also useful for enforcing policy (for example, making sure a user is allowed to make a call). A proxy interprets, and, if necessary, rewrites specific parts of a request message before forwarding it." "Aregistraris a server that accepts REGISTER requests and places the information it receives in those requests into the location service for the domain it handles." "Aredirect serveris a user agent server that generates 3xx responses to requests it receives, directing the client to contact an alternate set of URIs.The redirect server allows SIP Proxy Servers to direct SIP session invitations to external domains." The RFC specifies: "It is an important concept that the distinction between types of SIP servers is logical, not physical." Other SIP related network elements are
2
Session Initiation Protocol
Session border controllers(SBC), they serve asmiddle boxesbetween UA and SIP server for various types of functions, including network topology hiding, and assistance inNAT traversal. Various types ofgatewaysat the edge between a SIP network and other networks (as a phone network)
SIP messages SIP is a text-based protocol with syntax similar to that of HTTP. There are two different types of SIP messages: requests and responses. The first line of a request has amethod, defining the nature of the request, and a [11] Request-URI, indicating where the request should be sent. The first line of a response has aresponse code. [12] For SIP requests, RFC 3261 defines the following methods: • REGISTER: Used by a UA to indicate its current IP address and the URLs for which it would like to receive calls. • INVITE: Used to establish a media session between user agents. • ACK: Confirms reliable message exchanges. • CANCEL: Terminates a pending request. • BYE: Terminates a session between two users in a conference. • OPTIONS: Requests information about the capabilities of a caller, without setting up a call. • PRACK (Provisional Response Acknowledgement): PRACK improves network reliability by adding an acknowledgement system to the provisional Responses (1xx). PRACK is sent in response to provisional response (1xx). [13] The SIP response types defined in RFC 3261 fall in one of the following categories: • Provisional (1xx): Request received and being processed. • Success (2xx): The action was successfully received, understood, and accepted. • Redirection (3xx): Further action needs to be taken (typically by sender) to complete the request. • Client Error (4xx): The request contains bad syntax or cannot be fulfilled at the server. • Server Error (5xx): The server failed to fulfill an apparently valid request.
3
Session Initiation Protocol
• Global Failure (6xx): The request cannot be fulfilled at any server.
Transactions SIP makes use of transactions to control the exchanges between participants and deliver messages reliably. The transactions maintain an internal state and make use of timers.Client Transactionssend requests andServer Transactionsrespond to those requests with one-or-more responses. The responses may include zero-or-more Provisional (1xx) responses and one-or-more final (2xx-6xx) responses. Transactions are further categorized as eitherInviteorNon-Invite.Invitetransactions differ in that they can establish a long-running conversation, referred to as a Dialog in SIP, and so include an acknowledgment (ACK) of any non-failing final response (e.g. 200 OK). Because of these transactional mechanisms, SIP can make use of un-reliable transports such as User Datagram Protocol (UDP). If we take the above example, User1s UAC uses anInvite Client Transactionto send the initial INVITE (1) message. If no response is received after a timer controlled wait period the UAC may have chosen to terminate the transaction or retransmit the INVITE. However, once a response was received, User1 was confident the INVITE was delivered reliably. User1s UAC then must acknowledge the response. On delivery of the ACK (2) both sides of the [14] transaction are complete. And in this case, a Dialog may have been established.
Instant messaging and presence The Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE) is the SIP-based suite of standards for instant messaging and presence information. MSRP (Message Session Relay Protocol) allows instant message sessions and file transfer.
Conformance testing TTCN-3 test specification language is used for the purposes of specifying conformance tests for SIP [15] implementations. SIP test suite is developed by a Specialist Task Force at ETSI (STF 196).
Applications Many VoIP phone companies allow customers to use their own SIP devices, as SIP-capable telephone sets, or softphones. The market for consumer SIP devices continues to expand, there are many devices such as SIP Terminal Adapters, SIP Gateways, and SIP Trunking services providing replacements for ISDN telephone lines. The free software community started to provide more and more of the SIP technology required to build both end points as well as proxy and registrar servers leading to a commodification of the technology, which accelerates global adoption. As an example, the open source community at SIPfoundry actively develops a variety of SIP stacks, client applications and SDKs, in addition to entire private branch exchange (IP PBX) solutions that compete in the market against mostly proprietary IP PBX implementations from established vendors. The National Institute of Standards and Technology (NIST), Advanced Networking Technologies Division provides [16] a public domain implementation of the JAVA Standard for SIP JAIN-SIP which serves as a reference implementation for the standard. The stack can work in proxy server or user agent scenarios and has been used in numerous commercial and research projects. It supports RFC 3261 in full and a number of extension RFCs including RFC 3265 (Subscribe / Notify) and RFC 3262 (Provisional Reliable Responses) etc. SIP-enabled video surveillance cameras can make calls to alert the owner or operator that an event has occurred, for example to notify that motion has been detected out-of-hours in a protected area.
4
Session Initiation Protocol
SIP-ISUP interworking
SIP-I, or the Session Initiation Protocol with encapsulated ISUP, is a protocol used to create, modify, and terminate communication sessions based on ISUP using SIP and IP networks. Services using SIP-I include voice, video [17] telephony, fax and data. SIP-I and SIP-T are two protocols with similar features, notably to allow ISUP messages to be transported over SIP networks. This preserves all of the detail available in the ISUP header, which is important as there are many country-specific variants of ISUP that have been implemented over the last 30 years, and it is not always possible to express all of the same detail using a native SIP message. SIP-I was defined by the ITU-T, where [18] SIP-T was defined via the IETF RFC route.
References [1] "SIP core working group charter" (http://www.ietf.org/dyn/wg/charter/sipcore-charter.html). Ietf.org. 2010-12-07. . Retrieved 2011-01-11. [2] RFC 4168,The Stream Control Transmission Protocol (SCTP) as a Transport for the Session Initiation Protocol (SIP), IETF, The Internet Society (2005) [3] Johnston, Alan B. (2004).SIP: Understanding the Session Initiation Protocol, Second Edition. Artech House. ISBN 1580531687. [4] William Stallings, p.209 [5] RFC 3261,SIP: Session Initiation Protocol [6] Azzedine (2006).Handbook of algorithms for wireless networking and mobile computing(http://books.google.com/ books?id=b8oisvv6fDAC&pg=PT774). CRC Press. p. 774. ISBN 9781584884651. . [7] Porter, Thomas; Andy Zmolek, Jan Kanclirz, Antonio Rosela (2006).Practical VoIP Security(http://books.google.com/ books?id=BYxdyekyRlwC&pg=PA76). Syngress. pp. 7677. ISBN 9781597490603. . [8] ""BlackBerry MVS Software"" (http://na.blackberry.com/eng/services/business/blackberry_mvs/). Na.blackberry.com. . Retrieved 2011-01-11. [9] RFC 3986,Uniform Resource Identifiers (URI): Generic Syntax, IETF, The Internet Society (2005) [10] "User-Agents We Have Known " (http://www.voipuser.org/forum_topic_14998.html)VoIP User.org [11] Stallings, p.214 [12] Stallings, pp.214-215 [13] Stallings, pp.216-217 [14] James Wright. "SIP - An Introduction" (http://www.konnetic.com/Documents/KonneticSIPIntroduction.pdf) (PDF). Konnetic. . Retrieved 2011-01-11. [15] Experiences of Using TTCN-3 for Testing SIP and also OSP (http://portal.etsi.org/ptcc/downloads/TTCN3SIPOSP.pdf) [16] http://jain-sip.dev.java.net [17] "RFC3372: SIP-T Context and Architectures" (http://www.ietf.org/rfc/rfc3372.txt). 2002-09. . Retrieved 2011-01-11. [18] White Paper: "Why SIP-I? A Switching Core Protocol Recommendation" (http://www.4gamericas.org/documents/ 3G_Americas_SIP-I_White_Paper_August_2007-FINAL.pdf)
External links • Computers/Internet/Protocols/SIP/ (http://www.dmoz.org/Computers/Internet/Protocols/SIP//) at the Open Directory Project • Henning Schulzrinne's SIP homepage (http://www.cs.columbia.edu/sip/) hosted by Columbia University • SIP Latest specifications (http://www.sipknowledge.com/eBooks.htm) hosted by SIPKnowledge • Some examples of SIP Use Cases (features) (http://www.sipcenter.com/sip.nsf/html/Personal+Selective+ Presence) • IANA: SIP Parameters (http://www.iana.org/assignments/sip-parameters) • IANA: SIP Event Types Namespace (http://www.iana.org/assignments/sip-events/sip-events.xhtml)
5
Authenticated Identity Body
Authenticated Identity Body
Authenticated Identity BodyorAIBis a way of sharing authenticated identity among parties in a network, allowing a party in a SIP transaction to cryptographically sign the headers that assert the identity of the originator of a message, and provide some other headers necessary for reference integrity. ABI is described and discussed in RFC 3893. As said in RFC 3983:"For reasons of end-to-end privacy, it may also be desirable to encrypt AIBs [...] While encryption of AIBs entails that only the holder of a specific key can decrypt the body, that single key could be distributed throughout a network of hosts that exist under common policies. The security of the AIB is therefore predicated on the secure distribution of the key. However, for some networks (in which there are federations of trusted hosts under a common policy), the widespread distribution of a decryption key could be appropriate. Some telephone networks, for example, might require this model. When an AIB is encrypted, the AIB should be encrypted before it is signed."
Call Admission Control
Call Admission Control(CAC) prevents oversubscription of VoIP networks. It is used in the call set-up phase and applies to real-time media traffic as opposed to data traffic. CAC mechanisms complement and are distinct from the capabilities of Quality of Service tools to protect voice traffic from the negative effects of other voice traffic and to keep excess voice traffic off the network. Since it averts voice traffic congestion, it is apreventive Congestion Control Procedure. It ensures that there is enough bandwidth for authorized flows. Integrated Services with RSVP (which reserve resources for the flow of packets through the network) using controlled-load service ensures that a call cannot be set up if it cannot be supported. CAC rejects calls when either there is insufficient CPU processing power, the upstream and downstream traffic exceeds prespecified thresholds, or [1] the number of calls being handled exceeds a prespecified limit. Connection Admission Control (CAC)can be used to prevent congestion in connection-oriented protocols such as [2] ATM. In that context, there are several schemes available. However, VoIP differs in that it uses RTP, UDP and IP, all of which are connectionless protocols.
References [1] http://www.bytbredbandsdelare.nu/cac.pdf [2] Call admission control schemes: a review. HG Perros, KM Elsayed, N Inc - IEEE Communications Magazine, 1996 - comsoc.org
External links • http://www.bytbredbandsdelare.nu/cac.pdf
6
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents