Subject: [ libssh2-Bugs-2641265 ] slow SFTP download speed

[ libssh2-Bugs-2641265 ] slow SFTP download speed

From: <>
Date: Sun, 05 Apr 2009 18:05:32 +0000

Bugs item #2641265, was opened at 2009-02-26 12:16
Message generated for change (Settings changed) made by bagder
You can respond by visiting:

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: SFTP
Group: v1.0 (example)
>Status: Closed
>Resolution: Fixed
Priority: 5
Private: No
Submitted By: Nobody/Anonymous (nobody)
Assigned to: Daniel Stenberg (bagder)
Summary: slow SFTP download speed

Initial Comment:
SFTP download speed slower in ~10 times then upload speed over SFTP in the same network conditions. As I am understood it is already known issue. Do you have patch or some workaround to increase SFTP download speed?


Comment By: Daniel Stenberg (bagder)
Date: 2009-03-11 15:35

I have to second Paul here: please take this discussion to the mailing


Comment By: Nobody/Anonymous (nobody)
Date: 2009-03-11 15:22

How hard would be to redesign libSSH code to enhance SFTP perfomance ?
This is a quite important for our project too and may be we could find
some resources to help you.
Do you have any estimation ?



Comment By: Paul Thomas (thomaspu)
Date: 2009-03-10 15:56


It would probably much more helpful to you and the rest of us that follow
bugs and such if you'd put messages of this sort on the libssh2 mailing
list. It helps keep the information in the bug reports much cleaner and
easier for everyone to follow regarding the specifics of a bug and also
provides a means for people that may be able to help you that are not
libssh2 devs or do not follow bug reports to get in touch with you.

The list is:



Comment By: Nobody/Anonymous (nobody)
Date: 2009-03-10 14:32

"I don't think SSH2 is really very essential when developing web, which is
what PHP is meant for."

Actually PHP is a very versatile high level language. The CLI version
does a very good job for creating daemons of various sorts. I personally
have written a web server and an email server in php; the email server
actually runs faster than the *major name* c program that it replaced. I
also know of two different projects to implement a DNS server in php. Why
do such crazy things? It's because of the programmer efficiency of using a
high level language instead of a low/medium level language like c. There
is also the bonus of better security, php programs are not susceptible to
buffer overflows in the way the c programs are.

Why do I need SSH? Because I am creating a B2B EDI gateway and need to
securely exchange files with other servers -- which I do not control. And
I am not the only one who does this sort of thing with PHP.

I would love to be able to toss a bunch of money in your direction, but
sadly I must defer for now. My company is still in startup mode and has no
income to speak-of, neither do I have any spare time at the moment but am
working about 16-18 hours per day. I came here hoping to find some
solutions to a huge and costly headache. I can live with slow downloads,
but there are other problems which have been nearly insurmountable -- and
which are probably not in libssh2 but in the php wrapper.

I really do appreciate the warm words of welcome which have been extended
to me, and perhaps in the future I can contribute in some way. Thank You!

-- Codeslinger


Comment By: Nobody/Anonymous (nobody)
Date: 2009-03-10 11:59

> SSH2 is such a fundamentally essential communication service, the
> levels of brokenness are hard to fathom.

I don't think SSH2 is really very essential when developing web, which is
what PHP is meant for. The divide is too large.. SSH2 is heavily stateful,
web is stateless. It makes a very poor fit.

Of course, there are fun possibilities, opportunities for innovation, but
as Daniel pointed out if you are interested in spearheading that
innovation, or merely making your existence more pleasurable, we would
really appreciate your help improving libssh2. Daniel and myself are both
available for support/development contracts, or you could simply work on
the library yourself.

I am looking forward to your help with the project!



Comment By: Daniel Stenberg (bagder)
Date: 2009-03-10 11:38

If you really deem this library so important, I'm convinced you'll show
that by putting your efforts (and money?) into improving it rather than
just telling the team of spare time volunteers about "the current levels of
brokenness". There's little need for that information sharing.


Comment By: Nobody/Anonymous (nobody)
Date: 2009-03-10 11:30

When you said "it is known, but there's nobody working on it" that what
set off my alarm bells to do with abandonware. When you misinterpreted
what I had said then I felt that I needed to clarify. Sorry for cluttering
up your bug tracker with off-topic items.

as far as PHP SSH2 goes, that program has indeed been the bane of my
existence. as far as I know it is just a wrapper to this library. I have
no way to know if the bugs are in the wrapper or in the underlying library.
 I mostly assume it is the fault of the PHP wrapper, but then when I
started looking through the bug reports for this library I started to
wonder. Clearly the download speed problem is in the underlying library
and not the fault of the wrapper.

SSH2 is such a fundamentally essential communication service, the current
levels of brokenness are hard to fathom.

I am basically satisfied with your explanation below about why this bug is
not being looked at. Thank You very much for your time and patience.

-- Codeslinger


Comment By: Daniel Stenberg (bagder)
Date: 2009-03-07 22:40

This project is explicitly doing libssh2 (only) the SSH2 extension for PHP
is not part of what we do here. I believe that is maintained by the PHP
team themselves.

Also, your words on open source is totally misplaced here. We deal with
libssh2 bugs in this tracker.


Comment By: Nobody/Anonymous (nobody)
Date: 2009-03-04 21:44

clarification: "Bane of Open Source" :-) was not referring to this
project, it was a reference to the levels of "abandonware" that M$ loves to
crow about when claiming why they are "so much better". Never mind that M$
routinely abandons any product it wants whenever it wants and with no
recourse whatsoever.

I have in fact encountered a number of "abandonware" projects in the open
source community. For instance PHP itself has become a very big concern to
me. Now I am very happy to see that they just recently released about 300
bug fixes for 5.2.9. But if you look up the bugs on that list you will see
that many of them have been sitting idle for 2 years!!! So finally after
no visible activity an amazing amount of activity. But in those last two
years of no activity I've been getting concerned.

On the other hand, M$ has the attitude that if we shipped a bug before and
we didn't get x thousands of complaints about it, then no matter how bad
the bug is, it's okay to ship it again. and oh by the way we also hid the
phone number were you are supposed to report those bugs... (I have this
from an MS insider) So yes, there is a difference between how open source
and M$ operate.

But the open source model does not always work either, even though there
is the theoretical ability for anyone to fix a bug, as a practical matter
most people have neither the time nor the skill to fix these bugs and so if
the original developer community stops supporting a project is usually
disappears. and thus the concern about abandonware.


Comment By: Nobody/Anonymous (nobody)
Date: 2009-03-04 21:23

okay, I accept that some problems are hard to fix. And I am somewhat
reassured by your response, especially the speed of it.

But I will tell you that libssh2 for PHP has in fact caused me endless
grief with the many bugs it has. And AFAIK it uses this library. Now I've
been assuming that the problems I've been encountering are with the PECL
library itself and not with the underlying libssh2. But after seeing this
bug report I started to wonder just where the real problem actually is.

SSH2 for PHP is in insanely bad shape.


Comment By: Tor Arntsen (tor-arntsen)
Date: 2009-03-04 18:19

People _are_ maintaining this package, but this particular problem requires
a re-design of how libssh2 currently works, more or less. In other words,
the performance problem is a bit tricky to solve and that is the reason it
is still not fixed. Other libssh2 problems are routinely being fixed, so
it's not the bane of open source projects just yet.


Comment By: Nobody/Anonymous (nobody)
Date: 2009-03-04 18:06

libssh2 is a very important and widely deployed library, especially by

This sounds like a pretty important problem. How come there isn't any one
maintaining this package? Am I being naive/unreasonable? Is this the bane
of open source that M$ loves to crow about?


Comment By: Daniel Stenberg (bagder)
Date: 2009-02-26 12:56

it is known, but there's nobody working on it and there's no patch that I
know of.


You can respond by visiting:

libssh2-devel mailing list
Received on 2009-04-05