I am transferring a file from source computer C1 to destination computer D1 [ not within the same lan] using rsync. File A in C1(source) is an updated version of the file B in D1(destination). file A is 850mb while file B is 530 mb.
rsync -e "ssh -p 2222 -o StrictHostKeyChecking=no -o ConnectTimeout=10" -avvvz --stats --progress fileA.tar username@destIP:fileB.tar
here are the stats obtained:
hash search b=25600 len=899737600 Number of files: 1 Number of files transferred: 1 Total file size: 899737600 bytes Total transferred file size: 899737600 bytes Literal data: 709324800 bytes Matched data: 190412800 bytes File list size: 38 File list generation time: 0.001 seconds File list transfer time: 0.000 seconds Total bytes sent: 617865859 Total bytes received: 153142 sent 617865859 bytes received 153142 bytes 3501524.08 bytes/sec total size is 899737600 speedup is 1.46 data sent - 617865859 bytes (590mb approx)
According to rsync's delta algorithm only the difference of 320 mb should be transferred along with extra bytes for checksum and instructions to bring all the transferred data together. But a total of 590mb is being transferred. Why is there an additional 270mb transferred?
Is this additional data transfer because of extra data passed as rsync instruction or checksum , or is there transfer of additional data from file A apart from the difference of 320mb - which means the delta algorithm is not very efficient in this case ?