diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs index 4854893..50dae2a 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs | |||
@@ -134,6 +134,19 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
134 | 134 | ||
135 | StatsManager.RegisterStat( | 135 | StatsManager.RegisterStat( |
136 | new Stat( | 136 | new Stat( |
137 | "IncomingPacketsResentCount", | ||
138 | "Number of inbound packets that clients indicate are resends.", | ||
139 | "", | ||
140 | "", | ||
141 | "clientstack", | ||
142 | scene.Name, | ||
143 | StatType.Pull, | ||
144 | MeasuresOfInterest.AverageChangeOverTime, | ||
145 | stat => stat.Value = m_udpServer.IncomingPacketsResentCount, | ||
146 | StatVerbosity.Debug)); | ||
147 | |||
148 | StatsManager.RegisterStat( | ||
149 | new Stat( | ||
137 | "OutgoingUDPSendsCount", | 150 | "OutgoingUDPSendsCount", |
138 | "Number of UDP sends performed", | 151 | "Number of UDP sends performed", |
139 | "", | 152 | "", |
@@ -322,6 +335,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
322 | internal int PacketsSentCount { get; set; } | 335 | internal int PacketsSentCount { get; set; } |
323 | 336 | ||
324 | /// <summary> | 337 | /// <summary> |
338 | /// Record how many incoming packets are indicated as resends by clients. | ||
339 | /// </summary> | ||
340 | internal int IncomingPacketsResentCount { get; set; } | ||
341 | |||
342 | /// <summary> | ||
325 | /// Record how many inbound packets could not be recognized as LLUDP packets. | 343 | /// Record how many inbound packets could not be recognized as LLUDP packets. |
326 | /// </summary> | 344 | /// </summary> |
327 | public int IncomingMalformedPacketCount { get; private set; } | 345 | public int IncomingMalformedPacketCount { get; private set; } |
@@ -1506,6 +1524,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
1506 | 1524 | ||
1507 | #region Incoming Packet Accounting | 1525 | #region Incoming Packet Accounting |
1508 | 1526 | ||
1527 | // We're not going to worry about interlock yet since its not currently critical that this total count | ||
1528 | // is 100% correct | ||
1529 | if (packet.Header.Resent) | ||
1530 | IncomingPacketsResentCount++; | ||
1531 | |||
1509 | // Check the archive of received reliable packet IDs to see whether we already received this packet | 1532 | // Check the archive of received reliable packet IDs to see whether we already received this packet |
1510 | if (packet.Header.Reliable && !udpClient.PacketArchive.TryEnqueue(packet.Header.Sequence)) | 1533 | if (packet.Header.Reliable && !udpClient.PacketArchive.TryEnqueue(packet.Header.Sequence)) |
1511 | { | 1534 | { |