[Opensim-dev] Modifying the networking stack

Heilmann, Michael mheilman at ist.ucf.edu
Sat Nov 15 02:07:35 UTC 2014


Diva

Thank you for the testing workflow, it is always helpful to see how others have had success in testing.

However, this particular endeavor is not a poorly performing grid.  We would like to contribute to the scalability of the OpenSim project.

Michael Heilmann

Date: Fri, 14 Nov 2014 13:56:24 -0800
From: Diva Canto <diva at metaverseink.com<mailto:diva at metaverseink.com>>
To: opensim-dev at opensimulator.org<mailto:opensim-dev at opensimulator.org>
Subject: Re: [Opensim-dev] Modifying the networking stack
Message-ID: <54667A88.4040300 at metaverseink.com<mailto:54667A88.4040300 at metaverseink.com>>
Content-Type: text/plain; charset="iso-8859-1"; Format="flowed"

Michael,

If I understand it correctly, the problem you are dealing with is a
poorly performing grid. With proper configuration, 1 simulator running
on a reasonable server should be able to handle 50 real people hanging
around without showing signs of distress. That's the kind of performance
we have been seeing recently at OSCC and other simulators. These days,
an OpenSim simulator can easily handle 100 people removed from the
physics scene (sitting). When a simulator performs poorly with 2 users,
something is very wrong. My guess would be mono, but that can have other
causes too (i.e. a bad kernel, inappropriate machine, etc.).

Independent of configuration issues, which I can't really help with, if
you want to get a systematic grasp of the performance of OpenSim,
especially the network-related aspects, here's my suggestion: (this is
what I did last year)

1 - Use WinGridProxy between your viewer and your grid, so to understand
what the traffic really is. WireShark is the wrong tool; WinGridProxy
shows you everything. Pay particular attention to AgentUpdate messages
because those are, by far, the largest portion of UDP traffic from
viewers to the server once the initial login phase is over.

2 - Reconfigure your bot framework to send AgentUpdates at a constant
rate of at least 10/sec, or whatever you observe in step 1. Note that
libomv bots may or may not send AgentUpdates at a constant rate,
depending on how they are configured. That setting is
Settings.SEND_AGENT_UPDATES in libomv. By default, libomv bots send
2/sec, and that is given by a timer that runs at
Settings.DEFAULT_AGENT_UPDATE_INTERVAL (500ms). 2/sec is insignificant
compared to what I've seen real viewers do, so if your bot framework
doesn't change that setting, the results will not correlate to
performance with real viewers.

3 - Measure load at the server when the bots are sitting down doing
nothing (except sending the AgentUpdate messages). If the CPU increases
much more than linearly with the number of bots, and you're running a
version of OpenSim as of the last 12 months, then there's something
wrong with the configuration of your simulator server -- kernel, mono,
or opensim -- because that is not what we observe in properly configured
OpenSim servers these days. It was, however, what we observed when our
server had the wrong kernel that was making mono behave badly.

Good luck!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20141114/38f7c867/attachment.html>


More information about the Opensim-dev mailing list