[sldev] [ARCH] Raw notes from the Second Life Grid Architecture Working Group.

Tao Takashi tao.takashi at googlemail.com
Fri Sep 14 08:15:30 PDT 2007


Hi!

As I was part of the meeting yesterday I though I might shade some light in
what actually was discussed there in form of a little introduction. I
already posted some initial thoughts on my blog:
http://taotakashi.wordpress.com/2007/09/14/linden-lab-reveals-the-future-of-second-life/

So basically it is all about the future of the SL grid. If you imagine a not
so distant future in which virtual worlds are a part of everybody's life as
it is now numbers of regions, numbers of users and concurrency will raise in
the millions and billions. It should be clear that the current setup of the
grid will not be able to cope with that (think central servers).

The other issue is the requirements many companies and other institutions
have regarding the grid. For instance many want to host their own content
instead of letting Linden Lab to do that. This might be ok with marketing
activities but might not be the case with confidential content for online
collaboration. And as you also know there was a some talk recently about
allowing sims hosted by 3rd parties connect to the Second Life grid. You on
this list here are very aware of the issues involved with that.

To solve all these problems a new grid architecture needs to be made. And
this is what Zero Linden et. al. was presenting yesterday. I believe he will
put up the slides on the wiki soon as they are sort of important to
understand all this. More important is though that Linden Lab is not
thinking about doing all this architectural work etc. alone in private but
in fact it is a very open project and everybody is invited to participate.
The first meeting needed to be a small group of people in order to get it
started but it's not a fixed group and mostly participation drives the
decision who might be part of the next meeting. Also no decisions have been
made and nothing is set in stone yet (it also takes some time to understand
all that and think about issues/problems anyway).

Communication about this project will be done on the wiki, on Jira and on
this list. So the usual communcation mechanisms will be used. There have
been workitems defined during the first meeting like collecting use cases,
thinking about possible altermative architectures and so on and all these
need your input. You can find them in the chatlog attached in the initial
mail if you search for "WORKITEM".


**The architecture**

I am not sure I got everything completely right but let me shortly describe
the basic principles as I understood it.

Basically we have right now the region as the main entry point for viewers
to connect. They also act as proxies to the central servers such as user
server, asset server and so on. With the projected numbers from above those
central servers will not very likely be capable of handling this load.

So the main approach is to split between agents and regions and Zero
presented us with the Agent domain and Region doman. The Agent Domain knows
everything about agents and the Region Domain knows everything about
Regions.

The agent domain consist of 3 parts: The agent services, the agent hosts and
the agent store.
The agent service contains stateless information about an agent (e.g.
profile information), the agent host stores session information about a
logged in avatar (where is the agent, which friends are online, status of
the agent (busy?) ...) and the agent store stores the actual data about an
agent, including inventory.

All these might be separate boxes or a cluster of boxes, it doesn't matter
to the architecture.

The region domain consists of similar parts: Region services know stateless
information about a region such as the name, Region hosts are basically what
we call today simulators (OpenSim could be an implementation of such a
region host) and Region Stores store information about a region such as the
objects on the region, land information etc.

Then there are some global services such as identity (important is to have
only one identity and not one for every grid), location (actually better
named topology as it defines which region is next to which), currency (L$ or
something else) and search.

Now there can be multiple agent domains and region domains and it's a
question of trust which region domains lets agents from a specific agent
domain in. One region and agent domain would be the one of Linden Lab and it
might allow further agent domains (such as one of company x) to login to
their region domain. If might even allow every agent domain but maybe with
restricted access (no rezzing, ...)

But I might get a bit too much into detail here. Just imagine that all this
should be as flexible as possible. There are many hard problems such as
topology and identity and probably many we don't see right now. And that's
why discussion and use case scenarios are very important to have.

I am not sure the chatlog makes more sense now but I hope it does. :-)

And I might also describe this further on the wiki as soon as the slides are
there and nobody else has done it already.

I definitely hope that a lot of people will participate in this! It truly
rocks :-)

(and if I made any mistakes please correct me!)

-- Tao


-- 
taotakashi at gmail.com
http://taotakashi.wordpress.com
http://worldofsl.com

RL: Christian Scholz, cs at comlounge.net
http://mrtopf.de

http://comlounge.net
http://comlounge.tv
http://mrtopf.tv
http://dev.comlounge.net
IRC: MrTopf/Tao_T
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.secondlife.com/pipermail/sldev/attachments/20070914/1d0e0c4c/attachment-0001.htm


More information about the SLDev mailing list