[Opensim-dev] Revising the grid standards (Part I - Principles)

Sean Dague sean at dague.net
Fri Nov 2 18:40:05 UTC 2007


On Sat, Nov 03, 2007 at 12:16:14AM +0800, Adam Frisby wrote:
> This is going to be the first of two emails, this one's containing some 
> of the principles needed for a revised grid protocol, the next one will 
> contain some sample ideas for specific implementation details.
> 
> The problems with the grid code right now:
> 
> 1. It's centralised - has no chance whatsoever of scaling.
> 2. It cant decide whether it wants to be REST, XMLRPC or Remoting.
> 3. It's a mess, has issues with concurrent requests and locking and the
>     server code needs a general overhaul.
> 4. It doesn't support any kind of real authentication or security.
> 5. Linking grids together is not really feasible without sharing
>     servers.
> 
> In these respects, it's about on-par with what the Linden Grid does 
> right now. While everyone has recognised it's been temporary - it's 
> probably about now we should be replacing it with something better.
> 
> So, let's nail this one down - we need a revised standard that has the 
> following features:
> 
> Core:
> 	1. Secure - maintains authentication and hashes of important
> 	   (all?) messages so that impersonating a fraudulent request
> 	   is possible.
I presume you mean isn't possible. :)

> 	2. All requests should use URI's instead of IP/Port
> 	   combinations.

+1

> 	3. No abitrary split of services (eg Asset, User, Grid)
> 	   simply make: "this provides the following features:
> 		* user login
> 		* asset download"

+1

> 	4. One protocol to rule them all, be it SOAP, REST, XMLRPC or
> 	   a sink-neutral remoting implementation. (remoting + scale?)

+1 in theory, though I think we'll need to make allowances for certain
remoting that may need different QOS.  For instances, the Script Server
(and possible Physics Server idea) is going to have vaguely realtime
requirements (the right answer and the wrong time is the wrong answer),
that some of the rest of the grid won't have.

One the specifics front the more I get into REST, the more I like it as
an answer here.

> 	5. Users / Regions should be represented as a URI so they can
> 	   be sent to other grids without too much hassle.

+1

> 	6. Some comms may require a higher speed serialiser,
> 	   we should use URI's where possible to specify which is in
> 	   use. (eg tcp:// vs soap://)

Right, exactly the caveats on point 4.

> 
> Optional:
> 	1. Region control / administration - the same protocol should be 	 
> usable on the region server to do things such as send restart
> 	   commands.

Interesting idea, I like it :)

> 	2. Use a URI / Capability for handling secure requests (needs to
> 	   be combined with SSL/TLS - will need a CA setup for people
> 	   who don't want to buy certs [Root CA -> Grid -> Region?])

Yep, agreed.

     -Sean

-- 
__________________________________________________________________

Sean Dague                                       Mid-Hudson Valley
sean at dague dot net                            Linux Users Group
http://dague.net                                 http://mhvlug.org

There is no silver bullet.  Plus, werewolves make better neighbors
than zombies, and they tend to keep the vampire population down.
__________________________________________________________________
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20071102/6c683fee/attachment-0001.pgp>


More information about the Opensim-dev mailing list