aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* have to clear m_PendingAcks not m_PendingAcksMapDr Scofield2009-06-251-1/+1
|
* hmph: missing '{'/'}', thx to nebadon for reporting it and rob smartDr Scofield2009-06-251-3/+10
| | | | | for spotting it!
* cosmetic changeDr Scofield2009-06-251-2/+1
|
* streamlining m_NeedAck logicDr Scofield2009-06-251-31/+29
|
* streamling m_PendingAcks logic to get rid of gratuitous List<...>Dr Scofield2009-06-251-20/+20
| | | | | instantiations and object copies.
* commenting out expensive bits (who in the world even uses SetClientInfo()?)Dr Scofield2009-06-251-29/+29
|
* changing DropSend()'s foreach loop so that it does not copy theDr Scofield2009-06-251-5/+11
| | | | | LLQueItem m_NeedAck queue each time.
* commenting out rather expensive bits of GetClientInfo() --- the onlyDr Scofield2009-06-251-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).
* more efficient way of checking for already seen packets:Dr Scofield2009-06-251-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
* Minor: Change OpenSim to OpenSimulator in older copyright headers and ↵Jeff Ames2009-06-011-1/+1
| | | | LICENSE.txt.
* * Reversing experimental change in previous rev.Adam Frisby2009-05-021-1/+1
|
* * Experimental: Speeds maximum resend per second from 80 packets to 400. ↵Adam Frisby2009-05-021-1/+1
| | | | (From maximum 117kbit to 585kbit)
* If a packet pooling blows up, fail gracefully instead of disconnectingMelanie Thielker2009-05-021-20/+32
| | | | | | the user
* Handle resends betterMelanie Thielker2009-05-021-1/+1
|
* Move a lock to attempt to cut down packet lossMelanie Thielker2009-05-021-4/+4
|
* Numerous packet improvements.Melanie Thielker2009-05-021-8/+14
| | | | | | | | | | | | | Don't allow packets to be resent before they have actually been sent for the first time. Switch from serializing a packet to get it's length to the LibOMV provided Length property. Fix resend timing. Fix the use of dangling references to Acked packets. Fix the packet handler to play nice with the packet pool. Fix the packet pool. Add data block recycling to the packet pool. Packet pool is now ENABLED by default. Add config option to disable packet and data block reuse. Add ObjectUpdate and ImprovedTerseObjectUpdate to the packets being recycled.
* Fix the issue that stopped the packet pool from working. Add a mechanismMelanie Thielker2009-05-021-1/+5
| | | | | | | | to recycley data blocs within a packet. Recycle the ObjectUpdate* data blocks. Speeds up loading even more. This may mean that the packet pool is now viable.
* * minor: Remove most mono compiler warningsJustin Clarke Casey2009-02-251-2/+3
|
* A few updates necessary for load balancer.Mike Mazur2009-02-251-23/+36
| | | | | | | | | - handle GetUser request for nonexistent user gracefully - include throttle levels in ClientInfo - code to save/restore throttles in client stack - only update/send updates to active clients - make animation classes serializable
* * optimized usings.lbsa712009-02-121-17/+12
|
* * Extend PacketHandlerTest to fire in a packet.Justin Clarke Casey2009-01-121-1/+2
| | | | | | * Can't test result yet since the Client thread handles it with unpredictable timing
* * refactor: move packet handler interface into a separate classJustin Clarke Casey2009-01-121-34/+1
|
* * Updates the sim stats module. Cleans out some of the rot.Teravus Ovares2009-01-031-0/+4
| | | | | | | * Adds a prototype web stats module which is disabled by default. It's functional with one report right now, however, the database structure may change, so I don't recommend enabling this to keep actual stats right now. I'll let you know when it's safe. * Adds Prototype for ajaxy web content * removed a warning or two.
* minor: remove mono compiler warningJustin Clarke Casey2008-12-191-1/+0
|
* Reapply the packet optimization patch, with changesMelanie Thielker2008-12-171-34/+24
|
* Revert 7754 and 7755 pending a reworkMelanie Thielker2008-12-171-28/+36
|
* Stop packets that may be resent from being returned to the packet pool.Melanie Thielker2008-12-171-1/+8
| | | | | | FWIW
* Marry AckData to LLQueItem, and store packet data and length there forMelanie Thielker2008-12-171-36/+28
| | | | | | use everywhere. Each packet gets serialized only once now in PacketHandler
* Revamp packet handler to smooth out the stream of resent packets.Melanie Thielker2008-12-171-43/+61
| | | | | | Eliminates the bursting in resends observed in the prior implementation
* * Fixed issue where incorrect braces nesting resulted in a section of ↵Adam Frisby2008-11-081-24/+22
| | | | | | | PacketQueue getting disabled. * This means the recent memory fix should now be working correctly - so the current largest memory leak should be fixed. AssetCache still needs to be addressed however.
* * Fixed a major memory leak in packet processing - PacketQueue.Close is ↵Adam Frisby2008-11-081-26/+35
| | | | | | | never called, causing the PacketQueue for dead clients to be preserved (including it's contents). * This patch is highly experimental and may cause clients to not be able to connect, if this is the case, it will be rolled back in approximately 5 minutes.
* * restore Header.Resent field setting for resent packetsJustin Clarke Casey2008-10-061-0/+4
| | | | | | * without this, the client appears to reset the sequence of packets its expecting
* Revert the packet resend timing changes. They caused login issues in primmyMelanie Thielker2008-10-051-2/+2
| | | | | | regions.
* Craters, take 2. Remove old discard logic and absolute discard timer. Melanie Thielker2008-10-051-47/+27
| | | | | | | | | Introduce a resend counter on the ack queue. The header "Resent" field is now obsolete. Implement 3 resends on reliable packets, variable. Increase default resend timeout to 3000ms and default silence threshold to 350ms.
* * An update to the UDP Packet handler which might make the giant sized ↵Teravus Ovares2008-10-051-1/+1
| | | | craters go away.
* * Put in some infrastructure to allow tweaking of packet queue throttle ↵Justin Clarke Casey2008-10-031-2/+2
| | | | | | | | values for the total throttle (the one that throttles all packet output) * Not complete yet
* * minor: remove warnings (the code cleaners strike again)Justin Clarke Casey2008-10-031-1/+0
|
* * minor: oh, and comment out the now unused logger as wellJustin Clarke Casey2008-10-011-2/+2
|
* * minor: Comment out temporarily statistical counter I accidentally left in ↵Justin Clarke Casey2008-10-011-1/+1
| | | | from the last commit
* * Try bumping packet resend timeout up to 2 seconds instead of 1Justin Clarke Casey2008-10-011-9/+22
| | | | | | | | * This actually probably doesn't make a huge difference. We still end up resending a massive number of packets in quite a few situations, but it's not easy to consistently reproduce this. * Might really need some throttling of packet send to the client on the OpenSim end.
* * Fix bug in LLPacketHandler where the tickcount when a packet was ↵Justin Clarke Casey2008-10-011-8/+20
| | | | | | | | approximately sent was not being stored in the ack record * This meant that acks were being sent out every 250ms when the ack timer fired, rather than when they had actually aged past m_ResendTimeout
* Add some methods to allow modules so set client view optionsMelanie Thielker2008-09-281-0/+1
|
* Mantis #2288Melanie Thielker2008-09-281-4/+16
| | | | | | | | Correct a typo in namespace declaration Also adds a new flag to the PacketManager to force retention of packets marked reliable (default off)
* * Patch from JHurlimanTeravus Ovares2008-09-261-5/+5
| | | | | | | | | * Updates to libomv r2243, * Remove lots of unnecessary typecasts * Improves SendWindData() Thanks jhurliman. * Will update OpenSim-libs in 10 minutes..
* * Fix http://opensimulator.org/mantis/view.php?id=2189Justin Clarke Casey2008-09-211-0/+2
| | | | | | * Allow a grid mode region simulator to properly shutdown even if the grid service is offline
* * This is the fabled LibOMV update with all of the libOMV types from JHurlimanTeravus Ovares2008-09-061-5/+5
| | | | | | | * This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point. Regular people should let the dust settle. * This has been tested to work with most basic functions. However.. make sure you back up 'everything' before using this. It's that big! * Essentially we're back at square 1 in the testing phase.. so lets identify things that broke.
* Update svn properties, formatting cleanup.Jeff Ames2008-08-281-2/+2
|
* * zap compilation warningsJustin Clarke Casey2008-08-251-2/+2
|
* * This commit incorporates the heart of the OpenGridProtocol patch that is ↵Teravus Ovares2008-08-251-0/+6
| | | | | | | | currently on Forge in a nice, friendly modular format. * There are a lot of changes and this is quite experimental. It's off by default, but you can turn it on by examining the bottom of the opensim.ini.example for the proper OpenSim.ini settings. Remember, you still need an agent domain.. * Furthermore, it isn't quite right when it comes to teleporting to remote regions (place_avatar)
* * Allow an exception generated in ProcessOutPacket to travel up the stackJustin Clarke Casey2008-08-221-27/+16
| | | | | | * It is dealt with correctly further up, at which point the user is also notified and the failure recorded as a statistic