in reply to Re: SFTP on Windows
in thread SFTP on Windows

You can also run Net::SFTP::Foreign on top of Net::SSH2 using Net::SFTP::Foreign::Backend::Net_SSH2.

salva, what are the advantages of doing that - as opposed to simply using Net::SSH2 ?

I'm thinking that if it's using Net::SSH2 then Net::SFTP::Foreign::Backend::Net_SSH2 is not going to provide any performance boost ... therefore, maybe it provides some advantages when it comes to writing the code ?
Does it, for example, simplify the coding of an sftp_put() ?

Cheers,
Rob

Replies are listed 'Best First'.
Re^3: SFTP on Windows
by salva (Canon) on Nov 01, 2010 at 17:14 UTC
    I'm thinking that if it's using Net::SSH2 then Net::SFTP::Foreign::Backend::Net_SSH2 is not going to provide any performance boost
    Actually it is!

    Net::SSH2 support for SFTP (Net::SSH2::SFTP) is very basic and implementing efficient file transfer operations on top of it is far from trivial.

    Besides that, Net::SFTP::Foreign provides a bunch of high level methods such as find, glob, mput, rput, etc.

      Just installed Net::SFTP::Foreign::Backend::Net_SSH2 and gave it a try. Couldn't detect any improved performance for a "put" of an 8Mb file over a local connection - but the coding is so much simpler (no need to come up with my own "put" subroutine), and it's far more flexible than Net::SSH2.

      Nice work, salva. I'll certainly be making good use of this module from now on.

      Cheers,
      Rob

      Update: The sftp transfer of that file takes about 30 seconds. I've just checked the time it takes to scp_put() the same file and it's only about 4 seconds !!
      Is that time disparity to be expected ?
        The sftp transfer of that file takes about 30 seconds. I've just checked the time it takes to scp_put() the same file and it's only about 4 seconds !! Is that time disparity to be expected ?

        No, Net::SFTP::Foreign put and get should be as fast as the scp alternatives. It seems you have found a bug...

        Update: There was a bug! A new version of the module is replicating through the CPAN.