Opened 4 years ago

Last modified 3 years ago

#12815 assigned bug

scp and sftp stall endlessly when uploading large files

Reported by: MichaelCrawford Owned by: nobody
Priority: normal Milestone: Unscheduled
Component: Network & Internet/TCP Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All


I'm trying to upload a couple core files to my webserver.

$ scp -P 443 core* username@…:Transfer

From 2 to 6 MB gets uploaded then the transfer stalls and never recovers. It doesn't quite, it just never comes out of the stall.

I'm running Nightly gcc2 hybrid hrev50336 in a VirtualBox VM.

I could use some tips as to how to get these files out of Haiku.

I'm inclined to think this is a problem with my Acer laptop, or with my server, but I'm reporting it in case anyone else would like to regress it. Maybe it's a real bug.

On the server:

$ uname -a Linux oggfrog2 3.2.0-37-generic #58-Ubuntu SMP Thu Jan 24 15:28:10 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Change History (3)

comment:2 by MichaelCrawford, 4 years ago

A little over 1 MB transfers successfully.

scp doesn't appear to timeout, it just continues to say "stalled" for quite a long time.

I'm running some ancient version of Ubuntu, but even and old ssh on my server, or an old kernel, should permit reliable file transfers. I've never had any problem with Linux in another VM on the same computer, or with Cygwin under Windows 8.1.

comment:3 by pulkomandy, 4 years ago

Component: - GeneralNetwork & Internet/TCP
Keywords: scp. sftp tcp networking Linux removed
Owner: changed from nobody to axeld

I've seen similar things, not always complete stalls, but the transfer getting slower and slower over time. I think this is related to our TCP implementation missing some bits and some stress-testing.

If possible, a tcpdump or pcap capture of the tcp flow for such a transfer could be interesting.

Also, please do not use the "keywords" field this way when reporting tickets. Instead please try to pick a category.

comment:4 by axeld, 3 years ago

Owner: changed from axeld to nobody
Status: newassigned
Note: See TracTickets for help on using tickets.