b'\n_START_ARTICLE_\nRsync\n_START_SECTION_\nAlgoritme\n_START_PARAGRAPH_\nRsync gebruikt een algoritme, uitgevonden door de Australische computerprogrammeur Andrew Tridgell, om een bestand effici\xc3\xabnt te versturen wanneer de ontvangende computer al een andere versie van dat bestand heeft._NEWLINE_De ontvanger deelt zijn exemplaar van het bestand op in elkaar niet overlappende blokken van vaste lengte, zeg\xc2\xa0, en berekent twee checksums voor elk blok: de MD5-hash, en een zwakkere "doorrollende" checksum. Beide stuurt hij op naar de verzender._NEWLINE_De verzender berekent de doorrollende checksum voor elk blok van lengte\xc2\xa0, dus ook voor overlappende blokken. Dit kan effici\xc3\xabnt vanwege een eigenschap van deze checksum: als de checksum van de bytes met nummer\xc2\xa0 tot en met\xc2\xa0 gelijk is aan , is het eenvoudig om de checksum van bytes\xc2\xa0 tot en met\xc2\xa0 te berekenen zonder te kijken naar de tussenliggende bytes. Dus als je al de checksum van bytes 1\xe2\x80\x9325 hebt, kan je de checksum van bytes 2\xe2\x80\x9326 berekenen uit alleen de vorige checksum en de waarde van de bytes 1 en 26._NEWLINE_De verzender vergelijkt zijn rollende checksums vervolgens met de serie die de ontvanger heeft verstuurd, en bepaalt of er overeenkomsten zijn.  Als dat zo is, verifieert hij de treffer door de MD5 te berekenen voor dat blok, en dat te vergelijken met de MD5 die de ontvanger had gestuurd._NEWLINE_De verzender hoeft nu alleen nog maar die delen van het bestand te versturen die niet overeenkomen met een blok dat de ontvanger al heeft, plus "montage-instructies" die aangeven waar de ontvanger die delen moet invoegen, en welke delen van zijn eigen bestand die moet schrappen om een bestand te krijgen dat identiek is aan dat van de verzender._NEWLINE_Hoe meer overeenkomsten tussen beide bestanden, hoe minder gegevens er verstuurd hoeven worden.'