in reply to FTP speed test

You could use Net::FTP to get a reasonably large file (500K) or so, and then use a localtime() before and after to see how long it would take. Repeat every few minutes with a cron job, and start pushing files over when the time is right. I don't think there is a particular speed test module for FTP (as it depends per server, etc), and benchmarking net connections is circumstantial information at best.

Good luck with it!
    --jay