This document defines the components and methods used in SIP including user agents, servers, methods, SDP fields, and call flows. It describes UAs, proxies, registrars, redirect and location servers. It outlines the REGISTER, INVITE, ACK, CANCEL, OPTIONS, and BYE methods and how Cisco gateways can send and receive them. It also summarizes SDP fields, DTMF relay options, error codes, dialpeer configuration, and SIP UA commands.
High Class Call Girls Noida Sector 39 Aarushi 🔝8264348440🔝 Independent Escort...
SIP Components, Methods, and Call Flows
1. SIP Marcelo Zanata
Components
UA (User Agent) – any endpoint.
UAC (User Agent Client) – UA that initialize the call
UAS (User Agent Server) – UA that receive the call
Proxy Server – Do call routing, authentication, authorization, address resolution, loop detection. This can
stay int he signaling path or not.
Redirect Server – UA and Proxy can contact it and get the response with one or more address for the user.
Cisco Router can act as it.
Registrar Server – Keeps track of current location of UA. IOS and CCM can do it.
Location Server – maintains the location database of UA
B2BUA (Back-to-back User Agent) – a server acting as UAS and UAC at the same-time, re-initializing the
call. CCM can be SIP B2BUA.
Presence Server – gather presence form Presentities and subscribe information from Watchers
Methods
Cisco gateways can send and receive:
REGISTER: A UA client sends this message to inform a SIP server of its location.
INVITE: A caller sends this message to request that another endpoint join a SIP session, such as a
conference or a call. This message can also be sent during a call to change session parameters.
ACK: A SIP UA can receive several responses to an INVITE. This method acknowledges the final response to
the INVITE.
CANCEL: This message ends a call that has not yet been fully established.
OPTIONS: This message queries the capabilities of a server. Cisco gateways receive these methods only.
BYE: This message ends a session or declines to take a call.
Cisco gateway do not generate:
INFO: This message is used when data is carried within the message body.
PRACK: This message acknowledges receipt of a provisional, or informational, response to a request.
REFER This message points to another address to initiate a transfer.
SUBSCRIBE This message lets the server know that you want to be notified if a specific event happens.
NOTIFY This message lets the subscriber know that a specified event has occurred. It can also transmit dual
tone multifrequency (DTMF) tones.
UPDATE A UAC uses this to change the session parameters, such as codec used or quality of service (QoS)
settings, before answering the initial INVITE.
SDP fields
v: Tells the SDP version
o: Lists the organization of the calling party
s: Describes the SDP message
c: Lists the IP address of the originator
t: Tells the timer value
m: Describes the media that the originator expects
a: Gives the media attributes
DTMF Relay
Named Telephony Events (RFC2833) – RTP Packets with a different type field (In-band)
Key Press Markup Language (KPML) – SIP Subscriber messages with DTMF in XML like format (OOB)
Unsolicited Notify (UN) – SIP Notify messages and without SIP Subscribe (OOB)
Cisco RTP – RTP Packets with a different type field.
Call flow with multiple servers
Other details
Default Ports: 5060 TCP/UDP / TLS: 5061
Plain-Text messages
Sip address is called URI = uniform resource identifier
SIP Dialplan considerations
The default behavior of SIP Phone is compare digits to the internal dial plan. When have a match, its sends
an INVITE.
When you use KPML (Key Press Markup Language), the SIP phone sends each digit to CCM that can instruct
the phone what do or route the call.
Error Codes
Class of Response Code Explanation
Informational/
provisional
100 Trying
180 Ringing
181 Call is being forwarded
182 Queued
183 Session Progress
Success 200 OK
Redirection 300 Multiple Choices
301 Moved Permanently
302 Moved Temporarily
305 Use Proxy
380 Alternative Service
Client-Error 400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Auth Required
408 Request Timeout
410 Gone
413 Request Entity Too Large
414 Requested URL Too Large
415 Unsupported Media Type
416 Unsupported URI Scheme
420 Bad Extension
421 Extension Required
423 Interval Too Brief
480 Temporarily Not Available
481 Transaction Does Not Exist
482 Loop Detected
483 Too Many Hops
484 Address Incomplete
485 Ambiguous
486 Busy Here
487 Request Terminated
488 Not Acceptable Here
491 Request Pending
493 Undecipherable
Server-error 500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Server Timeout
505 SIP Version Not Supported
513 Message Too Large
Global failure 600 Busy Everywhere
603 Decline
604 Does Not Exist Anywhere
606 Not Acceptable
Dialpeer configuration
dial-peer voice 3401 voip
session target ipv4:10.6.2.1
session protocol sipv2
session transport tcp
!
dial-peer voice 4404 voip
session target sip-server
session protocol sipv2
voice-class sip transpor switch udp tcp
destination-pattern 4404...
“voice-class sip transport switch udp tcp” switch from
UDP to TCP when a packet gets within 200 bytes of
the MTU to avoid UDP fragmentation.
SIP UA commands
sip-ua
registrar ipv4:10.30.25.250 tcp
registrar ipv4:10.30.25.251 tcp secon
sip-server ipv4:10.30.25.252
max-forwards 10
no transport udp
SIP Voice Service commands
voice service voip
redirect ip2ip
sip
bind control source-interface lo0
registrar server exp max 1500 min 500
2. SIP Marcelo Zanata
Early Offer Delayed Offer Early Media
Call flow between two gateways
PBX GWA GWB PBX
Setup
INVITE
Setup
Call Proceeding
100 Trying
Call Proceeding
Alerting
180 Ringing
Alerting
Connect
200 OK
Connect
Connect Ack
ACK
Connect Ack
Voice RTP Voice
Disconnect
BYE
Release Disconnect
Release
200 OK
Release Complete Release Complete
Call Flow using a Proxy Server
Endpoint SIP Proxy GW-B PBX
Setup
INVITE
Setup
100 Trying
100 Trying
Call Proceeding
Alerting
180 Ringing
180 Ringing
Connect
200 OK
200 OK
ACK
Connect Ack
RTP Voice
BYE
Disconnect
Release
200 OK
Release Complete
Callmanager acting as B2BUA
SIP Phone CCM GW-B
INVITE, with SDP
100 Trying
INVITE
183 Session Progress, with SDP
Session Progress, with SDP
200 OK, with SDP
ACK, with SDP
200 OK, with SDP
ACK
RTP
BYE
200 OK
BYE
200 OK