logo
Передача данных в распределенных автоматизированных системах

2.5. Обнаружение и исправление ошибок

При передаче данных используется бит четности – вертикальный контроль (VRC–verticalredundancycontrol).

Используется также горизонтальный контроль, когда мы суммируем по модулю два определенные биты различных байтов, а результат записывается на соответствующую позицию в специальном (контрольном) байте – продольный контроль (LRC – longitudinal redundancy control).

VRC/LRC – геометрическое кодирование.

Когда идет блоковая передача, то используется так называемая контрольная сумма (остаток R от деления суммы ASCII кодовых комбинаций, используемых в блоке, на255) (протокол X-модем).

Формат данных в протоколе X-модем:

Начало заголовка

№ блока

Обратный код № блока

Байты данных

Контрольная сумма

На приемной стороне производится сравнения контрольных сумм.

Этот остаток приписывается к концу блока. Такой механизм защиты может обнаружить до 97% случайных ошибок.

В сетях при синхронной передаче используется помехоустойчивое кодирование циклическим кодом (CRC – cyclic redundancy check: 16 бит (2 байта)).

Существует два вида избыточности:

Обычно используют сочетания двух видов избыточности. Например, при кодировании сообщения в него вносится кодовая избыточность, которая используется для обнаружения ошибок. При их обнаружении на приемной стороне через канал обратной связи производится запрос на повторение передаваемого блока.

Все зависит от конкретных условий (характеристик КС, метода передачи, метода (его реализации) введения избыточности).

При симплексной передаче – постоянная избыточность (кодирование с исправлением ошибок, повторение фиксированное число раз и мажоритарный прием, совместное использование избыточного кодирования и повторения).

При дуплексе и полудуплексе – возможность использования переменной избыточности – сочетания кодирования и повторений.