I would use this script I wrote that needs the socat package.
On the source machine:
tarnet -d wherefilesaretosend pass=none 12345 .
On the target machine:
tarnet -d wherefilesaretogo pass=none sourceip/12345
If the vbuf package (Debian, Ubuntu) is there then the file sender will show a data progress.  The file receiver will show what files are received.
The pass= option can be used where the data might be exposed (slower).
Edit:
Use the -n option to disable compression, if CPU is a bottle neck.