diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs index dc8ac3c..439621a 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPClient.cs | |||
@@ -52,7 +52,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
52 | /// are waiting on ACKs for</param> | 52 | /// are waiting on ACKs for</param> |
53 | public delegate void PacketStats(int inPackets, int outPackets, int unAckedBytes); | 53 | public delegate void PacketStats(int inPackets, int outPackets, int unAckedBytes); |
54 | /// <summary> | 54 | /// <summary> |
55 | /// Fired when the queue for one or more packet categories is empty. This | 55 | /// Fired when the queue for one or more packet categories is empty. This |
56 | /// event can be hooked to put more data on the empty queues | 56 | /// event can be hooked to put more data on the empty queues |
57 | /// </summary> | 57 | /// </summary> |
58 | /// <param name="category">Categories of the packet queues that are empty</param> | 58 | /// <param name="category">Categories of the packet queues that are empty</param> |
@@ -86,8 +86,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
86 | /// Controls whether information is logged about each outbound packet immediately before it is sent. For debug purposes. | 86 | /// Controls whether information is logged about each outbound packet immediately before it is sent. For debug purposes. |
87 | /// </summary> | 87 | /// </summary> |
88 | /// <remarks>Any level above 0 will turn on logging.</remarks> | 88 | /// <remarks>Any level above 0 will turn on logging.</remarks> |
89 | public int ThrottleDebugLevel | 89 | public int ThrottleDebugLevel |
90 | { | 90 | { |
91 | get | 91 | get |
92 | { | 92 | { |
93 | return m_throttleDebugLevel; | 93 | return m_throttleDebugLevel; |
@@ -157,7 +157,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
157 | /// <summary>Number of packets sent to this client</summary> | 157 | /// <summary>Number of packets sent to this client</summary> |
158 | public int PacketsSent; | 158 | public int PacketsSent; |
159 | /// <summary>Number of packets resent to this client</summary> | 159 | /// <summary>Number of packets resent to this client</summary> |
160 | public int PacketsResent; | 160 | public int PacketsResent; |
161 | /// <summary>Total byte count of unacked packets sent to this client</summary> | 161 | /// <summary>Total byte count of unacked packets sent to this client</summary> |
162 | public int UnackedBytes; | 162 | public int UnackedBytes; |
163 | 163 | ||
@@ -215,7 +215,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
215 | /// textures are now generally handled through http. | 215 | /// textures are now generally handled through http. |
216 | /// </summary> | 216 | /// </summary> |
217 | private double m_cannibalrate = 0.0; | 217 | private double m_cannibalrate = 0.0; |
218 | 218 | ||
219 | private ClientInfo m_info = new ClientInfo(); | 219 | private ClientInfo m_info = new ClientInfo(); |
220 | 220 | ||
221 | /// <summary> | 221 | /// <summary> |
@@ -276,7 +276,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
276 | 276 | ||
277 | // Initialize this to a sane value to prevent early disconnects | 277 | // Initialize this to a sane value to prevent early disconnects |
278 | TickLastPacketReceived = Environment.TickCount & Int32.MaxValue; | 278 | TickLastPacketReceived = Environment.TickCount & Int32.MaxValue; |
279 | m_pingMS = (int)(3.0 * server.TickCountResolution); // so filter doesnt start at 0; | 279 | m_pingMS = (int)(3.0 * server.TickCountResolution); // so filter doesnt start at 0; |
280 | } | 280 | } |
281 | 281 | ||
282 | /// <summary> | 282 | /// <summary> |
@@ -370,7 +370,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
370 | return string.Format( | 370 | return string.Format( |
371 | "{0,7} {1,7} {2,7} {3,9} {4,7} {5,7} {6,7} {7,7} {8,7} {9,8} {10,7} {11,7}", | 371 | "{0,7} {1,7} {2,7} {3,9} {4,7} {5,7} {6,7} {7,7} {8,7} {9,8} {10,7} {11,7}", |
372 | Util.EnvironmentTickCountSubtract(TickLastPacketReceived), | 372 | Util.EnvironmentTickCountSubtract(TickLastPacketReceived), |
373 | PacketsReceived, | 373 | PacketsReceived, |
374 | PacketsSent, | 374 | PacketsSent, |
375 | PacketsResent, | 375 | PacketsResent, |
376 | UnackedBytes, | 376 | UnackedBytes, |
@@ -540,7 +540,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
540 | 540 | ||
541 | return data; | 541 | return data; |
542 | } | 542 | } |
543 | 543 | ||
544 | public int GetCatBytesCanSend(ThrottleOutPacketType cat, int timeMS) | 544 | public int GetCatBytesCanSend(ThrottleOutPacketType cat, int timeMS) |
545 | { | 545 | { |
546 | int icat = (int)cat; | 546 | int icat = (int)cat; |
@@ -559,7 +559,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
559 | /// <param name="packet"></param> | 559 | /// <param name="packet"></param> |
560 | /// <param name="forceQueue">Always queue the packet if at all possible.</param> | 560 | /// <param name="forceQueue">Always queue the packet if at all possible.</param> |
561 | /// <returns> | 561 | /// <returns> |
562 | /// true if the packet has been queued, | 562 | /// true if the packet has been queued, |
563 | /// false if the packet has not been queued and should be sent immediately. | 563 | /// false if the packet has not been queued and should be sent immediately. |
564 | /// </returns> | 564 | /// </returns> |
565 | public bool EnqueueOutgoing(OutgoingPacket packet, bool forceQueue) | 565 | public bool EnqueueOutgoing(OutgoingPacket packet, bool forceQueue) |
@@ -589,7 +589,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
589 | queue.Enqueue(packet, highPriority); | 589 | queue.Enqueue(packet, highPriority); |
590 | return true; | 590 | return true; |
591 | } | 591 | } |
592 | 592 | ||
593 | if (!forceQueue && bucket.CheckTokens(packet.Buffer.DataLength)) | 593 | if (!forceQueue && bucket.CheckTokens(packet.Buffer.DataLength)) |
594 | { | 594 | { |
595 | // enough tokens so it can be sent imediatly by caller | 595 | // enough tokens so it can be sent imediatly by caller |
@@ -608,24 +608,24 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
608 | // We don't have a token bucket for this category, so it will not be queued | 608 | // We don't have a token bucket for this category, so it will not be queued |
609 | return false; | 609 | return false; |
610 | } | 610 | } |
611 | 611 | ||
612 | } | 612 | } |
613 | 613 | ||
614 | /// <summary> | 614 | /// <summary> |
615 | /// Loops through all of the packet queues for this client and tries to send | 615 | /// Loops through all of the packet queues for this client and tries to send |
616 | /// an outgoing packet from each, obeying the throttling bucket limits | 616 | /// an outgoing packet from each, obeying the throttling bucket limits |
617 | /// </summary> | 617 | /// </summary> |
618 | /// | 618 | /// |
619 | /// <remarks> | 619 | /// <remarks> |
620 | /// Packet queues are inspected in ascending numerical order starting from 0. Therefore, queues with a lower | 620 | /// Packet queues are inspected in ascending numerical order starting from 0. Therefore, queues with a lower |
621 | /// ThrottleOutPacketType number will see their packet get sent first (e.g. if both Land and Wind queues have | 621 | /// ThrottleOutPacketType number will see their packet get sent first (e.g. if both Land and Wind queues have |
622 | /// packets, then the packet at the front of the Land queue will be sent before the packet at the front of the | 622 | /// packets, then the packet at the front of the Land queue will be sent before the packet at the front of the |
623 | /// wind queue). | 623 | /// wind queue). |
624 | /// | 624 | /// |
625 | /// This function is only called from a synchronous loop in the | 625 | /// This function is only called from a synchronous loop in the |
626 | /// UDPServer so we don't need to bother making this thread safe | 626 | /// UDPServer so we don't need to bother making this thread safe |
627 | /// </remarks> | 627 | /// </remarks> |
628 | /// | 628 | /// |
629 | /// <returns>True if any packets were sent, otherwise false</returns> | 629 | /// <returns>True if any packets were sent, otherwise false</returns> |
630 | public bool DequeueOutgoing() | 630 | public bool DequeueOutgoing() |
631 | { | 631 | { |
@@ -791,7 +791,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
791 | double start = Util.GetTimeStampMS(); | 791 | double start = Util.GetTimeStampMS(); |
792 | if (start < m_nextOnQueueEmpty) | 792 | if (start < m_nextOnQueueEmpty) |
793 | return; | 793 | return; |
794 | 794 | ||
795 | m_isQueueEmptyRunning = true; | 795 | m_isQueueEmptyRunning = true; |
796 | m_nextOnQueueEmpty = start + MIN_CALLBACK_MS; | 796 | m_nextOnQueueEmpty = start + MIN_CALLBACK_MS; |
797 | 797 | ||
@@ -803,7 +803,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
803 | } | 803 | } |
804 | } | 804 | } |
805 | 805 | ||
806 | 806 | ||
807 | 807 | ||
808 | /// <summary> | 808 | /// <summary> |
809 | /// Fires the OnQueueEmpty callback and sets the minimum time that it | 809 | /// Fires the OnQueueEmpty callback and sets the minimum time that it |
@@ -820,7 +820,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
820 | if (callback != null) | 820 | if (callback != null) |
821 | { | 821 | { |
822 | // if (m_udpServer.IsRunningOutbound) | 822 | // if (m_udpServer.IsRunningOutbound) |
823 | // { | 823 | // { |
824 | try { callback(categories); } | 824 | try { callback(categories); } |
825 | catch (Exception e) { m_log.Error("[LLUDPCLIENT]: OnQueueEmpty(" + categories + ") threw an exception: " + e.Message, e); } | 825 | catch (Exception e) { m_log.Error("[LLUDPCLIENT]: OnQueueEmpty(" + categories + ") threw an exception: " + e.Message, e); } |
826 | // } | 826 | // } |