(PS : whoops, you were quicker than me to reply :). I will try to look carefully this WE too.ĭo you have any other changes in the pipe for SFTP client ? So I don't take too much time to change something already changed :). I go quickly through your patch, and I'm not sure of all the changes you made. Sorry, I don't have the time right now to make the tests, but I will try to look at them this WE. Let me know the results with the patch attached and how it compares to the previous upload implementation. I have something half-baked here as well and will try to see if I can combine best of both worlds. And I've got no idea on how to do this with the current framework you're using. However, due to my little understanding of your code, This POC is a little bit buggy since it will not clear the waiting queue for the last 64 requests. This patch will illustrate that doing parallel request for writing is faster than the current code. I added a small patch as a POC for upload limitation. Ftp Duck Mac Download FreeFtp Client DuckMac Ftp SoftwareMac Ftp ServerCyberduck is an open source FTP and SFTP (SSH Secure File Transfer) browser licenced under the GPL with an easy to use interface, integration with external editors and support for many Mac OS X system technologies such as Spotlight, Bonjour, the Keychain and AppleScript. Thanks again for your help here, much appreciated! Let me know about the results compared to no parallelism. I understand and the patch my own patch attached should fix this issue with the same characteristics of sending out multiple write requests before reading any status. it will read back the answer only after the 64th requests, so when the server starts to reply to the requests and that the requests are back to the client.Īnyway, the main problem of this patch is the lasts 64th requests that aren't checked at the end of the download. So it doesn't wait for the network latency just after sending the first request and so on. Yes, but after parallelism requests only. It will still toggle between writing and reading the status. I don't see how the patch attached changes this behaviour. Ok reading you code, I think that the main problem is that you are waiting for the ACK before continuing to send data, while openSSH just send stuff as fast as it can until he fills the queue, then check for ACK when the sent queue is filled.
0 Comments
Leave a Reply. |