my colleague experienced low ftp upload speed with curl(7.26, 7.28.1). ~500kb/s
(win client to linux ftp server, both located in different countries so connection was not so ideal).
but at the same time upload speed through ordinary windows client(FileZilla) was much higher ~6mb/s.
finally we had tested ftp upload with farmanager which has ability to tune IO buffer size. by using 16k buffer we achieve same 500kb/s limit and than we specify 256kb IO buffer then speed goes up to ~6mb/s
curl upload speed is very sensitive to CURL_MAX_WRITE_SIZE. default 16kb is not enough. i have made custom curl build with increased buffer size upto 256kb and finally problem was resolved.
may be the root of problem is not in this value and only some internal upload pipeline should use increased value.