Технологии

High-Level Data Link Control (HDLC)

бит-ориентированный кодопрозрачный сетевой протокол управления каналом передачи данных канального уровня сетевой модели OSI, разработанный ISO

HDLC может быть использован в соединениях точка-многоточка, но в настоящее время в основном используется в соединениях точка-точка с использованием асинхронного сбалансированного режима (ABM).

Типы станций:
- Первичная (ведущая) станция (Primary terminal) ответственна за управление каналом и восстановление его работоспособности. Она производит кадры команд. В соединениях точка-многоточка поддерживает отдельные связи с каждой из вторичных станций.
- Вторичная (ведомая) станция (Secondary terminal) работает под контролем ведущей, отвечая на её команды. Поддерживает только 1 сеанс связи.
- Комбинированная станция (Combined terminal) сочетает в себе функции как ведущей, так и ведомой станций. Производит и команды и ответы. Только соединения точка-точка.


Логические состояния
Каждая из станций в каждый момент времени находится в одном из 3 логических состояний:
- Состояние логического разъединения (LDS — Logical Disconnect State)
Если вторичная станция находится в режиме нормального разъединения (NDM), то она может принимать кадры только после получения явного разрешения от первичной. Если же в асинхронном режиме разъединения (ADM), то вторичная станция может самовольно инициировать передачу.

- Состояние инициализации (IS — Initialization State)
Используется для передачи управления на удалённую комбинированную станцию и для обмена параметрами между удалёнными станциями.

- Состояние передачи информации (ITS — Information Transfer State)
Всем станциям разрешено вести передачу и принимать информацию. Станции могут находится в режимах NRM, ARM, ABM.

Режимы:
- Режим нормального ответа (NRM — Normal Response Mode) требует инициации передачи в виде явного разрешения на передачу от первичной станции. После использования канала вторичной станцией (ответа на команду первичной), для продолжения передачи она обязана ждать другого разрешения. Для выбора права на передачу первичная станция проводит круговой опрос вторичных. В основном используется в соединениях точка-многоточка.
- Режим асинхронного ответа (ARM — Asynchronous Response Mode) даёт возможность вторичной станции самой инициировать передачу. В основном используется в соединениях типа кольцо и многоточечных с неизменной цепочкой опроса, так как в этих соединениях одна вторичная станция может получить разрешение от передачи от другой вторичной и в ответ начать передачу. То есть разрешение на передачу передаётся по типу маркера(token). За первичной станцией сохраняются обязанности по инициализации линии, определению ошибок передачи и логическому разъединению. Позволяет уменьшить накладные расходы, связанные с началом передачи.
- Асинхронный сбалансированный режим (ABM — Asynchronous Balanced Mode) используется комбинированными станциями. Передача может быть инициирована с любой стороны, может происходить в полном дуплексе.


Для обеспечения совместимости между станциями, которые могут менять свой статус(тип), в протоколе HDLC предусмотрены 3 конфигурации канала:

- Несбалансированная конфигурация (UN — Unbalanced Normal) обеспечивает работу 1 первичной и одной или нескольких вторичных станций в полудуплексном и полнодуплексном режимах, с коммутируемым или некоммутируемым каналом.
- Симметричная конфигурация (UA — Unbalanced Asynchronous) обеспечивает взаимодействие двух двухточечных несбалансированных станций. Используется 1 канал передачи, в который мультиплексируются и команды и ответы. В данное время не используется.
- Сбалансированная конфигурация (BA — Balanced Asynchronous) состоит из 2 комбинированных станций. Передача в полудуплексном и полнодуплексном режимах, с коммутируемым или некоммутируемым каналом. Каждая станция несёт одинаковую ответственность за управление каналом.


Кадры HDLC можно передавать, используя синхронные и асинхронные соединения. В самих соединениях нет механизмов определения начала и конца кадра, для этих целей используется уникальная в пределах протокола флаговая последовательность (FD — Frame Delimiter) '01111110'(0x7E в шестнадцатеричном представлении), помещаемая в начало и конец каждого кадра. Уникальность флага гарантируется использованием битстаффинга в синхронных соединениях и байтстаффинга в асинхронных. Битстаффинг — вставка битов, здесь — бита 0 после 5 подряд идущих битов 1. В байтстаффинге используется escape-последовательность, здесь — '01111101'(0x7D в шестнадцатеричном представлении), то есть байт FD(0x7E) в середине кадра заменяется последовательностью байтов (0x7D, 0x7E), а байт (0x7D) — последовательностью байтов (0x7D, 0x7D).

Во время простоя среды передачи при синхронном соединении FD постоянно передаётся по каналу для поддержания битовой синхронизации. Может иметь место совмещение последнего бита 0 одного флага и начального бита 0 следующего. Время простоя также называется межкадровым временны?м заполнением.

Структура кадра HDLC, включая флаги FD:

Флаг Адрес Управляющее поле Информационное поле FCS Флаг
8 бит 8 бит 8 бит 8 или 16 бит 0 или более бит кратно 8 16 бит 8 бит


Флаг конца одного кадра может(но не обязательно) быть начальным флагом следующего кадра.

Поле FCS(Frame Check Sequence) — контрольная последовательность, необходимая для обнаружения ошибок передачи. Её вычисление в основном производится методом циклического кодирования с производящим полиномом X16+X12+X5+1 (CRC-16) в соответствии с рекомендацией CCITT V.41. Это позволяет обнаруживать всевозможные кортежи ошибок длиной до 16 бит вызываемые одиночной ошибкой, а также 99,9984 % всевозможных более длинных кортежей ошибок. FCS составляется по полям Адрес, Управляющее поле, Информационное поле. В редких случаях используются другие методы циклического кодирования.

После просчета FCS на стороне приёмника он отвечает положительной или отрицательной квитанцией. Повтор кадра передающей стороной выполнятся по приходу отрицательной квитанции или по истечению тайм-аута.

Типы кадров:

I-кадры (данных) - Содержит данные пользователя, последовательный номер пакета. Номер используется для метода скользящего окна. Максимальный размер окна 7 или 127. I-кадры также содержат бит опрос/ответ P/F (poll/final). В режиме NRM ведущий терминал использует бит P для опроса, ведомый — бит F в последнем I-кадре ответа. В режимах ARM и ABM биты P/F используются для форсирования ответа.

S-кадры (управляющие) - Используются для контроля потока ошибок передачи.

Готов к Приёму (RR)

- Используется как положительная квитанция (до N(r)-1).
- Ведущая станция может сделать опрос, установив бит P.
- Ведомая станция на опрос может ответить кадром с установленным F битом, если у неё нет данных для передачи.


Не готов к Приёму (RNR)

- Используется как положительная квитанция и запрос остановить передачу I-кадров до получения следующего кадра RR.
- Ведущая или Комбинированная станции могут установить бит P для уточнения статуса приёма ведомой/комбинированной станции.
- Ведомая/комбинированная станции могут ответить установкой бита P как индикации занятости станции.

Неприем (REJ)

Неприем кадров последнего окна (повтор передачи с кадра N(r))

Выборочный Неприем(SREJ)

Неприем конкретного кадра (повтор передачи одного кадра)

Имя Команда/ Ответ Описание Info Формат упр. поля 8…7…6…5…4…3…2…1…..
Готов к Приёму (RR) C/R Положительная квитанция Готов к приёму I-кадра .-N(R)-… P/F…0…0…0…1
Не готов к Приёму (RNR) C/R Положительная квитанция Не готов к Приёму .-N(R)-… P/F…0…1…0…1
Неприем (REJ) C/R Отрицательная квитанция Повтор N кадров .-N(R)-… P/F…1…0…1…0
Выборочный Неприем (SREJ) C/R Отрицательная квитанция Повтор 1 кадра .-N(R)-… P/F…1…1…0…1


U-кадры(ненумерованные)

- Установка режима (SNRM, SNRME, SARM, SARME, SABM, SABME, UA, DM, RIM, SIM, RD, DISC)
- Ненумерованная информация (UP, UI)
- Восстановление (FRMR, RSET)
- Неверное поле управления
- Превышена длина поля данных
- Неверная длина для данного типа кадров
- Неверный номер кадра
- Остальные (XID, TEST)

   
Для корректного отображения этого элемента вам необходимо установить FlashPlayer и включить в браузере Java Script.

Новая версия

09-05-06: Moonlight 2.0 Preview
09-05-05: MySQL Community Server 5.0.81
09-05-04: nginx 0.7.54
09-05-04: FreeBSD 7.2-RELEASE

Новые Update&Patch

09-05-06: Adobe Shockwave Player 11.5.0.596
09-05-05: Vista SP2
09-05-04: Firefox 3.0.10
09-05-04: SP2 Office System 2007


Copyright © 2009 www.ipxt.ru Все права защищены.
При цитировании документа ссылка на сайт с указанием автора обязательна. Полное заимствование документа является нарушением
Российского и международного законодательства и возможно только с согласия администрации.