I dont know about FTP but I think a TCP client server will be a goo approach for this situation
BTW, is only 1 client involved ?
So the syncing should act as some sort of backup-mechanism ?
Or do you plan to have multible clients and each can change data ?
Next Question: central or decentral,
central approach: more control over the whole thing, but on server-fail- no syncing possible, maybe loss of data.
decentral approach: less control, but your system cannot be shut down by switching of the server. maybe slower syncing but that depends.
And since it is a sync-process, only differences, files and parts of files must be synced, it can also work on a slow connection, when the initial sync-state is reached.
The initiation, of cause will transfer all files, maybe compressed.
(Sometimes a Harddrive shipped by (Snail-)Mail is faster than any ISP-internet-connection e.G: 6T/12h)