SlideShare a Scribd company logo
1 of 24
1
SIP Fundamentals
Chandra Prakash Singh
2
Outline
• What is SIP
• SIP system components
• SIP messages and responses
• SIP call flows
• SDP basics/CODECs
• Questions and answers
3
What’s SIP
• IETF Standard defined by RFC 3261
• “The Session Initiation Protocol (SIP) is an application-layer
control (signaling) protocol for creating, modifying and
terminating sessions with one or more participants.”
• Can be used for voice, video, instant messaging, gaming,
etc., etc., etc.
• Uses URIs for addressing – single communications identity
– mailto:chandra@plivo.com for email
– xmpp:29889_zentrunk@conf.hipchat.com for instant messaging
– sip:919980950111@zt.plivo.com for voice and video
• Username replaced by numbers for telephone applications
4
Where’s SIP
Application
Transport
Network
Physical/Data Link Ethernet
IP
TCP UDP
RTSP SIP
SDP codecs
RTP DNS(SRV)
5
SIP Components
• User Agents
– Clients – Make requests
– Servers – Accept requests
• Server types
– Redirect Server
– Proxy Server
– Registrar Server
– Location Server
• Gateways
6
Terminating
User Agent
Originating
User Agent RTP
SIP SIP
B2BUA
SIP Peer to Peer !
Back-to-Back User Agent
Terminating
User Agent
Originating
User Agent
SIP
RTP
7
SIP Methods
• INVITE Requests a session
• ACK Final response to the INVITE
• OPTIONS Ask for server capabilities
• CANCEL Cancels a pending request
• BYE Terminates a session
• REGISTER Sends user’s address to server
8
SIP Responses
• 1XX Provisional 100 Trying
• 2XX Successful 200 OK
• 3XX Redirection 302 Moved Temporarily
• 4XX Client Error 404 Not Found
• 5XX Server Error 504 Server Time-out
• 6XX Global Failure 603 Decline
9
SIP Flows - Basic
ACK
200 - OK
INVITE: sip:18.10.0.79
“Calls”
18.18.2.4
180 - Ringing Rings
200 - OK Answers
BYEHangs up
RTPTalking Talking
User
A
User
B
10
11
12
SIP INVITE
INVITE sip:919980950111@phone.plivo.com SIP/2.0
Via: SIP/2.0/UDP 192.168.1.120:5062;branch=z9hG4bK.GlI7ViTR3;rport
From: <sip:inbound170412123914@phone.plivo.com>;tag=mpP3lkImP
To: sip:919980950111@phone.plivo.com
CSeq: 21 INVITE
Call-ID: qf8DhB2sA0
Max-Forwards: 70
Supported: replaces, outbound
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO, UPDATE
Content-Type: application/sdp
Content-Length: 262
Contact: <sip:inbound170412123914@111.93.146.206:46219;transport=udp>;+sip.instance="<urn:uuid:51253a19-911f-4f24-a130-71a31e37f19d>"
User-Agent: Linphone/3.10.2 (belle-sip/1.5.0)
Proxy-Authorization: Digest realm="phone.plivo.com", nonce="W0X5jltF+GJsIaAdkgwQuhBG9MjKvaxz", username="inbound170412123914",
uri="sip:919980950111@phone.plivo.com", response="adeef6fff9bbebab570cfbbb32e85b29", cnonce="sWVndGo3ERdUNmXr", nc=00000001,
qop=auth
13
Session Description Protocol
• IETF RFC 2327
• “SDP is intended for describing multimedia sessions for the
purposes of session announcement, session invitation, and
other forms of multimedia session initiation.”
• SDP includes:
– The type of media (video, audio, etc.)
– The transport protocol (RTP/UDP/IP, H.320, etc.)
– The format of the media (H.264 video, MPEG video,
etc.)
– Information to receive those media (addresses, ports,
formats and so on)
14
SDP
v=0
o=inbound170412123914 886 3120 IN IP4 192.168.1.120
s=Talk
c=IN IP4 192.168.1.120
t=0 0
a=rtcp-xr:rcvr-rtt=all:10000 stat-summary=loss,dup,jitt,TTL voip-metrics
m=audio 7078 RTP/AVP 0 8 101
a=rtpmap:101 telephone-event/8000
a=rtcp-fb:* trr-int 5000
15
CODECs
• Audio
– G.711
• 8kHz sampling rate
• 64kbps
– G.729
• 8kHz sampling rate
• 8kbps
• Voice Activity Detection
• Video
– H.264
• MPEG-4
– H.263
16
SIP Flows - Registration
200 - OK
REGISTER: sip
401 - Unauthorized
User
B sipphone
Registrar
REGISTER: (add
credentials)
DB
Location
sip:chandra@pliv
o.com
Contact IP
17
SIP REGISTER
REGISTER sip:phone.plivo.com SIP/2.0
Via: SIP/2.0/UDP 192.168.1.120:5062;branch=z9hG4bK.yvX0~BYQ6;rport
From: <sip:inbound170412123914@phone.plivo.com>;tag=azPOuWU4j
To: sip:inbound170412123914@phone.plivo.com
CSeq: 20 REGISTER
Call-ID: O2NZOkRWpQ
Max-Forwards: 70
Supported: replaces, outbound
Accept: application/sdp
Accept: text/plain
Accept: application/vnd.gsma.rcs-ft-http+xml
Contact:
<sip:inbound170412123914@192.168.1.120:5062;transport=udp>;+sip.instance="<urn:uuid:51253
911f-4f24-a130-71a31e37f19d>"
Expires: 60
User-Agent: Linphone/3.10.2 (belle-sip/1.5.0)
18
SIP REGISTER – 401 Response
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP
192.168.1.120:5062;branch=z9hG4bK.yvX0~BYQ6;rport=46219;received=111.93.146.206
From: <sip:inbound170412123914@phone.plivo.com>;tag=azPOuWU4j
To: sip:inbound170412123914@phone.plivo.com;tag=378adae1ddc71986618d85886edb3f8b.6ead
CSeq: 20 REGISTER
Call-ID: O2NZOkRWpQ
WWW-Authenticate: Digest realm="phone.plivo.com",
nonce="W0X45ltF97pvAyUnhNauEQaleRnTOoJw"
Server: Plivo
Content-Length: 0
19
SIP REGISTER with Credentials
REGISTER sip:phone.plivo.com SIP/2.0
Via: SIP/2.0/UDP 192.168.1.120:5062;branch=z9hG4bK.FzY3F52HT;rport
From: <sip:inbound170412123914@phone.plivo.com>;tag=azPOuWU4j
To: sip:inbound170412123914@phone.plivo.com
CSeq: 21 REGISTER
Call-ID: O2NZOkRWpQ
Max-Forwards: 70
Supported: replaces, outbound
Accept: application/sdp
Accept: text/plain
Accept: application/vnd.gsma.rcs-ft-http+xml
Contact:
<sip:inbound170412123914@111.93.146.206:46219;transport=udp>;+sip.instance="<urn:uuid:512
9-911f-4f24-a130-71a31e37f19d>"
Expires: 60
User-Agent: Linphone/3.10.2 (belle-sip/1.5.0)
Authorization: Digest realm="phone.plivo.com", nonce="W0X45ltF97pvAyUnhNauEQaleRnTOoJw",
username="inbound170412123914", uri="sip:phone.plivo.com",
response="a1b449a5de1913f3616b6bcea1041552"
20
SIP Standards
Just a sampling of IETF standards work…
IETF RFCs http://ietf.org/rfc.html
• RFC3261 Core SIP specification – obsoletes RFC2543
• RFC2327 SDP – Session Description Protocol
• RFC1889 RTP - Real-time Transport Protocol
• RFC2326 RTSP - Real-Time Streaming Protocol
• RFC3262 SIP PRACK method – reliability for 1XX messages
• RFC3263 Locating SIP servers – SRV and NAPTR
• RFC3264 Offer/answer model for SDP use with SIP
21
SIP Standards (cont.)
• RFC3265 SIP event notification – SUBSCRIBE and NOTIFY
• RFC3266 IPv6 support in SDP
• RFC3311 SIP UPDATE method – eg. changing media
• RFC3325 Asserted identity in trusted networks
• RFC3361 Locating outbound SIP proxy with DHCP
• RFC3428 SIP extensions for Instant Messaging
• RFC3515 SIP REFER method – eg. call transfer
• RFC4474 Authenticated Identity Management
• SIMPLE IM/Presence - http://ietf.org/ids.by.wg/simple.html
22
• “Hard phones”
• “Soft phones”
Soft and Hard SIP Clients
23
Questions?
24
Thank You

More Related Content

What's hot

volte call flow - SIP IMS Call Flow - MO and MT Call - Volte Mobile originati...
volte call flow - SIP IMS Call Flow - MO and MT Call - Volte Mobile originati...volte call flow - SIP IMS Call Flow - MO and MT Call - Volte Mobile originati...
volte call flow - SIP IMS Call Flow - MO and MT Call - Volte Mobile originati...Vikas Shokeen
 
Setup VoIP System and Interconnection with LTE network
Setup VoIP System and Interconnection with LTE networkSetup VoIP System and Interconnection with LTE network
Setup VoIP System and Interconnection with LTE networkNazmul Hossain Rakib
 
Uip Sip Implementation Best Practices060409
Uip Sip Implementation Best Practices060409Uip Sip Implementation Best Practices060409
Uip Sip Implementation Best Practices060409Abdel-Fattah M. Hmoud
 
"Seguridad" VoIP
"Seguridad" VoIP"Seguridad" VoIP
"Seguridad" VoIPfixxx3r
 
Solarwinds port requirement
Solarwinds port requirementSolarwinds port requirement
Solarwinds port requirementEzahir Amer
 
SIP (Session Initiation Protocol) - Study Notes
SIP (Session Initiation Protocol) - Study NotesSIP (Session Initiation Protocol) - Study Notes
SIP (Session Initiation Protocol) - Study NotesOxfordCambridge
 
Iperf Suite
Iperf SuiteIperf Suite
Iperf Suitekestasj
 
CCIE Collaboration Lecture - Chapter 1.1 campus design - vlan dhcp and ntp
CCIE Collaboration Lecture - Chapter 1.1   campus design - vlan dhcp and ntpCCIE Collaboration Lecture - Chapter 1.1   campus design - vlan dhcp and ntp
CCIE Collaboration Lecture - Chapter 1.1 campus design - vlan dhcp and ntpFaisal Khan
 

What's hot (20)

volte call flow - SIP IMS Call Flow - MO and MT Call - Volte Mobile originati...
volte call flow - SIP IMS Call Flow - MO and MT Call - Volte Mobile originati...volte call flow - SIP IMS Call Flow - MO and MT Call - Volte Mobile originati...
volte call flow - SIP IMS Call Flow - MO and MT Call - Volte Mobile originati...
 
SIP security in IP telephony
SIP security in IP telephonySIP security in IP telephony
SIP security in IP telephony
 
Setup VoIP System and Interconnection with LTE network
Setup VoIP System and Interconnection with LTE networkSetup VoIP System and Interconnection with LTE network
Setup VoIP System and Interconnection with LTE network
 
Sip
SipSip
Sip
 
Sip crash course
Sip crash courseSip crash course
Sip crash course
 
5222222225 lkw ims_node
5222222225 lkw ims_node5222222225 lkw ims_node
5222222225 lkw ims_node
 
Uip Sip Implementation Best Practices060409
Uip Sip Implementation Best Practices060409Uip Sip Implementation Best Practices060409
Uip Sip Implementation Best Practices060409
 
"Seguridad" VoIP
"Seguridad" VoIP"Seguridad" VoIP
"Seguridad" VoIP
 
Packet Card Knowledge Transferfinal
Packet Card Knowledge TransferfinalPacket Card Knowledge Transferfinal
Packet Card Knowledge Transferfinal
 
Stu t17 a
Stu t17 aStu t17 a
Stu t17 a
 
Securing Asterisk: A practical approach
Securing Asterisk: A practical approachSecuring Asterisk: A practical approach
Securing Asterisk: A practical approach
 
Introduction To SIP
Introduction  To  SIPIntroduction  To  SIP
Introduction To SIP
 
Indroduction to SIP
Indroduction to SIPIndroduction to SIP
Indroduction to SIP
 
Solarwinds port requirement
Solarwinds port requirementSolarwinds port requirement
Solarwinds port requirement
 
Ipref
IprefIpref
Ipref
 
SIP (Session Initiation Protocol) - Study Notes
SIP (Session Initiation Protocol) - Study NotesSIP (Session Initiation Protocol) - Study Notes
SIP (Session Initiation Protocol) - Study Notes
 
Iperf Suite
Iperf SuiteIperf Suite
Iperf Suite
 
SIP for geeks
SIP for geeksSIP for geeks
SIP for geeks
 
SSH Tunneling Recipes
SSH Tunneling RecipesSSH Tunneling Recipes
SSH Tunneling Recipes
 
CCIE Collaboration Lecture - Chapter 1.1 campus design - vlan dhcp and ntp
CCIE Collaboration Lecture - Chapter 1.1   campus design - vlan dhcp and ntpCCIE Collaboration Lecture - Chapter 1.1   campus design - vlan dhcp and ntp
CCIE Collaboration Lecture - Chapter 1.1 campus design - vlan dhcp and ntp
 

Similar to Sip basic KT

Converged office engineering detail
Converged office engineering detailConverged office engineering detail
Converged office engineering detailGeorge Vlismas
 
Sinnreich Henry Johnston Alan Pt 1
Sinnreich Henry Johnston Alan   Pt 1Sinnreich Henry Johnston Alan   Pt 1
Sinnreich Henry Johnston Alan Pt 1Carl Ford
 
SIP Express Media Server SBC application as powerful SBC and SIP toolbox
SIP Express Media Server SBC application as powerful SBC and SIP toolboxSIP Express Media Server SBC application as powerful SBC and SIP toolbox
SIP Express Media Server SBC application as powerful SBC and SIP toolboxstefansayer
 
Introduction to VoIP using SIP
Introduction to VoIP using SIPIntroduction to VoIP using SIP
Introduction to VoIP using SIPKundan Singh
 
SIP - Introduction to SIP Protocol
SIP - Introduction to SIP ProtocolSIP - Introduction to SIP Protocol
SIP - Introduction to SIP ProtocolLivePerson
 
GVP8- Troubleshooting.pptx
GVP8- Troubleshooting.pptxGVP8- Troubleshooting.pptx
GVP8- Troubleshooting.pptxMiyuruChamath
 
session initiation protocol - SIP
session initiation protocol - SIPsession initiation protocol - SIP
session initiation protocol - SIPMahmoud Abudaqa
 
cs522_presentation.ppt
cs522_presentation.pptcs522_presentation.ppt
cs522_presentation.ppthajAli4
 
Fosdem2012 sayer-sems-sbc
Fosdem2012 sayer-sems-sbcFosdem2012 sayer-sems-sbc
Fosdem2012 sayer-sems-sbcstefansayer
 
Hacking Trust Relationships Between SIP Gateways
Hacking Trust Relationships Between SIP GatewaysHacking Trust Relationships Between SIP Gateways
Hacking Trust Relationships Between SIP GatewaysFatih Ozavci
 
Sop Setting Ubiquiti
Sop Setting UbiquitiSop Setting Ubiquiti
Sop Setting Ubiquitimaruf satrio
 
Session Initiation Protocol - In depth analysis
Session Initiation Protocol - In depth analysisSession Initiation Protocol - In depth analysis
Session Initiation Protocol - In depth analysischinmaypadhye1985
 
Dccp evaluation for sip signaling ict4 m
Dccp evaluation for sip signaling   ict4 m Dccp evaluation for sip signaling   ict4 m
Dccp evaluation for sip signaling ict4 m Agus Awaludin
 
Configure Mikrotik Khmer.pdf
Configure Mikrotik Khmer.pdfConfigure Mikrotik Khmer.pdf
Configure Mikrotik Khmer.pdfBT Digital
 
1 VoIP Overview[1]
1 VoIP Overview[1]1 VoIP Overview[1]
1 VoIP Overview[1]William Giba
 
1 Vo Ip Overview
1 Vo Ip Overview1 Vo Ip Overview
1 Vo Ip OverviewMayank Vora
 

Similar to Sip basic KT (20)

Converged office engineering detail
Converged office engineering detailConverged office engineering detail
Converged office engineering detail
 
Sip Paper
Sip PaperSip Paper
Sip Paper
 
Sinnreich Henry Johnston Alan Pt 1
Sinnreich Henry Johnston Alan   Pt 1Sinnreich Henry Johnston Alan   Pt 1
Sinnreich Henry Johnston Alan Pt 1
 
SIP Express Media Server SBC application as powerful SBC and SIP toolbox
SIP Express Media Server SBC application as powerful SBC and SIP toolboxSIP Express Media Server SBC application as powerful SBC and SIP toolbox
SIP Express Media Server SBC application as powerful SBC and SIP toolbox
 
Introduction to VoIP using SIP
Introduction to VoIP using SIPIntroduction to VoIP using SIP
Introduction to VoIP using SIP
 
SIP - Introduction to SIP Protocol
SIP - Introduction to SIP ProtocolSIP - Introduction to SIP Protocol
SIP - Introduction to SIP Protocol
 
GVP8- Troubleshooting.pptx
GVP8- Troubleshooting.pptxGVP8- Troubleshooting.pptx
GVP8- Troubleshooting.pptx
 
session initiation protocol - SIP
session initiation protocol - SIPsession initiation protocol - SIP
session initiation protocol - SIP
 
Sip summary
Sip summarySip summary
Sip summary
 
cs522_presentation.ppt
cs522_presentation.pptcs522_presentation.ppt
cs522_presentation.ppt
 
Fosdem2012 sayer-sems-sbc
Fosdem2012 sayer-sems-sbcFosdem2012 sayer-sems-sbc
Fosdem2012 sayer-sems-sbc
 
Fact sheet sip v1
Fact sheet   sip v1Fact sheet   sip v1
Fact sheet sip v1
 
Hacking Trust Relationships Between SIP Gateways
Hacking Trust Relationships Between SIP GatewaysHacking Trust Relationships Between SIP Gateways
Hacking Trust Relationships Between SIP Gateways
 
Sop Setting Ubiquiti
Sop Setting UbiquitiSop Setting Ubiquiti
Sop Setting Ubiquiti
 
Session Initiation Protocol - In depth analysis
Session Initiation Protocol - In depth analysisSession Initiation Protocol - In depth analysis
Session Initiation Protocol - In depth analysis
 
Dccp evaluation for sip signaling ict4 m
Dccp evaluation for sip signaling   ict4 m Dccp evaluation for sip signaling   ict4 m
Dccp evaluation for sip signaling ict4 m
 
Configure Mikrotik Khmer.pdf
Configure Mikrotik Khmer.pdfConfigure Mikrotik Khmer.pdf
Configure Mikrotik Khmer.pdf
 
1 VoIP Overview[1]
1 VoIP Overview[1]1 VoIP Overview[1]
1 VoIP Overview[1]
 
1 Vo Ip Overview
1 Vo Ip Overview1 Vo Ip Overview
1 Vo Ip Overview
 
1 Vo Ip Overview
1 Vo Ip Overview1 Vo Ip Overview
1 Vo Ip Overview
 

More from Chandra Pr. Singh

More from Chandra Pr. Singh (14)

Ankit Phadia Hacking tools (2)
Ankit Phadia Hacking tools (2)Ankit Phadia Hacking tools (2)
Ankit Phadia Hacking tools (2)
 
Hacks
HacksHacks
Hacks
 
Hacking for Dummies 2
Hacking for Dummies 2Hacking for Dummies 2
Hacking for Dummies 2
 
repriseZEP
repriseZEPrepriseZEP
repriseZEP
 
Web History
Web HistoryWeb History
Web History
 
game download
game downloadgame download
game download
 
Windows XP Registry Guide
Windows XP Registry GuideWindows XP Registry Guide
Windows XP Registry Guide
 
Artificial intelligence
Artificial intelligenceArtificial intelligence
Artificial intelligence
 
Ankit Phadia Hacking tools (1)
Ankit Phadia Hacking tools (1)Ankit Phadia Hacking tools (1)
Ankit Phadia Hacking tools (1)
 
Ankit Phadia Hacking tools
Ankit Phadia Hacking toolsAnkit Phadia Hacking tools
Ankit Phadia Hacking tools
 
www.indonezia.net Hacking Windows Registry
www.indonezia.net Hacking Windows Registrywww.indonezia.net Hacking Windows Registry
www.indonezia.net Hacking Windows Registry
 
Convert a user account into an Administrator
Convert a user account into an AdministratorConvert a user account into an Administrator
Convert a user account into an Administrator
 
CMD Command
CMD CommandCMD Command
CMD Command
 
hacking into computer systems - a beginners guid
hacking into computer systems - a beginners guidhacking into computer systems - a beginners guid
hacking into computer systems - a beginners guid
 

Recently uploaded

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 

Recently uploaded (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 

Sip basic KT

  • 2. 2 Outline • What is SIP • SIP system components • SIP messages and responses • SIP call flows • SDP basics/CODECs • Questions and answers
  • 3. 3 What’s SIP • IETF Standard defined by RFC 3261 • “The Session Initiation Protocol (SIP) is an application-layer control (signaling) protocol for creating, modifying and terminating sessions with one or more participants.” • Can be used for voice, video, instant messaging, gaming, etc., etc., etc. • Uses URIs for addressing – single communications identity – mailto:chandra@plivo.com for email – xmpp:29889_zentrunk@conf.hipchat.com for instant messaging – sip:919980950111@zt.plivo.com for voice and video • Username replaced by numbers for telephone applications
  • 4. 4 Where’s SIP Application Transport Network Physical/Data Link Ethernet IP TCP UDP RTSP SIP SDP codecs RTP DNS(SRV)
  • 5. 5 SIP Components • User Agents – Clients – Make requests – Servers – Accept requests • Server types – Redirect Server – Proxy Server – Registrar Server – Location Server • Gateways
  • 6. 6 Terminating User Agent Originating User Agent RTP SIP SIP B2BUA SIP Peer to Peer ! Back-to-Back User Agent Terminating User Agent Originating User Agent SIP RTP
  • 7. 7 SIP Methods • INVITE Requests a session • ACK Final response to the INVITE • OPTIONS Ask for server capabilities • CANCEL Cancels a pending request • BYE Terminates a session • REGISTER Sends user’s address to server
  • 8. 8 SIP Responses • 1XX Provisional 100 Trying • 2XX Successful 200 OK • 3XX Redirection 302 Moved Temporarily • 4XX Client Error 404 Not Found • 5XX Server Error 504 Server Time-out • 6XX Global Failure 603 Decline
  • 9. 9 SIP Flows - Basic ACK 200 - OK INVITE: sip:18.10.0.79 “Calls” 18.18.2.4 180 - Ringing Rings 200 - OK Answers BYEHangs up RTPTalking Talking User A User B
  • 10. 10
  • 11. 11
  • 12. 12 SIP INVITE INVITE sip:919980950111@phone.plivo.com SIP/2.0 Via: SIP/2.0/UDP 192.168.1.120:5062;branch=z9hG4bK.GlI7ViTR3;rport From: <sip:inbound170412123914@phone.plivo.com>;tag=mpP3lkImP To: sip:919980950111@phone.plivo.com CSeq: 21 INVITE Call-ID: qf8DhB2sA0 Max-Forwards: 70 Supported: replaces, outbound Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO, UPDATE Content-Type: application/sdp Content-Length: 262 Contact: <sip:inbound170412123914@111.93.146.206:46219;transport=udp>;+sip.instance="<urn:uuid:51253a19-911f-4f24-a130-71a31e37f19d>" User-Agent: Linphone/3.10.2 (belle-sip/1.5.0) Proxy-Authorization: Digest realm="phone.plivo.com", nonce="W0X5jltF+GJsIaAdkgwQuhBG9MjKvaxz", username="inbound170412123914", uri="sip:919980950111@phone.plivo.com", response="adeef6fff9bbebab570cfbbb32e85b29", cnonce="sWVndGo3ERdUNmXr", nc=00000001, qop=auth
  • 13. 13 Session Description Protocol • IETF RFC 2327 • “SDP is intended for describing multimedia sessions for the purposes of session announcement, session invitation, and other forms of multimedia session initiation.” • SDP includes: – The type of media (video, audio, etc.) – The transport protocol (RTP/UDP/IP, H.320, etc.) – The format of the media (H.264 video, MPEG video, etc.) – Information to receive those media (addresses, ports, formats and so on)
  • 14. 14 SDP v=0 o=inbound170412123914 886 3120 IN IP4 192.168.1.120 s=Talk c=IN IP4 192.168.1.120 t=0 0 a=rtcp-xr:rcvr-rtt=all:10000 stat-summary=loss,dup,jitt,TTL voip-metrics m=audio 7078 RTP/AVP 0 8 101 a=rtpmap:101 telephone-event/8000 a=rtcp-fb:* trr-int 5000
  • 15. 15 CODECs • Audio – G.711 • 8kHz sampling rate • 64kbps – G.729 • 8kHz sampling rate • 8kbps • Voice Activity Detection • Video – H.264 • MPEG-4 – H.263
  • 16. 16 SIP Flows - Registration 200 - OK REGISTER: sip 401 - Unauthorized User B sipphone Registrar REGISTER: (add credentials) DB Location sip:chandra@pliv o.com Contact IP
  • 17. 17 SIP REGISTER REGISTER sip:phone.plivo.com SIP/2.0 Via: SIP/2.0/UDP 192.168.1.120:5062;branch=z9hG4bK.yvX0~BYQ6;rport From: <sip:inbound170412123914@phone.plivo.com>;tag=azPOuWU4j To: sip:inbound170412123914@phone.plivo.com CSeq: 20 REGISTER Call-ID: O2NZOkRWpQ Max-Forwards: 70 Supported: replaces, outbound Accept: application/sdp Accept: text/plain Accept: application/vnd.gsma.rcs-ft-http+xml Contact: <sip:inbound170412123914@192.168.1.120:5062;transport=udp>;+sip.instance="<urn:uuid:51253 911f-4f24-a130-71a31e37f19d>" Expires: 60 User-Agent: Linphone/3.10.2 (belle-sip/1.5.0)
  • 18. 18 SIP REGISTER – 401 Response SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 192.168.1.120:5062;branch=z9hG4bK.yvX0~BYQ6;rport=46219;received=111.93.146.206 From: <sip:inbound170412123914@phone.plivo.com>;tag=azPOuWU4j To: sip:inbound170412123914@phone.plivo.com;tag=378adae1ddc71986618d85886edb3f8b.6ead CSeq: 20 REGISTER Call-ID: O2NZOkRWpQ WWW-Authenticate: Digest realm="phone.plivo.com", nonce="W0X45ltF97pvAyUnhNauEQaleRnTOoJw" Server: Plivo Content-Length: 0
  • 19. 19 SIP REGISTER with Credentials REGISTER sip:phone.plivo.com SIP/2.0 Via: SIP/2.0/UDP 192.168.1.120:5062;branch=z9hG4bK.FzY3F52HT;rport From: <sip:inbound170412123914@phone.plivo.com>;tag=azPOuWU4j To: sip:inbound170412123914@phone.plivo.com CSeq: 21 REGISTER Call-ID: O2NZOkRWpQ Max-Forwards: 70 Supported: replaces, outbound Accept: application/sdp Accept: text/plain Accept: application/vnd.gsma.rcs-ft-http+xml Contact: <sip:inbound170412123914@111.93.146.206:46219;transport=udp>;+sip.instance="<urn:uuid:512 9-911f-4f24-a130-71a31e37f19d>" Expires: 60 User-Agent: Linphone/3.10.2 (belle-sip/1.5.0) Authorization: Digest realm="phone.plivo.com", nonce="W0X45ltF97pvAyUnhNauEQaleRnTOoJw", username="inbound170412123914", uri="sip:phone.plivo.com", response="a1b449a5de1913f3616b6bcea1041552"
  • 20. 20 SIP Standards Just a sampling of IETF standards work… IETF RFCs http://ietf.org/rfc.html • RFC3261 Core SIP specification – obsoletes RFC2543 • RFC2327 SDP – Session Description Protocol • RFC1889 RTP - Real-time Transport Protocol • RFC2326 RTSP - Real-Time Streaming Protocol • RFC3262 SIP PRACK method – reliability for 1XX messages • RFC3263 Locating SIP servers – SRV and NAPTR • RFC3264 Offer/answer model for SDP use with SIP
  • 21. 21 SIP Standards (cont.) • RFC3265 SIP event notification – SUBSCRIBE and NOTIFY • RFC3266 IPv6 support in SDP • RFC3311 SIP UPDATE method – eg. changing media • RFC3325 Asserted identity in trusted networks • RFC3361 Locating outbound SIP proxy with DHCP • RFC3428 SIP extensions for Instant Messaging • RFC3515 SIP REFER method – eg. call transfer • RFC4474 Authenticated Identity Management • SIMPLE IM/Presence - http://ietf.org/ids.by.wg/simple.html
  • 22. 22 • “Hard phones” • “Soft phones” Soft and Hard SIP Clients