Subject: Re: [libssh2] How to increase performance of libssh2 SFTP Read/Write

Re: [libssh2] How to increase performance of libssh2 SFTP Read/Write

From: James Housley <>
Date: Wed, 20 Jun 2007 06:27:45 -0400

On Jun 20, 2007, at 2:10 AM, Mononen Jussi wrote:

>>>> What about a comparison with openssh's sftp next to our
>>>> sftp_nonblocking?
>>> OpenSSH sftp: 0:01.06, 0:01.04, 0:01.01
>>> libssh2 sftp_nonblock (libssh2 packet size:4K, sftp_nonblock
>>> read 64K "static"): 0:01.60, 0:01.60, 0:01.58
>>> That looks close enough to be called the same.
> Hi,
> 61 seconds (0:01:01) is not the same as 118 seconds (0:01:58). The

No those are all 1 second plus 6/100ths for OpenSSH. While libssh2
is 1 second plus 60/100ths

> latter is ~100% slower. If this ratio endures when the file sizes grow
> or the netowrk speed decreases the performance can be too weak.
> What if
> OpenSSH sftp transfers one file in 10 minutes, libssh2 would take 20
> minutes. From our/my point of view this is not acceptable and we/I
> have

So it would take 15 minutes, which is still slower. Not that was
with a libssh2 with an internal 4k Packet and reading 64K at a time.
Still available for testing is libssh2 with 32k packets and even
reading 256k at a time.

> had to rely on wrapping command line tools for certain performance
> critical systems.
> But I guess the packet pipelining is out of the scope of 0.15 release.

I would think so too.


/"\   ASCII Ribbon Campaign  .
\ / - NO HTML/RTF in e-mail  .
  X  - NO Word docs in e-mail .
/ \ -----------------------------------------------------------------
                 The Power to Serve
The wise man built his network upon Un*x.
     The foolish man built his network upon Windows.
This email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
libssh2-devel mailing list
Received on 2007-06-20