aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-10-06* Continued work on the new LLUDP implementation. Appears to be functioning, ↵John Hurliman1-875/+0
although not everything is reimplemented yet * Replaced logic in ThreadTracker with a call to System.Diagnostics that does the same thing * Added Util.StringToBytes256() and Util.StringToBytes1024() to clamp output at byte[256] and byte[1024], respectively * Fixed formatting for a MySQLAssetData error logging line
2009-10-05Beginning work on the new LLUDP implementationJohn Hurliman1-1/+6
2009-10-02* Changed the flush logic to drop packets in non-transactional streams, and ↵John Hurliman1-4/+2
to not fire any "put more data in the queues" callbacks * Minor tweaks to code formatting to make the callback chain for packet queuing easier to follow
2009-10-01Add a method to determine the count of packets in a throttleMelanie1-0/+5
2009-10-01Add OnQueueEmpty event to the packet layers. No user functinality yetMelanie1-0/+13
2009-10-01Fixing LLClientView memory leakJames J Greensky1-1/+2
Fixing LLClientView memory leak by disposing of all timers utilized in LLClientView as they contain references to the callback method. This required the use of the Terminate and Close infrastructure that was already in place but was not being utilized.
2009-08-05* Remove some mono compiler warningsJustin Clark-Casey1-2/+2
2009-07-25* Updates libOMV to version 0.7.0Teravus Ovares1-1/+1
* Uses mantis #3811 as a base (thanks jhuliman) with changes. * E-mail regarding interface changes sent to the opensim-dev list * Archive: https://lists.berlios.de/pipermail/opensim-dev/2009-July/007219.html
2009-07-01Restore the functionality that was removed in r9928. This lets the loadMelanie Thielker1-50/+45
balancer plugin work again. Create a new method, GetClientEP, to retrieve only the EndPoint for script usage. Marked the purpose of the method in IClientAPI.cs with a warning. Also restored the corresponding SetClientInfo functionality.
2009-06-29Update svn properties, add copyright header, formatting cleanup.Jeff Ames1-2/+2
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-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-01Minor: Change OpenSim to OpenSimulator in older copyright headers and ↵Jeff Ames1-1/+1
LICENSE.txt.
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 Thielker1-1/+1
2009-05-02Move a lock to attempt to cut down packet lossMelanie Thielker1-4/+4
2009-05-02Numerous packet improvements.Melanie Thielker1-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.
2009-05-02Fix the issue that stopped the packet pool from working. Add a mechanismMelanie Thielker1-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.
2009-02-25* minor: Remove most mono compiler warningsJustin Clarke Casey1-2/+3
2009-02-25A few updates necessary for load balancer.Mike Mazur1-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
2009-02-12* optimized usings.lbsa711-17/+12
2009-01-12* Extend PacketHandlerTest to fire in a packet.Justin Clarke Casey1-1/+2
* Can't test result yet since the Client thread handles it with unpredictable timing
2009-01-12* refactor: move packet handler interface into a separate classJustin Clarke Casey1-34/+1
2009-01-03* Updates the sim stats module. Cleans out some of the rot.Teravus Ovares1-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.
2008-12-19minor: remove mono compiler warningJustin Clarke Casey1-1/+0
2008-12-17Reapply the packet optimization patch, with changesMelanie Thielker1-34/+24
2008-12-17Revert 7754 and 7755 pending a reworkMelanie Thielker1-28/+36
2008-12-17Stop packets that may be resent from being returned to the packet pool.Melanie Thielker1-1/+8
FWIW
2008-12-17Marry AckData to LLQueItem, and store packet data and length there forMelanie Thielker1-36/+28
use everywhere. Each packet gets serialized only once now in PacketHandler
2008-12-17Revamp packet handler to smooth out the stream of resent packets.Melanie Thielker1-43/+61
Eliminates the bursting in resends observed in the prior implementation
2008-11-08* Fixed issue where incorrect braces nesting resulted in a section of ↵Adam Frisby1-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.
2008-11-08* Fixed a major memory leak in packet processing - PacketQueue.Close is ↵Adam Frisby1-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.
2008-10-06* restore Header.Resent field setting for resent packetsJustin Clarke Casey1-0/+4
* without this, the client appears to reset the sequence of packets its expecting
2008-10-05Revert the packet resend timing changes. They caused login issues in primmyMelanie Thielker1-2/+2
regions.
2008-10-05Craters, take 2. Remove old discard logic and absolute discard timer. Melanie Thielker1-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.
2008-10-05* An update to the UDP Packet handler which might make the giant sized ↵Teravus Ovares1-1/+1
craters go away.
2008-10-03* Put in some infrastructure to allow tweaking of packet queue throttle ↵Justin Clarke Casey1-2/+2
values for the total throttle (the one that throttles all packet output) * Not complete yet
2008-10-03* minor: remove warnings (the code cleaners strike again)Justin Clarke Casey1-1/+0
2008-10-01* minor: oh, and comment out the now unused logger as wellJustin Clarke Casey1-2/+2
2008-10-01* minor: Comment out temporarily statistical counter I accidentally left in ↵Justin Clarke Casey1-1/+1
from the last commit