I have ~70ms latency over my VPN connection and need to set up a backup/replication system. SMB is the worst, with throughput ~200KB/s. SCP gives me ~400KB/s. HTTP ~700KB/s. The links are symmetric 50mbit connections.

Is there any kind of file transfer protocol designed for this kind of high latency connection?


  • what does ftp look like? – tony roth Jan 5 '12 at 18:42
  • 1
    Stationwagon full of tapes. – Tom O'Connor Jan 5 '12 at 18:48
  • 1
    Have you looked at WAN accelerators? Not inexpensive but can really help. – Dave M Jan 5 '12 at 20:01
  • How many files, and how small? Could be relevant. – Smithers Apr 27 '15 at 18:56

If you already have a VPN in-place, then ftp might be a valid choice.

A latency of ~70ms is not what I would call high though. SCP and http should perform far better then what you describe on a 50mb/s 70ms link. You may have some other problem. You might want to use iperf or something else that can test the raw capacity of your connection.

  • 3
    +1 for other problem. I regularly reach over 1MiB/s on 200+ms links. RSS should take care of latency, if there are lots of small files to transfer, than every protocol will be slow. tar them before transfer. If tarring doesn't help: you've got different problem. – Hubert Kario Jan 5 '12 at 21:01
  • 1
    +1. 70ms rtd is not that much and transfers over a 50Mb/s link shoud really be faster than what the OP states. Other problem here. – petrus Jan 5 '12 at 21:36
  • I for one do NOT think that you have another problem! While 70ms is indeed a good value, it still matters a LOT! Especially for small files! There's no way you can transfer more than 10 tiny small files per second, even though you have 50mb/s. Unless you use rsync or tar it. Just calculate one rountrip for open, one for close, one for each chunk for SMB. It really is that bad – Christian Aug 21 '12 at 21:38

I'd use tar

you can either create a tarfile and transfer it, or directly pipe the output throught netcat or similar tools.

The advantage is that the protocol won't do a lot of file-open handshakes.


I would probably use scp or rsync and the arcfour cipher.

  • If that's too tricky, robocopy can be setup to wait/retry if the connection drops, but robocopy is only clever enough to overwrite the whole of any changed file rather than just the changes. – Robin Gill Jan 5 '12 at 19:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.