If you ever have to move a large amount of data (by which I mean several gigs) around a Windows network, forget about using normal Windows networking and do it with FTP. The reasoning goes like this:
- SMB (the main Windows networking protocol) is horribly inefficient at file transfer. As Sean pointed out to us, it’s a presentation layer protocol rather than a file transfer protocol and it does a whole load of other things (named pipes, printer sharing, authentication etc.) plus it runs on top of NetBIOS which is in turn on top of TCP/IP. So it’s not going to be particularly speedy.
- As a result, using FTP often gives at least 200% of the SMB transfer speed.
- On top of that, since the networking interface is pretty low-level within Windows, doing slow scary networking can often cock up Explorer something chronic. You know what I mean – locked-up share windows, horrific unresponsiveness, the whole of Explorer just deciding to hang and take your file transfer with it, etc. etc. U-G-L-Y. Doesn’t happen with FTP.
- Your FTP client will usually give you an accurate estimate of the ETA, unlike Windows networking which usually smokes a hefty crack pipe before guessing. (“3639347 minutes remaining”)
- There are plenty of nice freeware FTP daemons for Win32, such as the ever-popular WarFTPd, and almost all of them are easier to set up than IIS’s FTPd – the simplest ones take about a minute to get going.
Incidentally, the best Win32 FTP client I’ve found is the open source Filezilla, which is lovely and free and featureful (it can do SCP). I only found it relatively recently, before which I was dependent on the classic FTP Explorer, which has a nice (read: consistent) interface and is easy and free, but a bit buggy. FZ isn’t as good at simple drag’n’drop yet but I’m sure that’s coming.