diff options
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 6 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs | 23 |
2 files changed, 29 insertions, 0 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index d94da34..21a173d 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -1456,6 +1456,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
1456 | 1456 | ||
1457 | mapReply.AgentData.AgentID = AgentId; | 1457 | mapReply.AgentData.AgentID = AgentId; |
1458 | mapReply.Data = new MapBlockReplyPacket.DataBlock[mapBlocks2.Length]; | 1458 | mapReply.Data = new MapBlockReplyPacket.DataBlock[mapBlocks2.Length]; |
1459 | mapReply.Size = new MapBlockReplyPacket.SizeBlock[mapBlocks2.Length]; | ||
1459 | mapReply.AgentData.Flags = flag; | 1460 | mapReply.AgentData.Flags = flag; |
1460 | 1461 | ||
1461 | for (int i = 0; i < mapBlocks2.Length; i++) | 1462 | for (int i = 0; i < mapBlocks2.Length; i++) |
@@ -1470,6 +1471,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
1470 | mapReply.Data[i].RegionFlags = mapBlocks2[i].RegionFlags; | 1471 | mapReply.Data[i].RegionFlags = mapBlocks2[i].RegionFlags; |
1471 | mapReply.Data[i].Access = mapBlocks2[i].Access; | 1472 | mapReply.Data[i].Access = mapBlocks2[i].Access; |
1472 | mapReply.Data[i].Agents = mapBlocks2[i].Agents; | 1473 | mapReply.Data[i].Agents = mapBlocks2[i].Agents; |
1474 | |||
1475 | // TODO: hookup varregion sim size here | ||
1476 | mapReply.Size[i] = new MapBlockReplyPacket.SizeBlock(); | ||
1477 | mapReply.Size[i].SizeX = 256; | ||
1478 | mapReply.Size[i].SizeY = 256; | ||
1473 | } | 1479 | } |
1474 | OutPacket(mapReply, ThrottleOutPacketType.Land); | 1480 | OutPacket(mapReply, ThrottleOutPacketType.Land); |
1475 | } | 1481 | } |
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 | { |