Commit Graph

9 Commits

Author SHA1 Message Date
Mic Bowman
3e0e1057ac Remove the call to remove tokens from the parent. Under heavy load
this appears to cause problems with the system timer resolution.
This caused a problem with tokens going into the root throttle as
bursts leading to some starvation.

Also changed EnqueueOutgoing to always queue a packet if there
are already packets in the queue. Ensures consistent ordering
of packet sends.
2011-04-15 16:44:53 -07:00
Mic Bowman
2f43687589 New tokenbucket algorithm. This one provides fair sharing of the queues
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.
2011-04-12 15:58:57 -07:00
Diva Canto
1cd951e5ae Fix the negative number problem in TokenBucket. mantis #5365 2011-02-09 09:39:53 -08:00
Diva Canto
477a869fb2 More detection of negatives. 2011-02-09 08:08:57 -08:00
Diva Canto
473fac4dc7 Detect negative dripAmounts in TokenBuckets. These negatives result from overflown integer operations. Also added Total to the scene throttles in show throttles. 2011-02-09 08:06:20 -08:00
Melanie
a48d7f62a7 Revert "Comment noisy "CONNECTION DEBUGGING" messages, because they push more"
Some other stuff snuck in.

This reverts commit 4cc533e7ad94d148351c16f48afd2a688a64c48a.
2010-05-27 19:02:20 +01:00
Melanie Thielker
6b6425aa5e Comment noisy "CONNECTION DEBUGGING" messages, because they push more
important stuff off screen too fast
2010-05-27 18:44:15 +01:00
John Hurliman
cde47c2b3d Committing Jim's optimization to replace the 20ms sleep in outgoing packet handling with an interruptible wait handle 2009-10-21 00:18:35 -07:00
John Hurliman
45dc4e0a54 * Added a sanity check to GetScriptAssemblies() and GetScriptStates() for the case where no scripting engine is enabled
* Added TokenBucket.cs to OpenSim, with some fixes for setting a more accurate MaxBurst value and getting a more accurate Content value (by Drip()ing each get)
2009-10-20 18:19:17 -07:00