Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Удаленное дифференциальное сжатие ( RDC ) - это алгоритм синхронизации клиент-сервер, который позволяет синхронизировать содержимое двух файлов, сообщая только различия между ними. Он был представлен в Microsoft Windows Server 2003 R2, включен в более поздние клиентские и серверные операционные системы Windows, но к 2019 году не разрабатывается и не используется ни в одном продукте Microsoft.

В отличие от двоичного дельта-сжатия (BDC), которое предназначено для работы только с известными версиями одного файла, RDC не делает предположений о сходстве файлов или управлении версиями. Различия между файлами вычисляются на лету, поэтому RDC подходит для эффективной синхронизации файлов, которые были обновлены независимо, где пропускная способность сети мала или когда файлы большие, но различия между ними невелики.

Используемый алгоритм основан на блокировке отпечатков пальцев для каждого файла локально на обоих концах партнеров репликации. Поскольку многие типы изменений файлов могут привести к перемещению содержимого файла без других значительных изменений (например, небольшая вставка или удаление в начале файла может привести к смещению остальной части файла с исходным содержимым) используемые блоки для сравнения основаны не на статических произвольных точках разреза, а на точках разреза, определяемых содержимым каждого сегмента файла. Это означает, что если часть файла изменяется по длине или блоки содержимого перемещаются в другие части файла, границы блоков для частей, которые не изменились, остаются фиксированными по отношению к содержимому, и, таким образом, серия отпечатков пальцев поскольку эти блоки не меняются, они просто меняют положение.Сравнивая все хэши в файле с хешами того же файла на другом конце пары репликации, RDC может определить, какие блоки файла изменились, а какие нет, даже если содержимое файла было значительно изменено. перетасовали. Поскольку для сравнения больших файлов может потребоваться большое количество сравнений сигнатур, алгоритм рекурсивно применяется к хеш-наборам, чтобы определить, какие блоки хэшей были изменены или перемещены, что значительно сокращает объем данных, которые необходимо передать для сравнения файлов.алгоритм рекурсивно применяется к хеш-наборам, чтобы определить, какие блоки хэшей были изменены или перемещены, что значительно сокращает объем данных, которые необходимо передать для сравнения файлов.алгоритм рекурсивно применяется к хеш-наборам, чтобы определить, какие блоки хэшей были изменены или перемещены, что значительно сокращает объем данных, которые необходимо передать для сравнения файлов.

Более поздние версии Windows поддерживают межфайловый RDC, который находит файлы, похожие на реплицируемый, и использует блоки похожих файлов, которые идентичны реплицируемому файлу, для минимизации данных, передаваемых по глобальной сети. Межфайловый RDC может использовать блоки до пяти одинаковых файлов. [1]

RDC во многом похож на старый (1996 г.) протокол rsync , но с некоторыми полезными нововведениями, в частности, рекурсивным алгоритмом и межфайловым RDC. [2]

RDC реализуется в операционных системах Windows с помощью DLL- файла MSRDC.DLL, который будет присутствовать в каталоге% SYSTEMROOT% \ System32, если и только если RDC включен. Доступно очень мало программного обеспечения, которое его использует, особенно в несерверных системах. По слухам в Интернете, включение RDC значительно замедляет локальную передачу файлов, и его не следует включать; на веб-странице Microsoft TechNet это очень подробно оспаривается [3], несмотря на частые анекдотические сообщения о том, что его удаление помогло восстановить скорость передачи. [ необходима цитата ]

Прекращение [ править ]

С выпуском Microsoft Windows Server 2019 поддержка RDC была включена в раздел « Функции, которые мы больше не разрабатываем» (который может быть удален из будущего обновления) с комментарием «Эта поддержка в настоящее время не используется ни одним продуктом Microsoft». . [4]

См. Также [ править ]

Ссылки [ править ]

Внешние ссылки [ править ]