<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<STYLE>.hmmessage P {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px
}
BODY.hmmessage {
FONT-SIZE: 10pt; FONT-FAMILY: Tahoma
}
</STYLE>
<META content="MSHTML 5.50.4807.2300" name=GENERATOR></HEAD>
<BODY class=hmmessage>
<DIV><FONT face=Arial color=#0000ff><SPAN class=328153913-10022008>Not to hijack
the discussion, but this gets to a meta issue that I'm becoming more concerned
about. It came up when we were discussing how currency should work, ties
into this discussion and probably has broader implications. That is, what
can we know about the regions we are in? In Second Life, we currently
assume that the grid and the region are both hosted by LL and are using the same
latest version of the software.</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff><SPAN
class=328153913-10022008></SPAN></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff><SPAN class=328153913-10022008>However, with
OpenSim, when I move from one region to another, I may be moving not only from
one server to another, but to different versions of the OpenSim software, to a
different hosting service, perhaps to a region that has been hacked or
customized in some weird way.</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff><SPAN
class=328153913-10022008></SPAN></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff><SPAN class=328153913-10022008>As far as I
can tell, there is nothing available to get details about the region I'm
entering. Are there ways to get such information? Should there
be? If so, what might that look like?</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff><SPAN
class=328153913-10022008></SPAN></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff><SPAN
class=328153913-10022008>Aldon</SPAN></FONT></DIV>
<BLOCKQUOTE>
<DIV class=OutlookMessageHeader dir=ltr align=left><FONT
face=Tahoma>-----Original Message-----<BR><B>From:</B>
opensim-dev-bounces@lists.berlios.de
[mailto:opensim-dev-bounces@lists.berlios.de]<B>On Behalf Of </B>Stefan
Andersson<BR><B>Sent:</B> Sunday, February 10, 2008 3:11 AM<BR><B>To:</B>
brianw@terrabox.com<BR><B>Cc:</B>
opensim-dev@lists.berlios.de<BR><B>Subject:</B> Re: [Opensim-dev] region
status tracking in GridServer<BR><BR></FONT></DIV>I would not say this is
'fatally flawed' just because it can be the result of one
clients connectivity problems; it's still an indication that somebody
somewhere had troubles reching the target. That's why it should only be seen
as a ping trigger, not as status authoritative.<BR> <BR>Also, it's
not the client that reports on the trouble, it's the source region - which
means, that if the client can re-connect to the source region but not to the
target, chances are that there's something wrong with the target.<BR><BR>If a
grid server is the authority for say 6000 servers, frequent grid wide pings
becomes quite the task, not to mention the fact that the grid server itself
can (and in an heterogenous grid setting, will) experience connectivity
problems, just as the client
can.<BR> <BR>Best,<BR>/Stefan<BR><BR> <BR>
<HR id=stopSpelling>
<BR>> Subject: RE: [Opensim-dev] region status tracking in
GridServer<BR>> From: brianw@terrabox.com<BR>> To:
stefan@tribalmedia.se<BR>> CC: opensim-dev@lists.berlios.de<BR>> Date:
Sat, 9 Feb 2008 18:22:45 -0600<BR>> <BR>> Unfortunately this is fatally
flawed since teleports can fail due to<BR>> internet routing issues taht
affect only one person, amongst other<BR>> movement failures that would
cause the client to think a region is<BR>> offline vs the server knowing
it's offline or online.<BR>> <BR>> I'm posting a patch to mantis that
lays the foundation for regions beign<BR>> online or offline and when they
were last heard from by the grid server.<BR>> <BR>> <BR>> <BR>> On
Sat, 2008-02-09 at 21:25 +0100, Stefan Andersson wrote:<BR>> > Ok, I was
to do some research before I replied on this thread, but off<BR>> > the
top of my head;<BR>> > <BR>> > first of all, we should define what
we want the region status data<BR>> > for; the data should guide choice
of implementation.<BR>> > <BR>> > That said, there is quite a
distinct possibility that we can use the<BR>> > _clients_ as our agents
for detecting offline region servers.<BR>> > <BR>> > Whenever
someone tries to teleport off a region, the source region is<BR>> >
informed of this, to be able to downgrade avatar presence to child.<BR>>
> <BR>> > If the teleport fails (the target region is unresponsive)
the<BR>> > connection comes back to the region so it should upgrade the
avatar<BR>> > presence to root again.<BR>> > <BR>> >
(Incidentally, I've filed a mantis on this, since we actually don't<BR>>
> handle that, and failed teleports results in you coming back to a<BR>>
> region, but as a 'child' ie being stuck there and possibly causing
all<BR>> > kind of havoc with the ClientView)<BR>> > <BR>> >
Now, if we handled the failed teleport correctly, this could also<BR>> >
notify the grid service that a failed teleport has occurred.<BR>> >
<BR>> > The grid service could then ping the target region, to check on
its<BR>> > state.<BR>> > <BR>> > This is an alternative or
complement to grid-wide ping sweeps; you<BR>> > probably want both, but
could do the sweeps much less frequently.<BR>> > <BR>> > Combine
this with proper region signon/signoff and I say you got<BR>> >
options.<BR>> > <BR>> > Best,<BR>> > /Stefan<BR>> >
<BR>> > <BR>> > <BR>> >
______________________________________________________________________<BR>>
> <BR>> > > From: brianw@terrabox.com<BR>> > > To:
opensim-dev@lists.berlios.de<BR>> > > Date: Sat, 9 Feb 2008 12:56:10
-0600<BR>> > > Subject: [Opensim-dev] region status tracking in
GridServer<BR>> > > <BR>> > > After much IRC discussion I
would like to make a couple changes to<BR>> > the<BR>> > >
regions table.<BR>> > > <BR>> > > online bool NOT NULL
deafult false<BR>> > > last_seen int(11) NULL<BR>> > >
<BR>> > > The online column would be updated as a region logs in and
out of<BR>> > > GridServers. This way an external management/status
application<BR>> > doesn't<BR>> > > have to pester the grid
server for the full list of regions and<BR>> > their<BR>> > >
status. This would also provide data to regions requesting map<BR>> >
blocks as<BR>> > > to the status of a region (a.ka. LL's Red Regions
in the map view).<BR>> > > <BR>> > > The last_seen column
would be of asistance to these same management<BR>> > apps<BR>> >
> in helping the administrator to determine which regions were long<BR>>
> term<BR>> > > MIA or just plain not wanted anymore by walk away
grid members.<BR>> > > <BR>> > > My main concern is load
placed on the grid server and having to ping<BR>> > > regions by
external applications having to probe every region<BR>> >
currently<BR>> > > to tell if it's still around or not.<BR>> >
> <BR>> > > To acomplish this i'm workign on a patch to implement
region_logout<BR>> > > XMLRPC that would be called via<BR>> >
Region.Communications.DeregisterRegion<BR>> > > (which is currently
empty).<BR>> > > <BR>> > > I woudl also add an update of
RegionProfileData as each RPC call si<BR>> > made<BR>> > > by a
region to GridManager. Database updates would only happen<BR>> > >
periodicly as regions login and logout.<BR>> > > <BR>> > >
Are there any objections or reasons not to implement this?<BR>> > >
<BR>> > > _______________________________________________<BR>>
> > Opensim-dev mailing list<BR>> > >
Opensim-dev@lists.berlios.de<BR>> > >
https://lists.berlios.de/mailman/listinfo/opensim-dev<BR>> > <BR>>
<BR><BR></BLOCKQUOTE></BODY></HTML>