rsync protocol description

Donovan Baarda abo at minkirri.apana.org.au
Wed Dec 18 12:14:00 EST 2002


On Wed, 2002-12-18 at 19:03, Christoph Bartelmus wrote:
> Donovan Baarda wrote:
> > > For that I'd be very much interested in a description of the protocol
> > > that rsync talks on port 873. Is such a description available somewhere?
> > > I don't want to have to deduce the protocol from the source code.
> > 
> > The protocol changes as rsync is updated, and is very.... evolved....
> 
> Does that mean that rsync does not maintain downwards compatibility? My
> former examination did not indicate this. The startup protocol includes
> the exchange of protocol versions in use. I guess there's a reason for
> it. Otherwise I could imagine that this could be a steady cause of
> trouble.

rsync does mantain backwards compatibility... that is potentially part
of the problem. The new versions check the protocol version and will use
"old protocols" if required. This means rsync has to support all the old
various broken forms of the protocol. 

A small example of this is the md4sum code has a bug that makes md4sums
incorrect for large files. This does not break the file transfers in any
way because it is consistantly incorrect. However, if someone fixed
this, it would mean rsync would have to include two md4sum
implementations; the correct one, and the broken one for backwards
compatibility.

if you were to implement your own rsync client, you would either have to
reject older versions of the protocol, or implement them all. In any
case, you will be constantly playing catchup with rsync. 

> > re-implementing and tracking it is not really viable/desirable.
> > 
> > > What I have found so far are the description of the algorithms (rsync
> > > technical report and Andrew Tridgell's PhD thesis). Have I overlooked
> > > something obvious?
> > 
> > http://freshmeat.net/projects/pysync/
> 
> The ftp-server minkirri.apana.org.au gives me a "421 Service not
> available, remote server has closed connection".

Hmmm, that's wierd. The logs show nothing wrong, and 8 transfers today
and no down time. However, when I looked I did notice that I'd screwed
up the alternative http access yesterday when I fiddled with my apache
configs.

If ftp is causing the problems, try;

http://minkirri.apana.org.au/pub/python/pysync/

It should be working OK (now :-).

-- 
----------------------------------------------------------------------
ABO: finger abo at minkirri.apana.org.au for more info, including pgp key
----------------------------------------------------------------------




More information about the rsync mailing list