SlideShare a Scribd company logo
SDP
(Session Description
Protocol)
SDP is purely a format for session
description. It does not incorporate a
transport protocol and it is intended to use
different transport protocols as SIP, SAP,
RTSP, HTTP.
SDP
● Session Initiation
● Streaming Media
● Email and the WWW
● Multicast Session Announcement
Example of SDP Usage
In general, SDP must convey sufficient
information to enable applications to join a
session and to announce the resources to
be used to any non-participants that may
need to know.
SDP
● Session name and purpose
● Times the session is active
● The media comprising the session
● Information needed to receive those
media(addresses, ports,formats , etc.)
SDP
● "application/sdp"
● ISO 10646 character set in UTF-8
encoding.
● <type>=<value>
SDP Specification
● Session Description
● Time Description
● Media description
SDP description order
v= (protocol version)
o= (originator and session identifier)
s= (session name)
i=* (session information)
u=* (URI of description)
e=* (email address)
p=* (phone number)
c=* (connection information -- not required if included in
all media)
b=* (zero or more bandwidth information lines)
z=* (time zone adjustments)
k=* (encryption key)
a=* (zero or more session attribute lines)
Session Description
t= (time the session is active)
r=* (zero or more repeat times)
Time Description
m= (media name and transport address)
i=* (media title)
c=* (connection information -- optional if included at
session level)
b=* (zero or more bandwidth information lines)
k=* (encryption key)
a=* (zero or more media attribute lines)
Media Description
● Protocol version (“v=”)
v=0
● Origin (“o=”)
o=<username> <sess-id> <sess-version> <nettype>
<addrtype> <unicast-address>
● Session name (“s”)
s=<session name>
● Session information (“i=”)
i=<session description>
● URI (“u=”)
u=<uri>
● Email and Phone (“e=” and “p=”)
e=<email-address> (e=j.doe@example.com (Jane Doe))
p=<phone-number> (p=+1 617 555-6011)
● Connection Data (“c=”)
c=<nettype> <addrtype> <connection-address>
(c=IN IP4 224.2.36.42/127)
● Bandwidth (“b=”)
b=<bwtype>:<bandwidth>
● Timing (“t=”)
t=<start-time> <stop-time>
● Repeat time (“r=”)
r=<repeat interval> <active duration> <offsets from
start-time>
t=3034423619 3042462419
r=604800 3600 0 90000
● Encription Keys (“k=”)
k=<method>
k=<method>:<encryption key>
k=base64:<encoded encryption key>
● Attributes (“a=”)
a=<attribute>:<value>
● Media Description
m=<media> <port> <proto> <fmt>
m=video 49170/2 RTP/AVP 31
a=cat:<category>
a=keywds:<keywords>
a=tool:<name and version of tool>
a=ptime:<packet time>
a=maxptime:<maximum packet time>
a=rtpmap:<payload type> <encoding
name>/<clock rate> [/<encoding
parameters>]
SDP Attributes
a=recvonly
a=sendrecv
a=sendonly
a=inactive
a=orient:<orientation>
a=type:<conference type>
a=charset:<character set>
SDP Attributes
a=sdplang:<language tag>
a=framerate:<frame rate>
a=quality:<quality>
SDP Attributes
[Offer]
v=0
o=alice 2890844526 2890844526 IN IP4 host.atlanta.
example.com
s=
c=IN IP4 host.atlanta.example.com
t=0 0
m=audio 49170 RTP/AVP 0 8 97
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:97 iLBC/8000
m=video 51372 RTP/AVP 31 32
a=rtpmap:31 H261/90000
a=rtpmap:32 MPV/90000
Audio and Video
[Answer]
v=0
o=bob 2808844564 2808844564 IN IP4
host.biloxi.example.com
s=
c=IN IP4 host.biloxi.example.com
t=0 0
m=audio 49172 RTP/AVP 0 8
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
m=video 0 RTP/AVP 31
a=rtpmap:31 H261/90000
[Second-Offer]
v=0
o=alice 2890844526 2890844527 IN IP4
host.atlanta.example.com
s=
c=IN IP4 host.atlanta.example.com
t=0 0
m=audio 51372 RTP/AVP 0
a=rtpmap:0 PCMU/8000
m=video 0 RTP/AVP 31
a=rtpmap:31 H261/90000
Audio and Video
[Second-Answer]
v=0
o=bob 2808844564 2808844565 IN IP4
host.biloxi.example.com
s=
c=IN IP4 host.biloxi.example.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
m=video 0 RTP/AVP 31
a=rtpmap:31 H261/90000
[Offer]
v=0
o=alice 2890844526 2890844526 IN IP4
host.atlanta.example.com
s=
c=IN IP4 host.atlanta.example.com
t=0 0
m=audio 49170 RTP/AVP 0 97
a=rtpmap:0 PCMU/8000
a=rtpmap:97 iLBC/8000
m=audio 49172 RTP/AVP 98
a=rtpmap:98 telephone-event/8000
a=sendonly
Two Audio Streams
[Answer]
v=0
o=bob 2808844564 2808844564 IN IP4
host.biloxi.example.com
s=
c=IN IP4 host.biloxi.example.com
t=0 0
m=audio 49172 RTP/AVP 97
a=rtpmap:97 iLBC/8000
m=audio 49174 RTP/AVP 98
a=rtpmap:98 telephone-event/8000
[Offer]
v=0
o=alice 2890844526 2890844526 IN IP4
host.atlanta.example.com
s=
c=IN IP4 host.atlanta.example.com
t=0 0
m=audio 49170 RTP/AVP 0 97
a=rtpmap:0 PCMU/8000
a=rtpmap:97 iLBC/8000
Hold and Unhold
[Answer]
v=0
o=bob 2808844564 2808844564 IN IP4
host.biloxi.example.com
s=
c=IN IP4 placeholder.biloxi.example.
com
t=0 0
m=audio 49172 RTP/AVP 97
a=rtpmap:97 iLBC/8000
a=sendonly
[Second-Offer]
v=0
o=bob 2808844564 2808844565 IN IP4 host.
biloxi.example.com
s=
c=IN IP4 host.biloxi.example.com
t=0 0
m=audio 49170 RTP/AVP 97
a=rtpmap:97 iLBC/8000
Hold and Unhold
[Second-Answer]
v=0
o=alice 2890844526 2890844527 IN IP4
host.atlanta.example.com
s=
c=IN IP4 host.atlanta.example.com
t=0 0
m=audio 49178 RTP/AVP 97
a=rtpmap:97 iLBC/8000
[Offer]
v=0
o=alice 2890844526 2890844526 IN IP4
host.atlanta.example.com
s=
c=IN IP4 host.atlanta.example.com
t=0 0
m=audio 49170 RTP/AVP 0 97
a=rtpmap:0 PCMU/8000
a=rtpmap:97 iLBC/8000
m=audio 49172 RTP/AVP 98
a=rtpmap:98 telephone-event/8000
a=sendonly
Hold with two streams
[Answer]
v=0
o=bob 2808844564 2808844564 IN IP4
host.biloxi.example.com
s=
c=IN IP4 host.biloxi.example.com
t=0 0
m=audio 49172 RTP/AVP 97
a=rtpmap:97 iLBC/8000
m=audio 49174 RTP/AVP 98
a=rtpmap:98 telephone-event/8000
a=recvonly
[Second-Offer]
v=0
o=bob 2808844564 2808844565 IN IP4
host.biloxi.example.com
s=
c=IN IP4 host.biloxi.example.com
t=0 0
m=audio 49172 RTP/AVP 97
a=rtpmap:97 iLBC/8000
a=sendonly
m=audio 49174 RTP/AVP 98
a=rtpmap:98 telephone-event/8000
a=recvonly
Hold with two streams
[Second-Answer]
v=0
o=alice 2890844526 2890844527 IN IP4
host.atlanta.example.com
s=
c=IN IP4 host.atlanta.example.com
t=0 0
m=audio 49170 RTP/AVP 0 97
a=rtpmap:0 PCMU/8000
a=rtpmap:97 iLBC/8000
m=audio 49172 RTP/AVP 98
a=rtpmap:98 telephone-event/8000
a=sendonly
[Offer]
v=0
o=alice 2890844526 2890844526 IN IP4
host.atlanta.example.com
s=
c=IN IP4 host.atlanta.example.com
t=0 0
m=audio 49170 RTP/AVP 0
a=rtpmap:0 PCMU/8000
Audio, then Video Added
[Answer]
v=0
o=bob 2808844564 2808844564 IN IP4
host.biloxi.example.com
s=
c=IN IP4 host.biloxi.example.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
[Second-Offer]
v=0
o=alice 2890844526 2890844527 IN IP4 host.
atlanta.example.com
s=
c=IN IP4 host.atlanta.example.com
t=0 0
m=audio 49170 RTP/AVP 0
a=rtpmap:0 PCMU/8000
m=video 49172 RTP/AVP 31
a=rtpmap:31 H261/90000
Audio, then Video Added
[Second-Answer]
v=0
o=bob 2808844564 2808844565 IN IP4
host.biloxi.example.com
s=
c=IN IP4 host.biloxi.example.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
m=video 49168 RTP/AVP 31
a=rtpmap:31 H261/90000

More Related Content

What's hot

Sip
SipSip
Multicast
MulticastMulticast
Multicast
Sagar Surve
 
Diameter Presentation
Diameter PresentationDiameter Presentation
Diameter Presentation
Beny Haddad
 
SIP - The Basics
SIP - The BasicsSIP - The Basics
SIP - The Basics
Jonas Borjesson
 
Multicast routing
Multicast routingMulticast routing
Multicast routing
Gunasekara Reddy
 
session initiation protocol - SIP
session initiation protocol - SIPsession initiation protocol - SIP
session initiation protocol - SIP
Mahmoud Abudaqa
 
Xmpp
XmppXmpp
Dynamic Access List
Dynamic Access ListDynamic Access List
Dynamic Access List
NetProtocol Xpert
 
Rtsp
RtspRtsp
L2 tp
L2 tpL2 tp
PCRF-Policy Charging System-Functional Analysis
PCRF-Policy Charging System-Functional AnalysisPCRF-Policy Charging System-Functional Analysis
PCRF-Policy Charging System-Functional Analysis
Biju M R
 
User datagram protocol
User datagram protocolUser datagram protocol
User datagram protocol
Mohd Arif
 
Network time protocol
Network time protocolNetwork time protocol
Network time protocol
Mohd Amir
 
Session initiation-protocol
Session initiation-protocolSession initiation-protocol
Session initiation-protocol
Santhosh Somu
 
IMS Core Elements
IMS Core ElementsIMS Core Elements
IMS Core Elements
Kent Loh
 
TCP and UDP
TCP and UDP TCP and UDP
TCP and UDP
Ramesh Giri
 
SIP: Call Id, Cseq, Via-branch, From & To-tag role play
SIP: Call Id, Cseq, Via-branch, From & To-tag role playSIP: Call Id, Cseq, Via-branch, From & To-tag role play
SIP: Call Id, Cseq, Via-branch, From & To-tag role play
Sridhar Kumar N
 
Overview of Spanning Tree Protocol (STP & RSTP)
Overview of Spanning Tree Protocol (STP & RSTP)Overview of Spanning Tree Protocol (STP & RSTP)
Overview of Spanning Tree Protocol (STP & RSTP)
Peter R. Egli
 
TCP/IP Modal
TCP/IP ModalTCP/IP Modal
TCP/IP Modal
ParikshitTaksande1
 
Multicast Routing Protocols
Multicast Routing ProtocolsMulticast Routing Protocols
Multicast Routing Protocols
Ram Dutt Shukla
 

What's hot (20)

Sip
SipSip
Sip
 
Multicast
MulticastMulticast
Multicast
 
Diameter Presentation
Diameter PresentationDiameter Presentation
Diameter Presentation
 
SIP - The Basics
SIP - The BasicsSIP - The Basics
SIP - The Basics
 
Multicast routing
Multicast routingMulticast routing
Multicast routing
 
session initiation protocol - SIP
session initiation protocol - SIPsession initiation protocol - SIP
session initiation protocol - SIP
 
Xmpp
XmppXmpp
Xmpp
 
Dynamic Access List
Dynamic Access ListDynamic Access List
Dynamic Access List
 
Rtsp
RtspRtsp
Rtsp
 
L2 tp
L2 tpL2 tp
L2 tp
 
PCRF-Policy Charging System-Functional Analysis
PCRF-Policy Charging System-Functional AnalysisPCRF-Policy Charging System-Functional Analysis
PCRF-Policy Charging System-Functional Analysis
 
User datagram protocol
User datagram protocolUser datagram protocol
User datagram protocol
 
Network time protocol
Network time protocolNetwork time protocol
Network time protocol
 
Session initiation-protocol
Session initiation-protocolSession initiation-protocol
Session initiation-protocol
 
IMS Core Elements
IMS Core ElementsIMS Core Elements
IMS Core Elements
 
TCP and UDP
TCP and UDP TCP and UDP
TCP and UDP
 
SIP: Call Id, Cseq, Via-branch, From & To-tag role play
SIP: Call Id, Cseq, Via-branch, From & To-tag role playSIP: Call Id, Cseq, Via-branch, From & To-tag role play
SIP: Call Id, Cseq, Via-branch, From & To-tag role play
 
Overview of Spanning Tree Protocol (STP & RSTP)
Overview of Spanning Tree Protocol (STP & RSTP)Overview of Spanning Tree Protocol (STP & RSTP)
Overview of Spanning Tree Protocol (STP & RSTP)
 
TCP/IP Modal
TCP/IP ModalTCP/IP Modal
TCP/IP Modal
 
Multicast Routing Protocols
Multicast Routing ProtocolsMulticast Routing Protocols
Multicast Routing Protocols
 

Similar to SDP (Session Description Protocol)

Indroduction to SIP
Indroduction to SIPIndroduction to SIP
Indroduction to SIP
Chien Cheng Wu
 
RTSP Analysis Wireshark
RTSP Analysis WiresharkRTSP Analysis Wireshark
RTSP Analysis Wireshark
Yoss Cohen
 
lect21-Layer5.ppt
lect21-Layer5.pptlect21-Layer5.ppt
lect21-Layer5.ppt
ClarityteamUtngn
 
SIP (Session Initiation Protocol)
SIP (Session Initiation Protocol)SIP (Session Initiation Protocol)
SIP (Session Initiation Protocol)
KHNOG
 
RTSP Protocol - Explanation to develop API of RTSP Protocol
RTSP Protocol - Explanation to develop API of RTSP ProtocolRTSP Protocol - Explanation to develop API of RTSP Protocol
RTSP Protocol - Explanation to develop API of RTSP Protocol
FranZEast
 
Introduction to VoIP using SIP
Introduction to VoIP using SIPIntroduction to VoIP using SIP
Introduction to VoIP using SIP
Kundan Singh
 
Web rtc 핵심 기술에 대한 이해
Web rtc 핵심 기술에 대한 이해Web rtc 핵심 기술에 대한 이해
Web rtc 핵심 기술에 대한 이해
Dahyun Kim
 
IP and VoIP Fundamentals
IP and VoIP FundamentalsIP and VoIP Fundamentals
IP and VoIP Fundamentals
Matrixcomsec Ttg
 
Si pp introduction_2
Si pp introduction_2Si pp introduction_2
Si pp introduction_2
kamrandb2
 
Socket Programming Tutorial
Socket Programming TutorialSocket Programming Tutorial
Socket Programming Tutorial
Jignesh Patel
 
Socket Programming Tutorial 1227317798640739 8
Socket Programming Tutorial 1227317798640739 8Socket Programming Tutorial 1227317798640739 8
Socket Programming Tutorial 1227317798640739 8
shanmuga priya
 
Socket programming-tutorial-sk
Socket programming-tutorial-skSocket programming-tutorial-sk
Socket programming-tutorial-sk
sureshkarthick37
 
IRR toolset with rpsl
IRR toolset with rpslIRR toolset with rpsl
IRR toolset with rpsl
Muhammad Moinur Rahman
 
CPU
CPUCPU
Intro to Packet Analysis - pfSense Hangout May 2014
Intro to Packet Analysis - pfSense Hangout May 2014Intro to Packet Analysis - pfSense Hangout May 2014
Intro to Packet Analysis - pfSense Hangout May 2014
Netgate
 
Pycon - Python for ethical hackers
Pycon - Python for ethical hackers Pycon - Python for ethical hackers
Pycon - Python for ethical hackers
Mohammad Reza Kamalifard
 
Rota qsig central 3
Rota qsig central 3Rota qsig central 3
Rota qsig central 3
zeu1507
 
اسلاید اول جلسه یازدهم کلاس پایتون برای هکرهای قانونی
اسلاید اول جلسه یازدهم کلاس پایتون برای هکرهای قانونیاسلاید اول جلسه یازدهم کلاس پایتون برای هکرهای قانونی
اسلاید اول جلسه یازدهم کلاس پایتون برای هکرهای قانونی
Mohammad Reza Kamalifard
 
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
ALTANAI BISHT
 
Ntp cheat sheet
Ntp cheat sheetNtp cheat sheet
Ntp cheat sheet
csystemltd
 

Similar to SDP (Session Description Protocol) (20)

Indroduction to SIP
Indroduction to SIPIndroduction to SIP
Indroduction to SIP
 
RTSP Analysis Wireshark
RTSP Analysis WiresharkRTSP Analysis Wireshark
RTSP Analysis Wireshark
 
lect21-Layer5.ppt
lect21-Layer5.pptlect21-Layer5.ppt
lect21-Layer5.ppt
 
SIP (Session Initiation Protocol)
SIP (Session Initiation Protocol)SIP (Session Initiation Protocol)
SIP (Session Initiation Protocol)
 
RTSP Protocol - Explanation to develop API of RTSP Protocol
RTSP Protocol - Explanation to develop API of RTSP ProtocolRTSP Protocol - Explanation to develop API of RTSP Protocol
RTSP Protocol - Explanation to develop API of RTSP Protocol
 
Introduction to VoIP using SIP
Introduction to VoIP using SIPIntroduction to VoIP using SIP
Introduction to VoIP using SIP
 
Web rtc 핵심 기술에 대한 이해
Web rtc 핵심 기술에 대한 이해Web rtc 핵심 기술에 대한 이해
Web rtc 핵심 기술에 대한 이해
 
IP and VoIP Fundamentals
IP and VoIP FundamentalsIP and VoIP Fundamentals
IP and VoIP Fundamentals
 
Si pp introduction_2
Si pp introduction_2Si pp introduction_2
Si pp introduction_2
 
Socket Programming Tutorial
Socket Programming TutorialSocket Programming Tutorial
Socket Programming Tutorial
 
Socket Programming Tutorial 1227317798640739 8
Socket Programming Tutorial 1227317798640739 8Socket Programming Tutorial 1227317798640739 8
Socket Programming Tutorial 1227317798640739 8
 
Socket programming-tutorial-sk
Socket programming-tutorial-skSocket programming-tutorial-sk
Socket programming-tutorial-sk
 
IRR toolset with rpsl
IRR toolset with rpslIRR toolset with rpsl
IRR toolset with rpsl
 
CPU
CPUCPU
CPU
 
Intro to Packet Analysis - pfSense Hangout May 2014
Intro to Packet Analysis - pfSense Hangout May 2014Intro to Packet Analysis - pfSense Hangout May 2014
Intro to Packet Analysis - pfSense Hangout May 2014
 
Pycon - Python for ethical hackers
Pycon - Python for ethical hackers Pycon - Python for ethical hackers
Pycon - Python for ethical hackers
 
Rota qsig central 3
Rota qsig central 3Rota qsig central 3
Rota qsig central 3
 
اسلاید اول جلسه یازدهم کلاس پایتون برای هکرهای قانونی
اسلاید اول جلسه یازدهم کلاس پایتون برای هکرهای قانونیاسلاید اول جلسه یازدهم کلاس پایتون برای هکرهای قانونی
اسلاید اول جلسه یازدهم کلاس پایتون برای هکرهای قانونی
 
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
 
Ntp cheat sheet
Ntp cheat sheetNtp cheat sheet
Ntp cheat sheet
 

More from Buşra Deniz, CSM

HealthKit
HealthKitHealthKit
Mobile Software Testing Challenges
Mobile Software Testing ChallengesMobile Software Testing Challenges
Mobile Software Testing Challenges
Buşra Deniz, CSM
 
Unit Testing on Android - Droidcon Berlin 2015
Unit Testing on Android - Droidcon Berlin 2015Unit Testing on Android - Droidcon Berlin 2015
Unit Testing on Android - Droidcon Berlin 2015
Buşra Deniz, CSM
 
WebRTC on Mobile
WebRTC on MobileWebRTC on Mobile
WebRTC on Mobile
Buşra Deniz, CSM
 
Unit testing on mobile apps
Unit testing on mobile appsUnit testing on mobile apps
Unit testing on mobile apps
Buşra Deniz, CSM
 
Game development via_sprite_kit
Game development via_sprite_kitGame development via_sprite_kit
Game development via_sprite_kit
Buşra Deniz, CSM
 

More from Buşra Deniz, CSM (6)

HealthKit
HealthKitHealthKit
HealthKit
 
Mobile Software Testing Challenges
Mobile Software Testing ChallengesMobile Software Testing Challenges
Mobile Software Testing Challenges
 
Unit Testing on Android - Droidcon Berlin 2015
Unit Testing on Android - Droidcon Berlin 2015Unit Testing on Android - Droidcon Berlin 2015
Unit Testing on Android - Droidcon Berlin 2015
 
WebRTC on Mobile
WebRTC on MobileWebRTC on Mobile
WebRTC on Mobile
 
Unit testing on mobile apps
Unit testing on mobile appsUnit testing on mobile apps
Unit testing on mobile apps
 
Game development via_sprite_kit
Game development via_sprite_kitGame development via_sprite_kit
Game development via_sprite_kit
 

Recently uploaded

LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptxLORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
lorraineandreiamcidl
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
brainerhub1
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
ICS
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
Green Software Development
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
Remote DBA Services
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise EditionWhy Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Envertis Software Solutions
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
mz5nrf0n
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
Grant Fritchey
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
pavan998932
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
Peter Muessig
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 

Recently uploaded (20)

LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptxLORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise EditionWhy Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 

SDP (Session Description Protocol)

  • 2. SDP is purely a format for session description. It does not incorporate a transport protocol and it is intended to use different transport protocols as SIP, SAP, RTSP, HTTP. SDP
  • 3. ● Session Initiation ● Streaming Media ● Email and the WWW ● Multicast Session Announcement Example of SDP Usage
  • 4. In general, SDP must convey sufficient information to enable applications to join a session and to announce the resources to be used to any non-participants that may need to know. SDP
  • 5. ● Session name and purpose ● Times the session is active ● The media comprising the session ● Information needed to receive those media(addresses, ports,formats , etc.) SDP
  • 6. ● "application/sdp" ● ISO 10646 character set in UTF-8 encoding. ● <type>=<value> SDP Specification
  • 7. ● Session Description ● Time Description ● Media description SDP description order
  • 8. v= (protocol version) o= (originator and session identifier) s= (session name) i=* (session information) u=* (URI of description) e=* (email address) p=* (phone number) c=* (connection information -- not required if included in all media) b=* (zero or more bandwidth information lines) z=* (time zone adjustments) k=* (encryption key) a=* (zero or more session attribute lines) Session Description
  • 9. t= (time the session is active) r=* (zero or more repeat times) Time Description
  • 10. m= (media name and transport address) i=* (media title) c=* (connection information -- optional if included at session level) b=* (zero or more bandwidth information lines) k=* (encryption key) a=* (zero or more media attribute lines) Media Description
  • 11. ● Protocol version (“v=”) v=0 ● Origin (“o=”) o=<username> <sess-id> <sess-version> <nettype> <addrtype> <unicast-address> ● Session name (“s”) s=<session name> ● Session information (“i=”) i=<session description>
  • 12. ● URI (“u=”) u=<uri> ● Email and Phone (“e=” and “p=”) e=<email-address> (e=j.doe@example.com (Jane Doe)) p=<phone-number> (p=+1 617 555-6011) ● Connection Data (“c=”) c=<nettype> <addrtype> <connection-address> (c=IN IP4 224.2.36.42/127) ● Bandwidth (“b=”) b=<bwtype>:<bandwidth>
  • 13. ● Timing (“t=”) t=<start-time> <stop-time> ● Repeat time (“r=”) r=<repeat interval> <active duration> <offsets from start-time> t=3034423619 3042462419 r=604800 3600 0 90000 ● Encription Keys (“k=”) k=<method> k=<method>:<encryption key> k=base64:<encoded encryption key>
  • 14. ● Attributes (“a=”) a=<attribute>:<value> ● Media Description m=<media> <port> <proto> <fmt> m=video 49170/2 RTP/AVP 31
  • 15. a=cat:<category> a=keywds:<keywords> a=tool:<name and version of tool> a=ptime:<packet time> a=maxptime:<maximum packet time> a=rtpmap:<payload type> <encoding name>/<clock rate> [/<encoding parameters>] SDP Attributes
  • 18. [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta. example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 8 97 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:97 iLBC/8000 m=video 51372 RTP/AVP 31 32 a=rtpmap:31 H261/90000 a=rtpmap:32 MPV/90000 Audio and Video [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 0 8 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 m=video 0 RTP/AVP 31 a=rtpmap:31 H261/90000
  • 19. [Second-Offer] v=0 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 51372 RTP/AVP 0 a=rtpmap:0 PCMU/8000 m=video 0 RTP/AVP 31 a=rtpmap:31 H261/90000 Audio and Video [Second-Answer] v=0 o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000 m=video 0 RTP/AVP 31 a=rtpmap:31 H261/90000
  • 20. [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 97 a=rtpmap:0 PCMU/8000 a=rtpmap:97 iLBC/8000 m=audio 49172 RTP/AVP 98 a=rtpmap:98 telephone-event/8000 a=sendonly Two Audio Streams [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 97 a=rtpmap:97 iLBC/8000 m=audio 49174 RTP/AVP 98 a=rtpmap:98 telephone-event/8000
  • 21. [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 97 a=rtpmap:0 PCMU/8000 a=rtpmap:97 iLBC/8000 Hold and Unhold [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 placeholder.biloxi.example. com t=0 0 m=audio 49172 RTP/AVP 97 a=rtpmap:97 iLBC/8000 a=sendonly
  • 22. [Second-Offer] v=0 o=bob 2808844564 2808844565 IN IP4 host. biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49170 RTP/AVP 97 a=rtpmap:97 iLBC/8000 Hold and Unhold [Second-Answer] v=0 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49178 RTP/AVP 97 a=rtpmap:97 iLBC/8000
  • 23. [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 97 a=rtpmap:0 PCMU/8000 a=rtpmap:97 iLBC/8000 m=audio 49172 RTP/AVP 98 a=rtpmap:98 telephone-event/8000 a=sendonly Hold with two streams [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 97 a=rtpmap:97 iLBC/8000 m=audio 49174 RTP/AVP 98 a=rtpmap:98 telephone-event/8000 a=recvonly
  • 24. [Second-Offer] v=0 o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 97 a=rtpmap:97 iLBC/8000 a=sendonly m=audio 49174 RTP/AVP 98 a=rtpmap:98 telephone-event/8000 a=recvonly Hold with two streams [Second-Answer] v=0 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 97 a=rtpmap:0 PCMU/8000 a=rtpmap:97 iLBC/8000 m=audio 49172 RTP/AVP 98 a=rtpmap:98 telephone-event/8000 a=sendonly
  • 25. [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 a=rtpmap:0 PCMU/8000 Audio, then Video Added [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000
  • 26. [Second-Offer] v=0 o=alice 2890844526 2890844527 IN IP4 host. atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 a=rtpmap:0 PCMU/8000 m=video 49172 RTP/AVP 31 a=rtpmap:31 H261/90000 Audio, then Video Added [Second-Answer] v=0 o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000 m=video 49168 RTP/AVP 31 a=rtpmap:31 H261/90000