Sip Trunk
Sip Trunk
Sip Trunk
deployment in Enterprise
UC networks
BRKUCC-2006
Tony Mulchrone
Technical Marketing Engineer
Cisco Collaboration Technology Group
Agenda
Why choose SIP for UC Trunking ?
SIP Basics Session Establishment
Session Description Protocol (SDP) Media Negotiation
Essential CUCM SIP Trunk features
Feature invocation over SIP Trunks
Large scale designs with multiple call controls and SIP Trunks
Appendix Lots of detailed information SIP headers explained, CUCM
features explained etc
Housekeeping
We value your feedback- don't forget to complete your online
Session Evaluation
Visit the World of Solutions and Meet the Engineer
Visit the Cisco Store to purchase your recommended readings
Please switch off your mobile phones
After the event dont forget to visit Cisco Live Virtual:
www.ciscolivevirtual.com
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 4
Agenda
Why choose SIP for UC Trunking ?
SIP Basics Session Establishment
Session Description Protocol (SDP) Media Negotiation
Essential CUCM SIP Trunk features
Feature invocation over SIP Trunks
Large scale designs with multiple call controls and SIP Trunks
Appendix Lots of detailed information SIP headers explained,
CUCM features explained etc
Why Choose SIP ?
Popularity/ Industry demand
These days, most Collaboration vendors spend their development dollars on
SIP rather than H.323 or MGCP
SIP is arguably the most common UC protocol in use by vendors and customers
today
SIP based IP PSTN is growing in popularity
Multi-protocol Interoperability challenge
Even though multi vendor SIP is not without its interop issues, SIP to SIP
interop is easier than SIP to H.323, SIP to MGCP
Cisco UC Protocol Feature Set Comparison
SIP Trunks are more feature rich than H.323 and MGCP Trunks
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 6
Why recommend SIP as the preferred Trunk Protocol?
Using SIP Trunks only to interconnect UC systems provides real benefits in terms of feature
support and design simplicity e.g. :
Centralized Provisioning
Centralized Call Detail Records
QSIG Tunneling
ISDN Overlap Sending
Accept Audio Codec Preferences in Received
Offer
Run On All Nodes feature 3 Active Nodes in a 1 Active Node in a
Call Manager Group Call Manager Group
Legend: Yes Limited support No 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 9
Agenda
Why choose SIP for UC Trunking ?
SIP Basics Session Establishment
Session Description Protocol (SDP) Media Negotiation
Essential CUCM SIP Trunk features
Feature invocation over SIP Trunks
Large scale designs with multiple call controls and SIP Trunks
Appendix Lots of detailed information SIP headers explained, CUCM
features explained etc
SIP Basics User Agents
Session Initiation Protocol (SIP) is a text based signalling protocol for creating, modifying, and
terminating sessions with one or more participants (SIP is described in RFC 3261)
SIP uses a Request/Response transaction model between endpoints (User Agents)
A User Agent (UA) For example, a SIP Phone performs two roles :
A User Agent Client (UAC) which sends SIP Requests
A User Agent Server (UAS) which receives SIP Requests and returns Responses
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 11
SIP Basics SIP Messages - Requests
INVITE - Indicates a client is being invited to participate in a call session
ACK - Confirms that the client has received a final response to an INVITE request
BYE - Terminates a call and can be sent by either the caller or the callee
CANCEL - Cancels any pending request
OPTIONS - Queries the capabilities of servers (OPTIONS Ping)
REGISTER - Registers the address in the To header field with a SIP server (Phones only)
PRACK - Provisional Acknowledgement
SUBSCRIBE - Subscribes for an Event of Notification from the Notifier (Used for KPML & MWI)
NOTIFY - Notify the subscriber of a new Event (Used for KPML & MWI)
PUBLISH - Publishes an event to the Server
INFO - Sends mid-session information that does not modify the session state
UPDATE - Modifies the state of a session before a final response is received
MESSAGE - Transports instant messages using SIP (XMPP more commonly used for IM)
REFER - Asks recipient to issue a SIP Request (Call Transfer)
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
SIP Basics SIP Messages - Responses
Response Categories
Provisional (1xx): Request received and being processed (Unreliable not ACKed)
Success (2xx): The action was successfully received, understood, and accepted.
Redirection (3xx): Further action needs to be taken to complete the request.
Client Error (4xx): The request contains bad syntax or cannot be fulfilled at the server.
Server Error (5xx): The server failed to fulfil an apparently valid request.
Global Failure (6xx): The request cannot be fulfilled at any server.
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 14
SIP Basics SIP Servers
SIP Servers Registrar, Redirect Server, Proxy Server
Registrar Provides location mapping for SIP User Agents
Redirect Server Re-directs SIP Requests when a user has moved or is unavailable
Proxy Server SIP message router can be transaction stateful or stateless
SIP Proxy servers can either leave the signalling path when the call is
connected or can enable "Record-route" to stay in the signalling path.
RTP Media
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 14
SIP Basics SIP Servers
SIP Servers Registrar, Redirect Server, Proxy Server
Registrar Provides location mapping for SIP User Agents
Redirect Server Re-directs SIP Requests when a user has moved or is unavailable
Proxy Server SIP message router can be transaction stateful or stateless
SIP Proxy servers can either leave the signalling path when the call is
connected or can enable "Record-route" to stay in the signalling path.
RTP Media
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 14
SIP Basics SIP Servers
SIP Servers Registrar, Redirect Server, Proxy Server
Registrar Provides location mapping for SIP User Agents
Redirect Server Re-directs SIP Requests when a user has moved or is unavailable
Proxy Server SIP message router can be transaction stateful or stateless
SIP Proxy servers can either leave the signalling path when the call is
connected or can enable "Record-route" to stay in the signalling path.
Proxies are designed to be mostly transparent to UAs (e.g. Can not terminate a call). Proxy servers
can only change messages in specific and limited ways (e.g. Can not change call media info (e.g.
codecs)).CUCM is not a Proxy server BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 14
CUCM : A Back to Back User Agent (B2BUA)
RFC 3621 does not define the specific functionality of a B2BUA.
A B2BUA is similar to a stateful SIP Proxy Server in that it actively maintains call state, but does not
have the same limitations as a SIP Proxy server. i.e. a B2BUA can disconnect a call and modify media
information sent in the Session Description Protocol (SDP).
How should a SIP call through a B2BUA be viewed ?
As two independent call legs from a SIP perspective :
1) An inbound SIP call arriving at a User Agent and
2) A new outbound call originating from another User Agent
CUCM - B2BUA
UAS UAS
UAC UAC
Line Side SIP is more feature rich and generally more proprietary than Trunk Side SIP
Line Side SIP needs to support an extensive set of device features e.g.
Phone/Device Control : Registration, Reset / Restart; CUCM failover and fall back, Call Preservation
during CUCM failover, Erase Config, Apply Config, Send Firmware Load ID and Software version
information, On Hook/Off Hook status notification, CTI interactions, Shared Line interactions, Phone
display commands etc etc
Trunks Side SIP needs to be relatively simple to enable interoperability between vendors, whilst
allowing call features such as hold/ resume, transfer to be invoked
This presentation focuses on Trunk side SIP BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 19
Establishing a SIP session and an
introduction to SIP headers
SIP Basics Typical Call Set Up
SIP Trunk Message exchange The INVITE Request
SIP Trunk
INVITE sip:1001@10.10.199.250:5060
10.10.199.251 10.10.199.250
2002 1001
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 21
SIP Message Headers
INVITE Request with Headers
INVITE sip:1001@10.10.199.250:5060 SIP/2.0 ------------------------------------ Request INVITE to 1001
Via: SIP/2.0/TCP 10.10.199.251:5060;branch=z9hG4bK3395a5cdb
From: <sip:2002@10.10.199.251>;tag=1b1993ff-121d-4616-8dc5-353990242dfe-32552697
To: <sip:1001@10.10.199.250>
Date: Wed, 18 Feb 2015 18:37:57 GMT
Call-ID: 8fe4f600-b7c13785-3-fbc712ac@10.10.199.251
Supported: timer,resource-priority,replaces
Min-SE: 1800
User-Agent: Cisco-CUCM8.0
Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER.. SIP Message
CSeq: 101 INVITE
Contact: <sip:2002@10.10.199.251:5060;transport=tcp> Headers
Expires: 180 Some Mandatory
Allow-Events: presence, kpml
Supported: X-cisco-srtp-fallback Some Optional
Supported: Geolocation
Call-Info: <sip:10.10.199.251:5060>;method="NOTIFY;Event=telephone-event;Duration=500"
Cisco-Guid: 2414147072-3082893189-0000000002-4224127660
Session-Expires: 1800
P-Asserted-Identity: <sip:2002@10.10.199.251>
Remote-Party-ID: <sip:2002@10.10.199.251>;party=calling;screen=yes;privacy=off
Max-Forwards: 70
Content-Length: 0 BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 22
SIP Messages INVITE with Headers re-grouped (1 of 3)
Request /Header Request Header Content Category
INVITE sip:1001@10.10.199.250:5060 SIP/2.0 Route and
Via: SIP/2.0/TCP 10.10.199.251:5060;branch=z9hG4bK3395a5cdb Transaction
CSeq: 101 INVITE related
headers
Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, Methods and
SUBSCRIBE, NOTIFY Events
Allow-Events: presence, kpml
SME
Cluster
Media
See Appendix for detailed descriptions and CUCM related configuration
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 25
SIP Session Expires and Min-SE Headers - Operation
During call set up - Session timers and Session Refresh methods are negotiated and
agreed on each SIP Trunk. Once the call is established the session on each Trunk is
periodically refreshed. If no session refresh request or response is received, the UA
sends a BYE to terminate the session. (Note - In CUCM 11.5 this behaviour can be
overridden by the new SIP Call Preservation Expires Timer (Default = 0 sec (call is not
terminated) Max value 24hrs)
SME Node
crash
SME
Cluster
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 27
SIP Basics Typical Call Set Up
SIP Trunk Message exchange The INVITE Request
SIP Trunk
INVITE sip:1001@10.10.199.250:5060
100 Trying
10.10.199.251 10.10.199.250
2002 1001
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 28
SIP Basics Typical Call Set Up
SIP Trunk Message exchange The Ringing Response
SIP Trunk
INVITE
100 Trying
180 Ringing
Caller hears
locally
generated
ringback tone
10.10.199.251 10.10.199.250
100 Trying
180 Ringing
200 OK
ACK
10.10.199.251 10.10.199.250
INVITE sip:1001@10.10.199.250:5060
10.10.199.251 10.10.199.250
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 32
SIP Trunk Signaling - Session Description Protocol (SDP)
The Offer / Answer Model
SDP is the companion protocol of SIP
SDP is used to describe media characteristics; it does not deliver media (for voice and video this is
done using the Real-time Transport Protocol (RTP)), but is used to negotiate the media type, format
and associated parameters of a multimedia session between endpoints.
SDP is described in RFC 4566
The media characteristics of a session are described by a series of one line fields in an SDP message.
Within an SDP message there are three main sections, these detail the session name and purpose, the
time the session is active, the media and information needed to receive the media (addresses, ports,
formats, etc.). Additional information about bandwidth usage and contact information can also be
sent.
Media negotiation using SDP is known as the Offer/ Answer model (described in RFC 3264)
Two key concepts in the Offer / Answer model are the Early Offer and Delayed Offer
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 33
SIP Trunk Signaling and Media Negotiation
The Offer/Answer model - SIP Early Offer
Information about the calling devices media characteristics are sent with its initial SIP INVITE message
The media characteristics are contained in the Session Description Protocol (SDP) body sent with the
SIP INVITE The Offer in the SDP body contains the IP Address, UDP Port number, list of codecs etc.
supported by the calling device
The called device selects which of the offered codecs it wishes to use for the call and returns it in its
Answer in the SDP body of a SIP response The Answer also contains the IP address and UDP port
number etc of the called device
Once the Answer has been received two way media can be established
Early Offer is widely used (particularly by Service Providers.)
INVITE with SDP (Offer) INVITE with SDP (Offer)
One Way
100 Trying 100 Trying Media
180 Ringing 180 Ringing
200 OK with SDP (Answer) 200 OK with SDP (Answer)
Two Way Media
ACK ACK
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 34
SIP Trunk Signaling and Basic Operation
The Offer/Answer model - SIP Delayed Offer
No information about the calling devices media characteristics are sent in the initial SIP INVITE
Instead the first set of media characteristics for the call are sent by the called device in the Session
Description Protocol (SDP) body of the next reliable message (200 OK) The called devices Offer
contains its IP Address, UDP Port number, list of codecs etc.
The calling device selects which of the offered codecs it wishes to use for the call and returns its
Answer in the SDP body of a reliable SIP response (ACK) The Answer also contains the IP address
and UDP port number etc of the calling device
Delayed Offer is a mandatory part of the SIP standard (but not supported by all vendors)
Ordinarily, the Offer or Answer cannot be sent reliably in 100 Trying or 180 Ringing, as 1XX messages
are unacknowledged This can be resolved using PRACK .. discussed next..
INVITE INVITE
100 Trying 100 Trying
180 Ringing 180 Ringing
200 OK with SDP (Offer) 200 OK with SDP (Offer)
ACK with SDP (Answer) ACK with SDP (Answer)
Two Way Media 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 35
SIP Delayed & Early Offer PRACK & Early Media
Using PRACK to reduce media cut through delay
SIP Delayed Offer without PRACK
INVITE INVITE
100 Trying 100 Trying
180 Ringing 180 Ringing
200 OK with SDP (Offer) 200 OK with SDP (Offer)
ACK with SDP (Answer) ACK with SDP (Answer)
Two Way Media
You can send SDP in 1XX Responses, but they are unreliable as they are not acknowledged.
By enabling PRACK (Provisional Reliable Acknowledgement), 1XX messages will be
periodically re-sent until their receipt is acknowledged by the receiver by sending a PRACK,
which is also acknowledged by the 1XX sender.
Using PRACK can reduce the number of SIP messages that need to be sent before two way
media is established. PRACK is useful in situations where long Round Trip Times between
SIP devices can cause a delay to media cut through or media clipping
PRACK can be enabled on the SIP Trunk Profile by setting SIPRel1XX Options
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 36
CUCM SIP Trunk Signaling SIP Early Media
Using Provisional Acknowledgement (PRACK)
Early Offer with Early Media Early Offer == Early Media
INVITE w/ SDP Supported:100rel INVITE w/ SDP Supported:100rel
100 Trying 100 Trying
183 Progress w/ SDP Require:100rel 183 Progress w/ SDP Require:100rel
v=0
o=CiscoSystemsCCM-SIP 2000 1 IN IP4 10.10.199.250
s=SIP Call SDP Message Body
c=IN IP4 10.10.199.130 Describes the media characteristics of the
t=0 0 endpoint offering the SDP
m=audio 16444 RTP/AVP 0 8 18 101
a=rtpmap:0 PCMU/8000
a=ptime:20 Includes :
a=rtpmap:8 PCMA/8000 Endpoint IP address
a=ptime:20 Codecs supported
a=rtpmap:18 G729/8000
UDP Port number for RTP
a=ptime:20
a=sendrecv In Band DTMF support details
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
Some SDP lines are REQUIRED some are OPTIONAL, but all MUST appear in exactly theand/or
2017 Cisco order described
its affiliates. All rights reserved. in RFC
Cisco Public 4566
SIP Trunk Signaling - Media negotiation Voice calls :
The SDP Offer - Details
Description Attribute Content Comments
o= Origin CiscoSystemsCCM-SIP 2000 1 IN IP4 10.10.199.250 10.10.199.250 = CUCM IP Address
s= Session Name SIP Call
c= Connection Data IN IP4 10.10.199.130 Phones IP Address
t= Timing 00 Permanent Session
m= Media audio 16444 RTP/AVP 0 8 18 101 UDP Port 16444, RTP Payload Type
Descriptions Codecs : G711U, G711A, G729. DTMF
a= Attribute rtpmap:0 G711U/8000 G.711 U-Law codec offered for this call
a= Attribute rtpmap:8 G711A/8000 G.711 A-Law codec offered for this call
a= Attribute rtpmap:18 G729/8000 G.729 codec offered for this call
a= Attribute ptime:20 RTP packet sampling time (mS)
a= Attribute sendrecv Two way Audio
a= Attribute rtpmap:101 telephone-event/8000 101 DTMF RTP Payload Type number
a= Attribute a=fmtp:101 0-15 DTMF tones (Events 0 through 15 )
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public
40
SIP Trunk Signaling - Media negotiation Voice calls :
The SDP Answer - Details
Description Attribute Content Comments
v= Version 0
o= Origin CiscoSystemsCCM-SIP 2000 1 IN IP4 10.10.199.251 10.10.199.251 = CUCM IP Address
s= Session Name SIP Call
c= Connection Data IN IP4 10.10.199.179 Phones IP Address
t= Timing 00 Permanent Session
m= Media audio 28668 RTP/AVP 18 101 UDP Port 28668, RTP 18 = RTP
Descriptions Payload Type number for G729 codec,
101 = DTMF
a= Attribute rtpmap:18 G729/8000 G.729 codec selected for this call
a= Attribute ptime:20 RTP packet sampling time (mS)
a= Attribute sendrecv Two way Audio
a= Attribute rtpmap:101 telephone-event/8000 101 DTMF RTP Payload Type number
a= Attribute a=fmtp:101 0-15 DTMF tones (Events 0 through 15 )
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 41
SIP Trunk Signaling
Media negotiation Voice calls The Negotiated Session
10.10.199.250 10.10.199.251
10.10.199.130 10.10.199.179
RTP UDP Port 16444 RTP UDP Port 28668
G.729 codec G.729 codec
Two way Audio Two way Audio
RFC 2833 DTMF RFC 2833 DTMF
o=CiscoSystemsCCM-SIP 2000 1 IN IP4 10.10.199.250 o=CiscoSystemsCCM-SIP 2000 1 IN IP4 10.10.199.251
c=IN IP4 10.10.199.130 c=IN IP4 10.10.199.179
m=audio 16444 RTP/AVP 18 101 m=audio 28668 RTP/AVP 18 101
a=rtpmap:18 G729/8000 a=rtpmap:18 G729/8000
a=ptime:20 a=ptime:20
a=sendrecv a=sendrecv
a=rtpmap:101 telephone-event/8000 a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15 a=fmtp:1010-15
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 42
Media negotiation for
Video calls
Summarized slides - See Appendix for Detailed slides
SIP Trunk Signaling - Media negotiation for Video calls
Summary
Video is fundamentally different from voice in that there are many use cases where
asymmetric media flows are desirable.
For example, broadband services where the upload and download speeds are different
often by an order of magnitude.
Also because encoding video is more CPU intensive than decoding video - Video endpoints
can typically decode at a higher resolution than they can encode.
Because of the need to support asymmetric video streams the video codec capabilities
sent in an SDP Offer and Answer should be considered to be the receive capabilities of the
respective endpoints rather than the negotiated capabilities in common with both devices
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 44
SIP Trunk Signaling - Video calls
The SDP Offer Abridged Showing Video details
v=0
o=CiscoSystemsCCM-SIP 161095 1 IN IP4 10.58.9.6
s=SIP Call SDP Session
b=TIAS:6000000 attributes
t=0 0
10.10.199.250 10.10.199.251
10.58.9.86 10.58.9.222
Audio RTP UDP Port 16444 Audio RTP UDP Port 2346
MP4A-LATM Audio codec MP4A-LATM Audio codec
RFC 2833 DTMF Audio RFC 2833 DTMF
Video RTP UDP Port 16446 Video RTP UDP Port 2348
H.264 Video codec Main Video H.264 Video codec
Video RTP UDP Port 16448 Video RTP UDP Port 2350
H.264 Video codec Slide Video H.264 Video codec
BFCP UDP Port 5070 BFCP UDP Port 5070
Binary Floor Control
FECC UDP Port 16450 FECC UDP Port 2352
RTP Payload Type 107 Far End Camera Control RTP Payload Type 107
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public
Secured SIP Signaling (TLS) and
Encrypted Media (SRTP)
Secure SIP Trunk Signaling and Encrypted Media
Transport Layer Security (TLS) and Secure RTP (SRTP)
SIP over TLS
SRTP
To secure both SIP signalling and related media use TLS on the SIP Trunks and
between each end point and CUCM
Once the SIP signalling path has been authenticated and encrypted, the SRTP
encryption keys are exchanged via SDP using SDES (SDP Security Descriptions
for Media Streams) see RFC 4568
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 50
SIP Trunk Features
SIP Trunk Security Profile Information Incoming and Outgoing Transport Types
UDP Connectionless Uses SIP Session
Timers to determine session state
TCP Connection Oriented TCP maintains
connection state
TLS Connection Oriented Encrypted
Signaling Uses X.509 Certificates to
authenticate connections (Match incoming
Cert(s) by Subject Name(s). TLS should be
used if encrypted media (SRTP) is required
Incoming port
The Transport protocol port number CUCM
uses to listen on for inbound SIP connections
SIP Messages that the trunk will accept
Digest Authentication - Less secure than TLS (does not provide integrity or confidentiality)
For a good example of how to set up SIP TLS over CUCM SIP Trunks see :
https://supportforums.cisco.com/document/72956/cucm-sip-trunk-tls-configuration-and-troubleshooting
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 51
SIP TLS 1.2 Handshake Mutual TLS Client Hello
Client Hello
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 54
SIP TLS 1.2 Handshake Mutual TLS Server Hello
Client Hello
Server Hello
Session ID : abcd1234.wxyz
Server always selects one cypher suite from the list offered by the Client
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 55
SIP TLS 1.2 Handshake Mutual TLS Server Cert
Client Hello
Server Hello
Server Certificate
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 56
SIP TLS 1.2 Handshake Mutual TLS Server Key
Client Hello
Server Hello
Server Certificate
Server sends
Server Diffie Hellman parameter
Signed by the Servers Private Key
The Client uses the Servers Public key to authenticate the server
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 57
SIP TLS 1.2 Handshake Mutual TLS Client Cert
Client Hello
Server Hello
Server Certificate
Client Certificate
Client Hello
Server Hello
Server Certificate
Client Certificate
Client sends
Client Diffie Hellman parameter
Signed by the Clients Private Key
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 59
SIP TLS 1.2 Handshake On Prem Mutual TLS
Client Hello
Server Hello
Server Certificate
Client Certificate
SRTP
The other Endpoint choses one cipher and returns its with their encryption key in its SDP Answer
a=crypto:1 AEAD_AES_256_GCM inline:bmt4MzIzMmYxdnFyaWMds308sMwycIO23d282dGdssR5Z3g0c2k5M3Yx
Endpoints send all supported crypto suites - CUCM can filter crypto suites 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 61
Agenda
Why choose SIP for UC Trunking ?
SIP Basics Session Establishment
Session Description Protocol (SDP) Media Negotiation
Essential CUCM SIP Trunk features
Feature invocation over SIP Trunks
Large scale designs with multiple call controls and SIP Trunks
Appendix Lots of detailed information SIP headers explained, CUCM
features explained etc
Essential SIP Trunk Features
Disadvantages : MTPs support a single Audio codec only e.g. G711 or G729. The passthru codec is
not supported excluding the use of SRTP and video calls. Since the Trunks MTPs are used - The media
path is forced to follow the signaling path.
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 64
CUCM SIP Early Offer Insert MTP if Needed UC8.5+
SIP Profile Early Offer checkbox option : Mandatory (insert MTP if needed)
SIP Early Offer For Calls from trunks and devices that cannot
SIP Trunk SIP Trunk with Early Offer
MTP provide Early Offer information use the calling
SIP Delayed Offer
SIP Trunk with Early Offer
devices MTP resources (first) or the outbound
H323 Trunk
MTP trunks MTPs (second) to create a SIP Offer for an
H323 Slow Start
H323 Trunk SIP Trunk with Early Offer
unencrypted voice call. (SRTP and video can
subsequently be initiated by the called device)
H323 Fast Start
MGCP Trunk SIP Trunk with Early Offer Multiple codecs supported using MTP pass-
through codec
MGCP Gateway BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 65
CUCM 10.5+ SIP Trunks Best Effort Early Offer (No MTP Inserted)
Cisco SIP Phones
SIP Line Best Effort Early Offer SIP Trunk Early Offer sent
H323 Slow Start H323 Trunk Best Effort Early Offer SIP Trunk Delayed Offer sent
MGCP Gateway MGCP Trunk Best Effort Early Offer SIP Trunk Early Offer sent
H323 Fast Start H323 Trunk Best Effort Early Offer SIP Trunk Early Offer sent
SIP Early Offer SIP Trunk Best Effort Early Offer SIP Trunk Early Offer sent
MTPs are not used to create an EO If the device is not EO capable, DO sent
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 66
Summary and Guidance on CUCM SIP Trunk : Using Delayed
Offer/ Early Offer/ Best Effort Early Offer
Summary
Delayed Offer The default setting Voice, Video and Encrypted Calls supported
Early Offer using MTP Required ~Obsolete MTP used for all calls, single voice codec only
Early Offer : Mandatory (insert MTP if needed) MTPs inserted for calls from older devices e.g. 7940
and 7960 phones Voice only on initial call set up, video (N/A) and media encryption set up by
sending a SIP Re-INVITE
Early Offer : Best Effort (No MTP inserted) No MTPs used for EO generation ( if EO cannot be sent
DO sent instead), Trunk MTP resources can be used to address DTMF transport mismatches
General Guidance
Do not use MTP Required for Early Offer MTP is inserted for every call
If you are using UC version 10.5 or above Use Best Effort Early Offer
If you are using UC versions 8.5/ 9.X/ 10.0
Type and quantities of the phones in the CUCM cluster :
Mostly older SCCP phones (e.g. 7940s/7960s) ----------- Use Delayed Offer
Mostly newer Phones ------------------------------------------- Use Early Offer : Mandatory (insert MTP if needed) 67
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public
Essential SIP Trunk features that simplify UC designs
Run On All Unified CM Nodes
Up to 16 Destination IP addresses
These features :
Reduce the number of configured SIP Trunks
Simplify call distribution
Simplify call routing through by taking advantage of the Route Local rule..
SIP Trunk A
SIP Trunk B
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 68
Essential SIP Trunk features that simplify UC designs
The Route Local Rule
Outbound SIP Trunks and Route Lists can take advantage of the Route Local Rule by using
the Run On All Unified CM Nodes feature
The Route Local Rule
If the CUCM node that the inbound call arrives on also has an instance of the selected
outbound trunk for that call then use this node to onward route the call
The Route Local rule can eliminate call set up traffic between nodes within a cluster
SIP Trunk A
SIP Trunk B
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 69
CUCM SIP Trunks
Matching inbound SIP calls to configured SIP Trunks
CUCM SIP Trunks will only accept inbound calls from a device with a source IP address
and port number that has been defined on the matching Trunk
A A
SIP Trunk 1 SIP Trunk 2
B F B F
C G C G
D H D H
E E
An Audio Codec Preference List presents all the codec types supported by CUCM. The codec
preference order in this list can be modified and saved as a custom preference list.
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 74
SIP Trunk Features
Audio Codec Preference Lists - Audio Codecs Offered
The list of codecs used for codec negotiation during call set up is the subset of
codecs supported by the device and those in the codec preference list, limited
by the maximum audio bit rate for the region/ region pair.
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 76
SIP Trunk Features
Audio Codec Preference Lists - Audio Codecs Offered
The list of codecs used for codec negotiation during call set up is the subset of
codecs supported by the device and those in the codec preference list, limited
by the maximum audio bit rate for the region/ region pair.
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 77
SIP Trunk Features
Audio Codec Preference Lists Deployment Recommendations
Region A Region A-C Codec Region C Region D Region D-E Codec Region E
Preference List Preference List
(1) G729
G.729 Voice Call (1) G729
(2) G711 (2) G711
(3) G722 (3) G722
(4) (4)
For calls between two Unified CM clusters via SIP Trunks, Audio Codec Preference Lists allow the codec
used for a call to be selected based upon the calling and called devices codec preference.
Note Equivalent Audio Codec Preference Lists for each device type region should be configured in each
cluster to ensure that a common codec is selected for each device types, irrespective of call direction or
Trunk configuration.
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 78
SIP Trunk Features
Accept Audio Codec Preferences in Received Offer
Accept Audio Codec Preferences in Received Offer
In deployments where calls can pass through more than one Unified CM cluster, for example SME
deployments; the inter-region Audio Codec Preference List of the intermediary Unified CM cluster can over-
ride the preferred codec selection between the calling and called device. To ensure that the endpoints codec
preferences are honored as calls pass through SME, enable the SIP Profile feature Accept Audio Codec
Preferences in Received Offer on all SIP Trunks. BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 79
SIP Trunk Features
Unified CM and CUBE SIP Trunk Codec Preference
Region A Region C Inbound Dial-Peer Outbound Dial Peer
Region A-C Codec Voice Class Codec Voice Class Codec
Preference List Preference List Preference List
(1) G729 (1) G729 (1) G729
(2) G711 (2) G711 (2) G711
(3) G722 (3) G722 (3) G722 Phones
(1) G729
G.729 Voice Call (2) G711
2002
Bob Jones
Applied at the Trunk Level using
P-Asserted-Identity Privacy Header
settings
If Non-Default - Overrides
Device/Line and Trunk settings
Applied using Line ID and Name Applied at the Trunk Level using Line
Presentation settings in a Translation ID and Name Presentation settings
Pattern associated with the Calling If Non-Default - Overrides
Search Space on the Device or Line Device/Line settings 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 82
Line/Device - Presentation/Restriction of Calling Line ID and
Calling Name
From: Bob Jones" <sip:2002@10.10.199.251>
or From: Bob Jones" <sip:localhost>
or From: "Anonymous" <sip:2002@10.10.199.251>
or From: "Anonymous" <sip:localhost>
2002
Bob Jones
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 83
SIP Trunk - Calling Line ID and Calling Name
Presentation/Restriction Outbound Calls
From: Bob Jones" <sip:2002@10.10.199.251>
or From: Bob Jones" <sip:localhost>
Trunk settings :
Default
Use calling device values
Allowed
RPID privacy value = Off
Restricted
RPID privacy value = Name/URI/Full
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public
SIP Trunk - Calling Line ID and Name Presentation/Restriction
P Asserted Identity (PAI) SIP Privacy header value
The SIP Trunk PAI Privacy header value always overrides Device
and Trunk ID Presentation/ Restriction settings
SIP Trunk configuration :
SIP Privacy Setting
Default Privacy values taken from Trunk/ Device - Presentation/Restriction settings
None Implies Presentation Allowed
ID Presentation restricted for name and number Overrides device setting
ID Critical Presentation restricted Must be supported by network, or call fails
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public
CUCM SIP Trunk Features
Outbound Calls Overwriting the Caller DN and Name
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
From: Cisco Systems UK<sip:+442088241000@10.10.199.251>
P-Asserted-Identity: Bob Jones" <sip:2002@10.10.199.251>
Remote-Party-ID: "Bob Jones <sip:2002@10.10.199.251>
Contact: <sip:+442088241000@10.10.199.251:5060>
2002
Bob Jones
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 94
CUCM SIP Trunk Signaling and Operation
Hold/Resume Signaling - Hold
SIP Trunk
HOLD
On receipt of a mid call INVITE without SDP the remote User Agent should
respond with its full codec list and a=sendrecv
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 96
CUCM SIP Trunk Call functions
Send Send Receive in mid call INVITE
CUCM SIP Trunk Interop Feature (1) - Hold
Send send-receive SDP in mid-call INVITE
SIP Trunk
HOLD
This feature is used to address a=inactive issues with 3rd Party systems
( Issue not widely found - typically with some Service Providers)
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 98
CUCM SIP Trunk Interop Feature (2) Resume - The issue
Send send-receive SDP in mid-call INVITE
SIP Trunk
ACK
ACK with SDP
ACKwith SDP
(a=inactive) (a=inactive)
RESUME
ACK
ACK ACK
HOLD
Call In Progress - Two Way Media
MTP
When the mid-call INVITE is sent CUCM inserts an MTP to anchors the media to the held device and
allow the holding device to disconnect its media (and optionally insert MOH)
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 100
CUCM SIP Trunk Interop Feature The Fix (2)
Send send-receive SDP in mid-call INVITE Enabled
SIP Trunk
MTP
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 101
CUCM SIP Trunk Signaling and Operation
The Offer/Answer model - Ringback
INVITE INVITE
100 Trying 100 Trying
180 Ringing 180 Ringing
Caller hears
locally 200 OK with SDP (Offer) 200 OK with SDP (Offer)
generated ACK with SDP (Answer) ACK with SDP (Answer)
ringback tone
Two Way Media
If SDP is sent in a 18X message CUCM cuts through early media from far end for ringback
INVITE Supported:100rel INVITE Supported:100rel
100 Trying 100 Trying
183 Progress w/ SDP Require:100rel 183 Progress w/ SDP Require:100rel
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 109
CUCM SIP Trunk Features
SIP Profile settings - Disable Early Media on 180
By default, Cisco Unified Communications Manager signals the calling phone to play local
ringback if SDP is not received in the 180 or 183 response.
If SDP is included in the 180 or 183 response, instead of playing ringback locally, Cisco
Unified Communications Manager connects media, and the calling device plays whatever
the called device is sending in the returned media stream (such as ringback or busy signal).
If ringback is not received, the device to which you are connecting may be including SDP in
the 180 response, but it is not sending any media before the 200 OK response. In this case,
check this check box to play local ringback on the calling phone and connect the media
upon receipt of the 200 OK response
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 110
Agenda
Why choose SIP for UC Trunking ?
SIP Basics Session Establishment
Session Description Protocol (SDP) Media Negotiation
Essential CUCM SIP Trunk features
Feature invocation over SIP Trunks
Large scale designs with multiple call controls and SIP Trunks
Appendix Lots of detailed information SIP headers explained, CUCM
features explained etc
Large Scale UC Designs
With more than one SIP Trunk.
CUCM Cluster 1 CUCM Cluster 2
So far we have looked at SIP Trunk features and functions based on a single SIP Trunk
interconnecting two CUCM Clusters
Large scale designs can comprise of multiple call controls from multiple vendors, various UC
applications (Voicemail, Conferencing etc) , Session Border Controllers and Gateways for PSTN
connectivity. Ideally they will all be using SIP Trunks as this will greatly simplify the UC design and
improve interoperability.
Large scale designs need to be considered holistically, particularly when it comes to Trunk
Aggregation, DO/EO usage, Codecs, DTMF, Dial Plan and Call Admission Control
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 118
Large Scale UC Designs
Trunk Aggregation using Session Management Edition (SME)
PSTN
CUBE
SBCs SIP
Voicemail Conferencing
System System
Leaf Systems
SME can interconnect 1000s of UC systems using SIP Trunks and reduces the number of Trunks
needed by using a hub and spoke topology rather than full mesh. SME allows you to centralize
your dial plan and call routing rules on the SME cluster, which helps to simplify the dial plan and
management of the leaf UC systems 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 119
Signaling Delay In Global UC networks
UC 9.1+
SME CoW up SME < 500 mS
to 500mS CoW+
RTT
< 500 mS
Media Resources
Leaf Cluster
New York
SME
Cluster
Leaf Cluster
Leaf Cluster Europe
Los Angeles
Ideally, Media Resources such as MTPs, Transcoders, Music on Hold, Conferencing Resources should
never be utilized in the SME cluster as this entails hair-pinning media via the media resource
associated with the SME cluster
This design possible if the SME cluster uses of SIP Trunks only and Best Effort Early Offer Trunk
configuration (or for pre UC 10.5 clusters MTP-less Early Offer see Appendix for details)
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 123
Large Scale UC designs X-Coding, DTMF Translation etc
Deploying SME clusters with no media resources
Media Resources
Leaf Cluster
New York
Media Resources
SME
Cluster
Media Resources
Leaf Cluster
Leaf Cluster Europe
Los Angeles
Ideally, Media Resources such as MTPs, Transcoders, Music on Hold, Conferencing Resources should
never be utilized in the SME cluster as this entails hair-pinning media via the media resource
associated with the SME cluster
This design possible if the SME cluster uses of SIP Trunks only and Best Effort Early Offer Trunk
configuration (or for pre UC 10.5 clusters MTP-less Early Offer see Appendix for details)
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 123
Media Transparent SME clusters
SME SIP Trunks Best Effort Early Offer/ MTP-less Early Offer
Delayed Offer Delayed Offer
Media Resources Media Resources
SME
Cluster
SME Trunks use Best Effort Early Offer (or (pre UC10.5) MTP-less Early Offer)
If a Transcoder is required Inserted by Leaf cluster
If Conferencing resources are required Inserted by Leaf cluster
If MTPs for DTMF mismatch are required Inserted by Leaf cluster
With no media resources associated with the SME SIP Trunks, IPVMS can be disabled in the SME Cluster
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public
Summary SIP Trunk
configuration recommendations
for Multi-Cluster designs
Large Scale SIP Trunk Design Recommendations UC versions <10.5
SIP MTP-less Early Offer CUBE
IP SIP Trunk
SIP Delayed Offer PSTN SIP DO to EO
SIP Early Offer
CUCM 8.5+
Mostly Older
Phones (7940/60s)
CUCM 8.5+
Mostly Newer CUCM 8.5+ SME
Phones
Leaf Cluster SIP ICT Trunks - Voice, Video and Encryption supported
SIP Delayed Offer/Early Offer Mandatory (insert MTP if Needed), Run on All Nodes, Multiple Destination
Addresses, OPTIONS Ping, PRACK
SME Cluster SIP ICT Trunks - Voice, Video and Encryption supported
SIP MTP-less Early Offer, Run on All Nodes, Multiple Destination Addresses, OPTIONS Ping, PRACK, No
Media resources can be assigned to Trunks
CUBE/IOS Gateway/ IP PBX SIP Trunks Typically Voice only, Video and Encryption possible
SIP Delayed Offer/Early Offer (EO commonly used), (EO by sent by the CUBE/ IOS Gateways) OPTIONS
Ping, PRACK, Early Offer usually required by Service Providers (Use CUBE SIP DO to EO)
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 128
Large Scale SIP Trunk Design Recommendations UC versions 10.5+
SIP Best Effort Early Offer CUBE SIP Trunk
IP
SIP Delayed Offer PSTN SIP DO to EO
SIP Early Offer
CUCM 10.5+
Leaf Cluster SIP ICT Trunks - Voice, Video and Encryption supported
SIP Best Effort Early Offer, Run on All Nodes, Multiple Destination Addresses, OPTIONS Ping, PRACK
SME Cluster SIP ICT Trunks - Voice, Video and Encryption supported
SIP Best Effort Early Offer, Run on All Nodes, Multiple Destination Addresses, OPTIONS Ping, PRACK,
Media resources not required
CUBE/IOS Gateway/ IP PBX SIP Trunks Typically Voice only, Video and Encryption possible
SIP Delayed Offer/Early Offer (EO commonly used), (EO by sent by the CUBE/ IOS Gateways) OPTIONS
Ping, PRACK, Early Offer usually required by Service Providers (Use CUBE SIP DO to EO)
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 129
Large Scale UC Designs
Call Admission Control (CAC)
Large Scale UC Designs
Call Admission Control using Session Management Edition
PSTN
CUBE
SBCs SIP
Voicemail Conferencing
System System
Leaf Systems
In general SIP Trunks between SME and Leaf Clusters are not placed into Locations for CAC. These SIP
trunks are generally placed into Shadow Locations for Enhanced Locations based CAC which do not count
calls/bandwidth. Using this method Call Admission Control takes place in the Leaf Cluster/ UC system.
SME SIP Trunks to centralized applications and gateways can be placed into locations if required
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 131
UC 9.0 Enhanced Locations CAC - SME and Multi Branch
E-LCAC introduces : Global Topology
Hub Leaf clusters
The concept of Links inter-connecting Hub
Locations
A B C D E F G
Sharing Topology information SME Local Locations
Link X-Hub Link Z-Hub
B/W = 256k B/W = 512k
(Locations/ Links/ Link Bandwidth)
using Location Bandwidth Manager
(LBM) Location Location Location
X Y Z
Dynamic distribution between
clusters of bandwidth usage on Links Leaf Clusters define their Locations
Shadow Shadow
between locations ICT-CL1 ICT-CL2 SME defines all Locations and Links
SME - Transparent Hub Location
Each Cluster builds a global topology
of Locations and Links SME distributes global topology
Locations can be shared information to all clusters
Shadow Shadow
Global Topology ICT-SME ICT-SME Global Topology
Hub Hub
Bob@cisco.com Fran@cisco.com
London San Jose
Helen@cisco.com Diane@cisco.com
Greg@cisco.com Chris@cisco.com
Fran@cisco.com Bob@cisco.com
Eric@cisco.com Anne@cisco.com
Anne@cisco.com Eric@cisco.com
ILS scales to 100 of 1000s of entries (1,000,000 tested) 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 142
URI Dialing
Inter-cluster Lookup Service (ILS) Operation
When a user dials a URI CUCM checks to see if it is registered locally
If not, CUCM looks for the URI in its ILS store a match returns the route string for the
destination cluster associated with the dialed URI e.g. sanjose.ca.us or london.uk.eu
This route string is used to match SIP route pattern to onward route the call
Diane calls
Helen@cisco.com SME
San Jose London
Diane@cisco.com Helen@cisco.com
Is Helen@cisco.com a Chris@cisco.com Greg@cisco.com
Diane@cisco.com Helen@cisco.com
No URI
locally registered Bob@cisco.com
Anne@cisco.com
Fran@cisco.com
Eric@cisco.com
?
San Jose London
Chris@cisco.com Can Helen@cisco.com Greg@cisco.com
Yes
be found in ILS ?
Bob@cisco.com Fran@cisco.com
London San Jose
Helen@cisco.com Diane@cisco.com
Greg@cisco.com Chris@cisco.com
Fran@cisco.com Bob@cisco.com
Eric@cisco.com Anne@cisco.com
Anne@cisco.com Eric@cisco.com
ILS scales to 100 of 1000s of entries (1,000,000 tested) 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 142
URI Dialing
Inter-cluster Lookup Service (ILS) Operation
When a user dials a URI CUCM checks to see if it is registered locally
If not, CUCM looks for the URI in its ILS store a match returns the route string for the
destination cluster associated with the dialed URI e.g. sanjose.ca.us or london.uk.eu
This route string is used to match SIP route pattern to onward route the call
Diane calls
Helen@cisco.com SME
San Jose London
Diane@cisco.com Helen@cisco.com
Chris@cisco.com Greg@cisco.com
Diane@cisco.com Bob@cisco.com Fran@cisco.com Helen@cisco.com
Anne@cisco.com Eric@cisco.com
Bob@cisco.com Fran@cisco.com
London San Jose
Helen@cisco.com Diane@cisco.com
Greg@cisco.com Chris@cisco.com
Fran@cisco.com Bob@cisco.com
Eric@cisco.com Anne@cisco.com
Anne@cisco.com Eric@cisco.com
ILS scales to 100 of 1000s of entries (1,000,000 tested) 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 142
UC 10.0+ Number and Route Pattern support over ILS
Global Dial Plan Replication (GDPR)
Numbers and Patterns can be advertised and assigned to partitions for Class of Service
Default Partitions are assigned to
Enterprise Alternate Numbers (e.g. 82121000)
E.164 Alternate Numbers (e.g. +12125551000)
Enterprise Patterns (e.g. 82121XXX) and E.164 Patterns (e.g. +12125551XXX)
SME Flat File
Avaya FR San Jose London Avaya FR
+33666035542 Diane@cisco.com Helen@cisco.com +33666035542
+14089024567 +442088244567 +33467678921
Diane@cisco.com +33467678921
+33453567619 Bob@cisco.com Fran@cisco.com +33453567619 Helen@cisco.com
+33677687297 +14089021234 +442088241234 +33677687297
+1408902XXXX +44208824XXXX
San Jose London
+14089024567 +442088244567
Bob@cisco.com Fran@cisco.com
London Avaya FR Avaya FR San Jose
Helen@cisco.com +33666035542 Diane@cisco.com
+33666035542 +14089024567
+442088244567 +33467678921 +33467678921
Fran@cisco.com +33453567619 +33453567619 Bob@cisco.com
+442088241234 +33677687297 +33677687297 +14089021234
+14089021234 +442088241XXX
2017 Cisco and/or its+1408902XXXX +442088241234
affiliates. All rights reserved. Cisco Public
Global Dial Plan Replication Number and URI Configuration
Number Mask masks Line DN
Alternate Number product of Line
DN and Number Mask
1XXXXX
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public
Global Dial Plan Replication Number Pattern Configuration
Pattern Type :
Enterprise Alternate Number (these
patterns can also be an internal 164
number pattern) or
E.164 Number Pattern (e.g. PSTN
number ranges)
PSTN failover :
Use pattern as is, or
Strip digits and/or Prepend digits
3
3
Note Numbers, URIs and Patterns for
3rd Party systems can be imported
into ILS GDPR
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 148
Global Dial Plan Replication
Partitions for Learned Numbers and Patterns
Four default
partitions are
created to store :
Enterprise
Alternate Numbers
E.164 Alternate
Numbers
Enterprise Patterns
E.164 Patterns
Partitions can be
used to provide
Classes of Service
for Learned
numbers
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 149
ILS Hierarchical Routing & Route String Summarization
Each cluster does an ILS look up and makes a local routing decision to its next hop based on the returned
ILS route string e.g. Helen@cisco.com london.uk.eu ---> SIP Trunk A
Route string summarization allowed e.g. Singapore.Asia.APAC SIP Trunk A
or *.*.APAC SIP Trunk A reducing dial plan size
Routes to :
*.*.EU
*.*.APAC Global Backbone
San Jose.CA.US
New York.NY.US
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public
GDPR vs SME
or
GDPR and SME
Large Scale UC design - GDPR vs SME
GDPR Only
GDPR uses ILS to advertise a clusters URIs and numbers to every other cluster
One SIP Route pattern is required per remote cluster
Each cluster must create and manage a SIP Trunk to every other cluster
ILS Toronto
SIP
7 clusters using GDPR : Boston
San Jose
6 SIP Trunks per cluster
6+ SIP Route patterns per
cluster
SIP
7 CUCM clusters
+ 1 SME cluster : San Jose Boston
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 153
Seattle Chicago
Large Scale UC design - GDPR and SME
Use GDPR and ILS to advertise URIs & numbers to every CUCM cluster and the SME cluster
Greatly simplified dial plan on the SME cluster - One Route Pattern for each remote CUCM
cluster rather than per number range
A single SIP Trunk between each CUCM cluster and the SME cluster
SIP
7 CUCM clusters
+ 1 SME cluster San Jose Boston
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 154
Seattle Chicago
Deploying Applications in
Large Scale UC networks
Large Scale SIP Trunk Design Recommendations Applications
Unity Cisco
Connection Meetings
Voicemail Server
System (CMS)
Expressway E & C
Session
Management
Edition Cluster
Jabber MRA Client
Cisco
Cisco Unified Emergency Cisco Operator
Contact Center CER Responder IM &P Console
SIP Line
General Guidance
Applications that track user state must be connected to the leaf CUCM cluster
Other applications such as voicemail and conferencing can be centralized BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 156
Centralized Applications - Conferencing
Cisco Meetings Server
SIP Trunk (CMS)
HTTPS
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 161
Continue Your Education
Demos in the Cisco campus
Walk-in Self-Paced Labs
Lunch & Learn
Meet the Engineer 1:1 meetings
Related sessions
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 162
Q&A
Thank You
Appendix
INVITE
100 Trying
180 Ringing
200 OK
ACK
10.10.199.251 10.10.199.250
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 168
SIP Messages INVITE Request with SIP Headers
INVITE sip:1001@10.10.199.250:5060 SIP/2.0---------------------------- Request INVITE to 1001
Via: SIP/2.0/TCP 10.10.199.251:5060;branch=z9hG4bK3395a5cdb
From: <sip:2002@10.10.199.251>;tag=1b1993ff-121d-4616-8dc5-353990242dfe-32552697
To: <sip:1001@10.10.199.250>
Date: Wed, 18 Feb 2015 18:37:57 GMT
Call-ID: 8fe4f600-b7c13785-3-fbc712ac@10.10.199.251
Supported: timer,resource-priority,replaces
Min-SE: 1800
User-Agent: Cisco-CUCM8.0
Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER.. SIP Message
CSeq: 101 INVITE
Contact: <sip:2002@10.10.199.251:5060;transport=tcp> Headers
Expires: 180 Some Mandatory
Allow-Events: presence, kpml
Supported: X-cisco-srtp-fallback Some Optional
Supported: Geolocation
Call-Info: <sip:10.10.199.251:5060>;method="NOTIFY;Event=telephone-event;Duration=500"
Cisco-Guid: 2414147072-3082893189-0000000002-4224127660
Session-Expires: 1800
P-Asserted-Identity: <sip:2002@10.10.199.251>
Remote-Party-ID: <sip:2002@10.10.199.251>;party=calling;screen=yes;privacy=off
Max-Forwards: 70
Content-Length: 0
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 169
SIP Headers Categorized :
Identity, Timers, Supported Methods
and Events, Cisco related and other
headers
SIP Messages INVITE with Headers re-grouped (1 of 3)
Request /Header Request Header Content Category
INVITE sip:1001@10.10.199.250:5060 SIP/2.0 Route and
Via: SIP/2.0/TCP 10.10.199.251:5060;branch=z9hG4bK3395a5cdb Transaction
CSeq: 101 INVITE related
headers
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 171
SIP Messages INVITE with Headers re-grouped (2 of 3)
Request Header Request Header Content Category
Supported: timer,resource-priority,replaces Timer related
Session-Expires: 1800 headers
Min-SE: 1800
Expires: 180
Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, Methods and
SUBSCRIBE, NOTIFY Events
Allow-Events: presence, kpml
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 173
SIP Request Line :
INVITE
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
SIP INVITE Request Line
Request Request Header Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
SIP URI content sip:user@host:port-number Comments
User 1001 Number /Name
The Called User
Host 10.10.199.250 IP Address/ Hostname/ Domain Name
Configured SIP Trunk Destination
Port 5060 TCP/UDP Port Number
SIP Protocol Version 2.0 Incoming and Outgoing Transport Type
Configurable via SIP Trunk Security Profile
How CUCM configuration affects the contents of the INVITE Request :
CUCM SIP Trunk Request Line/ SIP URI/ SIP Message Header content
Destination SIP Message Header
IP Address Used INVITE Request Line sip:1001@10.10.199.250:5060 SIP/2.0
IP Address Used To : Header <sip:1001@10.10.199.250>
FQDN/DNS SRV Used INVITE Request Line sip:1001@cisco.com:5060 SIP/2.0
FQDN/DNS SRV Used To : Header <sip:1001@cisco.com>
FQDN /DNS SRV resolved to an IP address which is used at the IP Layer
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 176
SIP Header Categories :
Route and Transaction related
headers
Request /Header Request/ Message Header Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Via: SIP/2.0/TCP 10.10.199.251:5060;branch=z9hG4bK3395a5cdb
CSeq: 101 INVITE
SIP Sessions : Transactions and Dialogs
A Transaction :
An exchange of messages between User Agents to perform a specific task e.g. Call set up, or
call tear down. A transaction consists of one request and all responses to that request.
A Dialog :
A series of one, or more transactions that take place between two User Agents
RTP Media
Response 200 OK
Transaction 102 BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 178
SIP INVITE - Route and Transaction related Headers :
Via Header
A Mandatory Header in Requests and Responses
The Via header is used to record the SIP route taken by a Request and to route a Response back to the
originator. A User Agent generating a Request records its own address in a Via header field. Multiple
Via Headers can be used to record the route of a Request through several SIP switches
Exactly the same header is used by both client and server User Agents for this transaction
VIA Header content SIP/2.0/TCP 10.10.199.251:5060;branch=z9hG4bK3395a5cdb
SIP Protocol Version 2.0
Transport Protocol TCP Configurable :TCP/UDP/TLS
Incoming and Outgoing Transport Type
Configurable via SIP Trunk Security Profile
User Agent 10.10.199.251 Address of CUCM generating the SIP Request
(As a B2BUA, CUCM is the UA in this transaction)
Incoming Port Number 5060 Incoming TCP/UDP /TLS Port Number
Configurable via SIP Trunk Security Profile
Branch z9hG4bK3395a5cdb Unique Identifier for this transaction
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 179
SIP INVITE Command Sequence Header
Request /Header Request Header Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Via: SIP/2.0/TCP 10.10.199.251:5060;branch=z9hG4bK3395a5cdb
CSeq: 101 INVITE
The sequence number and method remain the same for each transaction in a dialog
The method matches the Request for the transaction
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 180
SIP Header Categories :
Identity and Dialog related headers
SIP Message Header Message Header Content
From: <sip:2002@10.10.199.251>;tag=1b1993ff-121d-4616-8dc5-353990242dfe-
32552697
To: <sip:1001@10.10.199.250>
Call-ID: 8fe4f600-b7c13785-3-fbc712ac@10.10.199.251
P-Asserted-Identity: <sip:2002@10.10.199.251>
Remote-Party-ID: <sip:2002@10.10.199.251>;party=calling;screen=yes;privacy=off
Contact: <sip:2002@10.10.199.251:5060;transport=tcp>
SIP INVITE From and To Headers
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
SIP Message Header Message Header Content
From: <sip:2002@10.10.199.251>;tag=1b1993ff-121d-4616-8dc5-353990242dfe-
32552697
To: <sip:1001@10.10.199.250>
The To and From Headers are mandatory in Requests and Responses
Can optionally include a display name
Calling UA appends the From tag
Called UA appends the To tag
Tags must be globally unique
The From and To tags are used with the Call ID to uniquely identify a Dialog between two UAs
Note : The To and From header fields are not reversed in the Response message as one might
expect them to be. This is because the To and From header fields in SIP are defined to indicate
the direction of the request, not the direction of the message.
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 182
SIP INVITE Call-ID Header
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
SIP Message Header Message Header Content
Call-ID: 8fe4f600-b7c13785-3-fbc712ac @10.10.199.251
The same Call-ID is used in all SIP messages (Requests and Responses) for all transactions
within this dialog
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 183
P-Asserted-ID and Remote-Party-ID Headers
SIP Message Header Message Header Content
From: <sip:2002@10.10.199.251>;tag=1b1993ff-121d-4616-8dc5-353990242dfe-32552697
P-Asserted-Identity: <sip:2002@10.10.199.251>
Remote-Party-ID: <sip:2002@10.10.199.251>;party=calling;screen=yes;privacy=off
P-Asserted Identity which additionally supports Authentication, supersedes Remote Party ID.
P-Asserted Identity Privacy Header values can also override Device and Trunk settings for
Name and/or Number presentation and restriction
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 184
SIP INVITE : P-Asserted-Identity - Related Headers
SIP Message Header Message Header Content /values
From: Bob Jones <sip:2002@10.10.199.251>
P-Asserted-Identity: Bob Jones <sip:2002@10.10.199.251>
P-Preferred-Identity: Bob Jones <sip:2002@10.10.199.251>
Privacy: None/ ID/ ID Critical
The CUCM SIP Trunk can be configured to send User Identity in either the :
The Privacy header can be configured to indicate whether or not privacy (Identity delivery/
Identity blocking in the From header) is invoked for this call.
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 185
CUCM Config : P-Asserted-Identity Asserted Type
2002
Bob Jones Default = P-Asserted-Identity: Bob Jones <sip:2002@10.10.199.251>
P-Preferred Identity
P-Asserted Identity
Digest Auth Challenge from SIP Realm B
Digest Authentication Response
Remote-Party-ID: <sip:2002@10.10.199.251>;party=calling;screen=yes;privacy=off
If this box is checked, CUCM will relay an alphanumeric hostname of a caller to the called
endpoint in SIP Identity header information.
If the call is originating from a line device on the CUCM cluster, and is being routed over a
SIP trunk then the configured value for the Enterprise Parameter Organization Top-Level
Domain will be used in the Identity headers. e.g. cisco.com
SIP Message Header Message Header Content Content with Use FQDN in SIP Requests
From: <sip:2002@10.10.199.251> <sip:2002@cisco.com>
P-Asserted-Identity: <sip:2002@10.10.199.251> <sip:2002@cisco.com>
Remote-Party-ID: <sip:2002@10.10.199.251> <sip:2002@cisco.com>
Contact: <sip:2002@10.10.199.251:5060> <sip:2002@cisco.com>
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 190
Number and Name Presentation information
Header Priority : From/ RPID/ PAI
2002
Bob Jones From: Jim Smith <sip:1001@10.10.199.251>
Displayed
P-Asserted-Identity: Bob Jones <sip:2002@10.10.199.251> Caller
Identity
Remote-Party-ID: May Brown <sip:3003@10.10.199.251> ?
For Calling User Identity and Connected User Identity Presentation. The presented
User Identity is taken from Identity Headers in the following priority order :
1) PAI header
2) RPID header
3) From header
UC 10.0 allows this order to be changed BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 191
CUCM SIP Trunk Features
SIP Profile settings CLID Presentation
Strict From URI presentation : Process Identity using the From header only
Strict Identity Headers : Process Identity using the PAI and RPID Identity headers
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 192
Name and Number
Presentation and Restriction
SIP Message Header Message Header Content
From: <sip:2002@10.10.199.251>;tag=1b1993ff-121d-4616-8dc5-353990242dfe-32552697
P-Asserted-Identity: <sip:2002@10.10.199.251>
Privacy: None
Remote-Party-ID: <sip:2002@10.10.199.251>;party=calling;screen=yes;privacy=off
Presentation/Restriction of Calling Line ID & Calling Name
From: Bob Jones" <sip:2002@10.10.199.251>
or From: Bob Jones" <sip:localhost>
or From: "Anonymous" <sip:2002@10.10.199.251>
or From: "Anonymous" <sip:localhost>
2002
Bob Jones
Applied at the Trunk Level using
P-Asserted-Identity Privacy Header
settings
If Non-Default - Overrides
Device/Line and Trunk settings
Applied using Line ID and Name Applied at the Trunk Level using Line
Presentation settings in a Translation ID and Name Presentation settings
Pattern associated with the Calling If Non-Default - Overrides
Search Space on the Device or Line Device/Line settings 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 194
Line/Device - Presentation/Restriction of Calling Line
ID and Calling Name
From: Bob Jones" <sip:2002@10.10.199.251>
or From: Bob Jones" <sip:localhost>
or From: "Anonymous" <sip:2002@10.10.199.251>
or From: "Anonymous" <sip:localhost>
2002
Bob Jones
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 195
SIP Trunk - Calling Line ID and Calling Name
Presentation/Restriction Outbound Calls
From: Bob Jones" <sip:2002@10.10.199.251>
or From: Bob Jones" <sip:localhost>
Trunk settings :
Default
Use calling device values
Allowed
RPID privacy value = Off
Restricted
RPID privacy value = Name/URI/Full
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 196
SIP Trunk - Connected Line ID and Connected Name
Presentation/Restriction Inbound Calls
Remote-Party-ID: Jim Brown"sip:1001@10.10.199.250; privacy=Off
or Remote-Party-ID: Jim Brown"sip:1001@10.10.199.250; privacy=Name
This feature is based on Identity Header Privacy settings, not the values in the From Header
i.e. If the Users identity is anonymized in the From header and PAI Privacy = None, or RPID Privacy = Off
The Call is not Rejected The Call Proceeds
x
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 198
CUCM SIP Trunk Features
Outbound Calls Overwriting the Caller DN and Name
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
From: Cisco Systems UK<sip:+442088241000@10.10.199.251>
P-Asserted-Identity: Bob Jones" <sip:2002@10.10.199.251>
Remote-Party-ID: "Bob Jones <sip:2002@10.10.199.251>
Contact: <sip:+442088241000@10.10.199.251:5060>
2002 2002
Bob Jones Bob Jones
London Office
Directory Number = 2002
Name = Bob Jones For Phones in Edinburgh
and Caller Name. Associate this profile with the Cisco Systems
Contact: sip:2002@10.10.199.251:5060;transport=tcp
In a Request - The contact field contains the address at which the Calling UA can be reached
In a Response - The contact field contains the address at which the Called UA can be reached
With CUCM a B2BUA The address in the contact header field is the address of the CUCM
server, not the phone
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 202
SIP Header Categories :
Timer related headers
Request Header Request Header Content
Supported: timer,resource-priority,replaces
Session-Expires: 1800
Min-SE: 1800
Expires: 180
SIP INVITE Supported Header
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Request Header Request Header Content
Supported: timer,resource-priority,replaces
This header indicates support only. i.e. The Trunk will not accept the replaces
and resource-priority options if the corresponding Trunk settings have not been
configured/ enabled
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 205
SIP INVITE Session Expires and Min-SE Headers
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Request Header Request Header Content
Session-Expires 1800
Min-SE 1800
Optional Headers - Support indicated via the Supported: timer header option
Session-Expires header used with the Minimum-Session-Expires (Min-SE) header as a session keep-
alive mechanism
Called UA responds with a Session-Expires header in a 2XX message and refresher parameter to
indicate who (UAS or UAC) is doing the refreshing. BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 206
Related CUCM configuration
Min-SE Header, Session Expires Header
SIP Profile :
Configurable Session Refresh method - Invite/Update (Update Preferred)
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 207
SIP Session Expires and Min-SE Headers - Operation
During call set up - Session timers and Session Refresh methods are
negotiated and agreed on each SIP Trunk. Once the call is established the
session on each Trunk periodically refreshed. If no session refresh request or
response is received the UA sends a BYE to terminate the session
SME
Cluster
Media
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 208
SIP Session Expires and Min-SE Headers - Operation
During call set up - Session timers and Session Refresh methods are
negotiated and agreed on each SIP Trunk. Once the call is established the
session on each Trunk periodically refreshed. If no session refresh request or
response is received the UA sends a BYE to terminate the session
SME
Node
crash
SME
Cluster
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 208
SIP INVITE Expires Header
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Request Header Request Header Content
Expires: 180
Optional Header in INVITE Requests
The Expires header field gives the relative time that the message (INVITE in this case) remains valid in
seconds. Used as the primary no response timeout timer for SIP INVITE messages
If CUCM has not received a final response for the INVITE before this timer expires, CUCM will retry
the SIP INVITE up to the configured retry count (6) and if no response cancel the call.
Optional Header - Lists the set of methods supported by the UA sending the message
Note Although supported To be used, some methods also need to be enabled on the SIP
Trunk e.g. PRACK, Accept Presence Subscription, Accept Unsolicited NOTIFY etc
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 212
SIP INVITE - Allow-Events Header
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Request Header Request Header Content
Allow-Events presence, kpml
Optional Header
A UA sending an "Allow-Events" header is advertising that it can process SUBSCRIBE
requests and generate NOTIFY requests for all of the event packages listed in that header.
In the above case : Presence and KPML (Out of Band DTMF)
Default = No Preference Trunk supports either RFC 2833 or OOB DTMF UA capabilities sent
RFC 2833 Will override Allow-Events values from UA
OOB and RFC 2833 - Will override Allow-Events values from UA
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 213
SIP Header Categories :
Cisco and other headers
Request Header Request Header Content
Supported: X-cisco-srtp-fallback
Supported: Geolocation
Call-Info: <sip:10.10.199.251:5060>;method="NOTIFY;Event=telephone-
event;Duration=500"
User-Agent: Cisco-CUCM8.0
Cisco-Guid: 2414147072-3082893189-0000000002-4224127660
Date: Wed, 18 Feb 2015 18:37:57 GMT
Max-Forwards: 70
Content-Length: 0
SIP INVITE Supported Header
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Request Header Request Header Content
Supported: X-cisco-srtp-fallback
Optional Header
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 215
SIP INVITE Supported Header
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Request Header Request Header Content
Supported: Geolocation
Optional Header
Geolocation A standardized method to convey geographical location information from one SIP
entity to another SIP entity. Configurable on CUCM SIP Trunks Used for Logical Partitioning
Supported but needs to be configured on the SIP Trunk to be used
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 216
SIP INVITE Call-Info Header
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Request Header Request Header Content
Call-Info: <sip:10.10.199.251:5060>;method="NOTIFY;Event=telephone-
event;Duration=500"
The Call-Info header field provides additional information about the caller or callee, depending on
whether it is found in a request or response. (In the above example - The Calling UA)
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 217
SIP INVITE User Agent Header
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Request Header Request Header Content
User-Agent: Cisco-CUCM8.0
Optional Header - Contains information about the client User Agent originating the request
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 218
SIP INVITE
Cisco GUID Header Globally Unique Identifier
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Request Header Request Header Content
Cisco-Guid: 2414147072-3082893189-0000000002-4224127660
Proprietary Header
Uniquely identifies the call on this Trunk
Typically used in INVITE messages
Maps to the Incoming/ Outgoing ProtocolCallRef in CUCM Call Detail Records
Note : Trunk to Trunk calls on SME have different GUIDs for inbound and outbound calls
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 219
SIP INVITE Date Header
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Request Header Request Header Content
Date: Wed, 18 Feb 2015 18:37:57 GMT
An Optional Header
Date and time the Request or Response sent
Greenwich Mean Time (GMT) only
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 220
SIP INVITE : Max-Forwards Header
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Request Header Request Header Content
Max-Forwards: 70
Max-Forwards serves to limit the number of hops a request can make on the way to its
destination. It consists of an integer that is decremented by one at each hop. If the Max-
Forwards value reaches 0 before the request reaches its destination, it will be rejected with a
483(Too Many Hops) error response. Can be used for loop detection
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 221
SIP INVITE : Content-Length Header
Request Request URI Content
INVITE sip:1001@10.10.199.250:5060 SIP/2.0
Request Header Request Header Content
Content-Length: 0
The Content-Length header indicates the size of the message-body sent to the recipient in
decimal number of bytes.
Message-Body For example, the Session Description Protocol (SDP) message body, which if
present would describe the media characteristics supported by the sender. The message body is
appended after the Content-Length header.
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 222
Deep down into SIP
100 Trying
180 Ringing
200 OK
ACK
10.10.199.251 10.10.199.250
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 224
CUCM SIP Trunk Signaling
180 Ringing Response - Ringback
INVITE INVITE
100 Trying 100 Trying
180 Ringing 180 Ringing
Caller hears
locally 200 OK with SDP (Offer) 200 OK with SDP (Offer)
generated ACK with SDP (Answer) ACK with SDP (Answer)
ringback
tone Two Way Media
Note - This Via Header is exactly the same as that sent in the INVITE and remains the same for all
messages in this transaction
The Via header is used to record the SIP route taken by a Request and to route a Response back to
the originator. A UA generating a Request records its own address in a Via header field. Multiple Via
Headers can be used to record the route through several SIP switches 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 228
SIP 180 Ringing Response
Command Sequence Header
Response /Header Response Header Content
SIP/2.0 180 Ringing
Via: SIP/2.0/TCP 10.10.199.251:5060;branch=z9hG4bK3395a5cdb
CSeq: 101 INVITE
The sequence number and method remain the same for each transaction in a dialog
The method matches the Request for the transaction
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 229
SIP 180 Ringing Response
Identity and Dialog related headers
SIP Message Header Message Header Content
From: <sip:2002@10.10.199.251>;tag=1b1993ff-121d-4616-8dc5-353990242dfe-32552697
To: <sip:1001@10.10.199.250>;tag=abee6e2b-75b0-4537-80f3-7a3a37d0fa55-32557664
Call-ID: 8fe4f600-b7c13785-3-fbc712ac@10.10.199.251
P-Asserted-Identity: <sip:1001@10.10.199.250>
Remote-Party-ID: <sip:1001@10.10.199.250>;party=calling;screen=yes;privacy=off
Contact: <sip:1001@10.10.199.250:5060;transport=tcp>
180 Ringing Response: From Header and To Header
Response/Header Response Header Content
SIP/2.0 180 Ringing
From: <sip:2002@10.10.199.251>;tag=1b1993ff-121d-4616-8dc5-353990242dfe-32552697
To: <sip:1001@10.10.199.250>;tag=abee6e2b-75b0-4537-80f3-7a3a37d0fa55-32557664
The From and To tags are used with the Call ID to uniquely identify a dialog between two UAs
Note : The To and From header fields are not reversed in the Response message as one might
expect them to be. This is because the To and From header fields in SIP are defined to indicate
the direction of the request, not the direction of the message
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 231
SIP 180 Ringing Response: Call-ID Header
The same Call-ID is used in all messages (Requests and Responses) for all transactions
within this dialog
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 232
SIP 180 Ringing Response: Identity Headers
Response /Header Response Header Content
SIP/2.0 180 Ringing
P-Asserted-Identity: <sip:1001@10.10.199.250>
Remote-Party-ID: <sip:1001@10.10.199.250>;party=calling;screen=yes;privacy=off
A Contact header field value can contain a display name, a URI with URI parameters, and
header parameters
In a Request The contact field contains the address at which the calling UA can be reached
In a Response - The contact field contains the address at which the called UA can be reached
With CUCM a B2BUA The address in the contact header field is the address of the CUCM
server, not the phone
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 234
SIP 180 Ringing Response
Methods and Events supported
Request Header Request Header Content
Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY
Allow-Events: presence
SIP 180 Ringing Response: Allow Header
Response/Header Response Header Content
SIP/2.0 180 Ringing
Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY
Optional Header
Lists the set of methods supported by the UA sending the message
Note Although supported To be used, some methods also need to be enabled on the SIP
Trunk e.g. PRACK, Accept Presence Subscription, Accept Unsolicited NOTIFY etc
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 236
SIP 180 Ringing Response: Allow-Events Header
Response/Header Response Header Content
SIP/2.0 180 Ringing
Allow-Events: presence
Optional Header
A UA sending an "Allow-Events" header is advertising that it can process SUBSCRIBE
requests and generate NOTIFY requests for all of the event packages listed in the header.
In this Response : Presence
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 237
SIP 180 Ringing Response
Cisco and other headers
Request Header Request Header Content
Supported: X-cisco-srtp-fallback
Supported: Geolocation
Call-Info: <sip:10.10.199.251:5060>;method="NOTIFY;Event=telephone-event;Duration=500"
Date: Wed, 18 Feb 2015 18:37:57 GMT
Content-Length: 0
SIP 180 Ringing Response: Supported Headers
Response /Header Response Header Content
SIP/2.0 180 Ringing
Supported: X-cisco-srtp-fallback
Supported: Geolocation
Optional Headers :
X-Cisco-srtp fallback proprietary header (can be ignored by other vendors)
Allows an offered SRTP session to fall back to RTP if not supported by both UAs
Geolocation standardized method to convey geographical location information from one SIP
entity to another SIP entity. Configurable on CUCM SIP Trunks
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 239
SIP 180 Ringing Response: Call-Info Header
Response/Header Response Header Content
SIP/2.0 180 Ringing
Call-Info: <sip:10.10.199.251:5060>;method="NOTIFY;Event=telephone-event;Duration=500"
The Call-Info header field provides additional information about the caller or callee, depending on
whether it is found in a request or response. (In the above example - The Called UA)
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 240
SIP 180 Ringing Response: Date Header
Response/Header Response Header Content
SIP/2.0 180 Ringing
Date: Wed, 18 Feb 2015 18:37:57 GMT
An Optional Header
Date and time the Request or Response sent
Greenwich Mean Time (GMT) only
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 241
SIP 180 Ringing Response: Content Header
Response/Header Response Header Content
SIP/2.0 180 Ringing
Content-Length: 0
The Content-Length header indicates the size of the message-body sent to the recipient in
decimal number of bytes.
Message-Body For example, the Session Description Protocol (SDP) message body.
The message body is appended after the Content-Length header.
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 242
Deep down into SDP
v=0
o=CiscoSystemsCCM-SIP 2000 1 IN IP4 10.10.199.250
s=SIP Call SDP Message Body
c=IN IP4 10.10.199.130
Describes the media characteristics of the
t=0 0 endpoint offering the SDP
m=audio 16444 RTP/AVP 0 8 18 101
a=rtpmap:0 PCMU/8000
a=ptime:20 Includes :
a=rtpmap:8 PCMA/8000 Endpoint IP address
a=ptime:20 Codecs supported
a=rtpmap:18 G729/8000
a=ptime:20 UDP Port number for RTP
a=sendrecv In Band DTMF support details
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
Some SDP lines are REQUIRED some are OPTIONAL, but all MUST appear in exactly theand/or
2017 Cisco order described
its affiliates. All rights reserved. in RFC
Cisco Public 4566
Media negotiation for Voice calls
The SDP Offer - SDP Session Attributes
Attribute Description Attribute Content Required/Optional
v= Version 0 Required
o= Origin CiscoSystemsCCM-SIP 2000 1 IN IP4 Required
10.10.199.250 10.10.199.250 = CUCM IP Address
s= Session Name SIP Call Required
c= Connection Data IN IP4 10.10.199.130 Optional
10.10.199.130 = Phones IP Address
t= Timing 00 Required
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 245
Media negotiation for Voice calls The SDP Offer
SDP Media Attributes Voice Codecs Offered
Attribute Description Attribute Content Comments
c= Connection Data IN IP4 10.10.199.130 Phones IP Address
m= Media Descriptions audio 16444 RTP/AVP 0 8 18 101 See description below
a= Attribute rtpmap:0 PCMU/8000 G.711 u-law codec
a= Attribute ptime:20 RTP packet sampling time (mS)
a= Attribute rtpmap:8 PCMA/8000 G.711 a-law codec
a= Attribute ptime:20 RTP packet sampling time (mS)
a= Attribute rtpmap:18 G729/8000 G.729 codec
a= Attribute ptime:20 RTP packet sampling time (mS)
m= Media Descriptions = <Media> <Port> <Protocol> <Format> ...Audio 16444 RTP/AVP 0 8 18 101
The Codecs (formats) in the Offer must be listed in preference order. The recipient of the Offer
should use the codec with the highest preference that is acceptable to it in its Answer
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 247
Media negotiation for Voice calls The SDP Offer
SDP Media Attributes - Audio Direction and DTMF
Attribute Description Attribute Content Comments
m= Media Descriptions audio 16444 RTP/AVP 0 8 18 101 101 = DTMF RTP Payload Type number
a= Attribute sendrecv Describes Audio Direction (see below)
a= Attribute rtpmap:101 telephone-event/8000 In Band DTMF transport (RFC 2833)
a= Attribute fmtp:101 0-15 DTMF tones
(Events 0 through 15
= 0,1,2,3,4,5,6,7,8 ,9,*,#,A ,B,C,D)
Audio Direction
a=sendrecv Media can be sent by this endpoint, media can be received on this endpoint
a=recvonly Media can only be received on this endpoint, it will not send media
a=sendonly Media can only be sent by this endpoint, it will not receive media
a=inactive Media can not be sent to or received from this device (used for
Hold)
10.10.199.250 10.10.199.251
10.10.199.130 10.10.199.179
RTP UDP Port 16444 RTP UDP Port 28668
G.729 codec G.729 codec
Two way Audio Two way Audio
RFC 2833 DTMF RFC 2833 DTMF
o=CiscoSystemsCCM-SIP 2000 1 IN IP4 10.10.199.250 o=CiscoSystemsCCM-SIP 2000 1 IN IP4 10.10.199.251
c=IN IP4 10.10.199.130 c=IN IP4 10.10.199.179
m=audio 16444 RTP/AVP 18 101 m=audio 28668 RTP/AVP 18 101
a=rtpmap:18 G729/8000 a=rtpmap:18 G729/8000
a=ptime:20 a=ptime:20
a=sendrecv a=sendrecv
a=rtpmap:101 telephone-event/8000 a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15 a=fmtp:1010-15
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 250
Deep down into SDP
For example, broadband services where the upload and download speeds are
different often by an order of magnitude.
Also because encoding video is more CPU intensive than decoding video - Video
endpoints can typically decode at a higher resolution than they can encode.
Because of the need to support asymmetric video streams the video codec
capabilities sent in an SDP Offer and Answer should be considered to be the receive
capabilities of the respective endpoints rather than the negotiated capabilities in
common with both devices
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 252
SIP Trunk Signaling
Voice and Video call with BFCP and FECC
10.10.199.250 10.10.199.251
10.58.9.86 10.58.9.222
Audio
Main Video
Slide Video
Binary Floor Control
Far End Camera Control 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 253
SIP Trunk Signaling
Voice and Video call - Main video channel negotiation
10.10.199.250 10.10.199.251
10.58.9.86 10.58.9.222
Audio
Video
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 254
SIP Trunk Signaling
Video calls SDP Offer Detail - Video
v=0
o=CiscoSystemsCCM-SIP 161095 1 IN IP4 10.58.9.6
s=SIP Call
b=TIAS:6000000
b=AS:6000
t=0 0
m=audio 16444 RTP/AVP 102 103 104 9 105 106 0 8 101
c=IN IP4 10.58.9.86
b=TIAS:64000
.attributes of multiple audio codecs in the offer
The Session Level Bandwidth Modifier specifies the maximum amount of bandwidth supported
when all the media streams are used. There are three Session Level Bandwidth Modifiers:
Transport Independent Application Specific (TIAS),
Application Specific (AS), and
Conference Total (CT)
The Maximum Session Bit Rate for video calls limits media bandwidth for
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 258
SIP Trunk Signaling
Video calls SDP Offer Bandwidth in this Offer
o=CiscoSystemsCCM-SIP 161095 1 IN IP4 10.58.9.6
s=SIP Call
b=TIAS:6000000 Transport Independent Application Specific bandwidth (RTP) in bits/sec
b=AS:6000 Application Specific bandwidth (RTP/UDP/IP) in kbps
t=0 0
m=audio 16444 RTP/AVP 102 103 104 9 105 106 0 8 101
b=TIAS:64000
.attributes of multiple audio codecs in the offer
For this endpoint the maximum media stream bandwidths that can be received :
= 6 Mbps for all voice and video streams including UDP and IP headers (AS session bandwidth)
= 64kbps for voice RTP traffic not including UDP and IP headers (TIAS audio)
= 6 Mbps for video RTP traffic not including UDP and IP headers (TIAS video)
The bandwidth values in the SDP Answer do not have to be the same
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 259
SIP Trunk Signaling - Video calls
SDP Offer H.264 and H.263 Video Codecs
m=video 16446 RTP/AVP 98 99 The Codecs (formats) in the Offer must be listed in
c=IN IP4 10.58.9.86 preference order. H.264 preferred over H.263
b=TIAS:6000000
a=rtpmap:98 H264/90000
a=fmtp:98 profile-level-id=428016;packetization-mode=1;max-mbps=245000;max-fs=9000;max-cpb=200;max-
br=5000;max-rcmd-nalu-size=3456000;max-smbps=245000;max-fps=6000
a=rtpmap:99 H263-1998/90000
a=fmtp:99 QCIF=1;CIF=1;CIF4=1;CUSTOM=352,240,1
a=rtcp-fb:* nack pli
a=rtcp-fb:* ccm tmmbr
The video capabilities sent in the SDP body should be considered as the receive capabilities of the
sending endpoint.
The codecs used by video streams are more complex than audio codecs, particularly for H.264
which is a more recent codec standard that offers significant improvements when compared with
H.263. Today H.263 is considered to be a legacy codec with a lower quality and
resolution for a given bandwidth than H.264
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 260
SIP Trunk Signaling
Video calls SDP Offer Detail - Video Codecs
m=video 16446 RTP/AVP 98 99 The Codecs (formats) in the Offer must be listed in
c=IN IP4 10.58.9.86
preference order. H.264 preferred over H.263
b=TIAS:6000000
a=rtpmap:98 H264/90000
a=fmtp:98 profile-level-id=428016;packetization-mode=1;max-mbps=245000;max-fs=9000;max-cpb=200;max-
br=5000;max-rcmd-nalu-size=3456000;max-smbps=245000;max-fps=6000
a=rtpmap:99 H263-1998/90000
a=fmtp:99 QCIF=1;CIF=1;CIF4=1;CUSTOM=352,240,1 (= Supported Picture Formats/Resolutions)
Two video codecs are offered in SDP by this endpoint : H.263 and H.264
a=rtpmap:98 H264/90000 H.264/ Sampling Rate 90000 Hz
a=rtpmap:99 H263-1998/90000 H.263 version 2/ Sampling Rate 90000 Hz
For each codec type the endpoint sends additional information about the capabilities it supports
The endpoint that responds to this Offer, selects one codec and returns its receive
capabilities in its Answer.
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 261
SIP Trunk Signaling
Video calls SDP Offer H.264 Video Codec
a=rtpmap:98 H264/90000
a=fmtp:98 profile-level-id=428016;packetization-mode=1;max-mbps=245000;max-fs=9000;max-
cpb=200;max-br=5000;max-rcmd-nalu-size=3456000;max-smbps=245000;max-fps=6000
packetization-mode=1
max-mbps=245000
max-fs=9000
These parameters describe the features and capabilities
max-cpb=200 beyond those of the profile-level-id that are supported by this
max-br=5000 endpoint
max-rcmd-nalu-size=3456000
max-smbps=245000
max-fps=6000
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 262
SIP Trunk Signaling H.264 Video calls
The 1st four digits of the Profile level ID The Profile
a=rtpmap:98 H264/90000
a=fmtp:98 profile-level-id=428016;packetization-mode=1;max-mbps=245000;max-fs=9000;max-cpb=200;max-
br=5000;max-rcmd-nalu-size=3456000;max-smbps=245000;max-fps=6000
profile-level-id=428016
The Profile Level ID is fundamental in describing which H.264 features have been implemented by
the endpoint.
H.264 defines 21 profiles which describe the video capabilities of various classes of application.
The profile can be identified primarily by the first two hex digits of the profile-level-id and also by
the following 3rd and 4th digits. The negotiated profile-level-id for the call must be symmetrical
profile-level-id=4280XX defines the Baseline Profile of H.264 which is commonly used by UC video
endpoints.
The baseline profile supports video encoding features such as Flexible Macroblock Ordering,
Arbitrary Slice Ordering, Redundant Slices. ( not covered in this session )
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 263
SIP Trunk Signaling H.264 Video calls
The last 2 digits of the Profile level ID The Level
a=rtpmap:98 H264/90000
a=fmtp:98 profile-level-id=428016;packetization-mode=1;max-mbps=245000;max-fs=9000;max-cpb=200;max-
br=5000;max-rcmd-nalu-size=3456000;max-smbps=245000;max-fps=6000
profile-level-id=428016
The 5th and 6th hex digits of the profile-level-id describe the Level,
The Level describes the resolution, frame rate and bit rate that the endpoint can support.
16 hex = 22 dec = Level 2.2 = 352 x 480 pixels @ 30 frames per second
Levels range from 1 to 5.1 (128 x 96 @30 fps to 4096 x 2048 @30 fps)
H.264 introduces the concept of a Slice - spatially distinct region of a frame that can be
encoded separately from other regions in the frame. H.264 uses I-Slices, P-Slices and B-Slices
Frames and Slices are segmented into Macroblocks (rectangular pixel samples). Several
Macroblocks can be grouped into a Slice such that a video frame can consist of several Slices .
A NALU serves as container for a Slice(s) (groups of macroblocks) of the video frame
The Video Coding Layer (VCL) creates a coded representation of the video image by
partitioning the video frame into Macroblocks (rectangular samples) and then
encoding them using spatial and temporal prediction.
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 265
SIP Trunk Signaling
Video calls SDP Offer H.264 Video Codec Detail (1)
a=rtpmap:98 H264/90000
a=fmtp:98 profile-level-id=428016;packetization-mode=1;max-mbps=245000;max-fs=9000;max-
cpb=200;max-br=5000;max-rcmd-nalu-size=3456000;max-smbps=245000;max-fps=6000
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 266
SIP Trunk Signaling
Video calls SDP Offer H.264 Video Codec Detail 2
a=rtpmap:98 H264/90000
a=fmtp:98 profile-level-id=428016;packetization-mode=1;max-mbps=245000;max-fs=9000;max-cpb=200;max-
br=5000;max-rcmd-nalu-size=3456000;max-smbps=245000;max-fps=6000
max-rcmd-nalu-size=3456000 Max NALU packet size (bytes) that the receiver can handle
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 267
SIP Trunk Signaling
Video calls SDP Offer H.264 Video Codec - RTCP
RTCP is used for video rate adaption when congestion/ packet loss encountered
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 268
SIP Trunk Signaling
Video calls SDP Answer Detail = Video Only
v=0
o=CiscoSystemsCCM-SIP 112480 1 IN IP4 10.58.9.44
s=SIP Call
b=TIAS:6000000 Symmetric Bandwidth requirements at the session level
b=AS:6000 TIAS = 6Mbps, AS = 6Mbps
t=0 0
10.10.199.250 10.10.199.251
10.58.9.86 10.58.9.222
Audio RTP UDP Port 16444 Audio Audio RTP UDP Port 2346
MP4A-LATM Audio codec MP4A-LATM Audio codec
Bandwidth 64kbps Bandwidth 64kbps
RFC 2833 DTMF RFC 2833 DTMF
Video RTP UDP Port 16446 Video Video RTP UDP Port 2348
H.264 Video codec H.264 Video codec
Asymmetric Receive values Asymmetric Receive values
Bandwidth 6Mbps Bandwidth (6Mbps - 64kbps)
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 271
SIP Trunk Signaling
Video calls Binary Floor Control Protocol (BFCP)
BFCP a protocol to manage access to shared resources in a conference, such as the right for a
user to send media to a particular media session (e.g. using a video channel for desktop sharing).
With BFCP in a video call, two additional media channels are negotiated one video channel to
share content, the other for floor control (BFCP)
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 272
SIP Trunk Signaling Media Negotiation
Voice and Video call with BFCP
10.10.199.250 10.10.199.251
10.58.9.86 10.58.9.222
Audio
Main Video
Slide Video
Binary Floor Control 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 273
SIP Trunk Signaling
Video calls SDP Offer part 1: Detail = BFCP only
v=0
o=CiscoSystemsCCM-SIP 161095 1 IN IP4 10.58.9.6
s=SIP Call
b=TIAS:6000000
b=AS:6000 Note - Session Bandwidth value = 6 Mbps total
t=0 0
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 276
SIP Trunk Signaling
Video calls SDP Answer part 2 : Detail = BFCP Only
m=video 2350 RTP/AVP 98 Selected Video Codec for Desktop Presentation channel
c=IN IP4 10.58.9.222
b=TIAS:5936000
a=label:12 Label 12 used to identify Slides Video Stream
a=rtpmap:98 H264/90000 H.264 Codec selected - receive differences
a=fmtp:98 profile-level-id=428016;packetization-mode=1;max-mbps=108000;max-fs=3840;max-cpb=200;
max-br=5000;max-rcmd-nalu-size=1474560;max-smbps=108000;max-fps=6000
a=content:slides Content :Slides (desktop presentation) Video Stream
a=rtcp-fb:* nack pli
a=rtcp-fb:* ccm tmmbr
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 277
SIP Trunk Signaling Negotiated Media
Voice and Video call with BFCP
10.10.199.250 10.10.199.251
10.58.9.86 10.58.9.222
Audio RTP UDP Port 16444 Audio RTP UDP Port 2346
MP4A-LATM Audio codec MP4A-LATM Audio codec
RFC 2833 DTMF Audio RFC 2833 DTMF
Video RTP UDP Port 16446 Video RTP UDP Port 2348
H.264 Video codec H.264 Video codec
Asymmetric Receive values Main Video Asymmetric Receive values
Video RTP UDP Port 16448 Video RTP UDP Port 2350
H.264 Video codec H.264 Video codec
Asymmetric Receive values Slide Video Asymmetric Receive values
BFCP UDP Port 5070 BFCP UDP Port 5070
Conference 1 User 8 Conference 1 User 6
Binary Floor Control 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 278
SIP Trunk Signaling
Video calls Far End Camera Control (FECC)
Far End Camera Control (FECC)
A simple protocol based on ITU H.281 frames carried in H.224 packets in an RTP UDP channel
FECC allows a user to select a video source and to control camera actions such as Pan, Tilt,
Zoom and Focus
m=application 16450 RTP/AVP 107 UDP port-number = 16450 , RTP Payload Type = 107
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 279
SIP Trunk Signaling
Video calls SDP Offer : Detail = FECC only
v=0
o=CiscoSystemsCCM-SIP 161095 1 IN IP4 10.58.9.6
.
m=audio 16444 RTP/AVP 102 103 104 9 105 106 0 8 101
.attributes of multiple audio codecs in the offer
m=application 16450 RTP/AVP 107 UDP port-number = 16450 , RTP Payload Type = 107
c=IN IP4 10.58.9.86
a=rtpmap:107 H224/0
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 280
SIP Trunk Signaling
Video calls SDP Answer : Detail = FECC Only
v=0
o=CiscoSystemsCCM-SIP 112480 1 IN IP4 10.58.9.44
.
m=audio 2346 RTP/AVP 102 101
. Attributes of selected audio codec and DTMF RFC2388
m=application 2352 RTP/AVP 107 UDP port-number = 2352, RTP Payload Type = 107
c=IN IP4 10.58.9.222
a=rtpmap:107 H224/0
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 281
SIP Trunk Signaling Negotiated Media
Voice and Video call with BFCP & FECC
10.10.199.250 10.10.199.251
10.58.9.86 10.58.9.222
Audio RTP UDP Port 16444 Audio RTP UDP Port 2346
MP4A-LATM Audio codec MP4A-LATM Audio codec
RFC 2833 DTMF Audio RFC 2833 DTMF
Video RTP UDP Port 16446 Video RTP UDP Port 2348
H.264 Video codec Main Video H.264 Video codec
Video RTP UDP Port 16448 Video RTP UDP Port 2350
H.264 Video codec Slide Video H.264 Video codec
BFCP UDP Port 5070 BFCP UDP Port 5070
Binary Floor Control
FECC UDP Port 16450 FECC UDP Port 2352
RTP Payload Type 107 Far End Camera Control RTP Payload Type 107
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 282
SIP Trunk Signaling Video Call
Complete SDP Offer : Voice, Video, BFCP and FECC
v=0
o=CiscoSystemsCCM-SIP 161095 1 IN IP4 10.58.9.6
s=SIP Call
b=TIAS:6000000
b=AS:6000
t=0 0
m=audio 16444 RTP/AVP 102 103 104 9 105 106 0 8 101
c=IN IP4 10.58.9.86
b=TIAS:64000
a=rtpmap:102 MP4A-LATM/90000
a=fmtp:102 bitrate=64000;profile-level-id=24;object=23
a=rtpmap:103 MP4A-LATM/90000
a=fmtp:103 bitrate=56000;profile-level-id=24;object=23
a=rtpmap:104 MP4A-LATM/90000
a=fmtp:104 bitrate=48000;profile-level-id=24;object=23
a=rtpmap:9 G722/8000
a=ptime:20
a=rtpmap:105 G7221/16000
a=fmtp:105 bitrate=32000
a=rtpmap:106 G7221/16000
a=fmtp:106 bitrate=24000
a=rtpmap:0 PCMU/8000
a=ptime:20
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 283
a=rtpmap:8 PCMA/8000
SIP Trunk Signaling Video Call
Complete SDP Answer : Voice, Video, BFCP and FECC
v=0
o=CiscoSystemsCCM-SIP 112480 1 IN IP4 10.58.9.44
s=SIP Call
b=TIAS:6000000
b=AS:6000
t=0 0
m=audio 2346 RTP/AVP 102 101
c=IN IP4 10.58.9.222
b=TIAS:64000
a=rtpmap:102 MP4A-LATM/90000
a=fmtp:102 bitrate=64000;profile-level-id=24;object=23
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
m=video 2348 RTP/AVP 98
c=IN IP4 10.58.9.222
b=TIAS:5936000
a=label:11
a=rtpmap:98 H264/90000
a=fmtp:98 profile-level-id=428016;packetization-mode=1;max-mbps=108000;max-fs=3600;max-cpb=200;max-br=5000;max-rcmd-nalu-
size=1382400;max-smbps=108000;max-fps=6000
a=content:main
a=rtcp-fb:* nack pli
a=rtcp-fb:* ccm tmmbr
m=video 2350 RTP/AVP 98
c=IN IP4 10.58.9.222
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 284
Deploying an SME cluster with no Media Resources
UC 8.5+ SME SIP Trunks MTP-less Early Offer
UC 10.5+ SME SIP Trunks Best Effort Early Offer
Reasons to use SIP Trunks on SME
SME clusters with no Media Resources
Media Resources Media Resources
Leaf Cluster
New York
Media Resources
SME
Cluster
Media Resources
Leaf Cluster
Leaf Cluster Europe
Los Angeles
Disadvantages : MTPs support a single Audio codec only e.g. G711 or G729. The passthru codec is
not supported excluding the use of SRTP and video calls. Since the Trunks MTPs are used - The media
path is forced to follow the signaling path.
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 287
CUCM SIP Trunk Signaling
Enabling SIP Early Offer Method 2 UC 8.5+
SIP Profile Early Offer support for voice and video calls (insert MTP if needed)
SIP Line SIP Trunk with Early Offer
MGCP Gateway BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 288
Deploying SME with no Media Resources - UC 8.5+
SME SIP Trunks MTP less Early Offer
SME
Cluster
All SME Trunks configured as SIP Early Offer for Voice and video (Insert MTP if needed)
No media resources (MTPs, Transcoders etc) associated to the SME Trunks
Takes advantage of SIP Trunk behaviour based on the following Service Parameter
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 289
Deploying SME with no Media Resources UC 8.5+
MTP less Early Offer
Delayed Offer Delayed Offer
SME
Cluster
All SME Trunks configured as SIP Early Offer for Voice and Video (Insert MTP if needed)
No media resources (MTPs, Transcoders etc) associated to the SME Trunks
If an inbound DO call received on SME SIP Trunk outbound SIP Trunk sends DO
If an inbound EO call received on SME SIP Trunk outbound SIP Trunk sends EO
All SME Trunks configured as SIP Early Offer for Voice and video (Insert MTP if needed)
No media resources (MTPs, Transcoders etc) associated to the SME Trunks
This EO/DO pass-through feature also affects media negotiation
With Delayed Offer Calls - Media choices (e.g. codec decision/ DTMF transport decision)
made by the Leaf cluster originating the call
Media resources (if needed) are inserted by the originating Leaf cluster
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 291
Deploying SME with no Media Resources - UC 8.5+
SME MTP less Early Offer Early Offer Call
Early Offer Early Offer
Media Resources
INVITE with SDP (Offer)
200 OK with SDP (Answer)
All SME Trunks configured as SIP Early Offer for Voice and video (Insert MTP if needed)
No media resources (MTPs, Transcoders etc) associated to the SME Trunks
This EO/DO pass-through feature also affects media negotiation
With Early Offer Calls - Media choices (e.g. codec decision/ DTMF transport decision) made
by the Leaf cluster receiving the call
Media resources (if needed) are inserted by the Leaf cluster receiving the call
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 292
Deploying SME with no Media Resources - UC 8.5+
SME SIP Trunks MTP less Early Offer - Summary
Delayed Offer Delayed Offer
Media Resources Media Resources
SME
Cluster
Early Offer support for voice and video calls Best Effort (no MTP inserted)
Recommended configuration for all 10.5+ CUCM and SME SIP Trunks
With Best Effort Early Offer MTPs are never used to create an Offer
Early Offer is sent only if the media characteristics of the calling device can be determined,
If the media characteristics of the device cannot be determined a Delayed Offer is sent.
Best Effort Early Offer is preferred over MTP-less Early Offer in SME clusters
Best Effort Early Offer has the same media transparency effect as MTP-less Early Offer in
SME clusters, but the feature is simpler and easier to configure
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 294
CUCM 10.5+ SIP Trunks Best Effort Early Offer
SIP Line Best Effort Early Offer SIP Trunk Early Offer sent
Older SCCP Phones SIP Trunk Best Effort Early Offer SIP Trunk Delayed Offer sent
H323 Slow Start MGCP Trunk Best Effort Early Offer SIP Trunk Early Offer sent
MGCP Gateway
H323 Trunk Best Effort Early Offer SIP Trunk Early Offer sent
H323 Fast Start SIP Trunk Best Effort Early Offer SIP Trunk Early Offer sent
SME
Cluster
Leaf systems can use SIP Early Offer/Delayed Offer/Best Effort Early Offer (recommended )
Use Codec Preference Lists to avoid transcoding
If a Transcoder is required Inserted by Leaf cluster
If MOH, Announcement service is required Inserted by Leaf cluster
If Conferencing resources are required Inserted by Leaf cluster
If MTPs for DTMF mismatch are required Inserted by Leaf cluster
BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 296
SME with no Media Resources
Possible with SIP Delayed Offer Trunks Everywhere ?
Delayed Offer Delayed Offer
To support calls with voice, video and encryption H323 Slow Start Trunks must be used.
Endpoint Media capabilities are sent over H323 Trunks through the exchange of Terminal
Capability Set (TCS) messages. The choice of which codec and DTMF transport method is
used for the call is determined after Master Slave Determination (MSD).
Unlike SIP Trunks, for H323 Inter Cluster Trunks the choice which cluster choses the media
characteristics for the call is not configurable, as the cluster that initiates the TCS exchange
and determination of which cluster is Master and Slave is random 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 300
Reasons to use SIP Trunks only
H323 Slow Start Trunks Media Negotiation
MSD MSD = Master/ Slave Determination
Slave
Media
Decision
SME
made
Cluster
here
Master
Because the cluster that initiates the TCS exchange and determination of which cluster is
Master and Slave is randomly selected
This can lead to situations where, when a DTMF transport mismatch, or Codec mismatch
occurs between the endpoints in call The SME cluster will try to insert media resources
Without SME media resources the call, or DTMF transport for the call, will fail
Therefore - H323 Trunks cannot be used in SME deployments without media resources
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 301
Global SME Deployments
Signaling Delay and SME based UC networks
SME
The diagram above shows an example of call set up delays and their impact on the users experience.
(Note Phone to Call Agent signaling delay has been assumed to be minimal)
Delays during call set up will vary based on the protocol(s) used, the trunk configuration and call agent
operation making it difficult to calculate the time taken to establish each stage of the call set up.
In most cases, signaling delays do not noticeably affect user experience. If signaling delays are a
concern enable PRACK on SIP Trunks. BRKUCC-2006 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 304
Reducing Signaling Delay
Pre UC 9.1 - Multiple regional SME clusters
SME SME
North America Europe
Signalling Path
SME SME
Latin America Asia Pac
< 500 mS
SME
CoW+
< 500 mS
< 500 mS
SME
CoW+
< 500 mS
The upgrade process for an SME cluster consists of two key parts: Version switch-over, where the call
processing node is re-booted and initialized with the new software version (this takes approximately 45
minutes per server), and database replication, where the subscriber's database is synchronized with
that of the publisher node. The time taken to complete this database replication phase depends on the
RTT between the publisher and subscriber nodes and the number of subscribers in the cluster. The
database replication process has a minimal impact on the subscriber's call processing capability and
typically can be run as a background process during normal SME cluster operation. 2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 308
One Global SME CoW cluster
Trunk config from Leaf cluster to SME cluster
DC1 SME Nodes
North America
UC 9.1
SME CoW Route List
Route List
up to Leaf Cluster Leaf Cluster
North America Europe
500mS RTT
UC 9.1
SME CoW
Leaf Cluster Leaf Cluster
up to Europe
North America
500mS RTT
UC 9.1
SME CoW Route List
Leaf Cluster Leaf Cluster
up to Europe
North America
500mS RTT
Leaf Clusters
Multiple Trunks in Route Groups provide ordered selection of SME nodes.
Route List Call Distribution priority order nearest data centre 1st, second nearest data centre 2nd etc
SME CoW cluster
Single Trunk with Run on all Nodes enabled pointing to all nodes in each leaf cluster
Route local operates in the SME cluster No inter node intra clustercall routing
2017 Cisco and/or its affiliates. All rights reserved. Cisco Public 311