Подуровни LLC и MAC. Стандарт IEEE 802.2. Форматы кадров. Подуровни LLC и MAC. Стандарт IEEE 802.2. Форматы кадров.

  1. Модель IEEE 802, ее соответствие эталонной модели OSI.
  2. Протокол MAC. Адресация MAC-уровня.
  3. Протокол LLC. Типы процедур LLC. Структура кадров LLC.
  4. Литература.
  1. Модель IEEE 802, ее соответствие эталонной модели OSI.
    В 1980 году в институте IEEE (Institute of Electrical and Electronics Engineers) был организован комитет 802 по стандартизации локальных сетей. Результатом его работы было принятие семейства протоколов IEEE 802, содержащих рекомендации по проектированию нижних уровней локальных сетей.
    Стандарты IEEE 802 охватывают только два нижних уровня семиуровневой эталонной модели OSI, а именно физический и канальный. Это связано с тем, что именно эти уровни в наибольшей степени отражают специфику локальных сетей.

    Рис.1 соответствие эталонных моделей OSI и IEEE 802

    На физическом уровне модели IEEE 802 специфицируются также и различные типы носителей, то есть среда передачи, что не входит в определение физического уровня эталонной модели OSI.
    В спецификации IEEE 802 канальный уровень (DLC) разделяется на уровень управления логическим каналом (Logical Link Control, LLC) и уровень управления доступом к носителю (Media Access Control, MAC).

  2. Протокол MAC. Адресация MAC-уровня.
    Протоколы семейства IEEE 802 используют 48-битную схему адресации MAC-уровня. IEEE также предлагал 16-разрядный MAC-адрес, но он не получил большого растпространения.
    Первый бит MAC-адреса получателя называется битом I/G (Individual/Group, индивидуальный/групповой). Если он установлен в 0, то кадр послан определенной рабочей станции, если же он установлен в 1, кадр является широковещательным (поэтому этот бит называют также широковещательный бит). Если и все остальные биты адреса установлены в 1, то широковещательный кадр предназначен всем станциям, в противном случае мы имеем дело с групповой (mulicast) рассылкой кадра на выделенное подмножество станций. В адресе источника первый бит называется индикатором маршрута от источника (Source Route Indicator).
    Три старших байта адреса назувают защитным адресом (Burned in Adress, BIA) или уникальным идентификатором организации (Qrganizationally Unique Identifier, OUI). Этот идентификатор выдается каждому производителю оборудования.
    Второй бит адреса определяет способ назначения адреса. Если он выставлен в 0, то адрес является централизовано или глобально администрируемым (Universally/ Globally Administrated). В этом случае сохраняется адрес, заданный производителем. Если же этот бит установлен в 1, то адрес является локально администрируемым (Locally Administrated Adress, LAA), т.е. текущий адрес заменяет адрес, установленный производителем.

    Структура MAC-адреса IEEE. I/G: = 0 - индивидуальный адрес, =1 - групповой адрес; U/G: = 0 - глобально администрируемый адрес, = 1 - локально администрируемый адрес.
    Структура MAC-адреса IEEE

    Следует отметить специфику MAC-адреса для Ethernet. В стандарте Ethernet младший бит байта отображается в самой левой позиции, а старший - в самой правой. При этом порядок следования байтов остается традиционным.

  3. Протокол LLC. Типы процедур LLC. Структура кадров LLC.
    Три типа процедур уровня LLC
    В соответствии со стандартом 802.2 уровень управления логическим каналом LLC предоставляет верхним уровням три типа процедур:

    • LLC1 - процедура без установления соединения и без подтверждения;
    • LLC2 - процедура с установлением соединения и подтверждением;
    • LLC3 - процедура без установления соединения, но с подтверждением.

    Этот набор процедур является общим для всех методов доступа к среде, определенных стандартами 802.3 - 802.5, а также стандартом FDDI и стандартом 802.12 на технологию l00VG-AnyLAN. Процедура без установления соединения и без подтверждения LLC1 дает пользователю средства для передачи данных с минимумом издержек. Это дейтаграммный режим работы. Обычно этот вид процедуры используется, когда такие функции, как восстановление данных после ошибок и упорядочивание данных, выполняются протоколами вышележащих уровней, поэтому нет нужды дублировать их на уровне LLC. Процедура с установлением соединений и подтверждением LLC2 дает пользователю возможность установить логическое соединение перед началом передачи любого блока данных и, если это требуется, выполнить процедуры восстановления после ошибок и упорядочивание потока этих блоков в рамках установленного соединения. Протокол LLC2 во многом аналогичен протоколам семейства HDLC (LAP-B, LAP-D, LAP-M), которые применяются в глобальных сетях для обеспечения надежной передачи кадров на зашумленных линиях. Протокол LLC2 работает в режиме скользящего окна.
    В некоторых случаях (например, при использовании сетей в системах реального времени, управляющих промышленными объектами), когда временные издержки установления логического соединения перед отправкой данных неприемлемы, а подтверждение о корректности приема переданных данных необходимо, базовая процедура без установления соединения и без подтверждения не подходит. Для таких случаев предусмотрена дополнительная процедура, называемая процедурой без установления соединения, но с подтверждением LLC3.
    Использование одного из трех режимов работы уровня LLC зависит от стратегии разработчиков конкретного стека протоколов. Например, в стеке TCP/IP уровень LLC всегда работает в режиме LLC1, выполняя простую работу извлечения из кадра и демультиплексирования пакетов различных протоколов - IP, ARP, RARP. Аналогично используется уровень LLC стеком IPX/SPX.
    А вот стек Microsoft/IBM, основанный на протоколе NetBIOS/NetBEUI, часто использует режим LLC2. Это происходит тогда, когда сам протокол NetBIOS/NetBEUI должен работать в режиме с восстановлением потерянных и искаженных данных. В этом случае эта работа перепоручается уровню LLC2. Если же протокол NetBIOS/NetBEUI работает в дейтаграммном режиме, то протокол LLC работает в режиме LLC1.
    Режим LLC2 используется также стеком протоколов SNA в том случае, когда на нижнем уровне применяется технология Token Ring.

    Структура кадров LLC. Процедура с восстановлением кадров LLC2
    По своему назначению все кадры уровня LLC (называемые в стандарте 802.2 блоками данных - Protocol Data Unit, PDU) подразделяются на три типа - информационные, управляющие и ненумерованные.

    • Информационные кадры (Information) предназначены для передачи информации в процедурах с установлением логического соединения LLC2 и должны обязательно содержать поле информации. В процессе передачи информационных блоков осуществляется их нумерация в режиме скользящего окна.
    • Управляющие кадры (Supervisory) предназначены для передачи команд и ответов в процедурах с установлением логического соединения LLC2, в том числе запросов на повторную передачу искаженных информационных блоков.
    • Ненумерованные кадры (Unnumbered) предназначены для передачи ненумерованных команд и ответов, выполняющих в процедурах без установления логического соединения передачу информации, идентификацию и тестирование LLC-уровня, а в процедурах с установлением логического соединения LLC2 -установление и разъединение логического соединения, а также информирование об ошибках.

    Все типы кадров уровня 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 равно 0х6, для протокола NetBIOS -0*F0. Для одних служб определена только одна точка входа и, соответственно, только один SAP, а для других - несколько, когда адреса DSAP и SSAP совпадают. Например, если в кадре LLC значения DSAP и SSAP содержат код протокола IPX, то обмен кадрами осуществляется между двумя IPX-модулями, выполняющимися в разных узлах. Но в некоторых случаях в. кадре LLC указываются различающиеся DSAP и SSAP. Это возможно только в тех случаях, когда служба имеет несколько адресов SAP, что может быть использовано протоколом узла отправителя в специальных целях, например для уведомления узла получателя о переходе протокола-отправителя в некоторый специфический режим работы. Этим свойством протокола LLC часто пользуется протокол NetBEUI.
    Поле управления (1 или 2 байта) имеет сложную структуру при работе в режиме LLC2 и достаточно простую структуру при работе в режиме LLC1.
    В режиме LLC1 используется только один тип кадра - ненумерованный. У этого кадра поле управления имеет длину в один байт. Все подполя поля управления ненумерованных кадров принимают нулевые значения, так что значимыми остаются только первые два бита поля, используемые как признак типа кадра. Учитывая, что в протоколе Ethernet при записи реализован обратный порядок бит в байте, то запись поля управления кадра LLC1, вложенного в кадр протокола Ethernet, имеет значение 0х03 (здесь и далее префикс Ох обозначает шестнадцатеричное представление).
    В режиме LLC2 используются все три типа кадров. В этом режиме кадры делятся на команды и ответы на эти команды. Бит P/F (Poll/Final) имеет следующее значение: в командах он называется битом Poll и требует, чтобы на команду был дан ответ, а в ответах он называется битом Final и говорит о том, что ответ состоит из одного кадра.
    Ненумерованные кадры используются на начальной стадии взаимодействия двух узлов, а именно стадии установления соединения по протоколу LLC2. Поле М ненумерованных кадров определяет несколько типов команд, которыми пользуются два узла на этапе установления соединения. Ниже приведены примеры некоторых команд.
    • Установить сбалансированный асинхронный расширенный режим (SABME). Эта команда является запросом на установление соединения. Она является одной из команд полного набора команд такого рода протокола HDLC. Расширенный режим означает использование двухбайтных полей управления для кадров остальных двух типов.
    • Ненумерованное подтверждение (UA). Служит для подтверждения установления или разрыва соединения.
    • Сброс соединения (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. С помощью этих кадров осуществляется управление потоком данных, что особенно важно для коммутируемых сетей, в которых нет разделяемой среды, автоматически тормозящей работу передатчика за счет того, что новый кадр нельзя передать, пока приемник не закончил прием предыдущего.

  4. Литература.
    1. К.Е. Самуйлов, Д.С. Кулябов. Учебно-методическое пособие по курсу "Сети и системы телекоммуникаций".- М.: РУДН.- 2002
Hosted by uCoz

Hosted by uCoz