diff options
author | Justin Clark-Casey (justincc) | 2015-01-21 20:31:42 +0000 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2015-01-21 20:31:42 +0000 |
commit | 155da5aad2dc0bb6d88d7276e9e3a12639cf9ead (patch) | |
tree | f636762ca16f14c1941f53abf3285200dc583413 /OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs | |
parent | Fix OfflineIMEmail value overwriting every time its called. The request was r... (diff) | |
download | opensim-SC-155da5aad2dc0bb6d88d7276e9e3a12639cf9ead.zip opensim-SC-155da5aad2dc0bb6d88d7276e9e3a12639cf9ead.tar.gz opensim-SC-155da5aad2dc0bb6d88d7276e9e3a12639cf9ead.tar.bz2 opensim-SC-155da5aad2dc0bb6d88d7276e9e3a12639cf9ead.tar.xz |
Add debug ability to ignore reliably sent packets that are not acknowledged.
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
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs index ce6e3ee..0394e54 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs | |||
@@ -119,8 +119,15 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
119 | public readonly uint CircuitCode; | 119 | public readonly uint CircuitCode; |
120 | /// <summary>Sequence numbers of packets we've received (for duplicate checking)</summary> | 120 | /// <summary>Sequence numbers of packets we've received (for duplicate checking)</summary> |
121 | public readonly IncomingPacketHistoryCollection PacketArchive = new IncomingPacketHistoryCollection(200); | 121 | public readonly IncomingPacketHistoryCollection PacketArchive = new IncomingPacketHistoryCollection(200); |
122 | |||
123 | /// <summary> | ||
124 | /// If true then we take action in response to unacked reliably sent packets such as resending the packet. | ||
125 | /// </summary> | ||
126 | public bool ProcessUnackedSends { get; set; } | ||
127 | |||
122 | /// <summary>Packets we have sent that need to be ACKed by the client</summary> | 128 | /// <summary>Packets we have sent that need to be ACKed by the client</summary> |
123 | public readonly UnackedPacketCollection NeedAcks = new UnackedPacketCollection(); | 129 | public readonly UnackedPacketCollection NeedAcks = new UnackedPacketCollection(); |
130 | |||
124 | /// <summary>ACKs that are queued up, waiting to be sent to the client</summary> | 131 | /// <summary>ACKs that are queued up, waiting to be sent to the client</summary> |
125 | public readonly OpenSim.Framework.LocklessQueue<uint> PendingAcks = new OpenSim.Framework.LocklessQueue<uint>(); | 132 | public readonly OpenSim.Framework.LocklessQueue<uint> PendingAcks = new OpenSim.Framework.LocklessQueue<uint>(); |
126 | 133 | ||
@@ -225,6 +232,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
225 | if (maxRTO != 0) | 232 | if (maxRTO != 0) |
226 | m_maxRTO = maxRTO; | 233 | m_maxRTO = maxRTO; |
227 | 234 | ||
235 | ProcessUnackedSends = true; | ||
236 | |||
228 | // Create a token bucket throttle for this client that has the scene token bucket as a parent | 237 | // Create a token bucket throttle for this client that has the scene token bucket as a parent |
229 | m_throttleClient | 238 | m_throttleClient |
230 | = new AdaptiveTokenBucket( | 239 | = new AdaptiveTokenBucket( |