Типы и структура кадров
По своему назначению все кадры уровня LLC (называемые в стандарте 802.2 блоками данных — Protocol Data Unit,PDU) подразделяются на три типа — информационные, управляющие и ненумерованные.
• Информационные кадры (Information) предназначены для передачи информации в процедурах с установлением логического соединения LLC2 и должны обязательно содержать поле информации. В процессе передачи промышленных блоков осуществляется их нумерация в режиме скользящего окна.
• Управляющие кадры (Supervisory) предназначены для передачи команд и ответов в процедурах с установлением логического соединения LLC2, в том числе запросов на повторную передачу искаженных промышленных блоков.
• Ненумерованные кадры (Unnumbered) предназначены для передачи ненумерованных команд и ответов, выполняющих в процедурах без установления логического соединения передачу информации, идентификацию и тестирование LLC-уровня, а в процедурах с установлением логического соединения LLC2 — установление и разъединение логического соединения, а также информирование об ошибках.
Все типы кадров уровня LLC имеют единый формат (рисунок 3.2).
Флаг 01111110 | Адрес точки входа службы назначения (DSAP) | Адрес точки входа службы источника (SSAP) | Управляющее поле (Control) | Данные (Data) | Флаг |
Рисунок 3.2 – Формат кадров уровня LLC |
Кадр LLC обрамляется двумя однобайтовыми полями «Флаг», имеющими значение 01111110. Флаги используются на уровне MAC для определения границ кадра LLC. В соответствии с многоуровневой структурой протоколов стандартов IEEE 802, кадр LLC вкладывается в кадр уровня MAC: кадр Ethernet, Token Ring, FDDI и т. д. При этом флаги кадра LLC отбрасываются.
Кадр LLC содержит поле данных и заголовок, который состоит из трех полей:
• адрес точки входа службы назначения (Destination Service Access Point, DSAP);
• адрес точки входа службы источника (Source Service Access Point, SSAP);
• управляющее поле (Control).
Поле данных кадра LLC предназначено для передачи по сети пакетов протоколов вышележащих уровней — сетевых протоколов IP, IPX, AppleTalk, DECnet, в редких случаях — прикладных протоколов, когда те вкладывают свои сообщения непосредственно в кадры канального уровня. Поле данных может отсутствовать в управляющих кадрах и некоторых ненумерованных кадрах.
Адресные поля DSAP и SSAP занимают по 1 байту. Они позволяют указать, какая служба верхнего уровня пересылает данные с помощью этого кадра.
Программному обеспечению узлов сети при получении кадров канального уровня необходимо распознать, какой протокол вложил свой пакет в поле данных поступившего кадра, чтобы передать извлеченный из кадра пакет нужному протоколу верхнего уровня для последующей обработки.
Для идентификации этих протоколов вводятся так называемые адреса точки входа службы (Service Access Point, SAP). Значения адресов SAP приписываются протоколам в соответствии со стандартом 802.2. Например, для протокола IP значение SAP равно 0x6, для протокола NetBIOS — 0xF0. Для одних служб определена только одна точка входа и, соответственно, только один SAP, а для других — несколько, когда адреса DSAP и SSAP совпадают. Например, если в кадре LLC значения DSAP и SSAP содержат код протокола IPX, то обмен кадрами осуществляется между двумя IPX-модулями, выполняющимися в разных узлах. Но в некоторых случаях в кадре LLC указываются различающиеся DSAP и SSAP. Это возможно только в тех случаях, когда служба имеет несколько адресов SAP, что может быть использовано протоколом узла отправителя в специальных целях, например для уведомления узла получателя о переходе протокола-отправителя в некоторый специфический режим работы.
Этим свойством протокола LLC часто пользуется протокол NetBEUI. Поле управления (1 или 2 байта) имеет сложную структуру при работе в режиме LLC2 и достаточно простую структуру при работе в режиме LLC1 (рисунок 3.3).
Рисунок 3.3 – Структура поля управления |
В режиме LLC1 используется только ненумерованный тип кадра. У этого кадра поле управления имеет длину в один байт. Все подполя поля управления ненумерованных кадров принимают нулевые значения, так что значимыми остаются только первые два бита поля, используемые как признак типа кадра.
Ненумерованные кадры используются на начальной стадии взаимодействия двух узлов, а именно стадии установления соединения по протоколу LLC2.
Поле М ненумерованных кадров определяет несколько типов команд, которыми пользуются два узла на этапе установления соединения. Ниже приведены примеры некоторых команд.
1 Установить сбалансированный асинхронный расширенный режим (SABME). Эта команда является запросом на установление соединения. Она является одной из команд полного набора команд протокола HDLC. Расширенный режим означает использование двухбайтных полей управления для кадров остальных двух типов.
2 Ненумерованное подтверждение (UA). Служит для подтверждения установления или разрыва соединения.
3 Сброс соединения (REST). Запрос на разрыв соединения.
После установления соединения данные и положительные квитанции начинают передаваться в промышленных кадрах. Логический канал протокола LLC2 является дуплексным, так что данные могут передаваться в обоих направлениях. Если поток дуплексный, то положительные квитанции на кадры также доставляются в промышленных кадрах. Если же потока кадров в обратном направлении нет или же нужно передать отрицательную квитанцию, то используются супервизорные кадры.
Поле N(S) информационного кадра указывает номер отправленного кадра.
Поле N(R) указывает номер кадра, который приемник ожидает получить от передатчика следующим.
При работе протокола LLC2 используется скользящее окно размером в 127 кадров, а для их нумерации циклически используется 128 чисел, от 0 до 127.
Приемник всегда помнит номер последнего кадра, принятого от передатчика, и поддерживает переменную с указанным номером кадра, который он ожидает принять от передатчика следующим. Обозначим его через V(R). Именно это значение передается в поле N(R) кадра, посылаемого передатчику. Если в ответ на этот кадр приемник принимает кадр, в котором номер посланного кадра N(S) совпадает с номером ожидаемого кадра V(R), то такой кадр считается корректным (если, конечно, корректна его контрольная сумма).
Если приемник принимает кадр с номером N(S), не равным V(R), то этот кадр отбрасывается и посылается отрицательная квитанция Отказ (REJ) с номером V(R). При приеме отрицательной квитанции передатчик обязан повторить передачу кадра с номером V(R), а также всех кадров с большими номерами, которые он уже успел отослать, пользуясь механизмом окна в 127 кадров.
Типы супервизорных кадров:
· Отказ (REJect);
· Приемник не готов (Receiver Not Ready, RNR);
· Приемник готов (Receiver Ready, RR).
Команда RR с номером N(R) часто используется как положительная квитанция, когда поток данных отсутствует, а команда RNR – для замедления потока кадров, поступающих на приемник. Это необходимо, если приемник не успевает обработать поток кадров, присылаемых ему с большой скоростью за счет механизма окна. Получение кадра RNR требует от передатчика полной приостановки передачи, до получения кадра RR. С помощью этих кадров осуществляется управление потоком данных.
Дата добавления: 2020-04-12; просмотров: 564;