Commit Graph

4 Commits

Author SHA1 Message Date
John Hurliman
f1e8fd4fe8 Major rewrite of the packet sending code:
* Automatic packet splitting. You can send packets with any number of blocks and the networking layer will split them up automatically
* Less memory is allocated for outgoing packet buffers
* Memory is only allocated for zerocoding (outgoing and incoming) when it is needed
* A lockless queue is used to hold outgoing ACKs
* ACKs are stuffed into packets until they hit the MTU
* All outgoing packets are serialized exactly once, instead of serializing every resend
* Improved the clarity of the networking layer (I will upload a flow chart of packet sending soon)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2800 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-22 19:54:00 +00:00
Jim Radford
9ef3255474 LIBOMV-377 Increasing UDPPacketBuffer size to 4096, fixes exceptions being thrown when large inventory packet is received exceeding the previous buffer size. This will increase memory usage slightly
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2215 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-12 21:36:44 +00:00
John Hurliman
6e4eb466ad * UDPPacketBuffer.Data and UDPPacketBuffer.ZeroData are now readonly to prevent mischief
* Removed UDPPacketBuffer constructors that let you initialize with empty buffer arrays, they are always initialized now for safety

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2150 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-22 00:19:44 +00:00
John Hurliman
51aa7dbe10 * Removing unused InventoryNode and InventoryNodeDictionary files
* Adding INetworkManager interface, a good starting point for converting all of the manager classes to interfaces
* Changing object pooling for packet buffers from per-sim to a singleton in ObjectPool.cs, should resolve memory leaks for bots that travel the world [LIBOMV-338]
* Removing DetectBotCommand since that detection method does not work
* More work on Matrix4 type

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2034 52acb1d6-8a22-11de-b505-999d5b087335
2008-07-30 19:24:15 +00:00