Data link layer - LLC

Материал из Викиконспекты
Версия от 19:21, 4 сентября 2022; Maintenance script (обсуждение | вклад) (rollbackEdits.php mass rollback)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск


OSI IEEE
Канальный LLC
MAC
Физический Физический

Logical link control (общепринятое сокращение — LLC) — подуровень управления логической связью — по стандарту IEEE 802 — верхний подуровень канального уровня модели OSI. В компьютерах функции канального уровня реализуются совместными усилиями сетевых адаптеров и их драйверов.


Задачи

Основными задачами подуровня LLC является:

  1. передача кадров данных между узлами с различной степенью надежности.
  2. обеспечение проверки и правильности передачи информации по соединению.
  3. предоставление интерфейса сетевому уровню.

Протокол LLC

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

Сервисы уровня LLC

В соответствии со стандартом IEEE 802.2 уровень управления логическим каналом предоставляет верхним уровням три типа процедур:

  1. LLC1, Type1, connectionless – сервис без установления соединения и без подтверждения.
  2. LLC2, Type2, connection-oriented – сервис c установлением соединения и с подтверждением.
  3. LLC3, Type3 – сервис без установления соединения, но с подтверждением.

Сервис LLC1 предоставляет пользователю средства для передачи с минимальными издержками, если какой-то кадр теряется из-за шума, на канальном уровне не предпринимается никаких попыток восстановить его. Данный сервис, обычно, используется, когда задачи восстановления потерянных данных, их упорядочивание и восстановление после ошибок выполняются вышележащими уровнями, и нужды в их дублировании нет, например, в линиях связи реального времени или в каналах с низкой вероятности ошибки или потери кадра. Примером канального уровня, предоставляющего такой сервис, является Ethernet.

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

Сервис LLC3 так же, как и LLC1 не устанавливает логического соединения, но получение каждого кадра подтверждается. Таким образом, отправитель знает, дошел ли кадр до принимающей стороны в целости, был испорчен в пути или не дошел вовсе. Если в течении определенного интервала не поступает подтверждения, что кадр успешно доставлен, или поступает ответ от получателя о том, что кадр был испорчен, то отправитель посылает данный кадр заново. Такой сервис полезен в случае использования каналов с высокой вероятностью ошибок, например в беспроводных сетях. К сервисам такого класса можно отнести 802.11(WiFi).

Типы кадров уровня LLC

  1. Информационные кадры (Information, I-frame) предназначены для передачи информации в процедурах LLC2, обязательно содержат поле информации.
  2. Управляющие кадры (Supervisory, S-frame) предназначены для передачи команд и ответов в процедурах LLC2.
  3. Ненумерованные кадры (Unnumbered, U-frame) – передача информации, тестирование и идентификация LLC уровня в LLC1 и LLC3, установление и разъединение логического соединения, а также информирование об ошибках в LLC2.

Информационные кадры предназначены для передачи информации в процедурах с установлением логического соединения и обязательно должны содержать поле информации. Нумерация информационных кадров осуществляется в режиме скользящего окна.

Управляющие кадры предназначены для передачи команд и ответов в процедурах с установлением логического соединения, в том числе запросов на повторную передачу искаженных информационных блоков.

Ненумерованные кадры предназначены для передачи ненумерованных команд и ответов, выполняющих в процедурах без установления логического соединения передачу информации, идентификацию и тестирование LLC-уровня, а в процедурах с установлением логического соединения - установление и разъединение логического соединения, а также информирование об ошибках.

Формат кадра LLC

У всех кадров протокола LLC общий формат:

  1. адрес точки входа сервиса назначения (Destination Service Access Point, DSAP)
  2. адрес точки входа сервиса источника (Source Service Access Point, SSAP)
  3. управляющее поле (Control, CTRL)
  4. поле данных (Data)
Флаг DSAP SSAP Control Data Флаг
01111110 Адрес точки входа сервиса назначения Адрес точки входа сервиса источника Управляющее поле Данные 01111110

Кадр LLC обрамляется двумя однобайтовыми флагами, имеющими значение 01111110. Эти флаги используются на MAC уровне для определения границ блоков. Поле данных кадра LLC предназначено для передачи по сети данных, приходящих от верхних уровней, иногда может отсутствовать в управляющих и ненумерованных кадрах.

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

Биты 1 2-8 9 10-16
Информационные 0 [math]N(S)[/math] [math]P/F[/math] [math]N(R)[/math]
Управляющие 1 0 [math]SS[/math] [math]XXXX[/math] [math]P/F[/math] [math]N(R)[/math]
Ненумерованные 1 1 [math]MM[/math] [math]P/F[/math] [math]MM[/math]

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

Connect.png

В режиме LLC2 используются кадры всех трех типов. Бит [math]P/F(Poll/Final)[/math]: в командах он называется битом [math]Poll[/math] и требует, чтобы на команду был дан ответ, в ответах он называется битом [math]Final[/math] и говорит, что ответ состоит из одного кадра. Ненумерованные кадры используются для установления и разрыва соединения двух узлов. Поле [math]M[/math] ненумерованных кадров определяет несколько типов команд:

  • Установить сбалансированный асинхронный расширенный режим (SABME). Эта команда является запросом на установление соединения. Расширенный режим означает использование двухбайтных полей управления для кадров остальных двух типов.
  • Ненумерованное подтверждение (UA). Служит для подтверждения установления или разрыва соединения.
  • Сброс соединения (REST). Запрос на разрыв соединения.

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

В информационных кадрах имеется поле N(S) для указания номера отправленного кадра, а также поле N(R) для указания номера кадра, который приемник ожидает получить от передатчика следующим. При работе протокола LLC2 используется скользящее окно размером в 127 кадров, а для их нумерации циклически используется 128 чисел, от 0 до 127.

Приемник всегда помнит номер последнего кадра, принятого от передатчика, и поддерживает переменную с указанным номером кадра, который он ожидает принять от передатчика следующим. Именно это значение передается в поле N(R) кадра, посылаемого передатчику. Если в ответ на этот кадр приемник принимает кадр, в котором номер посланного кадра N(S) совпадает с номером ожидаемого кадра, то такой кадр считается корректным (если, конечно, корректна его контрольная сумма). Если приемник принимает кадр с номером N(S), неравным номеру ожидаемого кадра, то этот кадр отбрасывается и посылается отрицательная квитанция Отказ (REJ) с номером этого кадра. При приеме отрицательной квитанции передатчик обязан повторить передачу кадра с номером указанным в отрицательной квитанции, а также всех кадров с большими номерами, которые он уже успел отослать, пользуясь механизмом окна в 127 кадров(если используется протокол с возвратом на N).

Поле [math]SS[/math] обозначает одну из функций управления:

  • Отказ (REJect), биты устанавливаются разными [math]00[/math];
  • Приемник не готов (Receiver Not Ready, RNR), биты устанавливаются равными [math]10[/math];
  • Приемник готов (Receiver Ready, RR), биты устанавливаются равными [math]01[/math].

Команда RR с номером N(R) часто используется как положительная квитанция, когда поток данных от приемника к передатчику отсутствует, а команда RNR -для замедления потока кадров, поступающих на приемник. Это может быть необходимо, если приемник не успевает обработать поток кадров, присылаемых ему с большой скоростью за счет механизма окна. Получение кадра RNR требует от передатчика полной приостановки передачи, до получения кадра RR. С помощью этих кадров осуществляется управление потоком данных, что особенно важно для коммутируемых сетей, в которых нет разделяемой среды, автоматически тормозящей работу передатчика за счет того, что новый кадр нельзя передать, пока приемник не закончил прием предыдущего.

Биты [math]XXXX[/math] зарезервированы и должны иметь нулевые значения.

Адресные поля DSAP и SSAP занимают по 1 байту. Они позволяют указать, какая служба верхнего уровня пересылает данные с помощью этого кадра. Программному обеспечению узлов сети при получении кадров канального уровня необходимо распознать, какой протокол вложил свой пакет в поле данных поступившего кадра, чтобы передать извлеченный из кадра пакет нужному протоколу верхнего уровня для последующей обработки. Для идентификации этих протоколов вводятся так называемые адреса точки входа службы (Service Access Point, SAP). Значения адресов SAP приписываются протоколам в соответствии со стандартом 802.2. Например, для протокола IP значение SAP равно [math]0[/math]x[math]6[/math]. Для одних служб определена только одна точка входа и, соответственно, только один SAP, а для других - несколько, когда адреса DSAP и SSAP совпадают. Например, если в кадре LLC значения DSAP и SSAP содержат код протокола IPX, то обмен кадрами осуществляется между двумя IPX-модулями, выполняющимися в разных узлах. Но в некоторых случаях в кадре LLC указываются различающиеся DSAP и SSAP. Это возможно только в тех случаях, когда служба имеет несколько адресов SAP, что может быть использовано протоколом узла отправителя в специальных целях, например для уведомления узла получателя о переходе протокола-отправителя в некоторый специфический режим работы.

См. также

Источники