Re: [mmox] MMOX: Strawman scope/goals/approach
Christian Scholz <cs@comlounge.net> Tue, 24 February 2009 23:31 UTC
Return-Path: <cs@comlounge.net>
X-Original-To: mmox@core3.amsl.com
Delivered-To: mmox@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 862943A6917 for <mmox@core3.amsl.com>; Tue, 24 Feb 2009 15:31:03 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.324
X-Spam-Level:
X-Spam-Status: No, score=-2.324 tagged_above=-999 required=5 tests=[AWL=0.275, BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id I--f9c424Xnr for <mmox@core3.amsl.com>; Tue, 24 Feb 2009 15:31:01 -0800 (PST)
Received: from post.comlounge.net (post.comlounge.net [85.214.59.142]) by core3.amsl.com (Postfix) with ESMTP id 4C7123A6999 for <mmox@ietf.org>; Tue, 24 Feb 2009 15:31:01 -0800 (PST)
Received: from localhost (localhost [127.0.0.1]) by post.comlounge.net (Postfix) with ESMTP id 6C2B31CE0223; Wed, 25 Feb 2009 00:31:19 +0100 (CET)
Received: from post.comlounge.net ([127.0.0.1]) by localhost (h1346004.stratoserver.net [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id OMVoIn0si1Ap; Wed, 25 Feb 2009 00:31:18 +0100 (CET)
Received: from [192.168.178.40] (pD9EBD593.dip.t-dialin.net [217.235.213.147]) by post.comlounge.net (Postfix) with ESMTP id 3E8EC1CE01A0; Wed, 25 Feb 2009 00:31:17 +0100 (CET)
Message-ID: <49A48342.4020707@comlounge.net>
Date: Wed, 25 Feb 2009 00:31:14 +0100
From: Christian Scholz <cs@comlounge.net>
User-Agent: Thunderbird 2.0.0.19 (Windows/20081209)
MIME-Version: 1.0
To: "Mark P. McCahill" <mccahill@duke.edu>
References: <OF7F32322B.61DEE52B-ON85257567.00564FEE-85257567.00585420@us.ibm.com> <6B85E8A2-831E-43B1-B0AC-C504AB596B26@duke.edu>
In-Reply-To: <6B85E8A2-831E-43B1-B0AC-C504AB596B26@duke.edu>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
Cc: mmox@ietf.org
Subject: Re: [mmox] MMOX: Strawman scope/goals/approach
X-BeenThere: mmox@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Massively Multi-participant Online Games and Applications <mmox.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/mmox>, <mailto:mmox-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mmox>
List-Post: <mailto:mmox@ietf.org>
List-Help: <mailto:mmox-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmox>, <mailto:mmox-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 24 Feb 2009 23:31:03 -0000
Mark P. McCahill schrieb: > +1 > > I really like the approach David is taking here. The first two items: > > * managing identity > * naming and authenticating services in MMOX worlds > > are prerequisites for getting anywhere with cross-system interoperability, > would benefit users of existing systems, and should be achievable in the > fairly near term. Understanding how to negotiate these services is the > place to start, rather than defining an abstract wire-level protocol, if > the intent is to bring something other than Second Life-like worlds into > the fold. +1 and I would actually list: - defining an identity endpoint - service discovery to find services for this identity such as profile definition, friends list, inventory server, ... - distributed authorization Then having a way defined for services to be found and authorized one could define the specifics of these services. I would extend this beyond MMOX worlds though because there is huge interest in the web and social networking players as well. So maybe a seperate working group which has not the focus so much just on virtual worlds for this part might make sense. But I have no idea about the IETF process anyway at this time and if and how this would be possible or wanted. -- Christian > > > Mark McCahill > > > On Feb 24, 2009, at 11:04 AM, David W Levine wrote: >> >> 1. The ability to manage one's identity when interacting in >> multiple MMOX spaces. >> a. Allowing presence information to be shared and >> coordinated across >> MMOX spaces >> b. Permitting friends lists, and IMs to be shared across >> spaces >> c. Permitting MMOX spaces to share naming >> d. Simple ways of allowing a consistent name, managed by >> the user, and >> verifiable by other users >> e. Single sign on, mediated by multiple spaces, within >> the policy constraints >> of the spaces >> f. A consistent appearance, within the constraints of >> the various systems >> g. The ability to manage the degree of visibility / >> coupling between identities >> in MMOX spaces >> >> Note that for all of these, there is no requirement to couple the >> systems together >> beyond managing identity, and share presence and IM information. These >> use >> cases don't speak to how you move between spaces. You may have to >> shutdown >> your client on one system and start another. This also is not a "You >> must enable >> this" this is very much a "Make it easy for spaces which want to >> enable this to do >> it." Also, note that "presence and messaging" speak to user needs, and >> consitent >> appearance and name (when desired by users) again speeks to meeting >> user's >> desires. >> >> 2. The ability for the services in an MMOX world to be named, >> and authenticated >> a. Services to associate virtual places and the services >> which support them >> with authentication and administrative domains >> b. Services to permit a service to validate the >> membership of a remote >> service in one or more authentication and administrative domains >> >> This is needed so that we can do essentially any of the >> interoperability work. >> Without some framework which lets us know who we are talking to, it is >> impossible to trust the behavior of distributed systems. >> >> 3. The ability to share content between MMOX spaces >> a. Import and Export of content and models (This may >> well leverage off of >> existing work such as Collada) Static, import/export of content >> while not >> terribly dramatic is an important part of the value chain of >> interoperability >> b. Mark up schemes which recognize the existence of >> multiple presentation >> environments, but permit the sharing of content >> i. Shared "type" information for the various >> types of graphical >> content which MMOX spaces contain >> ii. Extensible, with a common registry, so that >> we can understand the >> types of contents a client can accept, and a >> virtual space, or virtual >> asset store can be asked to provide >> c. A MMOX based, system independent asset addressing >> scheme which includes >> i. Content negotiation based on 2b >> ii. Access Management based on (1) and (2) >> >> This is, to my mind, the key mid term deliverable >> >> 4. The affordances in MMOX to permit the creation of >> micro-payment economies >> a. Appropriate spots defined in MMOX protocols for cost >> information >> b. Appropriate spots defined in MMOX protocols for >> reference to >> micropayment systems >> >> 5. The ability to share "non immersive streams" between spaces >> a. Markup to permit the consistent sharing of stream >> media such as voice, >> and video, with shared start and synchronization >> information to permit >> "parallel" events between MMOX space >> >> 6. The ability to express Policy intent between MMOX services >> and virtual spaces >> a. Places in reserved in the MOX protocols for >> expressing policy intent >> b. One or more policy languages for expressing policy >> >> >> The solution space: >> >> Most of the deployed solutions partition the software problem into the >> following chunks. >> >> 1. Some form of a client which permits a user to interact with >> the shared experience >> 2. Virtual space servers which manage the state of a portion of >> virtual space >> 3. A set of supporting services used by the virtual space servers >> >> Note that exactly how these three large chunks are assembled and the >> granular nature of >> the services can vary radically, even when serving very similar >> environments. Some >> environments push a large amount of rendering and management onto >> complex clients, >> others perform the bulk of rendering in the server portion of the >> deployment. Some >> implementations combine client and simulation into a single entity >> which does some >> simulation and some user presentation. Some distribute the simulation, >> some centralize it. >> >> The heart of most of the solutions is managing to accept and merge a >> stream of updates, >> and then distribute the merged updates back to users. This can happen >> at a range of >> granularities. The two ends of the spectrum, are, roughly, sending >> updates as a fully >> merged audio visual stream, which the client merely displays, and >> sending low level >> changes to a underlying mode, which the client uses to assemble a >> complete visual >> representation of the scene. Variations include croquet and qwaq >> which use an >> underlying distributed object model to pass large amounts of updates, >> and approaches >> such as used by SecondLife and Protonsphere, where voice is managed in >> a separate >> service, with the merged state service merely letting the voice >> service know where the >> users are located. >> >> Closely related, are issues of representation and format of content. >> This takes several, >> separable forms. Import and Export of material to the core >> environment, and, more >> problematically, run time representations >> >> Approach >> Our overall approach should be web centric, and web services oriented. >> We can, and >> should think of sets of related services which can be composed as part >> of different >> solutions which will enable varying degrees of interoperability. We >> can, and should >> attempt to provide as web like an approach to function as possible. >> Content negotiation, >> separation of protocol from security, separation of interface from >> implementation and >> other techniques. >> >> Our goal is not to enshrine any single virtual world as the standard >> for all MMOX spaces, >> but rather create a flexible, extensible set of services which will >> allow us to grow larger >> and large overlapping sets of capabilities. My expectation is that we >> will see a lot of low >> hanging fruit in the area of identity, authentication, authorization >> and presence >> management (Where a user is, and allowing messaging to them across >> MMOX spaeces) >> and initially, we will find a lot of format and content area addressed >> by gateways, >> markup, and content negotiation. I see nothing wrong with having a URI >> which refers to >> "A pretty maple tree with fall colors" which provides a way to fetch >> the "Collada Style >> version" the "3dMax Mesh version" the "Linden Lab 1.2 sculpty spec >> version" such that >> a virtual space can select, through content negotiation the one most >> useful to it. >> >> We get value, when we have consistent ways of referring to all the >> various forms of >> content, and we get more value when we have ways of using existing >> content negotiation >> to allow a web light selection of an appropriate form. It is equally >> possible to imagine >> negotiating between a client and a virtual space, the desired form of >> objects. There are >> some deep challenges lurking, such as when two different approaches >> have radically >> different >> >> What I would encourage us, as a mailing list to do, is look through >> the problem >> statement, and interoperability goals I've put together here. They are >> an attempt to >> capture the various sentiments in the ongoing discussion. I am sure I >> have missed points, >> and I am sure some people will disagree with some of the points I have >> made. >> >> I would ask people to look for "No, you missed X" and "Hey, I don't >> think Y" is true. I >> will attempt to capture all of those, and revise the document, until >> we think it represents >> something close to the general group consensus. (I am not looking for >> 100% consensus, >> but a "Yeah, this captures most of what we're trying to do." With that >> in hand, I would >> suggest we could then begin to enumerate the specific services and >> markups we need to >> support our goals, and begin to flesh out use cases to help us >> understand the goals and >> services. >> >> I do not expect this to yield a set of specs which Linden Lab, or >> OpenSim, Or any one >> virtual world vendor or project would implement whole. What I expect >> it to yield is a set >> of specs, which can be combined with existing projects and code bases >> to drive us >> towards a more interoperable future. >> >> Out of scope >> >> I also want to begin to accumulate a short list of "No, this is out of >> scope" assertions >> >> 1. We will provide all the affordances necessary to permit a >> broad range of >> interaction policies. Appropriate policies for various deployed >> solutions and >> future deployed solutions is out of scope, beyond providing us use >> cases which >> highlight specific affordances we may wish to consider >> 2. Whether or not immersive multi-party spaces are useful and >> which specific >> capabilities are required is out of scope. We aspire to support a >> broad range of >> possible capabilities, and we respect that different organizations >> will have >> different perspectives on what is required. Our goal is to define broad, >> interoperable frameworks which will enable a range of deployments, not >> to define >> the one true model for this space >> 3. Propose additional statements here >> >> Closing comments >> >> I don't think our collective goal can be to take any one existing spec >> or solution and >> simply declare it the basis for our work going forward. At the same >> time, we must base >> our work in actually running code, showing real interoperability. Our >> goal must be to >> build supersets of function, based on existing products and solutions >> which demonstrate >> real interoperability. >> >> The IETF favors working code and growing consensus over blank paper >> and blue sky >> efforts. This is based in a history of success and failure in the >> industry when it comes to >> building, promoting and succeeding at standards work. Work at the IETF >> is grounded in >> working code. >> >> One way forward is to focus on several clusters of work. One: a clear, >> broad framework, >> which forms the basis for long term broad interoperation. Two: >> Capturing the current set >> of incompatible and overlapping formats and protocols in use, so that >> we can create a >> extensible and shared catalog of artifacts for sharing. (eg. "Here is >> the canonical, >> extensible list of graphic content types you might want to move on a >> MMOX transport" >> Three grow out proposed solutions such as LLSD, OGP, and others, as >> they are >> contributed towards a common superset which can be used to as the >> basis for >> demonstrating concrete progress towards interop goals. Four, Identify >> places where we >> simply want to use existing work, such as OpenID, OAuth, X.509 and >> create a shared >> profile for how we can use these protocols to further interoperability. >> >> >> >> >> >> >> >> <Scope01C.txt><Scope01C.doc> >> _______________________________________________ >> mmox mailing list >> mmox@ietf.org >> https://www.ietf.org/mailman/listinfo/mmox > > _______________________________________________ > mmox mailing list > mmox@ietf.org > https://www.ietf.org/mailman/listinfo/mmox -- Christian Scholz Blog: http://mrtopf.de/blog Company: http://comlounge.net Podcasts: http://datawithoutborders.net, http://openweb-podcast.de
- [mmox] Requirements for new xxSD specification Catherine Pfeffer
- [mmox] MMOX: Strawman scope/goals/approach David W Levine
- Re: [mmox] MMOX: Strawman scope/goals/approach Jon Watte
- Re: [mmox] Requirements for new xxSD specification Lisa Dusseault
- Re: [mmox] MMOX: Strawman scope/goals/approach Mark P. McCahill
- Re: [mmox] MMOX: Strawman scope/goals/approach Christian Scholz
- Re: [mmox] MMOX: Strawman scope/goals/approach Meadhbh Hamrick (Infinity)
- Re: [mmox] MMOX: Strawman scope/goals/approach Christian Scholz
- Re: [mmox] MMOX: Strawman scope/goals/approach Gareth Nelson
- Re: [mmox] MMOX: Strawman scope/goals/approach Jon Watte
- Re: [mmox] MMOX: Strawman scope/goals/approach Lawson English
- Re: [mmox] MMOX: Strawman scope/goals/approach Meadhbh Hamrick (Infinity)
- Re: [mmox] MMOX: Strawman scope/goals/approach Gareth Nelson
- Re: [mmox] MMOX: Strawman scope/goals/approach Meadhbh Hamrick (Infinity)
- Re: [mmox] MMOX: Strawman scope/goals/approach David W Levine
- Re: [mmox] MMOX: Strawman scope/goals/approach Ryan McDougall