This paper explores opportunistic block reordering to exploit the data sharing among concurrent file transfers. We introduce the Circus algorithm for scheduling disk access and reordered network transfers, and evaluate an implementation in a modified FTP file server and client under synthetic file access workloads. We conclude that block reordering can significantly improve server cache performance for large, shared files. The average file download time with Circus remains close to minimum across the workloads, and is significantly lower than with conventional sequential file download. Additionally, Circus more than doubles the server network throughput when there is significant sharing, and reduces the required disk bandwidth by an order of magnitude in some cases.