Интернет магазин китайских планшетных компьютеров



Компьютеры - Rsync

02 мая 2011


Оглавление:
1. Rsync
2. Применение



rsync — программа для UNIX-подобных систем, которая выполняет синхронизацию файлов и каталогов в двух местах с минимизированием трафика, используя кодировку данных при необходимости. Важным отличием rsync от многих других программ/протоколов является то, что зеркалирование осуществляется одним потоком в каждом направлении. rsync может копировать или отображать содержимое каталога и копировать файлы, опционально используя сжатие и рекурсию.

демон, реализующий протокол rsync. По умолчанию использует TCP порт 873.

Выпущен под лицензией GNU GPL, rsync является свободным программным обеспечением.

Алгоритм

Утилита rsync использует алгоритм, разработанный австралийским программистом Эндрю Триджеллом, для эффективной передачи структур по коммуникационным соединениям в том случае, когда принимающий компьютер уже имеет отличающуюся версию этой структуры.

Принимающий компьютер разделяет свою копию файла на неперекрывающиеся куски фиксированного размера S, и вычисляет контрольную сумму для каждого куска: MD4-хеш и более слабый rolling checksum, и отправляет их серверу, с которым синхронизируется.

Сервер, с которым синхронизируются, вычисляет контрольные суммы для каждого кусочка размера S в своей версии файла, в том числе перекрывающиеся куски. Это может быть эффективно подсчитано ввиду особого свойства rolling checksum: если rolling checksum байт от n до n+S-1 равняется R, то rolling checksum байт от n+1 до n+S может быть посчитана исходя из R, байта n и байта n+S без необходимости учитывать байты, лежащие внутри этого интервала. Таким образом, если уже подсчитана rolling checksum байт 1-25, то для подсчета rolling checksum байт 2-26 используется предыдущая контрольная сумма и байты 1 и 26.



Просмотров: 907


<<< Rmdir
Sha1sum >>>