Paul, a couple of other additional points below. Paul Fishwick wrote: > Thanks - I will take all of this into account! > -paul > > > Cristina Videira Lopes wrote: >> For "grid mode" things are not as you describe. I can tell you how >> things are done currently, but this may/can change very easily, and in >> fact things are quite different if C is Grider. >> >> For the normal LL client, and as of now: C never talks to G/A/I >> directly; it talks to U and to Rs only. Upon login, C first contacts U, >> which in turn contacts G to know the info about the intended login >> Region, and then it informs that region R about the agent. >> >> On region crossings/TPs G is also not involved that much; it only serves >> for the departing region to find the info about the destination region. >> Once it gets that info, crosssings/TPs are done region-to-region. It's >> also the regions that interact with C during this process. The only >> difference in HG is that G is not used for region lookup at all; instead >> the info about the destination region is local to the departing region. >> But TPs are almost identical, with one extra first step. >> >> You can find some sequence diagrams here: >> http://opensimulator.org/wiki/Teleports >> >> Paul Fishwick wrote: >> >>> I am writing a tutorial for a conference, where I'd like to introduce >>> them to OpenSim, and I wanted in that tutorial to include some information >>> on how services connect. If there is a web page that I have overlooked, >>> please let me know where it is. >>> >>> Here are some assumptions, which may not be right--and I'd like to be >>> as accurate as possible. Here are some letters I'll use for servers: >>> >>> C - Client >>> G - Grid >>> U - User >>> A - Asset >>> I - Inventory >>> M - Messaging >>> Rx - Region # x >>> >>> ............................. >>> >>> 1. For StandAlone mode, C connects with one server that contains all of >>> the other services >>> inside of it, along with N regions. So, this behavior seems more >>> straightforward. >>> All "other services" are (U,A,I,M, and Rx). I am assuming that >>> most LSL commands >>> are executed server side, except for some like Rotation, Audio and >>> Video Streaming... >>> Is there a list of what is server vs. client side?
I don't think there is such a list. In this particular example though, rotation is done server side - not sure about what section of the mechanism is server side for the other two. >>> >>> 2. For Grid mode, here are some guesses - please correct or edit.. >>> >>> C connects to G and then G serves as a gateway, routing messages to >>> the other >>> services. For example, if a user logs in, C connects to G which >>> connects to U, >>> which contains information on all agents and their avatars, >>> positions, etc. >>> >>> A and I require the bulk of the database storage since Regions (R) >>> have a UUID >>> (pointer) reference and do not contain the bulk of the data (i.e, >>> textures, images, >>> prim attributes). Certainly, it's true to say that A contains the bulk of the data. I still contains some but like the regions they have UUID pointers to assets. Also, R does contain prim attributes directly. >>> >>> If a region crossing is made from, say R1 to R2, R1 sends a message >>> to G which >>> forwards it to R2. >>> >>> 3. For HyperGrid mode, there is no "G" and so it is more of a peer to >>> peer relationship >>> of StandAlones. Well, a peer to peer relationship between Grids _and_ StandAlones (or Standalone Grids as Diva likes to call them :) -- justincc Justin Clark-Casey http://justincc.wordpress.com _______________________________________________ Opensim-dev mailing list [email protected] https://lists.berlios.de/mailman/listinfo/opensim-dev
