ZMODEM использует при передачи 8 битовые коды с ESC
последовательностями базирующимися на связи ZMODEM данных с ESC
символом ZDLE.
ESC коды позволяют иметь переменную длинну пакетов без
счетчика байт,что позволяет определить начало заголовка без
измерения времени,исключить повторения и ошибки.
Использование ESC кодов приводит к некоторому увеличению
длинны пакетов.В худчшем случае,когда файл состоит из одних
кодов ZDLE это 50%.
Символ ZDLE является специальным.Если в бинарных данных
обнаружен символ ZDLE то это префикс ZDLE за которым следует
ZDLEE (символ с инвертированным 6 битом).
Этот специальный символ выбран так-же для формирования
строки из пяти CAN для сигнала завершения работы ZMODEM .
Приемная программа декодирует любую последовательность ZDLE
следующим образом:
если байт с установленным 6 битом и сброшенным пятым равен
контрольному символу то инвертируется 6 бит.Это позволяет
устранить из передачи любые управляющие символы которые могут
быть посланы коммуникационной средой.Дополнительно приемник
распознает как ESC символы 0177 и 0377.
ZMODEM использует в качестве ESC ZDLE,020,0220,021,0221,
023, и 0223.Приемник игнорирует 021,0221,023,и 0223 символы в
потоке данных.
|