I’m using Tailscale to sync files between two machines. I’ve manually set each others’ addresses to the addresses Tailscale assigned (tcp://100.abc.def.ghi:22000). I have both devices using 12 connections, and the connection type says TCP WAN on both GUIs. Only 12 items in total are out of sync. Both machines are very capable. I cannot test right now, as I am far away from home, but I remember the speed over LAN being significantly faster, albeit still slow in my opinion (4-8 MiB/s). What might be the issue? What steps can I take to troubleshoot this?
I use Meshnet (which I understand is based on Tailscale) and typically get better performance than the LAN speed you saw.
Performance for file sync can be impacted by a number of factors:
- Number of files
- Size of files
- Speed, MTU, latency, and packet loss
- Device performance and load
- Database issues
I’m sure I’m missing other possibilities.
For both Devices, please share the version of Syncthing you’re using, the OS and version, nominal connection speed, number of files, and total GiB of files being synced.
Both devices are on 1.30.0. One is on Windows 11 24H2, one is on EndeavourOS (LInux). I’m not sure what you mean by “nominal connection speed,” but on speedtest.net, one device gets 93 Mbps down/11 up, and the other gets 120 Mbps up and down. I believe the device currently uploading the out-of-sync files is the one with slow upload. Only 12 files are being synced, and they’re about 30 KiB in total.
It’s easy to get tripped up by the measurement units in use…
Assuming your Tailscale mesh isn’t passing thru a relay, a 93/11 broadband connection means a maximum upload speed of just under 1.4 MB/s (i.e. 11 Mbps / 8 bits per byte). With Syncthing’s sync algorithm minimizing transfers of duplicate blocks, depending on the type of data and changes, an effective transfer speed of 4-8 MB/s seems reasonable.
That is what I meant by nominal connection speed, thank you.
I’m aware of the conversion between Mbps and MBps. I would be thrilled to see even a few tens of KB/s in Syncthing right now, honestly. I’ll add some more information: the download and upload rates fluctuate quite a bit. It’ll show 0 bps for a little, then maybe 5, then maybe get up to almost 20, then go back down.
Slow transfer speeds could also mean that one of the clients is limited by CPU or IO.
I have a feeling the data transfer rate is low, because the sync failed and nothing (except keepalive packets) is being transferred.
Screenshots of the affected device(s), and especially folder(s) would be appreciated.
As this is about syncing between Windows and Linux, have you tried enabling “Ignore Permissions” in the Advanced folder settings? Also, have you perhaps tweaked any of the default settings? For example, I’m seeing a large number of connections on the screen, so I’m assuming this isn’t a default Syncthing configuration.
I’ve increased the number of connections from the default, but that’s it as far as I can remember. I just enabled that for all of the folders on both sides, then restarted Syncthing, on both sides, but it didn’t seem to affect anything.
My guess is on filenames with characters that are reserved on Windows
Ran a script to find files/folders with illegal names, it found nothing.
Could you post a screenshot of the files which haven’t been synced yet?
These are the “Out of Sync Items”, and (more importantly) “Failed Items”.
All is well, files are now syncing at a brisk ~60 KiB/s. Thank you all!
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.