I have a 50 megabit connection at home and a 1Gb connection at work, yet transferring files between home and the work servers is extremely slow, about 300KB/s, using HTTP FTP or RD.
What should I do to increase the transfer rate?
EDIT: My home connection is 50/10, however, I'm more concerned about downloads at the moment. The speeds I was talking about was only for a single file using those methods. My biggest concern is that clients will be getting those types of speeds from the servers as well so I may be looking in the wrong place for the problem.
EDIT #2: After taking the advice of many people here, I tested with iperf and it reported 3.03 MB/s transfer and 2.50Mbits/s bandwidth (I'm not sure what that means, since I'm not sure how transfer could be higher than bandwidth). However, assuming that I can transfer at 3MB/s what program / protocol would take advantage of that best?
Do you?
Every home broadband connection I've ever seen has severely capped upload speeds. As an example, I'm currently on 30 megabit downstream, but I'm capped at 1 megabit upstream.
Check your speeds at http://speedtest.net/ and see if you're seeing a similar asymmmetric setup.
This is slightly off your topic, but if you can handle background transfers, then use dropbox.net. Just drag and drop the files to transfer and by the time you get home, everything should be synced up.
You don't say what methods you've tried, but if you haven't tried yet, use a client that can support several parallel transfers -- WinSCP (scp) and FileZilla (ftp) both support this. If you're trying to transfer a single file, you would need to split it up into several parts and reassemble once it's reached the other end.
If you're using Windows file shares (e.g., SMB) to connect the two machines, check out RichCopy -- the "File copy" value determines how many concurrent transfers will occur... try several values until you max out the throughput.
http://technet.microsoft.com/en-us/magazine/2009.04.utilityspotlight.aspx
You won't necessarily be able to saturate the connection it depends on how the routers are configured at both endpoints, not to mention every node in between.
It seems like you first need to measure the actual bandwidth available at home. Just because it says 50 megabit it doesn't mean you actually get to have it.
I recommend using a tool by the name of iperf to do the measurement. With iperf you can measure from say a "PC" at work to your "PC" at home. Google for tutorials and you will find them.
http://www.noc.ucf.edu/Tools/Iperf/
http://en.wikipedia.org/wiki/Iperf/
Sorry if this fails to answer your question, but it's better to be informed. Like @MarkM said don't be shocked with the results.
If you already have some old, obsolete version of the file that you're trying to download, then rsync (perhaps wrapped in the pretty Unison GUI) can make transfers finish much faster.
The rsync doesn't change your bits/second goodput; but it saves me a lot of time by only downloading the parts of a file that have actually changed.