Master Folder on server with multiple clients

Hi

I am migrating from BitTorrent Sync and want to check my Syncthing setup for syncing a single master to multiple clients.

At the moment my server is sharing a (master) folder with two clients for off-site archiving, and they are all syncing OK.

Should I also be sharing this folder between the two clients as well? I can’t tell if the server is sending the same files to both clients at the same time (not good for bandwidth) or if the two clients automatically share data as they’re both syncing with the same master folder.

If I need to share and sync the folder on the clients as well, I guess this is awkward as neither of these are masters and ideally I don’t want changes on one client to go to another client.

Thanks

If you don’t want clients to mess with each others data then don’t share the folder between them, though that will also mean that the master is sending data twice, as by definition of the current implementation, sharing data between clients means they can mess with it, as data itself is not authenticated and the “master” flag only has meaning on the local node its enabled on, and no way authorative to other peers of the cluster.

1 Like

Thanks for your reply.

I have realised that the master sends the data twice, which is a problem for me, so I have enabled sharing between the clients as well. There’s little chance of the data being messed with on the clients, and if this happens I can use the ‘out of sync’ reset on the master to straighten it out.

A true read-only client would be great, but there are already requests for that, so I’m sure it’ll happen in good time.

If you have the ability, I would suggest removing write access to all other users on the client machines. This only works if you control those machines but is more effective than anything Synching will ever be able to do.

To partially share traffic between the two client machines, reducing the traffic sent from the master, set different “File Pull Order” methods on the clients.

Syncthing does not share data from one client machine to the other until the file is completely downloaded from the master. If client1 gets “Oldest first” and client2 gets “Newest first”, and multiple files are changed on the master, then they will initially download different files from the master.

Assuming that the available bandwidth between the clients is significantly greater than that between the master and either client, then you can very much reduce the double download problem, in that each client will rapidly share whatever it has downloaded with the other client.

This all breaks down if the download files are few, and large.

-jem

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.