[General Question] Syncing between networks

I’ve been going around the docs and this forum looking for an answer but couldn’t find it, so I apologize if my question has already been answered before.

I have 3 machines (A, B and C).
A and B are on the same local network and C is on a remote location.
Let’s assume there’s only one (same) share on each machine, what would be the better way of connecting them:

  1. C <-> A <-> B
  2. C <-> A | C <-> B
  3. C <-> A | C <-> B | A <-> B

For 2 and 3, I’m concerned that C will have to use twice as bandwidth as 1 for sending.
Also, are 2 and 3 actually different in a real-world scenario?

Thanks!

Syncthing naturally fetches more data from the faster peer, which in your case should be the local network. Yes, initially all bandwidth will come from C as C is the only one with the file, but over time it should shift more towards each other in the local network as they have more and more data.

Thanks for the quick reply.

Just to confirm that I understood correctly, on upload from C:

  • Option 1 will use x1 bw (sending only to A)
  • Option 2 will use x2 bw (sending to both A and B which are not connected to each other)
  • Option 3 will use x1.x bw (sending only some to both and the rest is sent locally)

Yes

1 Like