Процедура высокого уровня управления каналом HDLC

Back Оглавление

Протокол канального уровня с упорядоченной передачей, явившийся предметом стандартизации Международной организации по стандартизации (МОС), называется процедурой высокого уровня управления каналом передачи данных (HDLC). В нем используется структура кадра, ориентированного на синхронную побитовую передачу. Синтаксис является достаточно общим и позволяет определять некоторое множество протоколов канального уровня с различными функциональными характеристиками. Наряду с тем, что эти протоколы имеют важное значение, поскольку они являются согласованными международными стандартами, они представляют хорошую возможность для понимания тех механизмов защиты от ошибок и управления потоком, которые можно использовать на любом уровне.
Примеры протоколов на базе HDLC: LAP (Link Accesses Procedure), LAPB (Link Accesses Procedure Balanced), LAPM (Link Accesses Procedure for Modems) (или V.42 в стандарте ITU), LAPD (Link Accesses Procedure on the D-Channel) и т.д.

Функции протоколов канального уровня:

  1. Передача кадра.
  2. Защита от ошибок в канале связи на основе повторения передачи ошибочного кадра.
  3. Восстановление порядка следования кадров.
  4. Управление потоком, то есть регулирование потока кадров для защиты от перегрузок.
Эти функции могут задействоваться, а могут и не задействоваться при разработке конкретных протоколов на основе рекомендации HDLC.

В протоколе используются:

  1. Механизм тайм-аута;
  2. Механизм циклической нумерации;
  3. Механизм окна;
  4. Механизм битов P/F.
Протокол имеет три фазы работы: фазу соединения, фазу передачи данных и фазу разъединения.

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


P - Primary (первичная) станция
S - Secondery (вторичная) станция
C - Сombine (комбинированная) станция

Рис.1

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

Структура кадров HDLC


N(S) — номер посланного кадра;
N(R) — номер полученного кадра;
S, M — признак типа кадра (S — 2 бита, M — 5 бит);
P/F — бит используется в несбалансированной передаче, т.е. если P/F = 1, то вторичная станция может передавать данные.

Рис.2 Кадр HDLC: кодирование поля управления

Типы кадров:
a) информационный кадр, используется для передачи данных пользователя. Его признаком является первый бит октета поля управления;
б) супервизорный кадр, используется для управления передачи при односторонней передаче. Возможно 4 типа супервизорных кадров. Их признаком являются первые два бита октета поля управления. Тип кадра определяется полем S (3, 4 бит октета);
в) ненумерованный кадр, является командами, ответами на команды либо тем и другим. Признаком ненумерованного кадра являются первые 8 битов октета, всего ненумерованных кадров м.б. до 32, их конкретное назначение определяется полем М (3. 4 и 6, 7, 8, битами октета).

В HDLC используются два варианта схем нумерации: нумерация по модулю 8 и нумерация по модулю 128. На рис.2 показан формат поля управления для кадра с нумерацией по модулю 8. Информационный кадр кодируется в 3-битовом поле N(S), в котором младшим битом является бит 2. Следующий бит 5 является битом запроса/ответа в конфигурациях "ведущий-ведомый". Последние три бита 6 — 8 содержат номер следующего ожидаемого кадра для потока данных противоположного направления. В процедуре HDLC со схемой нумерации по модулю 8 могут быть временно неподтвержденными до семи кадров. И хотя получатель при возникновении ошибки не может определить, принят ли новый или повторно переданный кадр, этот вопрос разрешается передатчиком, когда он получает ответ на ошибочный кадр. Это достигается благодаря тому, что в канале сохраняется порядок следования, и в результате приемник получает только те кадры, которые следуют по порядку.
Для передачи с нумерацией по модулю 128 используется тот же самый формат поля управления, за исключением того, что по ля N(S) и N(R) расширены до 7 бит каждое, и поле управления состоит теперь из двух байтов. Начиная с этого места, при обсуждении HDLC мы будем предполагать, что используется нумерация по модулю 8, но все аргументы можно распространить и на нумерацию по модулю 128. Когда в противоположном направлении канала данные не передаются, для передачи подтверждения N(R) используется специальный супервизорный кадр.

Типы кадров HDLC

Название Мнемоническое обозначение Функция
Информационный

1

C/R

Супервизорные
Готовность к приему RR(Receive Ready)

C/R

Неготовность к приему RNR (Receiver Not Ready)

C/R

Отказ REJ (Reject)

C/R

Селективный отказ SREJ (Selective Reject)

C/R

Ненумерованные

Установить режим нормальных ответов (расширенный) SNRM(E) (Set Normal Response Mode (Extended))

С

Установить режим асинхронных ответов (расширенный) SARM(E) (Set Asynchronous Response Mode (Extended))

С

Установить сбалансированный асинхронный режим (расширенный) SABM(E) (Asynchronous Balanse Mode)

С

Разъединить соединение DISC (Disconnect)

С

Установить режим инициализации SIM (Set Initialization Mode)

С

Запрос режима инициализации RIM (Request Initialization Mode)

R

Запрос передачи (ненумерованный) UP (Unnumbered Poll)

С

Сброс RSET (Reset)

С

Ненумерованный информационный UI (Unnumbered Information)

C/R

Обмен идентификаторами XID (Exchange Identification)

C/R

Ненумерованное подтверждение UA (Unnumbered Asknowledgement)

R

Режим разъединения DM (Disconnect Mode)

R

Запрос разъединения RD (Request Disconnection)

R

Отказ от кадра FRMR (Frame Reject)

C/R

С — команда; R — ответ; C/R может использоваться как команда или ответ.

В представленной таблице приведен полный набор кадров различных типов, а также указано, какие из них могут использоваться в качестве команд, ответов или в качестве тех и других. Все кадры разбиваются на информационные, супервизорные, ненумерованные и различаются форматами, как это показано на рис.1. Нулевое значение первого бита поля управления указывает на то, что кадр является информационным. Супервизорные и ненумерованные кадры задаются единичным значением первого бита поля управления, а друг от друга отличаются значением второго бита, который равен 0 для супервизорных и 1 для ненумерованных кадров. Существует только одна разновидность кадра информационного типа, и именно с помощью кадров данные или пакеты переносятся через канал, 2-битовое поле супервизорной функции S позволяет определить четыре разновидности кадров этого типа. Все они связаны с управлением потоком данных и восстановлением после потери данных из-за искажений информационных кадров. В состав каждого из этих четырех разновидностей кадров входит номер N(R), указывающий на номер ожидаемого информационного кадра, 5-битовое поле модификатора М в ненумерованных кадрах позволяет определить до 32 разновидностей кадров. Двадцать из них определены и предназначены главным образом для запуска и завершения процедур на уровне канала, а также для передачи информации о состоянии выполнения этих процедур.

Процедура соединения

Первичная станция устанавливает режим работы канала посылкой команды "Установить режим..." (SNRM, SARM, SABM) После посылки кадра станция запускает тайм-аут, по истечении которого команда будет повторена, если не поступит ответ от вторичной станции. Вторичная станция при неготовности к работе отвечает кадром "Режим разъединения" (RD) либо посылает ответ о готовности "Подтверждение"(UA). Прием кадра "Подтверждение" завершает процедуру установки режима и инициализации канала. После установления соединения номера передаваемого и принимаемого кадров N(S) и N(R) обеих станций полагаются равными нулю.

Процедура передачи данных

Передающая станция передает данные в виде информационных кадров. Передаваемые кадры снабжаются порядковыми номерами N(S), последовательно увеличиваемыми на единицу. Копии кадров сохраняются до получения подтверждения о приеме кадров. При нормальном режиме нумерации без подтверждений могут быть переданы не более 7 кадров. Приемная станция проверяет корректность принятых кадров по циклическому коду и сравнивает номер принятого кадра N(S) с ожидаемым. Если кадр не искажен и последовательность кадров не нарушена, он поступает на следующий, третий уровень обработки, номер ожидаемого кадра увеличивается на единицу и выдается команда "Готовность к приему" (RR), содержащая номер N(R) следующего ожидаемого кадра. Эта команда воспринимается передающей станцией как подтверждение в приеме информационных кадров с номерами до N(R). Поток кадров может быть приостановлен первичной станцией путем передачи кадра "Неготовность к приему" (RNR). Передача может быть продолжена посылкой кадра "Готовность к приему" (RR).
Несбалансированное соединение. Если ошибки не обнаружены, то получающая программа отсылает источнику кадр RR (Receive Ready). Если получено один или несколько кадров правильно, то N(R) будет равно количеству полученных кадров плюс один. Если кадр пришел с ошибкой, то возвращается сообщение об ошибке (REJECT) и передаётся номер кадра с ошибкой. Если кадры передаются вперемешку с ошибками и без ошибок, то сбрасывается кадр с ошибкой и все следующие за ним кадры. Чтобы избежать этого используется команда SR (селективный отказ). SR посылает отказ на кадр, полученный с ошибкой, а все кадры следующие за ним не удаляются, а помещаются в буфер.
Передача сообщений в обе стороны. При наличии встречного потока кадров супервизорные кадры не используются, а подтверждения осуществляются установкой соответствующего значения поля N(R) информационного кадра встречного потока.
Комбинированная конфигурация. Здесь супервизорные кадры не используются, а используется поле N(R) информационных кадров, идущих в обратную сторону относительно запроса. Если нет возможности вставить N(R) в информационный кадр в течении времени тайм-аута, то посылается супервизорный кадр.
Многоточечная конфигурация. Многоточечная конфигурация использует P/F биты. Бит 5 поля управления называется битом запроса в командах и битом окончания в ответах. Когда станция получает команду с битом запроса Р=1, она обязана сформировать ответ с битом окончания F=1.

Процедура разъединения

Для разъединения связи между станциями используется команда "Разъединить", подтверждаемая ответом "Подтверждение".


Prev Предыдущий Next Следующий
Hosted by uCoz