cURL / Mailing Lists / curl-library / Single Mail


Re: Getting files from SFTP is slower at newer versions

From: Moti Avrahami <>
Date: Wed, 25 May 2016 17:16:25 +0300

So I upgraded libssh2 to the newest version (1.7.0) but now I can't even
connect to a SFTP server and got this error:
"Failed initialization: Failure establishing ssh session"

To remind, I work with libcurl 7.47.1 and I managed to connect SFTP servers
with libssh2 1.4.1.
Now after the upgrade to 1.7.0, I can't anymore. Are there any known
issues/changes we need to do in order to make them work together?


On Sun, May 15, 2016 at 3:27 PM, Moti Avrahami <> wrote:

> I measure a downgrade of more 35% download time.
> I tried also to enlarge the CURL_MAX_WRITE_SIZE to 256K - 4MB but it
> doesn't improve the times.
> I am trying now to upgrade libssh2 to 1.7.0. Although I encounter some
> compilation errors (is there a specific Visual Studio version that is
> recommended for it?) I feel it will take me less time than trying to find
> the problem during debugging.
> Thanks,
> On Sun, May 15, 2016 at 12:45 PM, Daniel Stenberg <> wrote:
>> On Sun, 15 May 2016, Moti Avrahami wrote:
>> I recently upgraded my libcurl version from 7.19.4 to 7.47.1 and I
>>> noticed that there is a performance downgrade when downloading files from
>>> SFTP servers than the older libcurl version.
>>> I checked both versions against the same SFTP servers.
>>> I use libssh2 version 1.4.1.
>>> Does anyone know what is reason and how can I fix it?
>> I don't know the reason. But you're doing a *massive* upgrade bump so
>> almost everything has been changed internally. Clearly at some point the
>> SFTP performance got worse. How big is the speed difference you measure?
>> What's the latency to the server in your test case?
>> You're also using an outdated libssh2 version. It has improved through
>> time and modern versions should be faster and more reliable.
>> The way to track this down is through good old fashioned debugging. You
>> can possibly bisect yourself to the actual offending commit (assuming it
>> was a single specific one) and based on knowing which change it was we can
>> perhaps find the culprit/explanation faster.
>> I've written about (poor) SFTP performance in libcurl several times in
>> the past and we have ideas on how it could be increased significantly, but
>> unfortunately nobody has yet actually converted any of those thoughts into
>> reality. One such mention is here:
>> --
>> /
>> -------------------------------------------------------------------
>> List admin:
>> Etiquette:

List admin:
Received on 2016-05-25