Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

We're running some 1GB FTP file transfer tests in advance of a larger 40GB transfer and seeing 15x slower performance (450kB/s vs. 7Mb/s) when the 1GB test tar file is composed of small (<100k) binary files (images, pdfs, compressed files, etc.) vs. similarly small text files (jason snippets).

The approach is a passive FTP binary mode transfer via ncftp client to an ncftpd server over the Internet from one datacenter to another, with both datacenters having 100Mb/s WAN links.

Perhaps there is a fundamental misunderstanding, but why would one tar file FTP transfer 15x slower than another of the same size based on content type? Could our firewall be at play here? And, can we have the 7Mb/s version, instead?


share|improve this question
Text often compresses incredibly well. Pre-compressed file formats don't. Likely there's some on the fly compression happening during transfer. Are you able to see, from outside the FTP client, how much bandwidth the connection is using during transfers? – SmallClanger Dec 28 '12 at 23:01
@SmallClanger, ftp doesn't support compression? Or rather the mode z is not very well supported on many clients/servers. Given how uncommon it is, and that it is disabled by default almost everywhere, I highly doubt the OP has any compression – Zoredache Dec 28 '12 at 23:33
@Zoredache Compression could be happening at some other layer (eg VPN) but considering that the client and server are a pair, I'd believe it would enable all the optimizations it knows it supports. – DerfK Dec 29 '12 at 0:08
OP here, thanks all for the discussion. Couple of notes: the transfer is not through VPN, the client is sending the tests to the server via PUT (suppose we could switch this) and when reviewing the ncftp and ncftpd docs it looks like compression is off by default and if enabled only used when clients issue a GET. Any other ideas are still appreciated... Happy New Year! – Samuel P. Worthington III Dec 29 '12 at 4:06

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.