aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | Recover from an internal mess-up in the outgoing packet queues by creatingMelanie2011-12-081-19/+36
| | | | | | | | | | | | | | | | | | | | | | | | a new queue object.
| * | | | | Merge commit 'c5826d589ab2f33a71105bc2d3015ffbb7dd2973' into bigmergeMelanie2011-10-251-2/+3
| |\ \ \ \ \
| * \ \ \ \ \ Merge commit 'f9ffd2538f3bf300e8f751258a6129fb780b5b0a' into bigmergeMelanie2011-10-251-7/+15
| |\ \ \ \ \ \
| * | | | | | | Guard against a bad login leaving us with a null queueMelanie2011-08-091-1/+1
| | | | | | | |
| * | | | | | | Merge branch 'master' into careminster-presence-refactorMelanie2011-05-051-0/+10
| | | | | | | |
* | | | | | | | Add debug ability to ignore reliably sent packets that are not acknowledged.Justin Clark-Casey (justincc)2015-01-211-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is controlled via the console command "debug lludp client set process-unacked-sends true [<avatar-first-name> <avatar-last-name>]" For debug purposes to see if this process for very bad connections is causing general outbound udp processing delays. Relates to http://opensimulator.org/mantis/view.php?id=7393
* | | | | | | | Make the performance controlling job processing threads introduced in ↵Justin Clark-Casey (justincc)2015-01-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | conference code use a generic JobEngine class rather than 4 slightly different copy/pasted versions.
* | | | | | | | Enable runtime configuration of the minimum rate for adaptiveMic Bowman2014-12-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | throttles. Setting adaptive_throttle_min_bps will change the minimum rate that the adapative throttles will drop to in case of network packet loss. The current rate default rate is 256kbps. The viewer can throttle rates under that amount, but the dynamic adaptation will not.
* | | | | | | | Label all threadpool calls being made in core OpenSimulator. This is to add ↵Justin Clark-Casey (justincc)2014-11-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | problem diagnosis. "show threadpool calls" now also returns named (labelled), anonymous (unlabelled) and total call stats.
* | | | | | | | Fix recent regression where adaptive throttles stopped adjusting.Justin Clark-Casey (justincc)2014-11-251-18/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extends regression tests to test response of adaptive throttles to ack'ed and expired packets.
* | | | | | | | Fix an issue where specifying both max client and server outgoing UDP ↵Justin Clark-Casey (justincc)2014-11-251-17/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | throttles would cause client throttles to be lower than expected when total requests exceeded the scene limit. This was because specifying a max client throttle would always request the max from the parent server throttle, no matter the actual total requests on the client throttle. This would lead to a lower server multiplier than expected. This change also adds a 'target' column to the "show throttles" output that shows the target rate (as set by client) if adaptive throttles is active. This commit also re-adds the functionality lost in recent 5c1a1458 to set a max client throttle when adaptive is active. This commit also adds TestClientThrottlePerClientAndRegionLimited and TestClientThrottleAdaptiveNoLimit regression tests
* | | | | | | | Remove the unnecessary intermediate total token bucket.Justin Clark-Casey (justincc)2014-11-251-11/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This only had one child, which is the 'adaptive' token bucket. So from testing and currently analysis, we can use that bucket directly which simplifies the code.
* | | | | | | | Add basic regression test ThrottleTests.TestClientThrottleSetNoLimitJustin Clark-Casey (justincc)2014-11-251-0/+8
| | | | | | | |
* | | | | | | | minor: add apparant total to logging when client sets throttlesJustin Clark-Casey (justincc)2014-11-251-2/+5
| | | | | | | |
* | | | | | | | minor: fix bug in throttle logging where arguments were mismatchedJustin Clark-Casey (justincc)2014-11-251-1/+1
| | | | | | | |
* | | | | | | | Add OutgoingPacketsQueuedCount clientstack stat.Justin Clark-Casey (justincc)2014-11-251-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the total of queued outgoing packets across all connections, as also seen in the "show queues" command. Gives some early indication of whether the simulator can't send all outgoing packets fast enough. Though then one would want to check that this isn't due to a few bad client connections.
* | | | | | | | Add "debug lludp throttle log <level> <avatar-first-name> ↵Justin Clark-Casey (justincc)2014-10-021-5/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | <avatar-last-name>" to control extra throttle related debug logging.
* | | | | | | | Add "debug lludp data out" console command for logging outgoing data just ↵Justin Clark-Casey (justincc)2014-09-241-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | before it's put on the wire. Unlike "debug lludp packet" which logs at the point where OpenSim first asks the clientstack to send a certain outgoing packet, this logs immediately before the actual send. For low-level debugging purposes.
* | | | | | | | Add experimental OutgoingQueueRefillEngine to handle queue refill processing ↵Justin Clark-Casey (justincc)2014-08-191-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | on a controlled number of threads rather than the threadpool. Disabled by default. Currently can only be enabled with console "debug lludp oqre start" command, though this can be started and stopped whilst simulator is running. When a connection requires packet queue refill processing (used to populate queues with entity updates, entity prop updates and image queue updates), this is done via Threadpool requests. However, with a very high number of connections (e.g. 100 root + 300 child) a very large number of simultaneous requests may be causing performance issues. This commit adds an experimental engine for processing these requests from a queue with a persistent thread instead. Unlike inbound processing, there are no network requests in this processing that might hold the thread up for a long time. Early implementation - currently only one thread which may (or may not) get overloaded with requests. Added for testing purposes.
* | | | | | | | Make LLUDPServer.Scene publicly gettable/privately settable instead of ↵Justin Clark-Casey (justincc)2014-08-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | protected so that other logging code in the clientstack can record more useful information Adds some commented out logging for use again in the future. No functional change.
* | | | | | | | In "show throttles", show the maximum drip rate. This shows whether a client ↵Oren Hurvitz2014-07-211-1/+2
| |_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | is being throttled due to past poor performance.
* | | | | | | Adds a configuration option to cannibalize bandwidth from theMic Bowman2014-01-201-0/+14
| |_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | udp texture throttle and move it to the task throttle. Since most viewers are using http textures, the udp texture throttle is holding onto bw that could be used for more responsive prims updates. See the documentation for CannibalizeTextureRate in OpenSimDefaults.ini. Option is disabled by default.
* | | | | | Do some simple queue empty checks in the main outgoing udp loop instead of ↵Justin Clark-Casey (justincc)2013-07-211-17/+52
| |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | always performing these on a separate fired thread. This appears to improve cpu usage since launching a new thread is more expensive than performing a small amount of inline logic. However, needs testing at scale.
* | | | | Added show client-stats [first last] command to expose what viewers are ↵Diva Canto2013-07-101-14/+13
| | | | | | | | | | | | | | | | | | | | requesting.
* | | | | Complete removal of the now unused state queueMelanie2013-01-161-14/+3
| |_|_|/ |/| | |
* | | | Extend region console "show queues" command to show already collected time ↵Justin Clark-Casey (justincc)2012-07-241-1/+2
| |_|/ |/| | | | | | | | since last packeted received by the simulator from a viewer.
* | | minor: insert some commented out log lines which are a blunt but useful ↵Justin Clark-Casey (justincc)2011-10-121-2/+3
| |/ |/| | | | | instrument to see packet expiry and received acks
* | Improve some method doc for LLUDPClient, LLUDPServer and UnackedPacketCollectionJustin Clark-Casey (justincc)2011-10-121-7/+15
|/
* First stab at cleaning up Caps. Compiles. Untested.Diva Canto2011-04-301-0/+697