Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
126
Добавлен:
27.04.2015
Размер:
343.55 Кб
Скачать

5.3.2 Кадровая синхронизация в системах передачи

Порции данных передаваемых в среду передачи на канальном и физическом уровне взаимодействия систем называют кадрами. Процесс передачи данных в среду передачи и процесс приема данных из среды передачи называют звеном данных, прибавляя в случае необходимости определение передаваемых или принимаемых данных. Данные представляются последовательностями символов некоторого алфавита. Если данные представляются двоичными символами, то такое взаимодействие называют бит-ориентированным протоколом. Если данные представляются символами некоторого другого алфавита, то такое взаимодействие называют символ-ориентированным протоколом.

Например, HDLC (High-Level Data Link Control)— бит-ориентированный кодопрозрачныйсетевой протоколуправления каналом передачи данныхканального уровнясетевой модели OSI, разработанныйISO.стандартомдля HDLC являетсяISO13239.SLEP- символ ориентированных протокол.

Кадровой синхронизацией будем называть процесс выделения передаваемого кадра данных из потока символов звена передачи данных физического уровня. Рассмотрим процесс кадровой синхронизации на примере бит-ориентированной процедуры канального уровня HDLC. Формат кадра (Рис 1) в этой процедуре представляет собой последовательность бит, которая завершается флагом конца кадра состоящим из 8-ми бит 01111110 (0х7E – представление в виде шестнадцатиричной константы). В англйской нотации этот флаг обозначают FD — Frame Delimiter–ограничитель кадра.

Рис 1 Формат кадра HDLC

Формат представления данных в кадре зависит от протокола (Х25, IP, Ethernet и т.п.) в котором применяется процедура взаимодействия HDLC. Как правило, кадр содержит контрольную последовательность символов CRC (Cyclic Redundance Check) – циклический избыточный проверочный код. Этот проверочный код служит для определения целостности принятых данных. Кадры передаются в канал последовательно один за другим, так как это изображено на рисунке 2.

Рис 2 Последовательность передачи кадров

В начале процесс приема получает кадр i-1, затем кадр i, и после этого кадр i+1. Кадры отделены друг от друга флагами 01111110. Если у процесса передачи нет кадров для передачи, то для поддержания синхронизации он передает флаги один за другим.

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

Рис 3 Алгоритмы прямого и обратного битстаффинга.

Алгоритм битстаффинга получает последовательность бит из области Buf_s – источника данных, анализирует эту последовательность и помещает ее в область Buf_d – приемник данных, вставляя после каждых пяти подряд следующих единиц бит ноль. В результате такого преобразования передаваемая последовательность становится длиннее. Причем увеличение ее длины зависит от передаваемой последовательности и трудно предсказуемо. Поэтому в передаваемых кадрах не указывается длина последовательности. Эта длина определяется в процессе приема после получения флага конец кадра. На приемной стороне процесса передачи производиться обратное преобразование принятой последовательности.

Функциональная схема обнаружения флага конца кадра F=01111110, изображенная на рисунке 1, состоит из восьмиразрядного регистра сдвига – окна обнаружения флага, схемы сравнения и регистра сдвига для приема данных. Двоичные данные принятые из канала поступают в регистр сдвига и на каждом следующем битовом интервале переписываются в следующий разряд регистра сдвига. Таким образом в каждый текущий

Рис 4 Функциональная схема приема кадра

момент времени в регистре окна флага оказывается 8 последних бит принятых из канала. Если в окне флага окажется код конца кадра (f0,f1,f2,f3,f4,f5,f6,f7)=(0,1,1,1,1,1,1,0), то схема сравнения вырабатывает управляющий сигнал «Флаг получен». По этому сигналу содержимое регистра данных переписывается в буфер приема и принятые n бит данных обрабатываются. В процессе обработки, используя CRC проверяется целостность данных и формат принятого кадра. Если данные переданные в кадре не искажены и формат соответствует протоколу, то принятые данные поступают на верхние уровни протокола. В противном случае запрашивается повторная передача кадра.

В самых общих чертах процесс приема кадра может быть описан следующим образом:

П1 Очищаем приемный буфер (регистр данных);

П2 До тех пор пока в окно флага не получен флаг помещать принятый поток бит в приемный буфер;

П3 Переписать принятую последовательность бит в буфер обработки;

П4 Выполнять П1.

Очистка приемного буфера сводится к начальной установке указателей буфера приема, которые определяют место размещения очередного принятого бита в буфере. После очистки буфера эти указатели указывают на место размещения первого бита в пустом буфере. Рассмотрим некоторые ситуации, которые могут возникнуть в процессе приема.

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

2 Пусть в процессе передачи очередного кадра был искажен флаг конца кадра. Тогда в буфер приема попадут данные от двух соседних кадров и при анализе принятых данных будет обнаружена ошибка при проверке CRC.

Соседние файлы в папке Лк_ТКС_2008