Presentation is loading. Please wait.

Presentation is loading. Please wait.

Conference Control Manipulation Protocol (CCMP) draft-ietf-xcon-ccmp-03.txt Authors: Mary Barnes Chris Boulton.

Similar presentations


Presentation on theme: "Conference Control Manipulation Protocol (CCMP) draft-ietf-xcon-ccmp-03.txt Authors: Mary Barnes Chris Boulton."— Presentation transcript:

1 Conference Control Manipulation Protocol (CCMP) draft-ietf-xcon-ccmp-03.txt Authors: Mary Barnes (mary.barnes@nortel.com)mary.barnes@nortel.com Chris Boulton (chris@ns-technologies.com)chris@ns-technologies.com Simon Pietro Romano (spromano@unina.it)spromano@unina.it Henning Schulzrinne (hgs+xcon@cs.columbia.edu)hgs+xcon@cs.columbia.edu XCON WG IETF-75 Meeting Stockholm, Sweden, Friday July 31, 2009

2 1 XCON Protocol: CCMP July 31, 2009  Brief reminder about the CCMP approach  Changes since -02 version  Issues Discussion  Way Forward  Comments/Questions Agenda

3 2 XCON Protocol: CCMP July 31, 2009 CCMP approach since -02 version  HTTP single verb transport + CCMP body —XML-based CCMP requests –carried inside the body of HTTP POST messages —XML-based CCMP responses –carried inside the body of HTTP 200 OK messages – Application-level errors (and related error codes) are transparent to HTTP —CCMP messages use a MIME type of ‘application/ccmp+xml’ –Appearing inside ‘Content-Type’ and ‘Accept’ HTTP header fields

4 3 XCON Protocol: CCMP July 31, 2009 CCMP-managed Resources  Conference Object: —compliant with the XCON data model —uniquely addressable through an XCON URI  Blueprints: —same as conference objects…  Users: —a set of elements  User: —a single element —directly addressable through the XCON-USERID

5 4 XCON Protocol: CCMP July 31, 2009 CCMP request messages Operation ________ Request Type RetrieveCreateUpdateDelete blueprintsRequest √ N/A blueprintRequest √ N/A confsRequest √ N/A confRequest √√√√ usersRequest √ N/A √ userRequest √√√√ sidebarsByValRequest √ N/A sidebarByValrequest √√√√ sidebarsByRefrequest √ N/A sidebarByRefRequest √√√√

6 5 XCON Protocol: CCMP July 31, 2009 Message-independent CCMP error codes  success: —Successful completion of the requested operation  badRequest: —Syntactically malformed request  invalidPassword: —Target conference object's password contained in the request is wrong  passwordRequired: —Conference password missing in a request to access a password-protected conference object.  unauthorized: —User not allowed to perform the required operation  forbidden: —Operation not allowed (e.g., cancellation of a blueprint)  requestTimeout: —The time required to serve the request has exceeded the envisaged service threshold  serverInternalError: —The server cannot complete the required service due to a system internal error  notImplemented: —Operation envisaged in the protocol, but not implemented in the contacted server.

7 6 XCON Protocol: CCMP July 31, 2009 Message-dependent CCMP error codes Operation ________ Response code CreateRetrieveUpdateDelete modified All create requests N/A All update requests N/A objectNotFound userRequest, sidebarByValRequest, sidebarByRefRequest All retrieve requests, EXCEPT: blueprintsRequest, confsRequest All update requests All delete requests userNotFound userRequest (3rd party invite with third user entity) (*) userRequest invalidConfUserID All create requests, EXCEPT: userRequest with no confUserID (**) All retrieve requestsAll update requests All delete requests forbiddenDeleteParent N/A All delete requests forbiddenChangeProtected N/A All update requests N/A

8 7 XCON Protocol: CCMP July 31, 2009 'userNotFound’ and 'invalidConfUserID'  (*) 'userNotFound' in answer to a 'userRequest/create' operation: —in the case of a third-party invite: –this code can be returned if the 'confUserId' (contained in the 'entity' attribute of the 'userInfo' parameter) of the user to be added is unknown —in the case above: –if instead it is the 'confUserID' of the sender of the request that is invalid: – an 'invalidConfUserID' error code is returned to the client  (**) 'invalidConfUserID' is not sent in answers to 'userRequest/ create' messages having a 'null' confUserId: —this case is associated with a user who is unaware of his own XCON- USERID, but wants to enter a known conference.

9 8 XCON Protocol: CCMP July 31, 2009 About conference users  We assume users (and associated user profiles) are NOT created via CCMP  ‘userRequest/create’ operation —is not used to “create” a new user… —…but rather to add an existing user to a conference  Is such approach: —Clear enough in the draft? —Accepted as a shared assumption?

10 9 XCON Protocol: CCMP July 31, 2009 Main modifications since -02 version (1/2)  Definition of the ‘operation’ parameter modified: —Now part of the general ccmp-request-message-type –xsd updated (also in the draft appendix) –Sample call flow updated (section 8 of the draft)  New error codes added: —Related to users management: –invalidConfUserId, userNotFound —Related to operations on password-protected conference objects: –passwordRequired, invalidPassword  Security considerations section enriched: —Brand-new material about: –Overall considerations –Assuring that the Proper Conferencing Server has been contacted –User Authentication and Authorization –Security and Privacy of Identity

11 10 XCON Protocol: CCMP July 31, 2009 Main modifications since -02 version (2/2)  Revised normative statements for the various protocol messages and operations  Added descriptions for all the operation types, as appropriate  Added section to describe requirements for an HTTP implementation to support CCMP  Updated section on notifications  XCON SIP event package is default…  …some discussion of an HTTP callback mechanism  Misc editorial nits  qualifying message names in the text, etc., etc., etc.

12 11 XCON Protocol: CCMP July 31, 2009 Main open issues (1/3)  How to behave in case of ‘success’ with ‘create’ and/or ‘update’ operations? —In what cases do we send back to the client the (successfully created/modified) conference object? –E.g.: is this needed in cases like creation by cloning? – In such case, if I get back a code of ‘success’ with no conf object information, I can: Make a ‘confRequest/retrieve’ operation on the newly created object (whose confObjId can be found in the response…)  Should we extend such approach also to responses carrying a response code of ‘modified’? —As before, I become aware of the modifications by issuing a subsequent ‘retrieve’ targeting the modified object…

13 12 XCON Protocol: CCMP July 31, 2009 Main open issues (2/3)  When creating sidebars or conferences through blueprint cloning: —Should we include the modifications that we want to be applied to the cloned object directly in the cloning (i.e. ‘create’) request? –Remind that, currently: – I first ‘create’ a new object through cloning – I then ‘update’ the newly created object to let it fit my original requirements –With the envisaged modification: – I send a single ‘create’ request containing the modifications that have to be applied to the cloned object

14 13 XCON Protocol: CCMP July 31, 2009 Main open issues (3/3)  Should we consider adding “filters” to CCMP requests? —E.g. something like: –blueprintsRequest ( “give me just blueprints associated with no video content” ) –confsRequest (“just active conferences”) –confsRequest (“just those in which I’m currently participating”) —Aim: –Reduce traffic between client and server –Avoid overwhelming clients with bunches of un-needed information – Client-side filtering might be resource-consuming, especially in the case of mobile nodes –… —Note well: –Filters might take the form of xpath queries

15 14 XCON Protocol: CCMP July 31, 2009 Way Forward  Move forward based on issues resolution  Complete protocol document  Solicit additional feedback from WG and potential developer community  Propose WGLC (soon...) for this draft?

16 15 XCON Protocol: CCMP July 31, 2009 ANY COMMENTS/Questions?


Download ppt "Conference Control Manipulation Protocol (CCMP) draft-ietf-xcon-ccmp-03.txt Authors: Mary Barnes Chris Boulton."

Similar presentations


Ads by Google