Upload
frensel-petrona
View
215
Download
0
Embed Size (px)
Citation preview
7/27/2019 Sippktguide12 08.FINAL
1/52
SIP
PocketGuide
Exclusive referenceguide for Session InitiationProtocol professionals
The Future of Signaling
7/27/2019 Sippktguide12 08.FINAL
2/52
SIP Pocket Guide2
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, Tekelecs
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 companys 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 todays
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 call888.628.5521or
+1.919.460.5500
Visit our web site at www.tekelec.com
7/27/2019 Sippktguide12 08.FINAL
3/52
www.tekelec.com 3
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 PriorityHeader Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
URI Purposes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
SIP/SIPS URI Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
SIPs Use of DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
Types of DNS Resource Records. . . . . . . . . . . . . . . . . . . . . . . . . .18
NAPTR Records . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
SRV Records . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19DNS 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 . . . . . . . . . . . . . .32Mapping 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42Non-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
7/27/2019 Sippktguide12 08.FINAL
4/52
SIP Pocket Guide4
SIP Methods
Methods Description RFC
ACK Acknowledgment sent in response to a
response to an INVITE request
3261
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 ofa resource 3265
OPTIONS Queries a server about its capabilities 3261
PRACK Similar to ACK but for responding toreliable provisional responses
3262
PUBLISH Publishes event state to a SIP eventsserver
3903
REFER Indicates that the recipient should contacta third party using contact informationprovided in the request
3515
REGISTER Registers contact information 3261
SUBSCRIBE Requests current state and state updatesfrom a remote node
3265
UPDATE Updates parameters of a session 3311
7/27/2019 Sippktguide12 08.FINAL
5/52
www.tekelec.com 5
Response Codes
Note: All response codes below are defined by RFC3261 unless otherwise noted.
Response Codes continues on page 6
Response Code RFC
Provisional 1xx100 Trying
180 Ringing
181 Call Is Being Forwarded
183 Session Progress
Successful 2xx
200 OK202 Accepted 3265
Redirection 3xx
300 Multiple Choices
301 Moved Permanently
302 Moved Temporarily
305 Use Proxy380 Alternative Service
Request Failure 4xx
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Authentication Required
408 Request Timeout
410 Gone412 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 4412420 Bad Extension
421 Extension Required
422 Session Interval Too Small 4028
423 Interval Too Brief
428 Use Identity Header 4474
7/27/2019 Sippktguide12 08.FINAL
6/52
SIP Pocket Guide6
Response Code RFC
429 Provide Referrer Identity 3892
433 Anonymity Disallowed 5079436 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 Exist482 Loop Detected
483 Too Many Hops
484 Address Incomplete
485 Ambiguous
486 Busy Here
487 Request Terminated488 Not Acceptable Here
489 Bad Event 3265
493 Undecipherable
494 Security Agreement Required 3329
Server Failure 5xx
500 Server Internal Error501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Server Time-Out
505 Version Not Supported
513 Message Too Large580 Precondition Failure 3312
Global Failures 6xx
600 Busy Everywhere
603 Decline
604 Does Not Exist Anywhere
606 Not Acceptable
Response Codes continued from page 5
7/27/2019 Sippktguide12 08.FINAL
7/52
www.tekelec.com 7
INVITE/200
INVITE/200
RobertPhil
INVITE (tid A)
response (tid A)
ACK (tid E)
INVITE (tid B)
response (tid B)
P1 P2
INVITE (tid C)
response (tid C)
P3
INVITE (tid D)
response (tid D)
RobertPhil
INVITE (tid A)
response (tid A)
ACK (tid E)
INVITE (tid B)
response (tid B)
ACK (tid F)
P1 P2
INVITE (tid C)
response (tid C)
ACK (tid G)
P3
INVITE (tid D)
response (tid D)
ACK (tid H)
ACK/200 is an end-to-end message it tells the other endpointthat its 2xx-class response has been received
The messages at Phils UA are exactly the form as if it had talkeddirectly to Roberts UA
Proxies can ask to see the ACK/200 The messages at Phils UA are STILL exactly the form as if it had
talked directly to Roberts UA
7/27/2019 Sippktguide12 08.FINAL
8/52
SIP Pocket Guide8
Header Fields
Header Field Compact Used Where RFC
Accept Requests, 2xx, 415 3261
Accept-Contact a Requests 3841Accept-Encoding Requests, 2xx, 415 3261
Accept-Language Requests, 2xx, 415 3261
Accept-Resource-Priority
200, 417 4412
Alert-Info Requests, 180 3261
Allow Requests, 2xx,Responses, 405 3261
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,3xx, 485
3261
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 4028Organization 3261
Header Fields continues on page 9
7/27/2019 Sippktguide12 08.FINAL
9/52
www.tekelec.com 9
Header Fields continued from page 8
Header Fields continues on page 10
Header Field Compact Used Where RFC
P-Access-Network-
Info
3455
P-Answer-State Requests, 18x, 2xx 4964
P-Asserted-Identity 3325
P-Associated-URI 2xx 3455
P-Called-Party Requests 3455
P-Charging-FunctionAddress
3455
P-Charging-Vector 3455
P-DCS-Trace-Party-ID
Requests 3603
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-Authorization
Requests, 101-199,2xx
3313
P-Preferred-Identity 3325
P-Profile-Key 5002
P-User-Database 4457P-Visited-Network-ID Requests 3455
Path Requests, 2xx 3327
Permission-Missing 5360
Permission-Missing 470 5360
Priority Requests 3261
Priv-Answer-Mode Requests, 200 5373Privacy 3323
Proxy-Authenticate 407, 401 3261
Proxy-Authorization Requests 3261
Proxy-Require Requests 3261
RAck Requests 3262
Reason 3326Record-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 3891Reply-To 3261
7/27/2019 Sippktguide12 08.FINAL
10/52
SIP Pocket Guide10
Header Fields continued from page 9
The where column describes the request and response types inwhich 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 responsecodes 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 headerfield may be present in all requests and responses.
Header Field Compact Used Where RFC
Request-Disposition d Requests 3841
Require 3261Resource-Priority Requests 4412
Response-Key -Deprecated- 2543
Retry-After 404, 413, 480, 486,500, 503, 600, 603
3261
Route Requests 3261
Rseq 1xx 3262Security-Client Requests 3329
Security-Server 421, 494 3329
Security-Verify Requests 3329
Server Responses 3261
Service-Route 2xx 3608
Session-Expires x Requests, 2xx 4028SIP-ETag 2xx 3903
SIP-If-Match Requests 3903
Subject s Requests 3261
Subscription-State Requests 3265
Supported k Requests, 2xx 3261
Target-Dialog Requests 4538Timestamp 3261
To t Copied, tag added 3261
Trigger-Consent 5360
Unsupported 420 3261
User-Agent 3261
Via Requests, Responses,Copied 3261
Warning Requests, Responses 3261
WWW-Authenticate 401, 407 3261
7/27/2019 Sippktguide12 08.FINAL
11/52
www.tekelec.com 11
Header Fields Compact Forms
Header Field Parameters and Parameter Values continues on page 12
Compact Header Field
a Accept-Contact
b Referred-Byc Content-Type
d Request-Disposition
e Content-Encoding
i Call-ID
j Reject-Contact
k Supportedl Content-Length
m Contact
n Identity-Info
o Event
r Refer-To
s Subjectt To
u Allow-Events
x Session-Expires
y Identity
Header Field Reference ParameterName
PredefinedValues
Accept q No
Accept-Encoding q NoAccept-Language q No
Answer-Mode auto No
Answer-Mode auto; require No
Answer-Mode manual No
Answer-Mode manual; require No
Authorization (3310) algorithm YesAuthorization (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 ValuesReference is provided only if it is different from the original headerfield reference. See the Header Fields table.
7/27/2019 Sippktguide12 08.FINAL
12/52
SIP Pocket Guide12
Header Field Parameters and Parameter Values continues on page 13
Header Field Parameters and Parameter Values continued from page 11
Header Field Reference ParameterName
PredefinedValues
Authorization uri NoAuthorization username No
Authentication-Info cnonce No
Authentication-Info nc No
Authentication-Info nextnonce No
Authentication-Info qop Yes
Authentication-Info rspauth NoCall-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 NoContent-Disposition handling Yes
Event (4235) call-id No
Event (4235) from-tag No
Event id No
Event (4235) include-sessiondescription
No
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
7/27/2019 Sippktguide12 08.FINAL
13/52
www.tekelec.com 13
Header Field Parameters and Parameter Values continues on page 14
Header Field Parameters and Parameter Values continued from page 12
Header Field Reference ParameterName
PredefinedValues
Priv-Answer-Mode auto NoPriv-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 NoProxy-Authenticate opaque No
Proxy-Authenticate qop Yes
Proxy-Authenticate realm No
Proxy-Authenticate stale Yes
Proxy-Authorization (3310) algorithm Yes
Proxy-Authorization (3310) auts NoProxy-Authorization cnonce No
Proxy-Authorization nc No
Proxy-Authorization nonce No
Proxy-Authorization opaque No
Proxy-Authorization qop Yes
Proxy-Authorization realm NoProxy-Authorization uri No
Proxy-Authorization username No
Proxy-Authorization response No
Reason cause Yes
Reason text No
Retry-After duration NoSecurity-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 YesSecurity-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
7/27/2019 Sippktguide12 08.FINAL
14/52
SIP Pocket Guide14
Header Field Parameters and Parameter Values continued from page 13
Header Field Reference ParameterName
PredefinedValues
Security-Server d-qop YesSecurity-Server d-ver No
Security-Server mod Yes
Security-Server port1 No
Security-Server port2 No
Security-Server prot Yes
Security-Server q NoSecurity-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 NoSecurity-Verify mod Yes
Security-Verify port1 No
Security-Verify port2 No
Security-Verify prot Yes
Security-Verify q No
Security-Verify spi NoSubscription-State expires No
Subscription-State reason Yes
Subscription-State retry-after No
Target-Dialog local-tag No
Target-Dialog remote-tag No
To tag NoTrigger-Consent target-uri No
Via branch No
Via (3486) comp Yes
Via maddr No
Via received No
Via (3581) rport NoVia (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
7/27/2019 Sippktguide12 08.FINAL
15/52
www.tekelec.com 15
Namespaces and Priority Values for theResource Priority Header FieldHandling 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
RFC4412
URI Purposes
Value Description
participation The URI can be used to join the conference.
streaming The URI can be used to access the streamedconference data.
event The URI can be used to subscribe to the conferenceevent package.
recording The URI can be used to access the recordedconference data.
web-page The URI can be used to access a web page thatcontains additional information of the conference.
RFC4575
Mechanism Name Description
digest HTTP digest authentication
tls Transport Layer Securityipsec-ike IPsec with Internet Key Exchange
ipsec-man Manually keyed IPsec without IKE
ipsec-3gpp IPsec with either MD5 or SHA-1, used in3GPP IMS networks
Security Mechanism Names RFC3329
7/27/2019 Sippktguide12 08.FINAL
16/52
SIP Pocket Guide16
SIP/SIPS URI Parameters
ParameterName
PredefinedValues
RFC Description
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-compliantrouting
maddr No 3261 Server address to becontacted for the user
method Yes 3261 Specifies the method of theSIP request constructed fromthe 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/SigCompapplication
target No 4458 Indicates the address of the
retargeting entitytransport Yes 3261 Transport mechanism to
be used for sending SIPmessages
ttl No 3261 Time-to-live value of the UDPmulticast packet
user Yes 3261,4967
Distinguishes telephonenumbers from the usernamesthat look like telephonenumbers
voicexml No 4240 Indicates the URI of theVoiceXML script to execute
gr No draftietf-sip-gruu
Globally known parameters
7/27/2019 Sippktguide12 08.FINAL
17/52
www.tekelec.com 17
SIPs Use of DNS
RFC3263
Isaddressexplicit?
Isport
explicit?
Istransportexplicit?
Yes
No
No
No
Yes
Yes
Use thediscoveredaddress,port &
transport
to contactthe server
Use 5060
Usegiven
address
Usegivenport
UseUDP
Usegiven
transport
Isportexplicit?
Istransportexplicit?
Yes Yes
No
No
Yes
Usegivenport
Istransportexplicit?
No
Usegiven
transport
DoNAPTRLookup
Use
giventransport
DoA/AAAALookups
Use
UDP
DoSRV
Lookups
Use5060
7/27/2019 Sippktguide12 08.FINAL
18/52
SIP Pocket Guide18
Types of DNS Resource Records
NAPTR Records
Type Description RFC
NAPTR Naming authority pointer record.
Provides the discovery of the servers preferredtransport protocol supported by the client.
Returns a name to look up in SRV records for theserver.
3403
SRV Server selection record.
Provides load balancing across SIP servers.
Returns the IP ports, names of servers to lookup inA or AAAA records, and relative weights of each server.
2782
A Address record.
Returns an IPv4 address.
1035
AAAA IPv6 address record.
Returns an IPv6 address.
3596
NAPTR Field Description
Order Specifies the order, from lowest to highest, in whichto process multiple NAPTR records for a name.
Processing stops once a suitable record is found.
Preference The order, from lowest to highest, in which toprocess multiple NAPTR records with the same ordervalue. Higher numbered records can be tried if lowernumbered records fail or arent acceptable in someother way.
Flags Always s for SIP, which means to do an SRV lookupon 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 TCPRegexp Always empty for SIP services.
Replacement For SIP, a DNS name to use in an SRV query.
tekelec.com. 600 IN NAPTR 50 50 s SIP+D2U _sip._udp.naptr-udp
order
flags regexp
preference service replacement
7/27/2019 Sippktguide12 08.FINAL
19/52
www.tekelec.com 19
DNS Example
_sip._udp.naptr-udp.tekelec.com. 600 IN SRV 10 1 5060 lt.tekelec.com
weightprotocol target
service
priority
port
SRV Field DescriptionService IANA-registered service name, always starts with an _to avoid collisions with ordinary DNS names.
_sip for SIP
Protocol Transport protocol.
Priority Order, from lowest to highest, to try reaching hosts.
Weight 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.
Port The port to use if this record is selected.
Target A name to lookup using A or AAAA if this record isselected.
$ORIGIN tekelec.com.
10m NAPTR 50 50 s SIP+D2U _sip._udp.naptr-udp
_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
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 dont support NAPTR
SRV Records
7/27/2019 Sippktguide12 08.FINAL
20/52
SIP Pocket Guide20
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 Interactive Connectivity Establishment(ICE)
join Join header field
7/27/2019 Sippktguide12 08.FINAL
21/52
www.tekelec.com 21
Used in the Following Header Fields RFC
Supported indicates that the UA can send or
receive reliable provisional responses.Require in a request indicates that the UASmust send all provisional responses reliably.Require in a reliable provisional response indicates that the response is to be sent reliably.
3262
Supported indicates the UA supports automaticor manual answering of a request.Require indicates that the UA has tounderstand the extension when placed in an INVITE.Accept-Contact the extension parameteranswermode is placed in this header field whenthe Require header field is used.
5373
Supported indicates that a UA understands theearly-session content-disposition type.Require indicates that a UA requires the early-session disposition type.
3959
Supported in a SUBSCRIBE indicates that the UAis willing to process a list.Require in responses to a SUBSCRIBE and inall NOTIFYs within that subscription indicatesthat the UA has subscribed to an event list.
4662
Supported indicates that a UA supportschanges to URIs in From and To header fieldsduring a dialog.
4916
Supported indicates that a UA understands theextension.Require in a REGISTER request indicates thatthe registrar is not expected to process theregistration unless it supports the GRUU extension.
draft-ietf-sip-gruu
Supported indicates support for the HistoryInformation to be captured for requests andreturned in subsequent responses.
4244
Require indicates that ICE is required by anagent. Support is indicated by placing a mediafeature tag in the Contact header field.
ietf-sip-ice-option-tag
Supported indicates that the UA supports theJoin header field.Require indicates that the UA wants explicitfailure notification if Join is not supported.
3911
Option Tags for SIP extensions continues on page 22
7/27/2019 Sippktguide12 08.FINAL
22/52
SIP Pocket Guide22
Option Tags for SIP Extensions continued from page 20
Option Tag Supported Extension
multiple-refer 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 Caller preferences
privacy Privacy mechanism
recipient-list-invite Conference establishment usingrequest-contained lists
recipient-list-message Multiple recipient MESSAGE requests
7/27/2019 Sippktguide12 08.FINAL
23/52
www.tekelec.com 23
Used in the Following Header Fields RFC
Supported the UA can handle multiple resources
in a REFER request.Require indicates the REFER request containsa pointer to a URI list in the Refer-To header fieldand the body contains a resource list documentdescribing multiple REFER targets.
5368
Supported indicates that a UA can accept a REFERrequest without establishing an implicit subscription.
Require can be present with the Refer-Sub: falseheader field.
4488
Supported UA supports the Path header field.If found in a REGISTER request, intermediateproxies can determine whether to offer Pathservice for that request.Require added if an intermediate proxy requiresthat the registrar support Path for a request.
3327
Supported indicates that the offer contains onlyoptional or none strength-tags.Require indicates that the offer contains one ormore mandatory strength-tags, or only optionalor none strength-tags.
3312
Require of a REGISTER ensures that the registrarsupports caller preferences extensions.
3840
Proxy-Require indicates that proxy servers donot forward the request unless they can providethe requested privacy service. Proxies removethis option tag before forwarding the request ifthe desired privacy function has been performed.
3323
Supported added to the response to anOPTIONs request when the conference servercan handle INVITEs with a recipient-list body.Require added to an INVITE when the UACincludes the set of participants in the body of itsrequest to create an ad-hoc conference.
5366
Supported added to the response to an OPTIONsrequest when the UA can handle MESSAGEs with arecipient-list body.Require added to a MESSAGE when the UACincludes the set of recipients in the body.
5365
Option Tags for SIP extensions continues on page 24
7/27/2019 Sippktguide12 08.FINAL
24/52
SIP Pocket Guide24
Option Tag Supported Extension
recipient-list-subscribe 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 ofthe SDP grouping framework
sec-agree Security agreement mechanism
tdialog Target-Dialog header field
timer Session timers
Option Tags for SIP Extensions continued from page 22
7/27/2019 Sippktguide12 08.FINAL
25/52
www.tekelec.com 25
Used in the Following Header Fields RFC
Supported added to the response to an OPTIONs
request when the server can handle SUBSCRIBEswith a recipient-list body.Require added to a SUBSCRIBE when the UACcreates a resource list that it wants to subscribe toand includes the set of recipients in the body.
5367
Supported indicates the UA supports theReplaces header field.
Require indicates the UA wants explicit failurenotification when the Replaces header field is notsupported.
3891
Supported in OPTIONS indicates the UA supportsthe resource-priority mechanism for emergencycommunications.Require indicates that the UA wants explicit failurenotification if resource priority is not supported.
4412
Supported indicates that the UA understandsthe ANAT semantics as defined in RFC4091.Require indicates that the UA has generatedan offer that uses ANAT semantics.
4092
Supported indicates that the UAC supports thesecurity agreement mechanism.Require or Proxy-Require indicates that proxyservers are required to use the security agreementmechanism.Require in 494 or 421 responses indicatesthat the UAC must use the security agreementmechanism.
3329
Supported indicates the UA supports Target-Dialogheader field.
Require indicates the UA needs to support theTarget-Dialog header field.
4538
Supported indicates that the UA can performrefreshes according to 4028.Require in a request means that the UASmust understand the session timer extension toprocess the request.
Require in a response indicates that the UACmust look for the Session-Expires header field inthe response, and process accordingly.
4028
7/27/2019 Sippktguide12 08.FINAL
26/52
SIP Pocket Guide26
SIP Events
PackageName
Subscription RFC
conference URI for a conference to learn about othermembers and conference components 4575
dialog Users and their changes of state ofINVITE-initiated dialog usages in whichthey are involved
4235
kpml Dual Tone Multi-Frequency (DTMF) signalsfor supplemental or mid-call key presses
(triggers) entered at the UA. The Key PressMarkup Language (KPML) documents (XML)sent in the SUBSCRIBE define and describefilter specifications for capturing key presses.The KPML documents sent in the NOTIFYsreport the captured key presses that matchthe filter criteria to an application server.
4730
message-summary Message waiting status and messagesummaries from a messaging system 3842
poc-settings Capabilities required by the Push-to-Talkover Cellular (PoC) service.
4354
presence Users availability and willingness tocommunicate with other users on thenetwork
3856
reg UAs registration state 3680refer Status of a REFER request 3515
winfo Set of watchers subscribed to the UAspresence information
3857
7/27/2019 Sippktguide12 08.FINAL
27/52
www.tekelec.com 27
Session Description Protocol (SDP)
RFC4566The session description protocol is what describes the session beingrequested. The SDP is carried in the message body of a SIP request/response. Each attribute line consists of an attribute identified by asingle 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 tocreate the SDP.
o=owner/creator and session identifier: The identity of thesession initiator.
s=session name: Optional name that can be given to the session.
i=session information: Additional information that the creator ofthe session wishes to share with participants.
u=URI of description: This contains the URI of a Web site thatmay contain additional information about the session.
e=email address: This usually contains the e-mail address of thecreator, where participants can acquire more information.
p=phone number: The contact phone number where moreinformation can be provided about the session.
c=connection information: Additional information about theconnection for the session.
b=bandwidth information: The amount of bandwidth to beprovided for the session.
z=time zone adjustments: Any time zone adjustments to beconsidered.
k=encryption keys: The encryption keys for the session.
a=zero or more session attribute lines: The number of attributelines 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 sessionrepeats.
7/27/2019 Sippktguide12 08.FINAL
28/52
SIP Pocket Guide28
SDP Media Description
RFC4566
m=media name and transport address: Name of the media, ifapplicable.
i=media title: Title of the media.
c=connection information: Additional connection information.
b=bandwidth information: Bandwidth required to support themedia.
k=encryption key: Encryption keys required.
a=zero or more attribute lines: Number of attribute linesprovided.
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
7/27/2019 Sippktguide12 08.FINAL
29/52
www.tekelec.com 29
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 aSession Description Protocol (SDP) problem.
Code Description
300 Incompatible network protocol: One or more networkprotocols contained in the session description are notavailable.
301 Incompatible network address formats: One or morenetwork address formats contained in the sessiondescription are not available.
302 Incompatible transport protocol: One or more transportprotocols described in the session description are notavailable.
303 Incompatible bandwidth units: One or more bandwidth
measurement units contained in the session descriptionwere not understood.
304 Media type not available: One or more media typescontained in the session description are not available.
305 Incompatible media format: One or more media formatscontained 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 notunderstood.
330 Multicast not available: The site where the user is locateddoes not support multicast.
331 Unicast is not available: The site where the user is locateddoes not support unicast communication (usually due tothe presence of a firewall).
370 Insufficient bandwidth: The bandwidth specified in thesession description or defined by the media exceeds thatknown to be available.
399 Miscellaneous warning: The warning text can includearbitrary information to be presented to a human user orlogged. A system receiving this warning MUST NOT takeany automated action.
7/27/2019 Sippktguide12 08.FINAL
30/52
SIP Pocket Guide30
Mapping Between the SIP SDP and SS7 USI/HLC(SIP Origination)
Mapping Between SS7 USI and the SIP SDP(SS7 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: 9G. 722/8000
audio RTP/AVP AS: 64 Kbps rtpmapCLEARMODE/8000
image udptl t38 Up to 64 Kbps
image tcptl t38 Up to 64 Kbps
audio RTP/AVP 384Kbps rtpmapCLEARMODE/8000
audio RTP/AVP 1472 Kbps rtpmapCLEARMODE/8000
audio RTP/AVP 1536 Kbps rtpmap
CLEARMODE/8000
SS7 User Service Information
Info TransferRate
Info TransportCapability
User InfoLayer 1ProtocolIndicator
High-LayerCharacteristicsIdentification
Speech Speech G.711 -law
Speech Speech G.711 -law
3.1 KHz audio 3.1 KHz audio G.711 -law Telephony(or no HLC)
3.1 KHz audio 3.1 KHz audio FacsimileGroup 2/3
3.1 KHz audio 3.1 KHz audio FacsimileGroup 2/3
64 Kbpsunrestricted
Unrestricted digitalinfo with toneannouncement
64 Kbpsunrestricted
Unrestricted digitalinfo
7/27/2019 Sippktguide12 08.FINAL
31/52
www.tekelec.com 31
SS7 User Service Information High-Layer
CharacteristicsInfo TransferRate
Info TransportCapability
User InfoLayer 1ProtocolIndicator
High-LayerCharacteristicsIdentification
64 Kbps 3.1 KHz audio G.711 -law
64 Kbps 3.1 KHz audio G.711 -law
64 Kbps Unrestricted digitalinfo with tones andannouncements
64 Kbps Unrestricted digitalinfo
64 Kbps 3.1 KHz audio Facsimile Group2/3
64 Kbps 3.1 KHz audio Facsimile Group2/3
384 Kbps Unrestricted digitalinfo
1472 Kbps Unrestricted digitalinfo
1536 Kbps Unrestricted digital
info
SIP SDP
Media Line (m=) Bandwidth (b=) Access Line (a=)
audio RTP/AVP 0 AS : 64 rtpmap: 0PCMU/8000
audio RTP/AVP 0 AS : 64 rtpmap:PCMU/8000
audio RTP/AVP 0 AS : 64 rtpmap: 0PCMU/8000
image udptl t38 AS : 64
image tcptl t38 AS : 64
audio RTP/AVP 9 AS : 64 rtpmap: 9G. 722/8000
audio RTP/AVP AS : 64 rtpmap:CLEARMODE/8000
7/27/2019 Sippktguide12 08.FINAL
32/52
SIP Pocket Guide32
SIP Response to a Call Progress (CPG) Message
Event Information/Event Indicator Parameters
SIP Response
000 0001 Alerting 180 Ringing000 0010 Progress 183 Session Progress
000 0011 In-band info 183 Session Progress
Mapping ISUP Cause Codesto SIP-I/SIP-T ResponsesITU-T Q.1912.5RFC3398
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
7/27/2019 Sippktguide12 08.FINAL
33/52
www.tekelec.com 33
Mapping ISUP Cause Codes to SIP-I/SIP-T Responses continues on page 34
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
7/27/2019 Sippktguide12 08.FINAL
34/52
SIP Pocket Guide34
ISUP Cause Code
42 Resource unavailable
42 Switching equipment congestion43 Resource unavailable
44 Resource unavailable
46 Resource unavailable
47 Resource unavailable
50 Requested facility not subscribed
55 Incoming calls barred with CUG57 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 implemented70 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 CUG91 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 on110 Message with unrecognized parameter, discarded
111 Protocol error, unspecified
127 Interworking, unspecified
Mapping ISUP Cause Codes to SIP-I/SIP-T Responses continued from page 32
7/27/2019 Sippktguide12 08.FINAL
35/52
www.tekelec.com 35
SIP-I Response SIP-T Response
500 Server Internal Error
503 Service Unavailable500 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 Forbidden500 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 Error500 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 Error500 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 givenrather than the 4xx code (i.e., 403 becomes 603)
(=) ANSI procedure in ANSI networks, 26 is overloaded to signifymisrouted ported number. Presumably, a number portability dipshould have been performed by a prior network. Otherwise cause26 is usually not used in ISUP procedures.
7/27/2019 Sippktguide12 08.FINAL
36/52
SIP Pocket Guide36
Mapping SIP-T Responses to ISUP Cause Codes continues on page 37
Response Received Cause Value in the REL
400 Bad request 41 Temporary failure401 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
unavailable406 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 notimplemented (+)
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 CodesRFC3398
7/27/2019 Sippktguide12 08.FINAL
37/52
www.tekelec.com 37
Mapping SIP-T Responses to ISUP Cause Codes continued from page 36
(*) In some cases, it may be possible for a SIP gateway to providecredentials to the SIP UAS that is rejecting an INVITE due toauthorization failure. If the gateway can authenticate itself, thenobviously 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 andattempting to re-originate the session. Only if this provesimpossible 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 tothe Warning code. This document recommends that 31 Normal,unspecified SHOULD by default be used for most currently assignedWarning codes. If the Warning code speaks to an unavailable bearercapability, cause code 65 Bearer Capability Not Implemented is aRECOMMENDED mapping.
Response Received Cause Value in the REL
603 Decline 21 Call rejected
604 Does not exist anywhere 1 Unallocated number606 Not acceptable --- by Warning header
7/27/2019 Sippktguide12 08.FINAL
38/52
SIP Pocket Guide38
Mapping SIP-I Responses to ISUP Cause Codes continues on page 39
Mapping SIP-I Responses to ISUP Cause CodesITU-T Q.1912.5
SIP-I Response ISUP Cause Code Remarks
400 Bad Request 127 Interworking401 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 Interworking407 Proxy Authentication
Required127 Interworking Note 1
408 Request Timeout 127 Interworking
410 Gone 22 Number changed(without diagnostic)
413 Request Entity Too Long 127 Interworking Note 1414 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 Interworking480 Temporarily Unavailable 20 Subscriber absent
481 Call/Transaction DoesNot Exist
127 Interworking
482 Loop Detected 127 Interworking
483 Too Many Hops 127 Interworking
484 Address Incomplete 28 Invalid numberformat
Note 1
485 Ambiguous 127 Interworking
486 Busy Here 17 User busy
487 Request Terminated 127 Interworking or nomapping (Note 3)
Note 2
488 Not Acceptable Here 127 Interworking
491 Request Pending No Mapping Note 2493 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
7/27/2019 Sippktguide12 08.FINAL
39/52
www.tekelec.com 39
NOTE 1 This response may be handled entirely on the SIP side; ifso, it is not interworked.
NOTE 2 This response does not terminate a SIP dialog, but only aspecific transaction within it.
NOTE 3 No mapping if the O-IWU previously issued a CANCEL
request for the INVITE.
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 Interworking580 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
7/27/2019 Sippktguide12 08.FINAL
40/52
SIP Pocket Guide40
SIP Timers
RFC3261
Timer Value Section Meaning
T1 500ms default Section 17.1.1.1 RTT EstimateT2 4s Section 17.1.2.2 The maximum
retransmit intervalfor non-INVITErequests and INVITEresponses
T4 5s Section 17.1.2.2 Maximum duration a
message will remainin the network
Timer A initially T1 Section 17.1.1.2 INVITE requestretransmit interval,for UDP only
Timer B 64*T1 Section 17.1.1.2 INVITE transactiontimeout timer
Timer C > 3min Section 16.6 Proxy INVITEtransaction timeout
Timer D > 32s for UDP Section 17.1.1.2 Wait time for responseretransmits
Timer E initially T1 Section 17.1.2.2 Non-INVITE requestretransmit interval,
UDP onlyTimer F 64*T1 Section 17.1.2.2 Non-INVITE transactiontimeout timer
Timer G initially T1 Section 17.2.1 INVITE responseretransmit interval
Timer H 64*T1 Section 17.2.1 Wait time for ACKreceipt
Timer I T4 for UDP Section 17.2.1 Wait time for ACKretransmits
Timer J 64*T1 for UDP Section 17.2.2 Wait time fornon-INVITE requestretransmits
Timer K T4 for UDP0s for TCP/SCTP
Section 17.1.2.2 Wait time for responseretransmits
Timer L 64*T1 draft-sparks-sip-invfix
Wait time for INVITEretransmissions
Timer M 64*T1 draft-sparks-sip-infix
Wait time for2xx responseretransmissions andany additional 2xxresponses from other
branches of the INVITEif it forked downstream
7/27/2019 Sippktguide12 08.FINAL
41/52
www.tekelec.com 41
INVITE Client Transaction
draft-sparks-sip-invfix-02.txt
Note: Transitions labeled with the event over the action to take
Calling
Proceeding
Completed Accepted
Terminated
INVITE from TU
INVITE sent
Timer A firesReset A,INVITE sent
2xx2xx to TU
2xx2xx to TU
2xx2xx to TU
1xx1xx to TU
1xx1xx to TU
300-699ACK sentresponseto TU
300-699ACK sent
responseto TU
300-699ACK sent
Timer B firesor Transport Error
inform TU
Transport Errorinform TU
Timer D fires Timer M fires
7/27/2019 Sippktguide12 08.FINAL
42/52
7/27/2019 Sippktguide12 08.FINAL
43/52
www.tekelec.com 43
Non-INVITE Client Transaction
RFC3261
Trying
Proceeding
Completed
Terminated
Request from TU
send request
Timer For Transport Errorinform TU
1xxresponse to TU
Timer Esend request
200-699response to TU
Timer For Transport Errorinform TU
Timer K
1xxresponse
to TU
Timer Esend request
200-699response to TU
Note: Transitions labeled with the event over the action to take
7/27/2019 Sippktguide12 08.FINAL
44/52
SIP Pocket Guide44
Non-INVITE Server Transaction
RFC3261
Trying
Proceeding
Completed
Terminated
Request received
pass to TU
1xx from TUsend response
1xx from TUsend response
200-699 from TUsend response
Requestsend response
Requestsend response
Transport Error
Inform TU
Transport ErrorInform TU
200-699 from TUsend response
Note: Transitions labeled with the event over the action to take
7/27/2019 Sippktguide12 08.FINAL
45/52
www.tekelec.com 45
Elements and Architectures
SIPProxy
SIPProxy
Phil RobertMEDIA
example.com tekelec.com
SIP
BEARER
Trapezoid Model
Mechanics: Registration
Phil Robert
INVITE sip:[email protected]
Address of Record (AoR)INVITE sip:[email protected]
A Binding in Action
SIP
Proxy/Registrar
REGISTER sip:tekelec.com
To: sip:[email protected]: sip:[email protected]
7/27/2019 Sippktguide12 08.FINAL
46/52
SIP Pocket Guide46
Mechanics: Location
Phil
RobertsDesk
[example.com] [telco.com]
3261rules
StaticRoutes
[tekelec.com]
RegisteredBindings
sip
:5551212@telc
o.c
om
sip
:RjS
@teke
lec.com
sip:RjS
@tekelec.co
m
[gateway]
RobertsCell
7/27/2019 Sippktguide12 08.FINAL
47/52
www.tekelec.com 47
Glossary of SIP Acronyms and Definitions
AoR Address of record
B2BUA Back-to-back user agent
Binding Association between an address of record with one ormore contact addresses
Dialog A peer-to-peer relationship between two user agentsthat persists for some time
IETF Internet Engineering Task Force
lr A URI parameter that indicates that RFC3261procedures for handling the Route header field arebeing followed
Reliability Recovery from message delivery failure
RFC IETF request for comments
RTP Real-time transport protocol
SDP Session description protocol
Session An exchange of data between an association ofparticipants
SIP Session Initiation Protocol
TU Transaction user
UA User agent
UAC User agent client
UAS User agent server
URI Uniform resource identifier
URL Uniform resource locator
Usage Relationship between endpoints within a dialog
7/27/2019 Sippktguide12 08.FINAL
48/52
SIP Pocket Guide48
SIP References
draft-ietf-sip-gruu-15.txt Obtaining and Using Globally Routable UserAgent (UA) URIs (GRUU) in the Session Initiation Protocol (SIP)
draft-ietf-sip-ice-option-tag-02.txt Indicating Support for InteractiveConnectivity Establishment (ICE) in the Session Initiation Protocol (SIP)
draft-sparks-sip-invfix-02.txt Correct transaction handling for 200responses 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 MethodRFC3261 SIP: Session Initiation Protocol
RFC3262 Reliability of Provisional Responses in the Session InitiationProtocol (SIP)
RFC3263 Session Initiation Protocol (SIP): Locating SIP Servers
RFC3311 The Session Initiation Protocol (SIP) UPDATE Method
RFC3312 Integration of Resource Management and SessionInitiation Protocol (SIP)
RFC3313 Private Session Initiation Protocol (SIP) Extensions forMedia 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 NetworksRFC3326 The Reason Header Field for the Session Initiation Protocol
(SIP)
RFC3327 Session Initiation Protocol (SIP) Extension Header Field forRegistering 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 InstantMessaging
RFC3455 Private Header (P-Header) Extensions to the Session
Initiation Protocol (SIP) for the 3rd-Generation PartnershipProject (3GPP)
RFC3486 Compressing the Session Initiation Protocol (SIP)
7/27/2019 Sippktguide12 08.FINAL
49/52
www.tekelec.com 49
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 CallSignaling Architecture
RFC3608 Session Initiation Protocol (SIP) Extension Header Field forService Route Discovery During Registration
RFC3680 A Session Initiation Protocol (SIP) Event Package forRegistrations
RFC3840 Indicating User Agent Capabilities in the Session InitiationProtocol (SIP)
RFC3841 Caller Preferences for the Session Initiation Protocol (SIP)
RFC3842 A Message Summary and Message Waiting IndicationEvent Package for the Session Initiation Protocol (SIP)
RFC3856 A Presence Event Package for the Session InitiationProtocol (SIP)
RFC3857 A Watcher Information Event Template-Package for theSession 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
PublicationRFC3911 The Session Initiation Protocol (SIP) Join Header
RFC3959 The Early Session Disposition Type for the SessionInitiation 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) forRequest History Information
RFC4354 A Session Initiation Protocol (SIP) Event Package and DataFormat for Various Settings in Support for the Push-to-Talkover 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 suchas 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
7/27/2019 Sippktguide12 08.FINAL
50/52
SIP Pocket Guide50
RFC4538 Request Authorization through Dialog Identification in theSession Initiation Protocol (SIP)
RFC4575 A Session Initiation Protocol (SIP) Event Package forConference State
RFC4662 A Session Initiation Protocol (SIP) Event NotificationExtension for Resource Lists
RFC4730 A Session Initiation Protocol(SIP) Event Package for KeyPress Stimulus (KPML)
RFC4916 Connected Identity in the Session Initiation Protocol (SIP)
RFC4967 Dial String Parameter for the Session Initiation ProtocolUniform Resource Identifier
RFC5002 The Session Initiation Protocol (SIP)P-Profile-Key PrivateHeader (P-Header)
RFC5009 Private Header (P-Header) Extension to the SessionInitiation Protocol (SIP) for Authorization of Early Media
RFC5049 Applying Signaling Compression (SigComp) to the SessionInitiation Protocol (SIP)
RFC5079 Rejecting Anonymous Requests in the Session InitiationProtocol (SIP)
RFC5360 A Framework for Consent-based Communications in theSession Initiation Protocol (SIP)
RFC5365 Multiple-Recipient MESSAGE Requests in the SessionInitiation Protocol (SIP)
RFC5366 Conference Establishment Using Request-Contained Lists inthe Session Initiation Protocol (SIP)
RFC5367 Subscriptions to Request-Contained Resource Lists in theSession Initiation Protocol (SIP)
RFC5368 Referring to Multiple Resources in the Session InitiationProtocol (SIP)
RFC5373 Requesting Answering Modes for the Session InitiationProtocol (SIP)
Travis, Russell. The IP Multimedia Subsystem (IMS): SessionControl and Other Network Operations (New York: McGraw-HillCompanies, 2008)
All RFCs and drafts may be found at http://tools.ietf.org/html/
Even though the specifications herein may resemble specifications, descriptionsor requirements of third parties or portions thereof, nothing herein shall bedeemed, expressly or by implication, to be a warranty by such third parties oran endorsement by any of them or concurrence by any of them in anyrepresentation 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.
7/27/2019 Sippktguide12 08.FINAL
51/52
www.tekelec.com 51
7/27/2019 Sippktguide12 08.FINAL
52/52
Corporate inquiries:5200 Paramount ParkwayMorrisville, North Carolina 27560 (USA)Tel +1.919.460.5500Fax +1.919.460.0877
Europe, Middle East and Africa inquiries:Katherine House85 The High StreetEgham, SurreyTW20 9HFUnited KingdomPhone: +44.1784.437000
FAX: +44.1784.477121
Singapore-Asia-Pacifc inquiries:Tekelec Singapore Pte Ltd15 Hoe Chiang Road#06-06 Tower 15
Singapore 089316Phone: +65.6796.2288FAX: +65.6796.2299
Caribbean and Latin America inquiries:Tekelec Caribbean & Latin America (CALA)5200 Paramount Parkway
Morrisville, North Carolina 27560 (USA)Attn: Ricardo DiazTel: [email protected]
www.tekelec.com