aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs')
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs31
1 files changed, 31 insertions, 0 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
index 218c2b2..3bd1ef1 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
@@ -147,6 +147,19 @@ namespace OpenSim.Region.ClientStack.LindenUDP
147 147
148 StatsManager.RegisterStat( 148 StatsManager.RegisterStat(
149 new Stat( 149 new Stat(
150 "OutgoingPacketsResentCount",
151 "Number of packets resent because a client did not acknowledge receipt",
152 "",
153 "",
154 "clientstack",
155 scene.Name,
156 StatType.Pull,
157 MeasuresOfInterest.AverageChangeOverTime,
158 stat => stat.Value = m_udpServer.PacketsResentCount,
159 StatVerbosity.Debug));
160
161 StatsManager.RegisterStat(
162 new Stat(
150 "AverageUDPProcessTime", 163 "AverageUDPProcessTime",
151 "Average number of milliseconds taken to process each incoming UDP packet in a sample.", 164 "Average number of milliseconds taken to process each incoming UDP packet in a sample.",
152 "This is for initial receive processing which is separate from the later client LL packet processing stage.", 165 "This is for initial receive processing which is separate from the later client LL packet processing stage.",
@@ -295,6 +308,16 @@ namespace OpenSim.Region.ClientStack.LindenUDP
295 public Socket Server { get { return null; } } 308 public Socket Server { get { return null; } }
296 309
297 /// <summary> 310 /// <summary>
311 /// Record how many packets have been resent
312 /// </summary>
313 internal int PacketsResentCount { get; set; }
314
315 /// <summary>
316 /// Record how many packets have been sent
317 /// </summary>
318 internal int PacketsSentCount { get; set; }
319
320 /// <summary>
298 /// Record how many inbound packets could not be recognized as LLUDP packets. 321 /// Record how many inbound packets could not be recognized as LLUDP packets.
299 /// </summary> 322 /// </summary>
300 public int IncomingMalformedPacketCount { get; private set; } 323 public int IncomingMalformedPacketCount { get; private set; }
@@ -1214,6 +1237,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1214 else 1237 else
1215 { 1238 {
1216 Interlocked.Increment(ref udpClient.PacketsResent); 1239 Interlocked.Increment(ref udpClient.PacketsResent);
1240
1241 // We're not going to worry about interlock yet since its not currently critical that this total count
1242 // is 100% correct
1243 PacketsResentCount++;
1217 } 1244 }
1218 1245
1219 #endregion Sequence Number Assignment 1246 #endregion Sequence Number Assignment
@@ -1221,6 +1248,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1221 // Stats tracking 1248 // Stats tracking
1222 Interlocked.Increment(ref udpClient.PacketsSent); 1249 Interlocked.Increment(ref udpClient.PacketsSent);
1223 1250
1251 // We're not going to worry about interlock yet since its not currently critical that this total count
1252 // is 100% correct
1253 PacketsSentCount++;
1254
1224 // Put the UDP payload on the wire 1255 // Put the UDP payload on the wire
1225 AsyncBeginSend(buffer); 1256 AsyncBeginSend(buffer);
1226 1257