Метод словарей
Алгоритм "метод словарей" был впервые описан в работах А.Лемпеля и Дж. Зива (Abraham Lempel, Jacob Ziv) в 1977-78 гг., поэтому этот метод часто называется Lempel-Ziv или сокращенно LZ. Hа сегодняшний день LZ-алгоритм и его модификации получили наиболее широкое распространение по сравнению с другими методами компрессии. В его основе лежит идея замены наиболее часто встречающихся последовательностей символов (строк) в файле ссылками на "образцы", хранящиеся в специально создаваемой таблице (словаре). Так, например, создав словарь, содержащий 65536 наиболее употребительных слов, можно представить текстовые файлы в виде последовательности 16-битовых ссылок на "место" данного слова в словаре.
На практике, конечно, мы имеем дело не с фиксированными словарями, а с таблицами, заполняемыми по мере сканирования файла. При этом уже просмотренная часть файла используется как словарь. Алгоритм основывается на движении по потоку данных скользящего "окна", состоящего из двух частей: большей по объему, в которой содержатся уже обработанные данные, и меньшей, в которую по мере просмотра помещается вновь считанная информация. Во время считывания каждой новой порции информации происходит проверка, и если оказывается, что такая строка уже помещена в словарь ранее, то она заменяется ссылкой на нее.
Множество модификаций метода LZ: LZW, LZ77, LZSS и др., активно используется в различных приложениях. Так, например, метод LZW применяется для сжатия данных в модемах категории V.42bis; LZ77-в утилитах PkZip, Stacker и DoubleSpace, а также во многих системах аппаратного сжатия данных.
Перспективы преодоления несовместимости
Многообразие методов (а также различных вариантов и модификаций каждого из методов) позволяет производителям аппаратных устройств сжатия данных выбрать оптимальный, исходя из требований, предъявляемых к работе в конкретных приложениях.
В то же время серьезной проблемой становится обеспечение совместимости различных моделей коммуникационного оборудования. Во многих случаях, приобретя один раз оборудование, пользователь оказывается "привязанным" к продукции именно этого производителя. В связи с этим возникла необходимость выработки единых стандартных программных и аппаратных методов сжатия информации. На выработку стандартных алгоритмов компрессии направлены усилия Консорциума производителей устройств CSU/DSU (Channel Service Unit/Data Service Unit).