Udon’s documentation states: “You can send out about 11kb per second” (Network Specs and Tips | VRChat Creation) but while stress testing the networking of a world idea I found the out limit was actually around 4KB/s.
The network activity in my testing world is being performed by an entity and its copies, all owned by the master. This entity has a synced Vector3 and int. Its sync mode is manual and is using a looping SendCustomEventDelayedSeconds to perform a RequestSerialization every second. The entities also slowly approach the master.
Using “Build & Test” and launching two clients, at 41 copies of the entity I am hitting an out of ~3.80KB/S and the network is performing fine (using “Debug Menu 6” to measure this). At 51 copies it starts fine for the first 10-20 seconds before the network enters a “suffering” state at ~4.11KB/S. For a heavy stress test of 201 entities, the networking instantly enters a “suffering” state while the out remains at ~4.11KB/S.
Can someone knowledgeable about Udon’s networking explain this gap between the 11kbs listed in the documentation and the 4kbs I am hitting? Is the documentation wrong? Is my implementation throttling the max potential output I could obtain? If so what things should I consider to avoid this throttling?