August 2005 IETF63 - XCON 1
Some XCON ideas
Henning SchulzrinneDept. of Computer Science
Columbia [email protected]
August 2005 IETF63 - XCON 2
Assumptions
• Avoid transactions and similar constructions– difficult to implement request is atomic
• Map closely to existing conference data structures– avoids having to maintain two similar, but different structures– use superset of existing structure
• Avoid two-level mechanism• Re-use well-known RPC mechanism• Use inheritance (no templates)
– closely related concepts – confusing to have both
• Affinity to CCCP, but further simplified
August 2005 IETF63 - XCON 3
Avoid two-level design
“dial-out user”
get/set/deletesomething
adds little abstraction depth
August 2005 IETF63 - XCON 4
Re-use RPC
• No need to design yet another remote procedure call (RPC) mechanism
• Use SOAP – not prettiest, but by far the most popular– clients, servers, tools available in just about
any language and OS• don’t know about Fortran and COBOL
– well-understood by developer community– no need for protocol-level testing
August 2005 IETF63 - XCON 5
Example
• Does not include standard SOAP header
• e.g., addConference
<conference-description><subject>XCON</subject><service-uris><entry><uri>http://example.com/</uri><purpose>web-page</purpose></entry></service-uris></conference-description>
August 2005 IETF63 - XCON 6
Operations (~CCCP)
• add/change/get/deleteX– Conference– User– Endpoint– Media (for all users)
August 2005 IETF63 - XCON 7
Open issues
• For adding users, can request fail partially– may want to add lots of users at once– add some users, but not others– generally want to proceed even if one user
fails– can find out who got added by description
returned
August 2005 IETF63 - XCON 8
What’s missing?
• Simple start/end time property for conference– no repeats or the like
• Conference media mixing– add floor control property to media– add moderator(s) to user property– define some standard algorithms for now
• tiled: ““video follows audio”• no video mixing: “individual”• extend later
– define video matrix• (label, width, height)