[Opensim-dev] Revising the grid standards (Part I - Principles)
Adam Frisby
adam at gwala.net
Fri Nov 2 16:16:14 UTC 2007
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.
2. All requests should use URI's instead of IP/Port
combinations.
3. No abitrary split of services (eg Asset, User, Grid)
simply make: "this provides the following features:
* user login
* asset download"
4. One protocol to rule them all, be it SOAP, REST, XMLRPC or
a sink-neutral remoting implementation. (remoting + scale?)
5. Users / Regions should be represented as a URI so they can
be sent to other grids without too much hassle.
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://)
Optional:
1. Region control / administration - the same protocol should be
usable on the region server to do things such as send restart
commands.
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?])
More information about the Opensim-dev
mailing list