Quark

Quark

143M Downloads

Pipes consume a lot of network bandwidth

williewillus opened this issue ยท 0 comments

commented

Version: 1.16.3 latest (but presumably any version with pipes).

I made a little network profiler mod to help diagnose packet spam on the patron server.

In doing so, I found that pipes consume a lot of bandwidth, and this scales badly with the number of items in the pipe. Furthermore, poorly-designed contraptions or full storage systems that repeatedly have items bouncing around in the pipes can lead to a setup that is doing nothing but wasting bandwidth.

Control setup: Superflat world, completely loaded in, peaceful mode.

Small pipe loop passing items in a circle: 6K/s ish
2020-10-18_22 08 59

Now let's set up a worst-case where a user's chests for a farm's output are full and the items are just bouncing around. Both chests are filled with diorite. The hopper keeps injecting items until the pipe breaks, and I can push it up til around 90K/s before this happens.
2020-10-18_22 08 25

Now multiply this by many broken setups in a close area and you have a recipe for insane downstream bandwidth usage (or upstream on the serverside, and those don't have to be in a close area).

I'm not familiar with the pipe code, so I don't really have a solution. It seems like the only data needed clientside is ticks in world and the stack itself, so maybe don't sync any of the other stuff.