draft-miniero-mediactrl-escs- 00.txt alessandro amirante tobia castaldi lorenzo miniero simon pietro...
TRANSCRIPT
draft-miniero-mediactrl-escs-00.txt
Alessandro AmiranteTobia Castaldi
Lorenzo MinieroSimon Pietro Romano
(University of Napoli Federico II)
University of Napoli - mediactrl WG, 70th IETF meeting, Vancouver, Dec. 3rd 2007
2
Session Control Protocol (SIP) Control Framework (ESCS/SCFW) Call Flow Examples
• This document provides a number of Media Server Control Framework call flows
• It is meant as a BCP document conceived to help the development of the framework specification with a practical approach
• All the flow scenarios come from direct implementation experience, which can help fix potential drawbacks and/or issues emerging in the protocol
University of Napoli - mediactrl WG, 70th IETF meeting, Vancouver, Dec. 3rd 2007
3
A Practical Approach
• The document embraces a practical approach by providing:– State Diagrams of the framework protocol
(both AS and MS perspectives);– Some implementation-oriented considerations
that come out of the specification analysis.
• Many real-life scenarios are considered in the call flows, and diagrams with different perspectives are included
University of Napoli - mediactrl WG, 70th IETF meeting, Vancouver, Dec. 3rd 2007
4
Call Flows and Diagrams
• Control Channel Establishment• COMEDIA-based negotiation• SYNCH framework transaction
• Use Case Scenarios and Examples– Echo Test
• Direct Echo Test• Echo Test based on Recording
– Phone Call• Direct Connection• Conference-based Approach
– Conferencing• Simple Bridging• Rich Conference Scenario• Coaching Scenario• Sidebars
– Others?
Showed at the demo!
IDLE / TERMINATE
CONTROL RECEIVED
CONTROL PENDING
PENDING SENT
PENDING CONFIRMED
UPDATE SENT
UPDATE CONFIRMED
WAITING FOR LAST
200
CONTROL / -
API 200 / 200
API Error / Error
API 202 / 202
API PENDING / REPORT PENDING
200 / -
API UPDATE / REPORT UPDATE
200 / -
API TERMINATE / REPORT TERMINATE
200 / -
API UPDATE / REPORT UPDATE
API TERMINATE / REPORT TERMINATE
Media Serverperspective
IDLE / TERMINATE
CONTROL SENT
PENDING
UPDATE
200 / -
Error / Error
API CONTROL / send CONTROL
202 / -
REPORT PENDING / send 200
REPORT UPDATE / send 200
REPORT TERMINATE / send 200
REPORT TERMINATE / send 200
REPORT UPDATE / send 200
202 RECEIVED
Application Serverperspective
University of Napoli - mediactrl WG, 70th IETF meeting, Vancouver, Dec. 3rd 2007
7
User
OpenSER
University of Napoli Media Server
SIP messages(High speed binary
connector)
Contro
l Ch
annel
SIP messages
SIP signalling
Control Framework signalling
RTP data
RTP communication
Steady-state operation
University of Napoli Application Server
(Wesip)
SIP messages
University of Napoli - mediactrl WG, 70th IETF meeting, Vancouver, Dec. 3rd 2007
8
User
OpenSER
University of Napoli Application Server
(Wesip)
University of Napoli Media Server
(1)SIP INVITEwith COMEDIA
SIP signalling
Control Framework signalling
TCP
Control channel
Control channelsetup
(2) S
IP IN
VIT
Ew
ith C
OM
ED
IA(3
) SIP
100 T
RYIN
G
(4) SIP 100 TRYING
(5) 2
00 O
K w
ith
CO
MED
IA
(9) T
CP co
nnect
(Contro
l Channel)
(10) S
YN
CH
(D
ialo
g-ID
, etc.)
(11) 2
00
OK
(6) 200 OK with COMEDIA
(7) ACK
(8) A
CK
University of Napoli - mediactrl WG, 70th IETF meeting, Vancouver, Dec. 3rd 2007
9
User
OpenSER
University of Napoli Media Server
(2) SIP INVITE
(1) SIP INVITE
SIP signalling
Control Framework signalling
RTP data
Third Party Call Control(3PCC)
(4) 180 Ringing
(3) 180 Ringing
(6) IN
VIT
E (3
PC
C)
(5) INVITE (3PCC)
(7) 1
00 T
ryin
g
(8) 100 Trying
(9) SDP negotiation with UAC +
tags and labels
mapping
(10) 2
00
OK
(11) 200 OK(12) 200 OK
(13) 200 OK(14) ACK
(15) ACK(16) ACK
(17) A
CK
RTP media streams flowing
University of Napoli Application Server
(Wesip)
University of Napoli - mediactrl WG, 70th IETF meeting, Vancouver, Dec. 3rd 2007
10
RTP media streams flowingThe UAC is echoed back
everything
Control channel
User
OpenSER
University of Napoli Media Server
SIP signalling
Control Framework signalling
RTP data
Direct Echo example:self connection
(1)C
ON
TR
OL
(join
UA
C to
itself)
(2) 2
02
(3) R
EPO
RT/P
EN
DIN
G
(4) “self-join” UAC
(5) 2
00 O
K(6
) REPO
RT/T
ER
MIN
ATE
(7) 2
00 O
K
University of Napoli Application Server
(Wesip)
University of Napoli - mediactrl WG, 70th IETF meeting, Vancouver, Dec. 3rd 2007
11
Considerations
• Is the 202 message really necessary?– Always followed by a REPORT(pending)
• Ambiguity between notify/update possible states in REPORT messages
• Should notify/update events be possible *after* a terminate?
• Since error messages cannot carry any payload, how are package-specific errors notified?– Should we ‘improperly’ use either the 200 message or the
Report/terminate message for this?• …and others, mostly related to each specific control
package– WIP…
University of Napoli - mediactrl WG, 70th IETF meeting, Vancouver, Dec. 3rd 2007
12
Discussion
• Is the document of interest to the WG?• Are the provided scenarios enough? Are
they well described and analyzed?• Should security considerations be in the
scope of this document, or should they just be referenced from the specification documents?
• What else is needed and/or needs to be fixed?
University of Napoli - mediactrl WG, 70th IETF meeting, Vancouver, Dec. 3rd 2007
13
Prototype web site
• The prototype implementation and documentation will be soon available at:– http://mediactrl.sourceforge.net
Come and visit us ;-)Contacts:[email protected]@[email protected]@unina.it