Sip Conferencing

iir - sip congress 2001, ppt
View more...
   EMBED

Share

Preview only show first 6 pages with water mark for full document please download

Transcript

SIP Conferencing IIR · SIP Congress 2001 21 May 2001 Stockholm, Sweden 21 – 24 May 2001 Jörg Ott [email protected] 21 May 2001 ipDialog, Inc. 2 IETF Conferencing ! Packet multimedia experiments since 1980s – Audio/video tools + protocols for A/V over IP – Conference announcement and control protocols ! First IETF Audiocast (1992) ! Since then: IETF sessions on the Mbone – Audio + video (+ sometimes slides) ! Other uses of Mbone conferencing – Lectures, seminars, project meetings, … – Broadcasting NASA missions, concerts, … 21 May 2001 ipDialog, Inc. 3 IETF Conferencing Architecture IP / IP Multicast UDP RTP / RTCP Conference Control Integrated / Differentiated Services Forwarding TCP Audio Video Media Streaming Session Direct. RSVP RTSP SMTP HTTP SAP SIP Shared Apps SDP 21 May 2001 ipDialog, Inc. 4 IETF Conferencing Model Descr.: IRR 2001 SIP Congress Orig.: Jörg Ott [email protected] Info: http://www.ipdialog.com/ Start: 21.05.2001 / 09.00 End: 24.05.2001 / 17.00 Media: Audio GSM 224.1.6.7/49000 Media: Video H.263 224.1.6.8/49100 Workshop S e s s i o n D e s c r i p t i o n 2a. Disseminate NNTP 1. Create HTTP E-Mail SAP 2b. Invite SIP 3. Join 3. Join 4. Media Streams 21 May 2001 ipDialog, Inc. 5 The latter is not SIP — but it is the way SIP is looked at today in many cases. SIP and Conferencing over Time… ! Origin: MMUSIC Multiparty Multimedia Session Control ! From Invitation… to initiation, modification, and termination ! From Multiparty… to point-to-point-focused ! From Multimedia… to voice-centric 21 May 2001 ipDialog, Inc. 6 The Role of SIP in Conferencing ! INITIATE a call or conference ! JOIN a conference ! LEAVE a conference ! INVITE participants ! EXPEL participants? ! CONFIGURE media streams ! SHARE state? CONTROL conference? 21 May 2001 ipDialog, Inc. 7 SIP and Multiparty Conferencing ! SIP signaling relationships – Central (bridge, endpoint) vs. mesh ! Media distribution – Unicast vs. multicast ! Media mixing – Centralized (bridge, endpoint) vs. decentralized ! Conference creation – ad-hoc vs. scheduled – “dial-in” vs. “dial-out” vs. equal peers 21 May 2001 ipDialog, Inc. 8 Centralized Signaling: Bridge Conference Bridge / MCU (SIP UA) SIP UA (Ann) SIP UA (Carol) SIP UA (Dave) SIP / SDP SIP may convey membership Feels like a point-to-point call 21 May 2001 ipDialog, Inc. 9 Centralized Signaling: Endpoint SIP UA (Ann) SIP UA (Dave) SIP / SDP SIP UA (Carol) Feels like a point-to-point call (Only) Carol’s UA is aware of the conference SIP may convey membership 21 May 2001 ipDialog, Inc. 10 Decentralized Signaling: Mesh SIP UA (Ann) SIP UA (Dave) SIP UA (Carol) All endpoints know about the conference SIP conveys membership SIP / SDP 21 May 2001 ipDialog, Inc. 11 Centralized Media: Bridge Conference Bridge / MCU (SIP UA) SIP UA (Ann) SIP UA (Carol) SIP UA (Dave) RTP Audio A C D A+C C+D A+D Feels like a point-to-point call Membership from RTCP 21 May 2001 ipDialog, Inc. 12 Centralized Media: Endpoint SIP UA (Ann) SIP UA (Carol) SIP UA (Dave) RTP Audio A D A+C C+D Local mixing and source selection Feels like a point-to-point call Membership from RTCP 21 May 2001 ipDialog, Inc. 13 Decentralized Media: Multi-Unicast SIP UA (Ann) SIP UA (Carol) SIP UA (Dave) RTP Audio A D C C Local mixing and source selection D A Membership from RTCP 21 May 2001 ipDialog, Inc. 14 Decentralized Media: Multicast SIP UA (Ann) SIP UA (Carol) SIP UA (Dave) RTP Audio A D C C Local mixing and source selection D A Membership from RTCP C 21 May 2001 ipDialog, Inc. 15 Conference Creation ! Ad-hoc expansion of a SIP call – INVITE further participants – Re-configure media streams – Introduce a mixer if necessary (e.g. by SIP server) ! Advance reservation of a bridge / MCU – (Reservation itself out of scope) – Call in to conference URL – Call out from bridge to list of participants – Repeatedly (re-)configure media streams as needed ! (Scheduling and Announcement with SAP) 21 May 2001 ipDialog, Inc. 16 Model Transition ! Conference starts off as a call – Endpoints can’t do mixing ! Conference grows larger – Than the mixing endpoint can deal with ! Conference bridge no longer needed ! “Call Transfer” for all participants – INVITE and BYE, REFER – Re-direct (and re-configure) media streams 21 May 2001 ipDialog, Inc. 17 Example 1: Conference Bridge Configure (HTTP) Conference Bridge / MCU (SIP UA) SIP UA (Ann) SIP UA (Carol) SIP UA (Dave) RTP Audio SIP/ SDP 21 May 2001 ipDialog, Inc. 18 Example 1: Conference Bridge ! Use only basic SIP features – SIP URL for identification – point-to-point calls for control and media ! Conferencing: application of SIP in the bridge – may hide or expose media differences ! transcoding vs. media re-negotiation – may hide or expose participants’ identities ! Make a conference “feel” like a phone call ! Works with SIP phones today! 21 May 2001 ipDialog, Inc. 19 Conference Setup ! Ann uses a web browser to set up the conference ! She creates / obtains a URL for the conference – to send to Carol and Dave – to put on a web page ! Bridge registers with SIP server using the URL – when the conference is supposed to start Booking Server SIP Server REGISTER sip:irr2001@ example.com [email protected] 21 May 2001 ipDialog, Inc. 20 Ann calls in (1 st ) INVITE 100 Trying ACK UA Ann SIP Server Conference (A ∩ ∩∩ ∩ B) UA Bridges INVITE sip:irr@ example.com Caps (A) INVITE 200 OK Caps (B) Conference with Caps (A ∩ ∩∩ ∩ B) 21 May 2001 ipDialog, Inc. 21 Carol calls in (2 nd ) INVITE 100 Trying ACK UA Carol UA Bridge UA Ann INVITE sip:irr@ example.com Caps (C) re-INVITE Caps (B∩C) 200 OK Caps (A) Conf (A ∩ B) check caps! 200 OK Caps (B∩ ∩∩ ∩C) re-INVITE ACK Conference (A ∩ ∩∩ ∩ B ∩ ∩∩ ∩ C) Conference with Caps (A ∩ ∩∩ ∩ B ∩ ∩∩ ∩ C) 21 May 2001 ipDialog, Inc. 22 Dave calls in (3 rd ) INVITE 100 Trying ACK UA Carol UA Bridge UA Ann INVITE sip:irr@ example.com Caps (D) Conf (A ∩ B ∩ C) check caps: Nothing to do! 200 OK Caps (A ∩ ∩∩ ∩ B ∩ ∩∩ ∩ C) Conference (A ∩ ∩∩ ∩ B ∩ ∩∩ ∩ C ∩ ∩∩ ∩ D) UA Carol Conference with Caps (A ∩ ∩∩ ∩ B ∩ ∩∩ ∩ C ∩ ∩∩ ∩ D) 21 May 2001 ipDialog, Inc. 23 Leaving and Terminating ! Leave a conference: BYE ! Expel a participant: Bridge sends BYE – Invocation triggered by other participant? – Extensions needed + policies + … ! Terminate a conference: – Bridge BYEs all – (Bridge de-registers from SIP server) 21 May 2001 ipDialog, Inc. 24 Example 1: Conference Bridge ! PRO – Endpoints need not be aware of conference ! (if media distribution is handled centrally as well) – Can be done with SIP today – Endpoints can leave at will – Simple! ! CON – Central entity required (find it, book it, access it, ...) – Single point of failure 21 May 2001 ipDialog, Inc. 25 Example 2: Endpoint as “Mixer” SIP UA (Ann) SIP UA (Carol) SIP UA (Dave) RTP Audio SIP / SDP 21 May 2001 ipDialog, Inc. 26 Example 2: Endpoint as Mixer ! Logically similar to centralized bridge ! Endpoint creates two calls and bridges locally ! Perfect solution for small ad-hoc conferences ! With decentralized media: processing power less an issue ! Implemented in SIP Phones today! 21 May 2001 ipDialog, Inc. 27 Example 2: Endpoint as “Mixer” ! PRO – Endpoints need not be aware of conference ! (if media distribution is handled by mixing endpoint) – Can be done with SIP today – Simple! ! CON – Mixing endpoint cannot leave ! or will terminate the signaling relationships – Mixing endpoint has to handle many streams (b/w) – Single point of failure 21 May 2001 ipDialog, Inc. 28 Example 3: Meshed Conference SIP UA (Ann) SIP UA (Carol) SIP UA (Dave) SIP / SDP RTP Audio 21 May 2001 ipDialog, Inc. 29 Example 3: Meshed Conference Two-party media INVITE A (C, D) 200 OK 200 OK ACK ACK UA Ann UA Carol UA Dave INVITE D (A,C) Two-party media Two-party media Two-party call 3 X Two-party call = Three-way conference 21 May 2001 ipDialog, Inc. 30 Example 3: Meshed Conference ! PRO – No centralized server required – No single point of failure – Participants may leave at will ! CON – More sophisticated endpoints required – Each endpoint has to handle multiple streams (b/w) – Complex protocol ! Not yet completely defined! 21 May 2001 ipDialog, Inc. 31 SIP and Conference Control For conferences of limited size: ! Share conference state information – Membership, media, encryption keys – Other? ! Manage the course of the conference – Floor control, conference policies, … ! Use SIP for state, but not for management ! Should there be another control protocol? 21 May 2001 ipDialog, Inc. 32 SIP for State Synchronization? ! Media configuration handled by SIP anyway ! Membership is straightforward – Done for full-mesh conferences ! Use SUBSCRIBE/NOTIFY for other – Membership and other conference state – Not perfectly efficient ! But there is currently not so much state ! Need not scale to arbitrarily large conferences – Seek another solution only when really needed YES 21 May 2001 ipDialog, Inc. 33 SIP for Conference Management? ! Current perception: don’t do that! ! Instead: devise a conference control protocol when needed – Could be carried in SIP – Or as one of the media ! Idea of conference control around for years ! BUT: no real (commercial) interest yet NO 21 May 2001 ipDialog, Inc. 34 SIP and Multimedia First of all: But: And: SIP supports ANY media! Need the other protocols & applications Need a way to “signal” them 21 May 2001 ipDialog, Inc. 35 Media Protocols ! Audio ! Video ! Tones (DTMF etc.) ! Text chat ! Fax ! Pointers ! ... ! Shared Whiteboard – LBL WB, ... ! Shared Text – UCL NTE, emacs, ... ! Application Sharing – ITU-T T.128 – Sun VNC ! ... MISSING DONE 21 May 2001 ipDialog, Inc. 36 Session Description Protocol (SDP) ! Has enabled SIP and streaming application – works fine for many cases – makes many implicit assumptions ! BUT: Designed for Session Announcements – rather than for interactive “negotiations” ! Many recent extensions – to better support SIP, MEGACO in the short-term – General solution being worked out 21 May 2001 ipDialog, Inc. 37 SDP Next Generation (SDPng) ! Being designed to address SDP’s flaws… – Limited expressiveness ! For individual media and their combination ! Often only very basic media descriptions available – No real negotiation functionality – Limited extensibility (clumsy, hard to coordinate) – No semantics for media sessions (only implicit) ! Also: Avoid second system syndrome! – Simple, easy to parse, extensible, limited scope 21 May 2001 ipDialog, Inc. 38 SDPng Structure Definitions Potential and Actual Configurations Constraints Session Attributes SDP m= blocks refers to definitions SDP session attr’s + stream semantics “optional” may be “imported” on configurations “optional” 21 May 2001 ipDialog, Inc. 39 SDPng Status ! Requirements agreed upon in MMUSIC – Also input from SIP, MEGACO ! Basic structure agreed upon ! XML-based syntax chosen ! Strawman proposal available ! Draft spec expected for 51 st IETF ! Next steps: definitions (media, transport, …) 21 May 2001 ipDialog, Inc. 40 Conclusion ! For TODAY, we are ok! – Audio(visual) conference bridges – Small group ad-hoc conferencing – End points may but need not support conferences. ! For TOMORROW, there is a long way to go… – SIP conferencing support and SDPng – Conference control? – Media protocols ! And we NEED APPLICATIONS that use it…!