aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-06-25moving the m_PendingAcksMap.Remove() out of the foreach and clearingDr Scofield1-1/+1
it instead after the foreach as we are going through the whole m_PendingAcks list anyhow
2009-06-25have to clear m_PendingAcks not m_PendingAcksMapDr Scofield1-1/+1
2009-06-25hmph: missing '{'/'}', thx to nebadon for reporting it and rob smartDr Scofield1-3/+10
for spotting it!
2009-06-25fixing windows specific compile error.Dr Scofield1-32/+32
2009-06-25cosmetic changeDr Scofield1-2/+1
2009-06-25streamlining m_NeedAck logicDr Scofield1-31/+29
2009-06-25streamling m_PendingAcks logic to get rid of gratuitous List<...>Dr Scofield1-20/+20
instantiations and object copies.
2009-06-25commenting out expensive bits (who in the world even uses SetClientInfo()?)Dr Scofield1-29/+29
2009-06-25changing DropSend()'s foreach loop so that it does not copy theDr Scofield1-5/+11
LLQueItem m_NeedAck queue each time.
2009-06-25commenting out rather expensive bits of GetClientInfo() --- the onlyDr Scofield1-13/+20
bit of GetClientInfo that is actually used seems to be userEP as part of the OSSL osGetAgentIP() script function. Now commented are the parts where we serialize and copy out the *entire* packet queue of the client (locking the packet handler in the process).
2009-06-25more efficient way of checking for already seen packets:Dr Scofield1-29/+47
- uses Environment.TickCount for all timestamps (instead of more costly Util.UnixTimeSinceEpoch() - takes care of Environment.TickCount overflow (which will happens after 24.8 days of system uptime) - avoids instantiating List copies for each check - gets rid of one lock() invocation - moves calculation of loop invariant variable out of the loop itself
2009-06-25adding logging statement for receive buffer sizeDr Scofield1-0/+2
2009-06-25- adds the possibility of setting the socket receive buffer sizeDr Scofield1-35/+51
option for LLUDPServer. On windows .NET the default socket receive buffer size is 8192 bytes, on recent linux systems it's about 111K. both value can be a bit small for an OpenSim instance serving many clients. The socket receive buffer size can be configured via an OpenSim.ini config option - adds a general catch clause to LLUDPServer.OnReceivedData() to prevent it submerging when an unexpected Exception occurs.
2009-06-25From: Alan Webb <alan_webb@us.ibm.com>Dr Scofield3-75/+166
This change moves texture send processing out of the main packet processing loop and moves it to a timer based processing cycle. Texture packets are sent to the client consistently over time. The timer is discontinued whenever there are no textures to transmit. The behavior of the texture sending mechanism is controlled by three variables in the LLCLient section of the config file: [1] TextureRequestRate (mS) determines how many times per second texture send processing will occur. The default is 100mS. [2] TextureSendLimit determines how many different textures will be considered on each cycle. Textures are selected by priority. The old mechanism specified a value of 10 for this parameter and this is the default [3] TextureDataLimit determines how many packets will be sent for each of the selected textures. The old mechanism specified a value of 5, so this is the default. So the net effect is that TextureSendLimit*TextureDataLimit packets will be sent every TextureRequestRate mS. Once we have gotten a reasonable feeling for how these parameters affect overall processing, it would be nice to autonmically manage these values using information about the current status of the region and network. Note that this also resolves the pathologcal problem that previously existed which was that a seated avatar generated very few in-bound packets (theoretically) and would therefore be the least able to retrieve the images being displayed by a projector script.
2009-06-23Also fix group role membership packet sizes to stay safely below MTUMelanie Thielker1-29/+41
2009-06-23Can I be this dumb?Melanie Thielker1-1/+0
2009-06-23Fix an error in group membership sending when the memebr count exceeds 60Melanie Thielker1-2/+6
Also reduce limit to 40 to allow for last logon dates and titles
2009-06-23Allow the member list of groups with more than 70 members to be viewedMelanie Thielker1-36/+42
without crashing
2009-06-23Commenting out the jhurliman fix, since our libOMV doesnt' have those fieldsMelanie Thielker1-5/+5
yet.
2009-06-23Correct an uninitialized field in a packet. Thanks, jhurliman.Melanie Thielker1-0/+8
Fixes Mantis #3831
2009-06-21Correct the behaviro of group deeding and llGetOwner() within deeded objectsMelanie Thielker1-2/+8
2009-06-19From: Chris Yeoh <yeohc@au1.ibm.com>Sean Dague1-3/+18
This patch ensures that the touch positions are set during touch_end events (currently only working for touch_start and touch events).
2009-06-18Thanks Michelle Argus for Mantis #0003742: Terrain editor - Flatten tool ↵Dahlia Trimble1-1/+0
lowers Land
2009-06-17Fix an uninitialized data block. Thanks, jhurlimanMelanie Thielker1-0/+1
2009-06-10Formatting cleanup.Jeff Ames1-2/+2
2009-06-01Minor: Change OpenSim to OpenSimulator in older copyright headers and ↵Jeff Ames18-18/+18
LICENSE.txt.
2009-05-28This may bring the missing texture back.diva1-1/+5
2009-05-20Add copyright headers, formatting cleanup.Jeff Ames2-6/+6
2009-05-19trying to fix exception with in LLPacketQueue probably caused byDr Scofield1-5/+5
missing locks where the queue was modified.
2009-05-18From: Chris Yeoh <yeohc@au1.ibm.com>Dr Scofield1-1/+2
We've encountered problems with textures never fully downloading and objects not moving or being deleted (from the client's point of view) even when the bandwidth settings on the client have been set very low. This can happen over reasonably lossy links (eg you're on the other side of the world from the server) as the server retries 3 times and then gives up. Whilst its possible to set ReliableIsImportant, this forces the server to keep retrying no matter what which potentially could lead to problems. This patch allows for the setting of MaxReliableResends explicitly (is set to 3 normally) in OpenSim.ini so if you know you will have clients connecting with poor connections you can set it a bit higher (10-15 works quite well even for very poor connections).
2009-05-17Removing a superfluous message, just to make bamboo run again.diva1-1/+0
2009-05-16Send the owner name, not the client name on SendDialog.Homer Horwitz1-3/+4
This modifies IClientAPI.SendDialog slightly. Fixes Mantis #3661.
2009-05-15Heart surgery on asset service code bits. Affects OpenSim.ini configuration ↵diva6-15/+119
-- please see the example. Affects region servers only. This may break a lot of things, but it needs to go in. It was tested in standalone and the UCI grid, but it needs a lot more testing. Known problems: * HG asset transfers are borked for now * missing texture is missing * 3 unit tests commented out for now
2009-05-12Add more group notify glueMelanie Thielker1-0/+2
2009-05-12Paving the way for syncing group permissions across a gridMelanie Thielker1-1/+1
2009-05-11* Implements IP and DNS based ban facilities to OpenSim. Adam Frisby1-1/+33
* User interface is ... primitive at best right now. * Loads bans from bans.txt and region ban DB on startup, bans.txt is in the format of one per line. The following explains how they are read; DNS bans are in the form "somewhere.com" will block ANY matching domain (including "betasomewhere.com", "beta.somewhere.com", "somewhere.com.beta") - make sure to be reasonably specific in DNS bans. IP address bans match on first characters, so, "127.0.0.1" will ban only that address, "127.0.1" will ban "127.0.10.0" but "127.0.1." will ban only the "127.0.1.*" network
2009-05-10* Further testing against core packet issue.Adam Frisby1-2/+3
2009-05-10* Attempting to diagnose a core packet issue on Windows/.NET. Adding ↵Adam Frisby1-2/+5
additional locks to see if it fixes the problem.
2009-05-09Fox a boo-boo in ExtraParams - a packet with no data blocks could crashMelanie Thielker1-3/+6
the session. Also allow multiple data blocks.
2009-05-07instrument most of the tests with a new InMethod function that may help us ↵Sean Dague2-0/+11
figure out where that pesky deadlock is during test runs.
2009-05-07Change avatar updates to be processed the same way object updates are, e.g.Melanie Thielker1-27/+51
packet length check. More changes to come
2009-05-05Add copyright header. Formatting cleanup. Ignore some generated files.Jeff Ames2-25/+13
2009-05-04* minor: remove some mono compiler warnings, minor cleanupJustin Clarke Casey1-16/+9
2009-05-04Add a method to flush the prim update buffers once a frame, since the timerMelanie Thielker1-0/+12
appear to be too slow to be useful, or fail too fire. I may remove the timers as a consequence if this.
2009-05-04Add a parameter that limits the max size of the outbound packet. DefaultedMelanie Thielker1-6/+41
at 1400 since the headers get added to that (32 bytes plus UDP headers)
2009-05-03Make a race condition in packet resending smallerMelanie Thielker1-0/+1
2009-05-02* Reversing experimental change in previous rev.Adam Frisby1-1/+1
2009-05-02* Experimental: Speeds maximum resend per second from 80 packets to 400. ↵Adam Frisby1-1/+1
(From maximum 117kbit to 585kbit)
2009-05-02If a packet pooling blows up, fail gracefully instead of disconnectingMelanie Thielker1-20/+32
the user
2009-05-02Handle resends betterMelanie Thielker2-1/+6