Re: [vwrap] Consensus? What exactly should be in the protocol

Mike Dickson <mike.dickson@hp.com> Wed, 22 September 2010 17:43 UTC

Return-Path: <mike.dickson@hp.com>
X-Original-To: vwrap@core3.amsl.com
Delivered-To: vwrap@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id CCA9F3A6A7E for <vwrap@core3.amsl.com>; Wed, 22 Sep 2010 10:43:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.299
X-Spam-Level:
X-Spam-Status: No, score=-105.299 tagged_above=-999 required=5 tests=[AWL=0.700, BAYES_00=-2.599, J_CHICKENPOX_43=0.6, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
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 FopCpcNEADKF for <vwrap@core3.amsl.com>; Wed, 22 Sep 2010 10:43:13 -0700 (PDT)
Received: from g1t0029.austin.hp.com (g1t0029.austin.hp.com [15.216.28.36]) by core3.amsl.com (Postfix) with ESMTP id 5F73E3A6A85 for <vwrap@ietf.org>; Wed, 22 Sep 2010 10:43:12 -0700 (PDT)
Received: from g5t0012.atlanta.hp.com (g5t0012.atlanta.hp.com [15.192.0.49]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by g1t0029.austin.hp.com (Postfix) with ESMTPS id 92FE638532 for <vwrap@ietf.org>; Wed, 22 Sep 2010 17:43:39 +0000 (UTC)
Received: from [192.168.1.113] (h112.38.130.174.dynamic.ip.windstream.net [174.130.38.112]) by g5t0012.atlanta.hp.com (Postfix) with ESMTPSA id 1424810003 for <vwrap@ietf.org>; Wed, 22 Sep 2010 17:43:39 +0000 (UTC)
Message-ID: <4C9A4049.1080809@hp.com>
Date: Wed, 22 Sep 2010 13:43:37 -0400
From: Mike Dickson <mike.dickson@hp.com>
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.11pre) Gecko/20100922 Lightning/1.0b2 Shredder/3.1.5pre
MIME-Version: 1.0
To: vwrap@ietf.org
References: <AANLkTinxpGRZ9PEWQx=KvaBNGBba4Z+P+SaP4N80VGV1@mail.gmail.com> <E2109887-F5B2-4742-B4F7-1C4655A2DD8B@ics.uci.edu> <62BFE5680C037E4DA0B0A08946C0933D012670D0C9@rrsmsx506.amr.corp.intel.com> <4C9A070B.3070202@hp.com> <AANLkTinVX6Uo2S+7ocdTiVfiTFa9wxM=x1Cncyi5ij86@mail.gmail.com> <4C9A17FC.9090308@ics.uci.edu> <OF98CA2B26.9D4927A8-ON852577A6.00572945-852577A6.0060FB5D@us.ibm.com>
In-Reply-To: <OF98CA2B26.9D4927A8-ON852577A6.00572945-852577A6.0060FB5D@us.ibm.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
X-Brightmail-Tracker: AAAAAQAAAAI=
X-Whitelist: TRUE
Subject: Re: [vwrap] Consensus? What exactly should be in the protocol
X-BeenThere: vwrap@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Virtual World Region Agent Protocol - IETF working group <vwrap.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/vwrap>, <mailto:vwrap-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/vwrap>
List-Post: <mailto:vwrap@ietf.org>
List-Help: <mailto:vwrap-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/vwrap>, <mailto:vwrap-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 22 Sep 2010 17:43:18 -0000

  An excellent synopsis.  It could make a great intro for a document 
describing what VWRAP is trying to do....

Mike

On 09/22/2010 01:39 PM, David W Levine wrote:
>
> So, of course we're building in the web space. I hope nobody is 
> denying that. In fact if you look at everything described in VWRAP is 
> starts with an assumption that most services are delivered as REST or 
> REST like services. I think its safe to say that the people who have 
> been discussing this for over two years are aware of Roy's work, and 
> have thought about how REST applies to virtual worlds. REST represents 
> a lot of thinking about how the web delivers content, and in 
> particular why not to turn the web into a
> distributed object model, or a shared state model, but rather to 
> leverage the observed successful patterns of the web in managing 
> distributed programming problems.
>
> But.. (There is always a but) The very core thing that a virtual world 
> does doesn't fit terribly well into the mainstream web model. The 
> heart of a virtual world is delivering (and Morgaine's phrase serves 
> very well here) a visual mashup of things to users 30-60 times a 
> second, updating continually to reflect the input of the physical 
> simulation, any user
> inputs, and any scripted inputs. Our core problem is taking in the 
> inputs, deriving the new state and sharing it out to the users. This 
> isn't really what the web has historically done. The fact that it 
> isn't, that there are some really interesting distributed system 
> challenges at the very heart of this, is part of its technical appeal 
> to me.
>
> Life is made harder by the fact that the virtual space is being 
> constantly asked to accept new things to deal with. Every time an 
> avatar arrives it brings a set of stuff
> which has to be melded into the scenegraph. Again, we all know this. 
> Rezing an avatar means adding a bunch of new content to the virtual 
> space, and it means pushing
> it back out to all the observers.
>
> In the traditional web you go to a URL, you do a get, and you get 
> handed a huge slab of stuff to render.(some of which may require 
> fetches, plugins, etc.) In the more dynamic 2.0 style stuff, the stuff 
> you get may include dynamic elements which fetch and update more 
> stuff. In the virtual worlds space, we bring to to a fever pitch. we 
> take inputs from all the present users, from a simulation, including 
> the scripted changes within the simulation. We then turn around and 
> want to show this to the user.
>
> How do we present this to the user. Well, we currently use Linden's 
> UDP/http/longpoll tangle. Fine. But. how could we do it?
>
> We could create a video stream and stream it. (WHich isn't very web 
> page like at all, but has some nice properties)
> We could do something like OnLive where we would create a very 
> tailored stream and deliver it to a client with very specialized 
> coupled inputs (And life with a lot of
> constraints and again isn't very web page like)
> We could send a stateless update every frame for the client to render 
> (Well, with ulimited bandwidth and processor power)
> Or.. we could do what we currently do, just cleaner. which, roughly 
> speaking is send down initial state and then send down a series of 
> updates to that state. Woah, not
> exactly a traditional web page. Worse still.. where do we post the 
> inputs from the client to the world?
>
> At the same time, we also get to ask "How do we get all the "stuff" 
> into the region. In Linden's world, the answer is easy. They use a 
> proprietary protocol and fetch it from
> their creaking central servers. In OpenSim, a similar answer obtains. 
> And for added pain which we have all shared, the current set of 
> clients push all the stuff related to
> the user via the region.
>
> VWRAP attempts to describe nothing more than a set of REST web 
> services which represent the region and the services. It attempts to 
> leverage what's been learned from REST, and Linden's system, and in 
> fact OpenSim, to describe a simple, extensible set of services which 
> can describe: Regions, Auth services, how to rez and unrez avatars, 
> how to (when we get some writing down) fetch and manipulate assets, 
> inventory lists and so on.
>
> What you end up with is built deeply on web principals, but not a web 
> page, but mostly because a virtual world is not, at its heart a web 
> page,but a set of services collaborating to
> share state in a pretty unusual way.
>
> - David
> ~Zha
>