<div dir="ltr"><div><div>Dear rsync devs,<br><br></div>I recently concluded a bug hunt 
to trace why my rsync-ing to an SBC was much slower than the 
corresponding iperf3-reported speeds. To give a concise summary of the 
situation, in slow wifi links using SSH with ProxyCommand tremendously 
speeds up things:<br><br>    $ dd if=/dev/urandom bs=1M count=50 of=sample.data<br>    50+0 records in<br>    50+0 records out<br>    52428800 bytes (52 MB, 50 MiB) copied, 0.24135 s, 217 MB/s<br>    <br>    $ rsync -avz --progress ./sample.data root@192.168.1.150:/dev/shm/<br>    sending incremental file list<br>    sample.data<br>         52,428,800 100%  575.23kB/s    0:01:28 (xfr#1, to-chk=0/1)<br>    <br>    sent 52,458,757 bytes  received 35 bytes  543,614.42 bytes/sec<br>    total size is 52,428,800  speedup is 1.00<br>    <br>    $ ssh <a href="mailto:root@192.168.1.150" target="_blank">root@192.168.1.150</a> 'rm /dev/shm/sample.data'<br>    <br>    $ rsync -avz --progress -e 'ssh -o "ProxyCommand nc %h %p"' ./sample.data root@192.168.1.150:/dev/shm/<br>    sending incremental file list<br>    sample.data<br>         52,428,800 100%    3.40MB/s    0:00:14 (xfr#1, to-chk=0/1)<br>    <br>    sent 52,458,757 bytes  received 35 bytes  2,690,194.46 bytes/sec<br>    total size is 52,428,800  speedup is 1.00<br>    <br></div><div>If it isn't clear - the speed of the upload went from 543 kbytes/sec to 2690 kbytes/sec.<br></div><div><br></div><div>If
 you want to see why - and how I traced this down - you can read my 
complete report in the UNIX StackExchange forum. To avoid being 
classified as a spammer, I won't include a link - search for question 
434825 in the search bar. The executive summary is that SSH disables 
Nagle's algorithm by default - and in slow links this can cause 
tremendous impact (as you see above).<br><br></div><div>Hope this helps people that backup over slow links (wi-fi or otherwise).<br><br></div><div>Cheers,<br></div><div>Thanassis Tsiodras, Dr.-Ing.</div>
</div>