Right now, when connecting to a remote host for download, using rsync protocol, it happens in the following order: 1. The connection is made 2. The remote file tree is scanned 3. The local file tree is scanned 4. Files are downloaded Unfortunately, especially when using --checksum (because of local data corruption or what not), step 3 can easily take long enough that the remote host times out and closes the connection, since there is no traffic during that time. This really should be: 3. The local file tree is scanned 1. The connection is made 2. The remote file tree is scanned 4. Files are downloaded If not, then there needs to be some kind of keepalives sent during step 3. -hpa