Mac FTP/SFTP Clients

I’d gotten turned on to Cyberduck as my primary FTP/SFTP client after really getting into Growl, the global notification system for Mac OS X.  The application I was using at the time, Fugu, didn’t have Growl support.  Cyberduck did, so I switched, and I’ve been using Cyberduck ever since.

I like the Cyberduck interface; it seems to make sense to me and I’ve never really run into any major compatibility issues (seems like I ran into one minor problem after an upgrade of OpenSSH on one of my servers, but that problem was quickly resolved as I recall).  The Growl support is, of course, excellent, and Cyberduck also offers a veritable laundry list of features—integrated support for Spotlight, a Dashboard widget, Keychain support, multiple windows, etc.  It even comes as a Universal binary.  (The features are far too many to list here; refer to the Cyberduck web site for complete information.)

Sound like a great application?  It is—if you don’t need to transfer large files.  Since I started out just using Cyberduck to move some small web pages back and forth to my web server, these were mostly small files and I didn’t really notice any performance hit.  Sure, it seemed a bit slower than command-line SFTP or SCP and it seemed to be a bit of a memory hog, but I figured it was just GUI overhead and thought no more about it.  For what I was doing at the time, it worked fine.

Recently, though, I’ve been needing to transfer much larger files to and from some SFTP servers on my local LAN.  How large?  ISO images ranging from 300MB to 600MB, sometimes multiple ISO images at a time.  Generally, the file transfers will complete, but they are just plain slow.  Almost painfully slow.  So slow, in fact, that I’ve been driven to looking at alternatives.

I’m currently evaluating Interarchy.  While the interface is a bit quirky (although I suppose that is due to being predisposed to an interface like Cyberduck’s), the performance is astounding.  I can transfer multiple ISO images in minutes, not hours as with Cyberduck.  It’s almost unbelievable.

I have yet to decide whether I’ll just buy Interarchy or if I’ll evaluate two other potential candidates, Transmit and Fetch.  Both applications have gotten good reviews, but—being the UI stickler that I am—neither of them sports as modern a UI as Interarchy (I really like the unified toolbar look).

My primary complaint with Interarchy is the price.  Sixty bucks seems a bit high for this type of application; both Transmit and Fetch (other options to replace Cyberduck) charge about half that.  Of course, the other applications don’t offer the same set of functionality that Interarchy offers, either.  But will I actually use that functionality?  Amazon S3 support is great, but will I really use Amazon S3?  I don’t have a WebDAV server, so is it worth paying for WebDAV support?  Is it worth paying for network tools that duplicate functionality already in the base operating system?

What do you think?  If you are a Fetch, Transmit, Interarchy, Fugu, or even Cyberduck user, please post in the comments and tell me what you think.

Tags: , , ,

13 comments

  1. Mark Mayo’s avatar

    I’m a happy Transmit user. I bought it mostly because both their SFTP support was solid and reliable, and the price was fair. I like that the interface look “midnight commander like”, or more Mac-like with a Finder-style window. Transmit’s sync modes actually seem to work — it’s brutally slow compared to something like rsync, but I’d expect that to be the case for anything that has to walk a remote filesystem.. If you do work with WebDAV, you’ll find Transmit’s support superior to the Finder’s. It’s faster, and connects to every WebDAV implementation I’ve ever tried (Apache, SVN, Zope/Plone, and Confluence). I don’t know if I’ve ever seen Transmit crash, or even encountered a bug.

    As for transfer rates, on my home network Transmit moves about 30MB/sec of SFTP data which pegs one of the cores in my iMac Core 2 Duo. This is exactly the same data rate (and CPU usage) that I see with the builtin “sftp” command line program. Interesting. Ah, yes, when I watched the process list Transmit is simply calling OS X’s builtin ssh/sftp. I can tell you that the CPU on my much slower file server (Solaris, but it runs the same OpenSSH server as everyone else) was about 50% idle. So clearly something is much slower about the OpenSSH in OS X. I’m willing to believe that Interarchy could be faster at SFTP, but I didn’t test.

    On plain FTP, Transmit is capable of saturating Gigabit Ethernet with relative ease. I did a test to a RAM filesystem and the rate stayed at a constant 101MB/sec. So basically your disks or the network are going to run out of steam before Transmit does. Transmit implements the FTP protocol natively, it seems. I didn’t spot another process during the FTP, and the Transmit process itself was on the CPU.

    I’m tempted to cook up a more robust test with a bunch of different clients to see how they all make out.

  2. slowe’s avatar

    Mark,

    Thanks for the feedback; that’s good information to have. If you do get around to doing a more robust test, I’d love to hear the results. If I get around to doing some more in-depth testing myself, I’ll update you on what I find.

    BTW, I subscribe to your blog feed in NNW…good stuff.

    Scott

  3. Aric’s avatar

    Hey, don’t forget Rbrowser. It is free for basic FTP and the pro version is very fast indeed. I find it far faster than any other FTP client including Interarchy, especially if you upload lots of smaller files. I’d be interested to know your results comparing it to the others.

  4. slowe’s avatar

    Aric,

    Thanks, I’ll have a look at Rbrowser. I’m primarily concerned with SFTP as opposed to “ordinary” FTP. Based on the feedback to my follow-up article (found at http://blog.scottlowe.org/2007/01/27/quick-follow-up-on-mac-ftpsftp-clients/), it looks like I’ll have to have another “SFTP shootout” of sorts.

    Scott

  5. Eric’s avatar

    I absolutely love Transmit, I’ve had alot of good luck with it and Panic has incredible support. But since you are running ESX 3.01 and moving ISO’s around, you might want to look in to using Veeam FastSCP, I use this for lighting fast uploads from my Windows laptop. You can download Veeam here: http://www.veeam.com/ Plus it is free!

  6. slowe’s avatar

    Eric,

    I have been pleased with Panic’s support as well (I use Unison). I like Transmit, but the more I use Interarchy the more I like the way it works–it just takes a bit to get used to it. I’ve had some conversations with one of the Interarchy developers about this.

    As for Veeam FastSCP, that wouldn’t exactly help me much since it (apparently) runs only on Windows. It also doesn’t use encrypted data connections; it uses SSH for the control channel and standard FTP for the data channel. I would suspect this is how it achieves higher throughput rates than “traditional” SFTP/SCP clients. Despite the name, it is not an SFTP/SCP client.

    Scott

  7. Alec’s avatar

    I love the way Interarchy works (like an ftp extension of the Finder, but with tabbed Windows), but I find that CPU spikes nastily while it’s listing a directory. On a DP 2.5 Powermac Interarchy and core services can saturate both processors for 10 or 20 seconds at a time.

    I have to find an alternative. A nuisance as I own 5 license small business copy.

  8. slowe’s avatar

    Alec,

    Get in touch with Matthew Drayton, the Interarchy developer. I can’t recreate the behavior you describe, but I’m confident that Matthew could help you out.

  9. Alec’s avatar

    Thanks Scott for trying to duplicate the issue. I’ve sent in a support ticket. I’m somewhat surprised by this as otherwise my DP G5 is running just fine and Transmit – of which I’m otherwise not terribly fond – doesn’t do this at all..

    I’ve also asked Matthew why passive/active ftp is a global setting and not a per server/per bookmark setting.

  10. Blokje’s avatar

    It seems like they some how managed to fix troughput a bit faster. Not very much but at me over wireless by factor 4 better.

    So newest version of cyberduck looks better on SFTP throughput. BUT don’t forget to set SFTP transfer mode to SCP which performs much better.

    That all on my powerbook G4

  11. slowe’s avatar

    Blokje,

    Yes, I noticed that Cyberduck had incorporated a new SSH engine in their latest beta builds, which was supposed to address some of those performance concerns. I may have to take another look at Cyberduck…

  12. Anders’s avatar

    I noticed there were many of the software developers reading and commenting here, so I thought I’d take the opportunity to make a wish.

    I have been using a fairly large number of different ftp/sftp client on win, mac and linux over the years. Some were better than others but none perfect. I would like someone to take the best of everyone and mould into a nice looking (cocoa?) app for mac, since I like mac best.

    This might not be the ultimate forum for this, so feel free to move to any forum of your convenience. I’ll just get the ball rolling.

    What I’d like it to be able to do:
    *Transfer files (well, duh..) using all known (and respected) protocols including ftp, ftps, ftpes, sftp with all kinds of strange certificates, but also http, like wget.
    *Open a number of connections simultaneously, one of which can be used for browsing the ftp site(s) while others are used for transfers.
    *Midnight commander style two-panel view option for those of us who like it.
    *Recursive folder compare/sync. Typically good for locally editing web sites that will automatically be uploaded when a newer version is saved. WinSCP does this excellently.
    *Growl support
    *Lots of more things I cannot remember right now

    On the mac I have tried fugu, cyberduck, fetch, the newly released port of filezilla, disk order and command line lftp. So far Fetch has been the one I’ve come to use the most so that would be an excellent starting point.

    Anders

  13. slowe’s avatar

    Anders,

    I would bet that most of the clients that have been discussed here already support the features you’ve mentioned. My choice was Interarchy, which does provide the protocol support you’ve mentioned, as well as the Growl support and good (to me) sync support. However, it does not have your “Midnight Commander”-style UI. Have a look at Transmit (from Panic) and see how it stacks up for you.

    Developers–anyone have anything else to add?

    Thanks for reading!

Comments are now closed.