Joining a pretty fresh multiplayer map (a couple hours of playing so far, save file is 10 MB on disk) takes very long. This is because the download happens with just 60 kByte/s (sometimes, it's just 30 kByte/s) even though my internet connection can do 300 kByte/s, and the peer's uplink can do 1100 kByte/s. It seems that Factorio cannot properly use the entire bandwidth.
This is with version 0.13.0.
*[12.35 -> 13.x] Slow download of map in MP
-
- Inserter
- Posts: 35
- Joined: Sun Jun 26, 2016 9:37 pm
- Contact:
Re: Slow download of multiplayer map
I can confirm this with own experience, the game could utilize my full bandwidth (ca. 620kB/s) in 12.33 but since 12.35 (skipped 12.34) the download speed does not reach more than 350kB/s.
-
- Inserter
- Posts: 35
- Joined: Sun Jun 26, 2016 9:37 pm
- Contact:
Re: *[12.35 -> 13.x] Slow download of map in MP
Actually, the download was usually even slower for me on 0.12.33.
Re: *[12.35 -> 13.x] Slow download of map in MP
latency has a factor in the download speed. if your are very far away from the other person, it will slow the communication exchange.
Re: *[12.35 -> 13.x] Slow download of map in MP
I don't see how, congestion is detected by lost packets and lost packets are determined by later sent packets arriving, general latency should therefore not have an influence.cncr04s wrote:latency has a factor in the download speed. if your are very far away from the other person, it will slow the communication exchange.
-
- Inserter
- Posts: 35
- Joined: Sun Jun 26, 2016 9:37 pm
- Contact:
Re: *[12.35 -> 13.x] Slow download of map in MP
It is true that bad latency, in particular latency with heavy jitter, makes it hard to estimate the available bandwidth. But my peer is less than 200km away from me, ping shows 50ms to 100ms. That shouldn't be enough to slow downloads down to below 25% of my bandwidth. Maybe some time we can try having a webserver on the other end and downloading something via TCP, just to compare.
What I guess is happening here is that the Factorio download protocol is just way inferior compared to TCP. That's no surprise, TCP has been carefully tuned over decades by many, many experienced network engineers. (Not the on-wire format, but the way the peers decide to send packages.) IMHO, the best thing to do is to just use TCP as reliable transport (and keep using UDP for the rest) instead of trying to clone it, which is inevitably going to be frustrating and never going to be comparably fast. (I went through that myself, once, building a reliable transport over UDP... I can't recommend the experience to anyone. )
What I guess is happening here is that the Factorio download protocol is just way inferior compared to TCP. That's no surprise, TCP has been carefully tuned over decades by many, many experienced network engineers. (Not the on-wire format, but the way the peers decide to send packages.) IMHO, the best thing to do is to just use TCP as reliable transport (and keep using UDP for the rest) instead of trying to clone it, which is inevitably going to be frustrating and never going to be comparably fast. (I went through that myself, once, building a reliable transport over UDP... I can't recommend the experience to anyone. )
-
- Inserter
- Posts: 35
- Joined: Sun Jun 26, 2016 9:37 pm
- Contact:
Re: *[12.35 -> 13.x] Slow download of map in MP
Somehow, this has gotten much better since then -- with 0.13.11, I am downloading at 33% - 50% the speed of my line. Still not perfect, but much more acceptable