One background project I’m semi-working on is looking for replacements for software that I commonly use that will work better. One of those areas is synchronisation software.
At home I have a Windows Server 2003 Domain Controller that serves files to computers on my network. For the most part this is all fine and dandy, I’ve redirected the appropriate user folders to point at a file share on the server so everyone has the same documents everywhere. The problem comes when I move away to uni or placement. Whilst there, my computer and laptop aren’t on the local network so they have to use Offline Files to keep a local cache of my files. Offline Files is great because:
- It’s very transparent, when I’m away from home I can access my documents perfectly as I would do at home.
- It’s easy to start synchronising the local cache with the server via VPN.
But there are a few problems:
- It’s unreliable over the VPN connection, helped in no part by the appaling quality of our home broadband connection.
- It takes ages to get going.
- When something goes wrong with the sync, Offline Files is not forthcoming with details.
- When I’m at home working online, offline files sees fit to consume my computer’s processing power every couple of minutes to update sparsely cached files.
- Some games don’t like having My Documents on a remote file share.
- There’s an issue with Windows 7 taking ages to log on if offline files is enabled with certain group policies.
So I’d quite like a nice piece of software that I could use to replace it. That way I could solve many of the problems I’m having by having a local documents store on each computer which could be synced as I updated files with my home server and any other computers – just like dropbox but on my server with as much data as I choose.
So here’s my requirements:
Server\Client Architecture
In order to work well, I can’t rely on directly accessing my server’s file share while I’m away from home, because that’s partly what makes Offline Files so unreliable. Therefore, the software would need separate server and client components so that file processing could be done locally rather than having to transfer too many files.
Efficient data exchange
When I’m synchronising I’ll be sending and receiving data between residential broadband connections, usually with different providers so transfer speeds aren’t going to be particularly fast. I don’t mind this because I need my data in those two places and this is the only feasible way of getting a “decent” internet connection.
Therefore, the software would need an efficient protocol that only transmitted parts of files that had changed and preferably compressed the data it sent. The ability to encrypt the connection would be nice as well, but I’ll settle for going without if the software supports compression.
Relatedly, the software should be able to immediately synchronise files that I save. I shouldn’t have to wait for a few minutes while every other file is checked when it’s clear that I’ve changed one file that I’d like to appear everywhere else. It should not be too hard for the client service to sit in the background and wait for me to change files.
A pleasant user interface
Much as I like playing with text files and trusting programs that are providing me with no visible feedback whatsoever, I need a user interface to let me configure the software easily, to tell me what it’s doing, how the last transfer went, how much data has been transferred, and so on.
Choosing files to synchronise
Being able to synchronise multiple sets of documents is vital (i.e. synchronising \\server\nicholas to C:\path\nicholas and \\server\public to C:\some\other\path\public) so that the software can be a valid multi-user solution.
Relatedly, excluding files and folders from being synchronised would be useful, but is not vital.
These are the minimum set of features that I need for such software, and can I find such a beast? No, not without paying for something that doesn’t really fit my requirements either. I’m really suprised that the open source community hasn’t developed something better. Almost anything open source is just completely incompatible with Windows, unless you fancy haxing around with Cygwin, which is A) rarely fun and B) a cop out, and lacks the kind of integration and user interface I’m looking for. Any remotely hosted service is unlikely to be able to cope with my needs without significant expense: my family has over 100Gb of documents in over 100,000 files, which is more than Dropbox will give me even if I want to give them money in exchange.
I am open to suggestions, including paid for software, preferably without subscription fees.
0 comments:
Post a Comment