CVSup

CVSup は、ある場所を基準として別の場所のファイルおよびディレクトリを同期させるプログラム。データ転送量を最小化するため、ファイルの種類毎に適切な差分符号化を行う。CVSup はCVSなどのソースコードリポジトリを同期し続けるために設計されたが、任意のファイルの同期ができるよう拡張されていった。

ある意味で rsync に似ているが、いくつかの点で異なる。CVSup はサーバからクライアントへの転送が主となるのではなく、両方向のデータ転送を均衡させようとする。サーバとクライアントのCPUおよびディスク使用量を均衡させようとする。また、ファイルの種類毎に異なる差分アルゴリズムを使って同期をとる。例えば、CVSリポジトリ内のファイルは特徴的な拡張・成長をする。CVSupは、指定されたファイルがCVSファイルであると認識すると、それ用のアルゴリズムを使ってデータ転送量を減らす。他にも様々なファイル種別について個別にサポートしており、そのようなサポートがないときは汎用アルゴリズムを使用する。CVSupは、単にリモートサーバからデータを抜き出すだけである。

CVSup は全転送データの圧縮に zlibを使う。CVSup はModula-3で書かれており、John Polstra が設計開発した。

外部リンク 
 
 csup CVSup をC言語で書き直したもの

ネットワークソフト