Протокол управления логическим каналом IEEE 802.2

 

Стандарт 802.2 описывает работу подуровня LLC – логические процедуры передачи кадров и связь с сетевым уровнем. Стандарт определяет три типа обслуживания:

- LLC1 – без установления соединения и подтверждений

- LLC2 – с установлением соединения и подтверждениями

- LLC3 – без установления соединения и с подтверждениями.

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

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

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

Кадры LLC состоит из заголовка и поля данных. При передаче подуровню MAC кадр LLC обрамляется двумя однобайтовыми полями со значением 01111110. Заголовок содержит три поля:

- DSAP (Destination Service Access Point, точка доступа к сервису назначения)

- SSAP (Source Service Access Point, точка доступа к сервису источника)

- Control (управление).

Поля DSAP и SSAP занимают по 1 байту и идентифицируют протокол верхнего уровня, который отправил кадр (SSAP), и которому этот кадр предназначен (DSAP). Возможные значения этих полей определены в стандарте 802.2. Например, протоколу IP соответствует значение 0x06, а протоколу NetBIOS – 0xF0.

Поле Control задает тип кадра и, возможно, несет дополнительную информацию. Размер этого поля может составлять 1 или 2 байта.

Каждый кадр LLC относится к одному из трех типов (в зависимости от значения старших битов поля Control):

- ненумерованный (Unnumbered) – поле Control занимает 1 байт, два старших бита имеют значение 11,

- информационный (Information) – поле Control занимает 2 байта, старший бит установлен в 0,

- управляющий (Supervisory) – поле Control занимает 2 байта, два старших бита имеют значение 10.

Структура поля Control для разных типов кадров приведена на рис.8.1.

 

Тип кадра
Ненумерованный M P/F M  
Информационный N(S) P/F N(R)
Управляющий S     N(R)

Рис.8.1. Структура поля Control кадра LLC

 

Процедура LLC1 использует только ненумерованные кадры с нулевым значением всех подполей (кроме двух первых бит). Поскольку протокол Ethernet использует обратный порядок бит в байте, то значение поля Control кадров LLC1, используемых в сетях Ethernet, имеет значение 0x03.

Процедура LLC2 использует кадры всех типов. Кадры делятся на команды и ответы. Разряд P/F в командах называется Poll (запрос) и требует, чтобы на команду был дан ответ, а в ответах называется F (Final) и указывает на последний кадр в ответе. Ненумерованные кадры используются для установления соединения, их поле M несет код команды – запрос установки соединения, подтверждение соединения, разрыв соединения. После того, как соединение установлено, передача пользовательских данных и подтверждений осуществляется кадрами информационного типа. Поле N(S) несет номер отправленного кадра, поле N(R) несет номер кадра, который ожидает получить узел-источник. Поскольку поля N(S) и N(R) имеют длину в семь битов, для нумерации кадров циклически используются числа от 0 до 127. Если поступает кадр с номером, отличным от того, который ожидался приемником (например, после кадра 56 приходит кадр 58, а не ожидаемый кадр 57), такой кадр отбрасывается и передатчику отправляется кадр управляющего типа с кодом отказа в поле S и указанием ожидаемого номера кадра в поле N(R). Передатчик при этом должен возобновить передачу, начиная с запрошенного кадра.

Управляющие кадры, помимо передачи отказа (Reject, REJ), могут передавать еще две команды: приемник не готов(Receiver Not Ready, RNR) и приемник готов(Receiver Ready, RR), используемые для управления потоком. Если приемник не успевает обработать поток кадров, он отправляет управляющий кадр с командой RNR, по которой передатчик должен приостановить передачу до получения кадра с командой RR.