aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* First stab at cleaning up Caps. Compiles. Untested.Diva Canto2011-04-301-12123/+0
|
* Eliminated sAgentCircuitData, a data structure that has been obsolete for ↵Diva Canto2011-04-281-1/+1
| | | | quite some time.
* Merge branch 'master' into queuetestMic Bowman2011-04-261-1/+9
|\
| * recover from unhandled exception from bad rotation data while processing ↵dahlia2011-04-251-1/+9
| | | | | | | | entity updates in LLClientView.cs
* | Fixed the transmission of throttles from root agent to childMic Bowman2011-04-251-1/+1
| | | | | | | | | | | | agents. Child throttles are based on the number of child agents known to the root and at least 1/4 of the throttle given to the root.
* | Various clean ups. Removed some debugging code. Added a new "show pqueues"Mic Bowman2011-04-221-0/+5
| | | | | | | | | | | | command to look at the entity update priority queue. Added a "name" parameter to show queues, show pqueues and show throttles to look at data for a specific user.
* | Added ability to remove unacked packet from UnackedPacketCollection without ↵Dan Lake2011-04-211-2/+10
| | | | | | | | an acknowledgement from the network. This prevents RTT and throttles from being updated as they would when an ACK is actually received. Also fixed stats logging for unacked bytes and resent packets in this case.
* | bug fix. Now when an unacked update packet is handled through ↵Dan Lake2011-04-201-13/+21
| | | | | | | | ResendPrimUpdates, it is removed from the UnackedPacketCollection.
* | Adds the first pass at an adaptive throttle to slow start newMic Bowman2011-04-201-0/+4
| | | | | | | | | | | | | | | | clients. If the sent packets are ack'ed successfully the throttle will open quickly up to the maximum specified by the client and/or the sims client throttle. This still needs a lot of adjustment to get the rates correct.
* | Converted the property request queue to use the same retransmissionMic Bowman2011-04-191-23/+52
| | | | | | | | mechanism as the entity update queues.
* | Requeue unacknowledged entity updates rather than resend then "as is".Dan Lake2011-04-191-21/+75
|/ | | | | | | | | | | | | | | | | | | | | | | | Often, by the time the UDPServer realizes that an entity update packet has not been acknowledged, there is a newer update for the same entity already queued up or there is a higher priority update that should be sent first. This patch eliminates 1:1 packet resends for unacked entity update packets. Insteawd, unacked update packets are decomposed into the original entity updates and those updates are placed back into the priority queues based on their new priority but the original update timestamp. This will generally place them at the head of the line to be put back on the wire as a new outgoing packet but prevents the resend queue from filling up with multiple stale updates for the same entity. This new approach takes advantage of the UDP nature of the Linden protocol in that the intent of a reliable update packet is that if it goes unacknowledge, SOMETHING has to happen to get the update to the client. We are simply making sure that we are resending current object state rather than stale object state. Additionally, this patch includes a generalized callback mechanism so that any caller can specify their own method to call when a packet expires without being acknowledged. We use this mechanism to requeue update packets and otherwise use the UDPServer default method of just putting expired packets in the resend queue.
* Merge branch 'testmerge' into queuetestMic Bowman2011-04-131-2/+8
|\ | | | | | | | | Conflicts: OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
| * remove packet monitoring debugging codeMic Bowman2011-04-131-116/+2
| |
| * Fixed the update of items in the priority queue to enable bothMic Bowman2011-04-131-6/+15
| | | | | | | | | | | | types of property updates to be specified. Not sure if one form of property update should supercede another. But for now the old OpenSim behavior is preserved by sending both.
| * fixed a couple bugs with the property queuesMic Bowman2011-04-131-1/+37
| |
| * First pass at moving object property requests into a queue similarMic Bowman2011-04-131-137/+214
| | | | | | | | | | | | | | | | to the entity update queue. The number of property packets can become significant when selecting/deselecting large numbers of objects. This is experimental code.
| * New tokenbucket algorithm. This one provides fair sharing of the queuesMic Bowman2011-04-131-2/+4
| | | | | | | | | | | | | | | | | | when client and simulator throttles are set. This algorithm also uses pre-defined burst rate of 150% of the sustained rate for each of the throttles. Removed the "state" queue. The state queue is not a Linden queue and appeared to be used just to get kill packets sent.
| * Add a regression test for rezzing a single object into a scene from user ↵Justin Clark-Casey (justincc)2011-04-131-1/+8
| | | | | | | | inventory
* | remove packet monitoring debugging codeMic Bowman2011-04-121-116/+2
| |
* | Fixed the update of items in the priority queue to enable bothMic Bowman2011-04-121-6/+15
| | | | | | | | | | | | types of property updates to be specified. Not sure if one form of property update should supercede another. But for now the old OpenSim behavior is preserved by sending both.
* | fixed a couple bugs with the property queuesMic Bowman2011-04-121-1/+37
| |
* | First pass at moving object property requests into a queue similarMic Bowman2011-04-121-137/+214
| | | | | | | | | | | | | | | | to the entity update queue. The number of property packets can become significant when selecting/deselecting large numbers of objects. This is experimental code.
* | New tokenbucket algorithm. This one provides fair sharing of the queuesMic Bowman2011-04-121-2/+4
|/ | | | | | | | | when client and simulator throttles are set. This algorithm also uses pre-defined burst rate of 150% of the sustained rate for each of the throttles. Removed the "state" queue. The state queue is not a Linden queue and appeared to be used just to get kill packets sent.
* Merge branch 'queuetest' of ssh://opensimulator.org/var/git/opensim into ↵Mic Bowman2011-04-111-1/+75
|\ | | | | | | | | | | | | | | queuetest Conflicts: OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs OpenSim/Region/Framework/Scenes/Prioritizer.cs
| * Implements adaptive queue management and fair queueing forMic Bowman2011-04-041-118/+235
| | | | | | | | | | | | | | improved networking performance. Reprioritization algorithms need to be ported still. One is in place.
* | Removed some priority queue debugging codeMic Bowman2011-04-111-80/+0
| |
* | Split the priority queue class into a seperate file. LLClientViewMic Bowman2011-04-101-205/+0
| | | | | | | | is big enough.
* | Implements adaptive queue management and fair queueing forMic Bowman2011-04-101-118/+235
| | | | | | | | | | | | | | improved networking performance. Reprioritization algorithms need to be ported still. One is in place.
* | Handle the client's parcel info requests asynchronously rather than ↵Justin Clark-Casey (justincc)2011-04-051-1/+1
| | | | | | | | | | | | | | synchronously. Handling these synchronously kills the inbound packet loop if many requests are made for remote land and those requests are handled slowly or timeout (timeout is 10s) This can happen if a user searches for "land for sale" and then clicks many of the parcels in the list (or just presses down arrow to move through every entry).
* | Make the "All Estates" option work from the client (this makes chosen ↵Justin Clark-Casey (justincc)2011-04-051-4/+20
|/ | | | | | | | changes to all the estates that the user owns). This applies to adding/removing estate users, groups, managers and bans. This is the application of the AllEstates_0.5.patch from http://opensimulator.org/mantis/view.php?id=5420 Thanks very much, Snoopy!
* (re)implement selected prim count.Justin Clark-Casey (justincc)2011-03-301-23/+23
| | | | This does not currently count objects that are sat upon (which the viewer ui implies should be included in this count)
* disable prim count debug logging temporarilyJustin Clark-Casey (justincc)2011-03-291-1/+1
|
* add save of LLClientView I forgot from last commitJustin Clark-Casey (justincc)2011-03-261-4/+2
|
* Add test for PCM taint. This currently fails due to unexpected behaviour of ↵Justin Clark-Casey (justincc)2011-03-261-0/+2
| | | | | | SceneGraph.ForEachSOG(). This will be corrected soon. Also adds lots of temproarily debug logging
* Start using IPrimCounts populated by PrimCountModule instead of LandData ↵Justin Clark-Casey (justincc)2011-03-251-13/+22
| | | | | | | counts populated by LandManagementModule. In order to pass ILandObject into IClientAPI.SendLandProperties(), had to push ILandObject and IPrimCounts into OpenSim.Framework from OpenSim.Region.Framework.Interfaces, in order to avoid ci Counts are showing odd behaviour at the moment, this will be addressed shortly.
* Thank you, Goetz, for a patch to fix prim count display in cut regions.Melanie2011-01-281-1/+2
|
* implement "show throttles" command for showing current agent throttles and ↵Justin Clark-Casey (justincc)2011-01-211-0/+1
| | | | | | | | | the server settings. This is in a very crude state, currently. The LindenUDPModule was renamed LindenUDPInfoModule and moved to OptionalModules OptionalModules was given a direct reference to OpenSim.Region.ClientStack.LindenUDP so that it can inspect specific LindenUDP settings without having to generalize those to all client views (some of which may have no concept of the settings involved). This might be ess messy if OpenSim.Region.ClientStack.LindenUDP were a region module instead, like MXP, IRC and NPC
* force objectId to UUID.Zero for non-overridden animations in AvatarAnimation ↵dahlia2011-01-171-1/+4
| | | | packet
* objectId in AvatarAnimation packet should be UUID.Zero for non-overridden ↵dahlia2011-01-171-2/+0
| | | | animations
* Implement SendPlacesReplyMelanie2010-12-301-0/+54
|
* Merge branch 'master' of ssh://opensimulator.org/var/git/opensimDiva Canto2010-12-231-6/+12
|\
| * * Re-Adding Scene TimeDilation to Object Update Packets.Teravus Ovares (Dan Olivares)2010-12-231-6/+12
| | | | | | | | | | | | * Added Calculating Time Dilation in the OdePlubin * When multiple object updates are stuffed into one packet, average the time dilation between them as a compromise. * Time Dilation on the update is calculated when the EntityUpdate object is created. The pre-calc-ed TD is stored in the Entity update and used when it goes out on the wire. Previously, it was 1.0 all the time. The time dilation is tied to when the update is created, not when the update is sent.
* | Removed unused code -- this was the previous version of UDP texture sending, ↵Diva Canto2010-12-231-24/+16
|/ | | | which now lives entirely in LindenUDP space.
* * Adds AbortXfer to the ClientAPI mixTeravus Ovares (Dan Olivares)2010-12-211-0/+7
| | | | | | * Adds an item that checks to see if the top request has been there for longer then 30 seconds without an update and sends an AbortXfer if it encounters one. This allows the client to cancel the Xfer on it's side so you can re-select the prim and get the inventory when it fails the first time. * Some interesting locking... Using NewFiles to lock the rest of them. We'll see how that goes. * The goal of this is to ensure that Xfers are restartable when they fail. The client will not do that on it's own.
* minor: 'debug packet' console command level <= 50 then don't log ↵Justin Clark-Casey (justincc)2010-12-171-5/+8
| | | | ImprovedTerseObjectUpdate messages
* Put in locks on m_killRecord to replace changed locks on ↵Justin Clark-Casey (justincc)2010-12-151-193/+200
| | | | | | | m_entityUpdates.SyncRoot These locks are necessary to avoid a delete/update race condition for scene objects. However, since we're now locking on m_killRecord this shouldn't cause delays to m_entityUpdates reprioritization
* Another stab at #LoginLag. Looking forward to hear the feedback! This makes ↵Diva Canto2010-12-141-2/+23
| | | | updates for self movement as absolute top priority, going in to the unthrottled category. Self only, not other avies.
* Relax a highly constraining lock on m_entityUpdates that may be preventing ↵Diva Canto2010-12-141-126/+127
| | | | reprioritizations from actually happening. #LoginLag
* Revamp the viewer -> banlist packet processing so fix a number of bugs.Melanie2010-12-131-3/+7
| | | | | | | Remove the too coarse CanEditParcel method in favor of a CanEditParcelProperties method that takes a GroupPowers argument to specify what action is to be taken. Also, make the method to set parcel data much more granular. Permissions in a deeded setting should now work.
* Revert "Another stab at mantis #5256"Diva Canto2010-12-101-20/+19
| | | | This reverts commit ccb4f958c0dbb2daad4249a6b97d1c0b008b6a47.