SIP Pocket Guide Exclusive reference guide for Session Initiation Protocol professionals The Future of Signaling
Session Initiation Protocol (SIP) is a signaling protocol used for creating, modifying, and terminating sessions with one or more participants in an IP network. SIP has been adopted by the telecommunications industry as its protocol of choice for signaling. SIP is an RFC standard (RFC3261) from the Internet Engineering Task Force (IETF), the body responsible for administering and developing the mechanisms that comprise the Internet. Found at the heart of most global networks, Tekelec s market-leading, carrier-grade network solutions enable the secure and instant delivery of calls and text messages for more than one billion mobile and fixed-line subscribers. The company s session management solutions allow telecom operators to manage the diverse applications, devices, technologies and protocols, across existing and evolving networks, to meet the demands of today s consumer. Tekelec uniquely ensures telecom operators have a clear migration path to SIP-based IP networks, and whatever comes next, with the flexibility to deploy solutions at a pace dictated by their business needs. For more information please call 888.628.5521 or +1.919.460.5500 Visit our web site at www.tekelec.com 2 SIP Pocket Guide
Table of Contents SIP Methods... 4 Response Codes... 5 INVITE/200... 7 INVITE/200... 7 Header Fields... 8 Header Fields Compact Forms....11 Header Field Parameters and Parameter Values...11 Security Mechanism Names...15 Namespaces and Priority Values for the Resource Priority Header Field...15 URI Purposes...15 SIP/SIPS URI Parameters...16 SIP s Use of DNS...17 Types of DNS Resource Records....18 NAPTR Records...18 SRV Records...19 DNS Example...19 Option Tags for SIP Extensions...20 SIP Events...26 Session Description Protocol (SDP).......................27 Session Level Description...27 Time Description...27 SDP Media Description...28 SDP Media Attribute Lines (a=)...28 Warning Codes...29 Mapping Between the SIP SDP and SS7 USI/HLC (SIP Origination)..30 Mapping Between SS7 USI and the SIP SDP (SS7 Origination)...30 SIP Response to a Call Progress (CPG) Message...32 Mapping ISUP Cause Codes to SIP-I/SIP-T Responses...32 Mapping SIP-T Responses to ISUP Cause Codes....36 Mapping SIP-I Responses to ISUP Cause Codes...38 SIP Timers...40 INVITE Client Transaction...41 INVITE Server Transaction...42 Non-INVITE Client Transaction....43 Non-INVITE Server Transaction...44 Elements and Architectures...45 Mechanics: Registration...45 Mechanics: Location...46 Glossary of SIP Acronyms and Definitions...47 SIP References...48 www.tekelec.com 3
SIP Methods Methods Description RFC ACK Acknowledgment sent in response to a 3261 response to an INVITE request BYE Terminates a session 3261 CANCEL Cancels a pending transaction 3261 INFO Carries session-related control information 2976 INVITE Establishes a session between participants 3261 MESSAGE Transfers instant messages 3428 NOTIFY Informs a subscriber about the state of 3265 a resource OPTIONS Queries a server about its capabilities 3261 PRACK Similar to ACK but for responding to 3262 reliable provisional responses PUBLISH Publishes event state to a SIP events 3903 server REFER Indicates that the recipient should contact 3515 a third party using contact information provided in the request REGISTER Registers contact information 3261 SUBSCRIBE Requests current state and state updates 3265 from a remote node UPDATE Updates parameters of a session 3311 4 SIP Pocket Guide
Response Codes Note: All response codes below are defined by RFC3261 unless otherwise noted. Response Code RFC Provisional 1xx 100 Trying 180 Ringing 181 Call Is Being Forwarded 183 Session Progress Successful 2xx 200 OK 202 Accepted 3265 Redirection 3xx 300 Multiple Choices 301 Moved Permanently 302 Moved Temporarily 305 Use Proxy 380 Alternative Service Request Failure 4xx 400 Bad Request 401 Unauthorized 402 Payment Required 403 Forbidden 404 Not Found 405 Method Not Allowed 406 Not Acceptable 407 Proxy Authentication Required 408 Request Timeout 410 Gone 412 Conditional Request Failed 3903 413 Request Entity Too Large 414 Request-URI Too Long 415 Unsupported Media Type 416 Unsupported URI Scheme 417 Unknown Resource-Priority 4412 420 Bad Extension 421 Extension Required 422 Session Interval Too Small 4028 423 Interval Too Brief 428 Use Identity Header 4474 Response Codes continues on page 6 www.tekelec.com 5
Response Codes continued from page 5 Response Code RFC 429 Provide Referrer Identity 3892 433 Anonymity Disallowed 5079 436 Bad Identity-Info 4474 437 Unsupported Certificate 4474 438 Invalid Identity Header 4474 470 Consent Needed 5360 480 Temporarily Unavailable 481 Call/Transaction Does Not Exist 482 Loop Detected 483 Too Many Hops 484 Address Incomplete 485 Ambiguous 486 Busy Here 487 Request Terminated 488 Not Acceptable Here 489 Bad Event 3265 493 Undecipherable 494 Security Agreement Required 3329 Server Failure 5xx 500 Server Internal Error 501 Not Implemented 502 Bad Gateway 503 Service Unavailable 504 Server Time-Out 505 Version Not Supported 513 Message Too Large 580 Precondition Failure 3312 Global Failures 6xx 600 Busy Everywhere 603 Decline 604 Does Not Exist Anywhere 606 Not Acceptable 6 SIP Pocket Guide
INVITE/200 Phil P1 P2 P3 Robert INVITE (tid A) INVITE (tid B) INVITE (tid C) INVITE (tid D) response (tid A) response (tid B) response (tid C) response (tid D) ACK (tid E) ACK/200 is an end-to-end message it tells the other endpoint that its 2xx-class response has been received The messages at Phil s UA are exactly the form as if it had talked directly to Robert s UA INVITE/200 Phil P1 P2 P3 Robert INVITE (tid A) INVITE (tid B) INVITE (tid C) INVITE (tid D) response (tid A) response (tid B) response (tid C) response (tid D) ACK (tid E) ACK (tid F) ACK (tid G) ACK (tid H) Proxies can ask to see the ACK/200 The messages at Phil s UA are STILL exactly the form as if it had talked directly to Robert s UA www.tekelec.com 7
Header Fields Header Field Compact Used Where RFC Accept Requests, 2xx, 415 3261 Accept-Contact a Requests 3841 Accept-Encoding Requests, 2xx, 415 3261 Accept-Language Requests, 2xx, 415 3261 Accept-Resource- 200, 417 4412 Priority Alert-Info Requests, 180 3261 Allow Requests, 2xx, 3261 Responses, 405 Allow-Events u Requests, 2xx, 489 3265 Answer-Mode Requests, 200 5373 Authentication-Info 2xx 3261 Authorization Requests 3261 Call-ID i Copied 3261 Call-Info 3261 Contact m Requests, 1xx, 2xx, 3261 3xx, 485 Content-Disposition 3261 Content-Encoding e 3261 Content-Language 3261 Content-Length l 3261 Content-Type c 3261 CSeq Copied 3261 Date 3261 Encryption -Deprecated- 2543 Error-Info 300-699 3261 Event e Requests 3265 Expires 2xx 3261 From Copied 3261 Hide -Deprecated- 2543 History-Info 4244 Identity y Requests 4474 Identity-Info n Requests 4474 In-Reply-To Requests 3261 Join Requests 3911 Max-Forwards Requests 3261 MIME-Version 3261 Min-Expires 423 3261 Min-SE Requests, 422 4028 Organization 3261 Header Fields continues on page 9 8 SIP Pocket Guide
Header Fields continued from page 8 Header Field Compact Used Where RFC P-Access-Network- 3455 Info P-Answer-State Requests, 18x, 2xx 4964 P-Asserted-Identity 3325 P-Associated-URI 2xx 3455 P-Called-Party Requests 3455 P-Charging-Function 3455 Address P-Charging-Vector 3455 P-DCS-Trace-Party- Requests 3603 ID P-DCS-OSPS Requests 3603 P-DCS-Billing-Info 3603 P-DCS-LAES 3603 P-DCS-Redirect 3603 P-Early-Media Requests, 18x, 2xx 5009 P-Media- Requests, 101-199, 3313 Authorization 2xx P-Preferred-Identity 3325 P-Profile-Key 5002 P-User-Database 4457 P-Visited-Network-ID Requests 3455 Path Requests, 2xx 3327 Permission-Missing 5360 Permission-Missing 470 5360 Priority Requests 3261 Priv-Answer-Mode Requests, 200 5373 Privacy 3323 Proxy-Authenticate 407, 401 3261 Proxy-Authorization Requests 3261 Proxy-Require Requests 3261 RAck Requests 3262 Reason 3326 Record-Route Requests, 2xx, 18x 3261 Refer-Sub Requests, 2xx 4488 Refer-To r Requests 3515 Referred-By b Requests 3892 Reject-Contact j Requests 3841 Replaces Requests 3891 Reply-To 3261 Header Fields continues on page 10 www.tekelec.com 9
Header Fields continued from page 9 Header Field Compact Used Where RFC Request-Disposition d Requests 3841 Require 3261 Resource-Priority Requests 4412 Response-Key -Deprecated- 2543 Retry-After 404, 413, 480, 486, 3261 500, 503, 600, 603 Route Requests 3261 Rseq 1xx 3262 Security-Client Requests 3329 Security-Server 421, 494 3329 Security-Verify Requests 3329 Server Responses 3261 Service-Route 2xx 3608 Session-Expires x Requests, 2xx 4028 SIP-ETag 2xx 3903 SIP-If-Match Requests 3903 Subject s Requests 3261 Subscription-State Requests 3265 Supported k Requests, 2xx 3261 Target-Dialog Requests 4538 Timestamp 3261 To t Copied, tag added 3261 Trigger-Consent 5360 Unsupported 420 3261 User-Agent 3261 Via Requests, Responses, 3261 Copied Warning Requests, Responses 3261 WWW-Authenticate 401, 407 3261 The where column describes the request and response types in which the header field can be used. Values in this column are: Requests: header field may only appear in requests Responses: header field may only appear in responses 2xx, 4xx, etc.: A numerical value or range indicates response codes with which the header field can be used; Copied: header field is copied from the request to the response. An empty entry in the where column indicates that the header field may be present in all requests and responses. 10 SIP Pocket Guide
Header Fields Compact Forms Compact a b c d e i j k l m n o r s t u x y Header Field Accept-Contact Referred-By Content-Type Request-Disposition Content-Encoding Call-ID Reject-Contact Supported Content-Length Contact Identity-Info Event Refer-To Subject To Allow-Events Session-Expires Identity Header Field Parameters and Parameter Values Reference is provided only if it is different from the original header field reference. See the Header Fields table. Header Field Reference Parameter Name Predefined Values Accept q No Accept-Encoding q No Accept-Language q No Answer-Mode auto No Answer-Mode auto; require No Answer-Mode manual No Answer-Mode manual; require No Authorization (3310) algorithm Yes Authorization (3310) auts No Authorization cnonce No Authorization nc No Authorization nonce No Authorization opaque No Authorization qop Yes Authorization realm No Authorization response No Header Field Parameters and Parameter Values continues on page 12 www.tekelec.com 11
Header Field Parameters and Parameter Values continued from page 11 Header Field Reference Parameter Name Predefined Values Authorization uri No Authorization username No Authentication-Info cnonce No Authentication-Info nc No Authentication-Info nextnonce No Authentication-Info qop Yes Authentication-Info rspauth No Call-Info (5367) purpose Yes Call-Info purpose Yes Contact expires No Contact q No Contact draft-ietf-sip-gruu pub-gruu No Contact draft-ietf-sip-gruu temp-gru No Content-Disposition handling Yes Event (4235) call-id No Event (4235) from-tag No Event id No Event (4235) include-session No description Event (4235) to-tag No From tag No P-Access-Network-Info cgi-3gpp No P-Access-Network-Info utran-cell-id-3gpp No P-Charging-Function-Addresses ccf No P-Charging-Function-Addresses ecf No P-Charging-Vector icid-value No P-Charging-Vector icid-generated-at No P-Charging-Vector orig-ioi No P-Charging-Vector term-ioi No P-DCS-Billing-Info called No P-DCS-Billing-Info calling No P-DCS-Billing-Info charge No P-DCS-Billing-Info locroute No P-DCS-Billing-Info rksgroup No P-DCS-Billing-Info routing No P-DCS-LAES content No P-DCS-LAES key No P-DCS-Redirect count No P-DCS-Redirect redirector-uri No Header Field Parameters and Parameter Values continues on page 13 12 SIP Pocket Guide
Header Field Parameters and Parameter Values continued from page 12 Header Field Reference Parameter Name Predefined Values Priv-Answer-Mode auto No Priv-Answer-Mode auto; require No Priv-Answer-Mode manual No Priv-Answer-Mode manual; require No Proxy-Authenticate (3310) algorithm Yes Proxy-Authenticate domain No Proxy-Authenticate nonce No Proxy-Authenticate opaque No Proxy-Authenticate qop Yes Proxy-Authenticate realm No Proxy-Authenticate stale Yes Proxy-Authorization (3310) algorithm Yes Proxy-Authorization (3310) auts No Proxy-Authorization cnonce No Proxy-Authorization nc No Proxy-Authorization nonce No Proxy-Authorization opaque No Proxy-Authorization qop Yes Proxy-Authorization realm No Proxy-Authorization uri No Proxy-Authorization username No Proxy-Authorization response No Reason cause Yes Reason text No Retry-After duration No Security-Client alg Yes Security-Client ealg Yes Security-Client d-alg Yes Security-Client d-qop Yes Security-Client d-ver No Security-Client mod Yes Security-Client port1 No Security-Client port2 No Security-Client prot Yes Security-Client q No Security-Client spi No Security-Server alg Yes Security-Server ealg Yes Security-Server d-alg Yes Header Field Parameters and Parameter Values continues on page 14 www.tekelec.com 13
Header Field Parameters and Parameter Values continued from page 13 Header Field Reference Parameter Name Predefined Values Security-Server d-qop Yes Security-Server d-ver No Security-Server mod Yes Security-Server port1 No Security-Server port2 No Security-Server prot Yes Security-Server q No Security-Server spi No Security-Verify alg Yes Security-Verify ealg Yes Security-Verify d-alg Yes Security-Verify d-qop Yes Security-Verify d-ver No Security-Verify mod Yes Security-Verify port1 No Security-Verify port2 No Security-Verify prot Yes Security-Verify q No Security-Verify spi No Subscription-State expires No Subscription-State reason Yes Subscription-State retry-after No Target-Dialog local-tag No Target-Dialog remote-tag No To tag No Trigger-Consent target-uri No Via branch No Via (3486) comp Yes Via maddr No Via received No Via (3581) rport No Via (5049) sigcomp-id No Via ttl No WWW-Authenticate (3310) algorithm Yes WWW-Authenticate domain Yes WWW-Authenticate nonce No WWW-Authenticate opaque No WWW-Authenticate qop Yes WWW-Authenticate realm No WWW-Authenticate stale Yes 14 SIP Pocket Guide
Security Mechanism Names RFC3329 Mechanism Name digest tls ipsec-ike ipsec-man ipsec-3gpp Description HTTP digest authentication Transport Layer Security IPsec with Internet Key Exchange Manually keyed IPsec without IKE IPsec with either MD5 or SHA-1, used in 3GPP IMS networks Namespaces and Priority Values for the Resource Priority Header Field RFC4412 Handling emergency calls according to DNS name space Namespace Intended Algorithm Priority-Values (least to greatest) drsn preemption routine, priority, immediate, flash, flash-override, flash-override-override dsn preemption routine, priority, immediate, flash, flash-override q753 preemption 4, 3, 2, 1, 0 ets queue 4, 3, 2, 1, 0 wps queue 4, 3, 2, 1, 0 URI Purposes RFC4575 Value Description participation The URI can be used to join the conference. streaming The URI can be used to access the streamed conference data. event The URI can be used to subscribe to the conference event package. recording The URI can be used to access the recorded conference data. web-page The URI can be used to access a web page that contains additional information of the conference. www.tekelec.com 15
SIP/SIPS URI Parameters Parameter Predefined RFC Description Name Values cause Yes 4458 Voicemail (IVR) comp Yes 3486 Ability to handle compressed SIP messages content-type No 4240 Service announcements & conferencing delay No 4240 Service announcements & conferencing duration No 4240 Service announcements & conferencing locale No 4240 Service announcements & conferencing lr No 3261 Supports 3261-compliant routing maddr No 3261 Server address to be contacted for the user method Yes 3261 Specifies the method of the SIP request constructed from the URI param[n] No 4240 Service announcements & conferencing play No 4240 Service announcements & conferencing repeat No 4240 Service announcements & conferencing sigcomp-id No 5049 URN of a SIP/SigComp application target No 4458 Indicates the address of the retargeting entity transport Yes 3261 Transport mechanism to be used for sending SIP messages ttl No 3261 Time-to-live value of the UDP multicast packet user Yes 3261, 4967 Distinguishes telephone numbers from the usernames that look like telephone numbers voicexml No 4240 Indicates the URI of the VoiceXML script to execute gr No draft ietf-sipgruu Globally known parameters 16 SIP Pocket Guide
SIP s Use of DNS RFC3263 Is address explicit? No Is port explicit? No Is transport explicit? No Yes Yes Yes Use given address Use given port Use given transport Do NAPTR Lookup Is port explicit? No Is transport explicit? No Yes Use given port Use 5060 Yes Use given transport Use UDP Do SRV Lookups Use 5060 Is transport explicit? Yes No Do A/AAAA Lookups Use given transport Use UDP Use the discovered address, port & transport to contact the server www.tekelec.com 17
Types of DNS Resource Records Type Description RFC NAPTR Naming authority pointer record. 3403 Provides the discovery of the server s preferred transport protocol supported by the client. Returns a name to look up in SRV records for the server. SRV Server selection record. 2782 Provides load balancing across SIP servers. Returns the IP ports, names of servers to lookup in A or AAAA records, and relative weights of each server. A Address record. 1035 Returns an IPv4 address. AAAA IPv6 address record. Returns an IPv6 address. 3596 NAPTR Records order preference service replacement tekelec.com. 600 IN NAPTR 50 50 s SIP+D2U _sip._udp.naptr-udp flags regexp NAPTR Field Description Order Specifies the order, from lowest to highest, in which to process multiple NAPTR records for a name. Processing stops once a suitable record is found. Preference The order, from lowest to highest, in which to process multiple NAPTR records with the same order value. Higher numbered records can be tried if lower numbered records fail or aren t acceptable in some other way. Flags Always s for SIP, which means to do an SRV lookup on whatever is in the replacement field. Service Specifies the service available by following this rule. For SIP: SIP+D2U: SIP over UDP SIP+D2T: SIP over TCP SIP+D2S: SIP over SCTP SIPS+D2T: SIPS over TCP Regexp Always empty for SIP services. Replacement For SIP, a DNS name to use in an SRV query. 18 SIP Pocket Guide
SRV Records service priority port _sip._udp.naptr-udp.tekelec.com. 600 IN SRV 10 1 5060 lt.tekelec.com protocol weight target SRV Field Service Protocol Priority Weight Port Target Description IANA-registered service name, always starts with an _ to avoid collisions with ordinary DNS names. _sip for SIP Transport protocol. Order, from lowest to highest, to try reaching hosts. Emphasis to put on this record when other records have the same priority, used for load balancing. For example, in the records below, the weights total to 4: 1/4 of the traffic will go to huey. 1/4 will go to dewey. 2/4 will go to louie. _sip._udp.naptr-udp.tekelec.com. 600 IN SRV 10 1 5060 huey.tekelec.com. _sip._udp.naptr-udp.tekelec.com. 600 IN SRV 10 1 5060 dewey.tekelec.com. _sip._udp.naptr-udp.tekelec.com. 600 IN SRV 10 2 5060 louie.tekelec.com. The port to use if this record is selected. A name to lookup using A or AAAA if this record is selected. DNS Example $ORIGIN tekelec.com. 10m NAPTR _sip._udp.naptr-udp 10m SRV 0 1 5060 llama _sip._udp.naptr-udp 10m SRV 10 1 5060 lt _sip._udp 10m SRV 0 1 5060 llama _sip._udp 10m SRV 10 1 5060 lt lt IN A 10.0.0.1 llama IN A 10.0.0.2 50 50 s SIP+D2U _sip._udp.naptr-udp Notes: This zone is set to prefer SIP over UDP Normally llama is used, but traffic can failover to lt The bare SRV records are there for clients that don t support NAPTR www.tekelec.com 19
Option Tags for SIP Extensions Option Tag Supported Extension 100rel Reliability of provisional responses answermode Answer-Mode and Priv-Answer-Mode early-session Early-session content disposition eventlist Subscriptions to lists of resources from-change Connected identity gruu Globally Routable User Agent URI (GRUU) histinfo History-Info header field ice join Interactive Connectivity Establishment (ICE) Join header field 20 SIP Pocket Guide
Used in the Following Header Fields Supported indicates that the UA can send or receive reliable provisional responses. Require in a request indicates that the UAS must send all provisional responses reliably. Require in a reliable provisional response indicates that the response is to be sent reliably. Supported indicates the UA supports automatic or manual answering of a request. Require indicates that the UA has to understand the extension when placed in an INVITE. Accept-Contact the extension parameter answermode is placed in this header field when the Require header field is used. Supported indicates that a UA understands the early-session content-disposition type. Require indicates that a UA requires the earlysession disposition type. Supported in a SUBSCRIBE indicates that the UA is willing to process a list. Require in responses to a SUBSCRIBE and in all NOTIFYs within that subscription indicates that the UA has subscribed to an event list. Supported indicates that a UA supports changes to URIs in From and To header fields during a dialog. Supported indicates that a UA understands the extension. Require in a REGISTER request indicates that the registrar is not expected to process the registration unless it supports the GRUU extension. Supported indicates support for the History Information to be captured for requests and returned in subsequent responses. Require indicates that ICE is required by an agent. Support is indicated by placing a media feature tag in the Contact header field. Supported indicates that the UA supports the Join header field. Require indicates that the UA wants explicit failure notification if Join is not supported. RFC 3262 5373 3959 4662 4916 draft-ietfsip-gruu 4244 ietf-sip-iceoption-tag 3911 Option Tags for SIP extensions continues on page 22 www.tekelec.com 21
Option Tags for SIP Extensions continued from page 20 Option Tag multiple-refer Supported Extension REFER method refers to multiple resources in a single request norefersub Suppression of implicit subscriptions path Path header field precondition Preconditions for session establishment pref privacy Caller preferences Privacy mechanism recipient-list-invite Conference establishment using request-contained lists recipient-list-message Multiple recipient MESSAGE requests 22 SIP Pocket Guide
Used in the Following Header Fields Supported the UA can handle multiple resources in a REFER request. Require indicates the REFER request contains a pointer to a URI list in the Refer-To header field and the body contains a resource list document describing multiple REFER targets. Supported indicates that a UA can accept a REFER request without establishing an implicit subscription. Require can be present with the Refer-Sub: false header field. Supported UA supports the Path header field. If found in a REGISTER request, intermediate proxies can determine whether to offer Path service for that request. Require added if an intermediate proxy requires that the registrar support Path for a request. Supported indicates that the offer contains only optional or none strength-tags. Require indicates that the offer contains one or more mandatory strength-tags, or only optional or none strength-tags. Require of a REGISTER ensures that the registrar supports caller preferences extensions. Proxy-Require indicates that proxy servers do not forward the request unless they can provide the requested privacy service. Proxies remove this option tag before forwarding the request if the desired privacy function has been performed. Supported added to the response to an OPTIONs request when the conference server can handle INVITEs with a recipient-list body. Require added to an INVITE when the UAC includes the set of participants in the body of its request to create an ad-hoc conference. Supported added to the response to an OPTIONs request when the UA can handle MESSAGEs with a recipient-list body. Require added to a MESSAGE when the UAC includes the set of recipients in the body. RFC 5368 4488 3327 3312 3840 3323 5366 5365 Option Tags for SIP extensions continues on page 24 www.tekelec.com 23
Option Tags for SIP Extensions continued from page 22 Option Tag recipient-list-subscribe Supported Extension Subscriptions to request-contained resource lists replaces Replaces header field resource-priority Resource-Priority and Accept- Resource-Priority header fields sdp-anat Alternative network address types of the SDP grouping framework sec-agree Security agreement mechanism tdialog Target-Dialog header field timer Session timers 24 SIP Pocket Guide
Used in the Following Header Fields Supported added to the response to an OPTIONs request when the server can handle SUBSCRIBEs with a recipient-list body. Require added to a SUBSCRIBE when the UAC creates a resource list that it wants to subscribe to and includes the set of recipients in the body. Supported indicates the UA supports the Replaces header field. Require indicates the UA wants explicit failure notification when the Replaces header field is not supported. Supported in OPTIONS indicates the UA supports the resource-priority mechanism for emergency communications. Require indicates that the UA wants explicit failure notification if resource priority is not supported. Supported indicates that the UA understands the ANAT semantics as defined in RFC4091. Require indicates that the UA has generated an offer that uses ANAT semantics. Supported indicates that the UAC supports the security agreement mechanism. Require or Proxy-Require indicates that proxy servers are required to use the security agreement mechanism. Require in 494 or 421 responses indicates that the UAC must use the security agreement mechanism. Supported indicates the UA supports Target-Dialog header field. Require indicates the UA needs to support the Target-Dialog header field. Supported indicates that the UA can perform refreshes according to 4028. Require in a request means that the UAS must understand the session timer extension to process the request. Require in a response indicates that the UAC must look for the Session-Expires header field in the response, and process accordingly. RFC 5367 3891 4412 4092 3329 4538 4028 www.tekelec.com 25
SIP Events Package Subscription RFC Name conference URI for a conference to learn about other 4575 members and conference components dialog Users and their changes of state of 4235 INVITE-initiated dialog usages in which they are involved kpml Dual Tone Multi-Frequency (DTMF) signals 4730 for supplemental or mid-call key presses (triggers) entered at the UA. The Key Press Markup Language (KPML) documents (XML) sent in the SUBSCRIBE define and describe filter specifications for capturing key presses. The KPML documents sent in the NOTIFYs report the captured key presses that match the filter criteria to an application server. messagesummary Message waiting status and message 3842 summaries from a messaging system poc-settings Capabilities required by the Push-to-Talk 4354 over Cellular (PoC) service. presence Users availability and willingness to 3856 communicate with other users on the network reg UA s registration state 3680 refer Status of a REFER request 3515 winfo Set of watchers subscribed to the UA s presence information 3857 26 SIP Pocket Guide
Session Description Protocol (SDP) RFC4566 The session description protocol is what describes the session being requested. The SDP is carried in the message body of a SIP request/ response. Each attribute line consists of an attribute identified by a single letter, followed by a value. The attributes defined for SDP are: Session Level Description v=protocol version: This is the version of SDP being used to create the SDP. o=owner/creator and session identifier: The identity of the session initiator. s=session name: Optional name that can be given to the session. i=session information: Additional information that the creator of the session wishes to share with participants. u=uri of description: This contains the URI of a Web site that may contain additional information about the session. e=email address: This usually contains the e-mail address of the creator, where participants can acquire more information. p=phone number: The contact phone number where more information can be provided about the session. c=connection information: Additional information about the connection for the session. b=bandwidth information: The amount of bandwidth to be provided for the session. z=time zone adjustments: Any time zone adjustments to be considered. k=encryption keys: The encryption keys for the session. a=zero or more session attribute lines: The number of attribute lines in the SDP. Time Description t=time the session is active: What time does the session start, for example. r=zero or more repeat times: How many times the session repeats. www.tekelec.com 27
SDP Media Description RFC4566 m=media name and transport address: Name of the media, if applicable. i=media title: Title of the media. c=connection information: Additional connection information. b=bandwidth information: Bandwidth required to support the media. k=encryption key: Encryption keys required. a=zero or more attribute lines: Number of attribute lines provided. SDP Media Attribute Lines (a=) RFC4566 cat = category keywds = keywords tool = name and version of tool ptime = packet time maxptime = maximum packet time recvonly = receive-only mode sendrecv = send and receive mode orient = whiteboard orientation type = conference type charset = character set sdplang = language tag lang = language tag framerate = frame rate quality = quality fmtp = format-specific parameters rtpmap = rtpmap attribute curr = current status attribute des = desired-status attribute conf = confirm-status attribute mid = media stream identification attribute group = group attribute a = rtcp 28 SIP Pocket Guide
Warning Codes RFC3261 Section 27.2 Note: Warning codes provide information supplemental to the status code in SIP response messages when the failure of the transaction results from a Session Description Protocol (SDP) problem. Code Description 300 Incompatible network protocol: One or more network protocols contained in the session description are not available. 301 Incompatible network address formats: One or more network address formats contained in the session description are not available. 302 Incompatible transport protocol: One or more transport protocols described in the session description are not available. 303 Incompatible bandwidth units: One or more bandwidth measurement units contained in the session description were not understood. 304 Media type not available: One or more media types contained in the session description are not available. 305 Incompatible media format: One or more media formats contained in the session description are not available. 306 Attribute not understood: One or more of the media attributes in the session description are not supported. 307 Session description parameter not understood: A parameter other than those listed above was not understood. 330 Multicast not available: The site where the user is located does not support multicast. 331 Unicast is not available: The site where the user is located does not support unicast communication (usually due to the presence of a firewall). 370 Insufficient bandwidth: The bandwidth specified in the session description or defined by the media exceeds that known to be available. 399 Miscellaneous warning: The warning text can include arbitrary information to be presented to a human user or logged. A system receiving this warning MUST NOT take any automated action. www.tekelec.com 29
Mapping Between the SIP SDP and SS7 USI/HLC (SIP Origination) SIP SDP Media Line (m=) Bandwidth Line (b=) Access Line (a=) audio RTP/AVP 0 Nothing or 64 Kbps audio RTP/AVP 64 Kbps rtpmap PCMU/8000 audio RTP/AVP 9 AS: 64 Kbps rtpmap: 9 G. 722/8000 audio RTP/AVP AS: 64 Kbps rtpmap CLEARMODE/8000 image udptl t38 Up to 64 Kbps image tcptl t38 Up to 64 Kbps audio RTP/AVP 384Kbps rtpmap CLEARMODE/8000 audio RTP/AVP 1472 Kbps rtpmap CLEARMODE/8000 audio RTP/AVP 1536 Kbps rtpmap CLEARMODE/8000 Mapping Between SS7 USI and the SIP SDP (SS7 Origination) SS7 User Service Information Info Transfer Info Transport Rate Capability User Info Layer 1 Protocol Indicator Speech Speech G.711 μ-law Speech Speech G.711 μ-law High-Layer Characteristics Identification 3.1 KHz audio 3.1 KHz audio G.711 μ-law Telephony (or no HLC) 3.1 KHz audio 3.1 KHz audio Facsimile Group 2/3 3.1 KHz audio 3.1 KHz audio Facsimile Group 2/3 64 Kbps unrestricted 64 Kbps unrestricted Unrestricted digital info with tone announcement Unrestricted digital info 30 SIP Pocket Guide
Info Transfer Rate SS7 User Service Information Info Transport Capability User Info Layer 1 Protocol Indicator High-Layer Characteristics High-Layer Characteristics Identification 64 Kbps 3.1 KHz audio G.711 μ-law 64 Kbps 3.1 KHz audio G.711 μ-law 64 Kbps Unrestricted digital info with tones and announcements 64 Kbps Unrestricted digital info 64 Kbps 3.1 KHz audio Facsimile Group 2/3 64 Kbps 3.1 KHz audio Facsimile Group 2/3 384 Kbps Unrestricted digital info 1472 Kbps Unrestricted digital info 1536 Kbps Unrestricted digital info SIP SDP Media Line (m=) Bandwidth (b=) Access Line (a=) audio RTP/AVP 0 AS : 64 rtpmap: 0 PCMU/8000 audio RTP/AVP 0 AS : 64 rtpmap: PCMU/8000 audio RTP/AVP 0 AS : 64 rtpmap: 0 PCMU/8000 image udptl t38 AS : 64 image tcptl t38 AS : 64 audio RTP/AVP 9 AS : 64 rtpmap: 9 G. 722/8000 audio RTP/AVP AS : 64 rtpmap: CLEARMODE/8000 www.tekelec.com 31
SIP Response to a Call Progress (CPG) Message Event Information/ SIP Response Event Indicator Parameters 000 0001 Alerting 180 Ringing 000 0010 Progress 183 Session Progress 000 0011 In-band info 183 Session Progress Mapping ISUP Cause Codes to SIP-I/SIP-T Responses ITU-T Q.1912.5 RFC3398 ISUP Cause Code 1 Unallocated number 2 No route to network 3 No route to destination 4 Send special information tone 5 Misdialed trunk prefix 8 Preemption 9 Preemption circuit reserved for re-use 16 Normal call clearing 17 User busy 18 No user responding 19 No answer from the user 20 Subscriber absent 21 Call rejected 22 Number changed (w/o diagnostic) 22 Number changed (w/ diagnostic) 23 Redirection to new destination 25 Exchange routing error 26 Non-selected user clearing 27 Destination out of order 28 Invalid number format (address incomplete) 29 Facility rejected 31 Normal unspecified 34 Resource unavailable 34 No circuit available 38 Resource unavailable 38 Network out of order 41 Resource unavailable 41 Temporary failure 32 SIP Pocket Guide
SIP-I Response SIP-T Response 404 Not Found 404 Not Found 500 Server Internal Error 404 Not Found 500 Server Internal Error 404 Not Found 500 Server Internal Error 404 Not Found 500 Server Internal Error (SIP-I Only) 500 Server Internal Error (SIP-I Only) --- (*) 486 Busy Here 486 Busy Here 480 Temporarily Unavailable 408 Request Timeout 480 Temporarily Unavailable 480 Temporarily Unavailable 480 Temporarily Unavailable 480 Temporarily Unavailable 480 Temporarily Unavailable 403 Forbidden (+) 410 Gone 410 Gone 301 Moved Permanently No Mapping 410 Gone 480 Temporarily Unavailable 404 Not Found (=) 502 Bad Gateway 502 Bad Gateway 484 Address Incomplete 484 Address Incomplete 500 Server Internal Error 501 Not Implemented 480 Temporarily Unavailable 480 Temporarily Unavailable 480 Temporarily Unavailable 503 Service Unavailable 500 Server Internal Error 503 Service Unavailable 500 Server Internal Error 503 Service Unavailable Mapping ISUP Cause Codes to SIP-I/SIP-T Responses continues on page 34 www.tekelec.com 33
Mapping ISUP Cause Codes to SIP-I/SIP-T Responses continued from page 32 ISUP Cause Code 42 Resource unavailable 42 Switching equipment congestion 43 Resource unavailable 44 Resource unavailable 46 Resource unavailable 47 Resource unavailable 50 Requested facility not subscribed 55 Incoming calls barred with CUG 57 Bearer capability not authorized 58 Bearer capability not presently available 63 Service option not available, unspecified 65 Service or option not implemented 65 Bearer capability not implemented 69 Service or option not implemented 70 Service or option not implemented 70 Only restricted digital avail 79 Service or option not implemented 87 User not member of CUG 88 Incompatible destination 90 Non-existent CUG 91 Invalid transit network selection 95 Invalid message, unspecified 97 Message type non-existent or not implemented 99 Info element/parameter non-existent or not implemented 102 Recovery on timer expiry 103 Parameter non-existent or not implemented, passed on 110 Message with unrecognized parameter, discarded 111 Protocol error, unspecified 127 Interworking, unspecified 34 SIP Pocket Guide
SIP-I Response SIP-T Response 500 Server Internal Error 503 Service Unavailable 500 Server Internal Error 500 Server Internal Error 500 Server Internal Error 500 Server Internal Error 503 Service Unavailable 500 Server Internal Error 500 Server Internal Error (SIP-I Only) 403 Forbidden 500 Server Internal Error 403 Forbidden 500 Server Internal Error 503 Service Unavailable 500 Server Internal Error 500 Server Internal Error 488 Not Acceptable Here 500 Server Internal Error 500 Server Internal Error 488 Not Acceptable Here 500 Server Internal Error 501 Not Implemented 500 Server Internal Error (SIP-I Only) 403 Forbidden 500 Server Internal Error 503 Service Unavailable 500 Server Internal Error (SIP-I Only) 404 Not Found 500 Server Internal Error 500 Server Internal Error 500 Server Internal Error 480 Temporarily Unavailable 504 Gateway Timeout 500 Server Internal Error 500 Server Internal Error 500 Server Internal Error 500 Server Internal Error 480 Temporarily Unavailable 500 Server Internal Error (*) ISDN Cause 16 will usually result in a BYE or CANCEL (+) If the cause location is user then the 6xx code could be given rather than the 4xx code (i.e., 403 becomes 603) (=) ANSI procedure in ANSI networks, 26 is overloaded to signify misrouted ported number. Presumably, a number portability dip should have been performed by a prior network. Otherwise cause 26 is usually not used in ISUP procedures. www.tekelec.com 35
Mapping SIP-T Responses to ISUP Cause Codes RFC3398 Response Received Cause Value in the REL 400 Bad request 41 Temporary failure 401 Unauthorized 21 Call rejected (*) 402 Payment required 21 Call rejected 403 Forbidden 21 Call rejected 404 Not found 1 Unallocated number 405 Method not allowed 63 Service or option unavailable 406 Not acceptable 79 Service/option not implemented (+) 407 Proxy authentication required 21 Call rejected (*) 408 Request timeout 102 Recovery on timer expiry 410 Gone 22 Number changed (w/o diagnostic) 413 Request entity too long 127 Interworking (+) 414 Request-URI too long 127 Interworking (+) 415 Unsupported media type 79 Service/option not implemented (+) 416 Unsupported URI scheme 127 Interworking (+) 420 Bad extension 127 Interworking (+) 421 Extension required 127 Interworking (+) 423 Interval too brief 127 Interworking (+) 480 Temporarily unavailable 18 No user responding 481 Call/transaction does not exist 41 Temporary failure 482 Loop detected 25 Exchange - routing error 483 Too many hops 25 Exchange - routing error 484 Address incomplete 28 Invalid number format (+) 485 Ambiguous 1 Unallocated number 486 Busy here 17 User busy 487 Request terminated --- (no mapping) 488 Not acceptable here --- by Warning header 500 Server internal error 41 Temporary failure 501 Not implemented 79 Not implemented, unspecified 502 Bad gateway 38 Network out of order 503 Service unavailable 41 Temporary failure 504 Server time-out 102 Recovery on timer expiry 504 Version not supported 127 Interworking (+) 513 Message too large 127 Interworking (+) 600 Busy everywhere 17 User busy Mapping SIP-T Responses to ISUP Cause Codes continues on page 37 36 SIP Pocket Guide
Mapping SIP-T Responses to ISUP Cause Codes continued from page 36 Response Received Cause Value in the REL 603 Decline 21 Call rejected 604 Does not exist anywhere 1 Unallocated number 606 Not acceptable --- by Warning header (*) In some cases, it may be possible for a SIP gateway to provide credentials to the SIP UAS that is rejecting an INVITE due to authorization failure. If the gateway can authenticate itself, then obviously it SHOULD do so and proceed with the call; only if the gateway cannot authenticate itself should cause code 21 be sent. (+) If at all possible, a SIP gateway SHOULD respond to these protocol errors by remedying unacceptable behavior and attempting to re-originate the session. Only if this proves impossible should the SIP gateway fail the ISUP half of the call. When the Warning header is present in a SIP 606 or 488 message, there may be specific ISDN cause code mappings appropriate to the Warning code. This document recommends that 31 Normal, unspecified SHOULD by default be used for most currently assigned Warning codes. If the Warning code speaks to an unavailable bearer capability, cause code 65 Bearer Capability Not Implemented is a RECOMMENDED mapping. www.tekelec.com 37
Mapping SIP-I Responses to ISUP Cause Codes ITU-T Q.1912.5 SIP-I Response ISUP Cause Code Remarks 400 Bad Request 127 Interworking 401 Unauthorized 127 Interworking Note 1 402 Payment Required 127 Interworking 403 Forbidden 127 Interworking 404 Not Found 1 Unallocated number 405 Method Not Allowed 127 Interworking 406 Not Acceptable 127 Interworking 407 Proxy Authentication 127 Interworking Note 1 Required 408 Request Timeout 127 Interworking 410 Gone 22 Number changed (without diagnostic) 413 Request Entity Too Long 127 Interworking Note 1 414 Request-URI Too Long 127 Interworking Note 1 415 Unsupported Media Type 127 Interworking Note 1 416 Unsupported URI Scheme 127 Interworking Note 1 420 Bad Extension 127 Interworking Note 1 421 Extension Required 127 Interworking Note 1 423 Interval Too Brief 127 Interworking 480 Temporarily Unavailable 20 Subscriber absent 481 Call/Transaction Does 127 Interworking Not Exist 482 Loop Detected 127 Interworking 483 Too Many Hops 127 Interworking 484 Address Incomplete 28 Invalid number Note 1 format 485 Ambiguous 127 Interworking 486 Busy Here 17 User busy 487 Request Terminated 127 Interworking or no Note 2 mapping (Note 3) 488 Not Acceptable Here 127 Interworking 491 Request Pending No Mapping Note 2 493 Undecipherable 127 Interworking 500 Server Internal Error 127 Interworking 501 Not Implemented 127 Interworking 502 Bad Gateway 127 Interworking 503 Service Unavailable 127 Interworking Note 1 504 Server Timeout 127 Interworking Mapping SIP-I Responses to ISUP Cause Codes continues on page 39 38 SIP Pocket Guide
Mapping SIP-I Responses to ISUP Cause Codes continued from page 38 SIP-I Response ISUP Cause Code Remarks 505 Version Not Supported 127 Interworking Note 1 513 Message Too Large 127 Interworking 580 Precondition Failure 127 Interworking Note 1 600 Busy Everywhere 17 User busy 603 Decline 21 Call rejected 604 Does Not Exist Anywhere 1 Unallocated number 606 Not Acceptable 127 Interworking NOTE 1 This response may be handled entirely on the SIP side; if so, it is not interworked. NOTE 2 This response does not terminate a SIP dialog, but only a specific transaction within it. NOTE 3 No mapping if the O-IWU previously issued a CANCEL request for the INVITE. www.tekelec.com 39
SIP Timers RFC3261 Timer Value Section Meaning T1 500ms default Section 17.1.1.1 RTT Estimate T2 4s Section 17.1.2.2 The maximum retransmit interval f o r n o n - I N V I T E requests and INVITE responses T4 5s Section 17.1.2.2 Maximum duration a message will remain in the network Timer A initially T1 Section 17.1.1.2 INVITE request retransmit interval, for UDP only Timer B 64*T1 Section 17.1.1.2 INVITE transaction timeout timer Timer C > 3min Section 16.6 Proxy INVITE transaction timeout Timer D > 32s for UDP Section 17.1.1.2 Wait time for response retransmits Timer E initially T1 Section 17.1.2.2 Non-INVITE request retransmit interval, UDP only Timer F 64*T1 Section 17.1.2.2 Non-INVITE transaction timeout timer Timer G initially T1 Section 17.2.1 INVITE response retransmit interval Timer H 64*T1 Section 17.2.1 Wait time for ACK receipt Timer I T4 for UDP Section 17.2.1 Wait time for ACK retransmits Timer J 64*T1 for UDP Section 17.2.2 Wait time for non-invite request retransmits Timer K T4 for UDP 0s for TCP/SCTP Section 17.1.2.2 Wait time for response retransmits Timer L 64*T1 draft-sparkssip-invfix Wait time for INVITE retransmissions Timer M 64*T1 draft-sparkssip-infix Wait time for 2xx response retransmissions and any additional 2xx responses from other branches of the INVITE if it forked downstream 40 SIP Pocket Guide
INVITE Client Transaction draft-sparks-sip-invfix-02.txt INVITE from TU INVITE sent Timer A fires Reset A, INVITE sent Timer B fires or Transport Error inform TU 300-699 ACK sent response to TU Calling 2xx 2xx to TU 1xx 1xx to TU 1xx 1xx to TU Proceeding 300-699 ACK sent response to TU 2xx 2xx to TU Completed Transport Error inform TU Accepted 300-699 ACK sent Timer D fires Timer M fires 2xx 2xx to TU Terminated Note: Transitions labeled with the event over the action to take www.tekelec.com 41
INVITE Server Transaction draft-sparks-sip-invfix-02.txt INVITE pass INV to TU send 100 if TU won t in 200ms INVITE send response 101-199 from TU send response Proceeding Transport Error inform TU 300-699 from TU send response INVITE send response Completed Timer G fires send response 2xx from TU send response ACK INVITE Timer H fires or Transport Error Inform TU Confirmed Timer I fires Accepted 2xx from TU send response Timer L fires Terminated Note: Transitions labeled with the event over the action to take 42 SIP Pocket Guide
Non-INVITE Client Transaction RFC3261 Request from TU send request Timer E send request 200-699 response to TU Trying 1xx response to TU Timer F or Transport Error inform TU Timer E send request Proceeding Timer F or Transport Error inform TU 200-699 response to TU 1xx response to TU Completed Timer K Terminated Note: Transitions labeled with the event over the action to take www.tekelec.com 43
Non-INVITE Server Transaction RFC3261 Request received pass to TU 200-699 from TU send response Trying 1xx from TU send response Request send response 1xx from TU send response Proceeding Transport Error Inform TU 200-699 from TU send response Request send response Completed Transport Error Inform TU Terminated Note: Transitions labeled with the event over the action to take 44 SIP Pocket Guide
Elements and Architectures Trapezoid Model SIP Proxy example.com SIP Proxy tekelec.com Phil MEDIA Robert SIP BEARER Mechanics: Registration A Binding in Action SIP Proxy/Registrar Phil Robert REGISTER sip:tekelec.com To: sip:rjs@tekelec.com Contact: sip:line1@172.17.2.1 INVITE sip:rjs@tekelec.com Address of Record (AoR) INVITE sip:line1@172.17.2.1 www.tekelec.com 45
Mechanics: Location 3261 rules Static Routes [example.com] [telco.com] Phil sip:rjs@tekelec.com sip:rjs@tekelec.com sip:5551212@telco.com [tekelec.com] Registered Bindings sip:121@gw555.telco.com sip:line1@172.2.17.1 [gateway] Robert s Cell Robert s Desk 46 SIP Pocket Guide
Glossary of SIP Acronyms and Definitions AoR B2BUA Binding Dialog IETF lr Address of record Back-to-back user agent Association between an address of record with one or more contact addresses A peer-to-peer relationship between two user agents that persists for some time Internet Engineering Task Force A URI parameter that indicates that RFC3261 procedures for handling the Route header field are being followed Reliability Recovery from message delivery failure RFC RTP SDP Session SIP TU UA UAC UAS URI URL Usage IETF request for comments Real-time transport protocol Session description protocol An exchange of data between an association of participants Session Initiation Protocol Transaction user User agent User agent client User agent server Uniform resource identifier Uniform resource locator Relationship between endpoints within a dialog www.tekelec.com 47
SIP References draft-ietf-sip-gruu-15.txt Obtaining and Using Globally Routable User Agent (UA) URIs (GRUU) in the Session Initiation Protocol (SIP) draft-ietf-sip-ice-option-tag-02.txt Indicating Support for Interactive Connectivity Establishment (ICE) in the Session Initiation Protocol (SIP) draft-sparks-sip-invfix-02.txt Correct transaction handling for 200 responses to Session Initiation Protocol INVITE requests Internet Assigned Numbers Authority, http://www.iana.org The Internet Engineering Task Force, http://www.ietf.org ITU-T Q.1912.5 Interworking between Session Initiation Protocol (SIP) and Bearer Independent Call Control Protocol or ISDN User Part RFC1035 Domain Names - Implementation and Specification RFC2543 SIP: Session Initiation Protocol RFC2782 A DNS RR for Specifying the Location of Services (DNS SRV) RFC2976 The SIP INFO Method RFC3261 SIP: Session Initiation Protocol RFC3262 Reliability of Provisional Responses in the Session Initiation Protocol (SIP) RFC3263 Session Initiation Protocol (SIP): Locating SIP Servers RFC3311 The Session Initiation Protocol (SIP) UPDATE Method RFC3312 Integration of Resource Management and Session Initiation Protocol (SIP) RFC3313 Private Session Initiation Protocol (SIP) Extensions for Media Authorization RFC3323 A Privacy Mechanism for the Session Initiation Protocol (SIP) RFC3325 Private Extensions to the Session Initiation Protocol (SIP) for Asserted Identity within Trusted Networks RFC3326 The Reason Header Field for the Session Initiation Protocol (SIP) RFC3327 Session Initiation Protocol (SIP) Extension Header Field for Registering Non-Adjacent Contacts RFC3329 Security Mechanism Agreement for the Session Initiation Protocol (SIP) RFC3403 Dynamic Delegation Discovery System (DDDS) Part Three: The Domain Name System (DNS) Database RFC3428 Session Initiation Protocol (SIP) Extension for Instant Messaging RFC3455 Private Header (P-Header) Extensions to the Session Initiation Protocol (SIP) for the 3rd-Generation Partnership Project (3GPP) RFC3486 Compressing the Session Initiation Protocol (SIP) 48 SIP Pocket Guide
RFC3515 The Session Initiation Protocol (SIP) Refer Method RFC3596 DNS Extensions to Support IP Version 6 RFC3603 Private Session Initiation Protocol (SIP) Proxy-to-Proxy Extensions for Supporting the PacketCable Distributed Call Signaling Architecture RFC3608 Session Initiation Protocol (SIP) Extension Header Field for Service Route Discovery During Registration RFC3680 A Session Initiation Protocol (SIP) Event Package for Registrations RFC3840 Indicating User Agent Capabilities in the Session Initiation Protocol (SIP) RFC3841 Caller Preferences for the Session Initiation Protocol (SIP) RFC3842 A Message Summary and Message Waiting Indication Event Package for the Session Initiation Protocol (SIP) RFC3856 A Presence Event Package for the Session Initiation Protocol (SIP) RFC3857 A Watcher Information Event Template-Package for the Session Initiation Protocol (SIP) RFC3891 The Session Initiation Protocol (SIP) Replaces Header RFC3892 The Session Initiation Protocol (SIP) Referred-By Mechanism RFC3903 Session Initiation Protocol (SIP) Extension for Event State Publication RFC3911 The Session Initiation Protocol (SIP) Join Header RFC3959 The Early Session Disposition Type for the Session Initiation Protocol (SIP) RFC4028 Session Timers in the Session Initiation Protocol (SIP) RFC4240 Basic Network Media Services with SIP RFC4244 An Extension to the Session Initiation Protocol (SIP) for Request History Information RFC4354 A Session Initiation Protocol (SIP) Event Package and Data Format for Various Settings in Support for the Push-to-Talk over Cellular (PoC) Service RFC4412 Communications Resource Priority for the Session Initiation Protocol (SIP) RFC4457 The Session Initiation Protocol (SIP)P-User-Database Private-Header (P-Header) RFC4458 Session Initiation Protocol (SIP) URIs for Applications such as Voicemail and Interactive Voice Response (IVR) RFC4474 Enhancements for Authenticated Identity Management in the Session Initiation Protocol (SIP) RFC4488 Suppression of Session Initiation Protocol (SIP) REFER Method Implicit Subscription www.tekelec.com 49
RFC4538 Request Authorization through Dialog Identification in the Session Initiation Protocol (SIP) RFC4575 A Session Initiation Protocol (SIP) Event Package for Conference State RFC4662 A Session Initiation Protocol (SIP) Event Notification Extension for Resource Lists RFC4730 A Session Initiation Protocol(SIP) Event Package for Key Press Stimulus (KPML) RFC4916 Connected Identity in the Session Initiation Protocol (SIP) RFC4967 Dial String Parameter for the Session Initiation Protocol Uniform Resource Identifier RFC5002 The Session Initiation Protocol (SIP)P-Profile-Key Private Header (P-Header) RFC5009 Private Header (P-Header) Extension to the Session Initiation Protocol (SIP) for Authorization of Early Media RFC5049 Applying Signaling Compression (SigComp) to the Session Initiation Protocol (SIP) RFC5079 Rejecting Anonymous Requests in the Session Initiation Protocol (SIP) RFC5360 A Framework for Consent-based Communications in the Session Initiation Protocol (SIP) RFC5365 Multiple-Recipient MESSAGE Requests in the Session Initiation Protocol (SIP) RFC5366 Conference Establishment Using Request-Contained Lists in the Session Initiation Protocol (SIP) RFC5367 Subscriptions to Request-Contained Resource Lists in the Session Initiation Protocol (SIP) RFC5368 Referring to Multiple Resources in the Session Initiation Protocol (SIP) RFC5373 Requesting Answering Modes for the Session Initiation Protocol (SIP) Travis, Russell. The IP Multimedia Subsystem (IMS): Session Control and Other Network Operations (New York: McGraw-Hill Companies, 2008) All RFCs and drafts may be found at http://tools.ietf.org/html/ Even though the specifications herein may resemble specifications, descriptions or requirements of third parties or portions thereof, nothing herein shall be deemed, expressly or by implication, to be a warranty by such third parties or an endorsement by any of them or concurrence by any of them in any representation with respect to the SIP Pocket Guide developed by TEKELEC, its employees or agents. This material is for informational purposes only and subject to change without notification. The Tekelec logo is a registered trademark of Tekelec. 50 SIP Pocket Guide
www.tekelec.com 51
Corporate inquiries: 5200 Paramount Parkway Morrisville, North Carolina 27560 (USA) Tel +1.919.460.5500 Fax +1.919.460.0877 Europe, Middle East and Africa inquiries: Katherine House 85 The High Street Egham, Surrey TW20 9HF United Kingdom Phone: +44.1784.437000 FAX: +44.1784.477121 Singapore-Asia-Pacific inquiries: Tekelec Singapore Pte Ltd 15 Hoe Chiang Road #06-06 Tower 15 Singapore 089316 Phone: +65.6796.2288 FAX: +65.6796.2299 Caribbean and Latin America inquiries: Tekelec Caribbean & Latin America (CALA) 5200 Paramount Parkway Morrisville, North Carolina 27560 (USA) Attn: Ricardo Diaz Tel: +1.305.981.0048 CALA@Tekelec.com www.tekelec.com 2008 Tekelec. All rights reserved. Printed in U.S.A. TKLC-PG-002.1-NA-12-2008