8.4. Функции МАС-уровня и форматы кадров
Функции МАС-уровня
В соответствии со стандартами IEEE 802 канальный уровень в локальных сетях состоит из двух подуровней - LLC и МАС. Стандарт FDDI не вводит свое определение подуровня LLC, а использует его сервисы, описанные в документе IEEE 802.2 LLC.
Подуровень МАС выполняет в технологии FDDI следующие функции:
- Поддерживает сервисы для подуровня LLC.
- Формирует кадр определенного формата.
- Управляет процедурой передачи токена.
- Управляет доступом станции к среде.
- Адресует станции в сети.
- Копирует кадры, предназначенные для данной станции, в буфер и уведомляет подуровень LLC и блок управления станцией SMT о прибытии кадра.
- Генерирует контрольную последовательность кадра (CRC) и проверяет ее у всех кадров, циркулирующих по кольцу.
- Удаляет из кольца все кадры, которые сгенерировала данная станция.
- Управляет таймерами, которые контролируют логическую работу кольца - таймером удержания токена, таймером оборота токена и т.д.
- Ведет ряд счетчиков событий, что помогает обнаружить и локализовать неисправности.
- Определяет механизмы, используемые кольцом для реакции на ошибочные ситуации - повреждение кадра, потерю кадра, потерю токена и т.д.
В данном разделе для иллюстрации работы МАС-уровня будет использоваться станция с двойным подключением и одним блоком МАС, то есть станция DA/SM. Ее внутренняя структура показана на рисунке 40.
Рис. 40. Внутренняя структура станции с двойным подключением и одним блоком МАС
В каждом блоке МАС параллельно работают два процесса: процесс передачи символов - MAC Transmit и процесс приема символов - MAC Receive. За счет этого МАС может одновременно передавать символы одного кадра и принимать символы другого кадра.
Форматы кадра и токена
По сети FDDI информация передается в форме двух блоков данных: кадра и токена. Формат кадра FDDI представлен на рисунке 41.
Рис. 41. Формат кадра FDDI
Рассмотрим назначение полей кадра:
- Преамбула (Preamble, PA). Любой кадр должен предваряться преамбулой, состоящей как минимум из 16 символов Idle (I). Эта последовательность предназначена для вхождения в синхронизм генератора RCRCLK, обеспечивающего прием последующих символов кадра.
- Начальный ограничитель (Starting Delimiter, SD). Состоит из пары символов JK, которые позволяют однозначно определить границы для остальных символов кадра.
- Поле управления (Frame Control, FC). Идентифицирует тип кадра и детали работы с ним. Имеет 8-ми битовый формат и передается с помощью двух символов. Состоит из подполей, обозначаемых как CLFFZZZZ, которые имеют следующее назначение:
- С - говорит о том, какой тип трафика переносит кадр - синхронный (значение 1) или асинхронный (значение 0).
- L - определяет длину адреса кадра, который может состоять из 2-х байт или из 6-ти байт.
- FF - тип кадра, может иметь значение 01 для обозначения кадра LLC (пользовательские данные) или 00 для обозначения служебного кадра MAC-уровня. Служебными кадрами МАС-уровня являются кадры трех типов - кадры процедуры инициализации кольца Claim Frame, кадры процедуры сигнализации о логической неисправности Beacon Frame и кадры процедуры управления кольцом SMT Frame.
- ZZZZ - детализирует тип кадра.
- Адрес назначения (Destination Address, DA) - идентифицирует станцию (уникальный адрес) или группу станций (групповой адрес), которой(ым) предназначен кадр. Может состоять из 2-х или 6-ти байт.
- Адрес источника (Source Address, SA) - идентифицирует станцию, сгенерировавшую данный кадр. Поле должно быть той же длины, что и поле адреса назначения.
- Информация (INFO) - содержит информацию, относящуюся к операции, указанной в поле управления. Поле может иметь длину от 0 до 4478 байт (от 0 до 8956 символов). Стандарт FDDI допускает размещение в этом поле маршрутной информации алгоритма Source Routing, определенной в стандарте 802.5. При этом в два старших бита поля адреса источника SA помещается комбинация 102 - групповой адрес, комбинация, не имеющая смысла для адреса источника, а обозначающая присутствие маршрутной информации в поле данных.
- Контрольная последовательность (Frame Check Sequence, FCS) - содержит 32-х битную последовательность, вычисленную по стандартному методу CRC-32, принятому и для других протоколов IEEE 802. Контрольная последовательность охватывает поля FC, DA, SA, INFO и FCS.
- Конечный ограничитель (Ending Delimiter, ED) - содержит единственный символ Terminate (T), обозначающий границу кадра. Однако за ним располагаются еще признаки статуса кадра.
- Статус кадра (Frame Status, FS). Первые три признака в поле статуса должны быть индикаторами ошибки (Error, E), распознавания адреса (Address recognized, A) и копирования кадра (Frame Copied, C). Каждый из этих индикаторов кодируется одним символом, причем нулевое состояние индикатора обозначается символом Reset (R), а единичное - Set (S). Стандарт позволяет производителям оборудования добавлять свои индикаторы после трех обязательных.
На рисунке 42 показан формат токена.
Рис. 42. Формат токена
Токен состоит по существу из одного значащего поля - поля управления, которое содержит в этом случае 1 в поле С и 0000 в поле ZZZZ.
Операции МАС-уровня
С помощью операций МАС-уровня станции получают доступ к кольцу и передают свои кадры данных. Цикл передачи кадра от одной станции к другой состоит из нескольких этапов: захвата токена станцией, которой необходимо передать кадр, передачей одного или нескольких кадров данных, освобождением токена передающей станцией, ретрансляцией кадра промежуточными станциями, распознаванием и копированием кадра станцией-получателем и удалением кадра из сети станцией-отправителем.
Рассмотрим эти операции.
Захват токена. Если станция имеет право захватить токен, то она после ретрансляции на выходной порт символов PA и SD токена, удаляет из кольца символ FC, по которому она распознала токен, а также конечный ограничитель ED. Затем она передает вслед за уже переданным символом SD символы своего кадра, таким образом, формируя его из начальных символов токена (рис. 43).
Передача кадра. После удаления полей FC и ED токена станция начинает передавать символы кадров, которые ей предоставил для передачи уровень LLC. Станция может передавать кадры до тех пор, пока не истечет время удержания токена.
Для сетей FDDI предусмотрена передача кадров двух типов трафика - синхронного и асинхронного.
Синхронный трафик предназначен для приложений, которые требуют предоставления им гарантированной пропускной способности для передачи голоса, видеоизображений, управления процессами и других случаев работы в реальном времени. Для такого трафика каждой станции предоставляется фиксированная часть пропускной способности кольца FDDI, поэтому станция имеет право передавать кадры синхронного трафика всегда, когда она получает токен от предыдущей станции.
Рис. 43. Захват токена
Асинхронный трафик - это обычный трафик локальных сетей, не предъявляющий высоких требований к задержкам обслуживания. Станция может передавать асинхронные кадры только в том случае, если при последнем обороте токена по кольцу для этого осталась какая-либо часть неизрасходованной пропускной способности. Интервал времени, в течение которого станция может передавать асинхронные кадры, называется временем удержания токена (Token Holding Time, THT). Каждая станция самостоятельно вычисляет текущее значение этого параметра по алгоритму, рассмотренному ниже.
Рисунок 44 иллюстрирует процесс передачи кадра.
Рис. 44. Передача кадра
В ходе передачи символов собственного кадра станция удаляет из кольца все поступающие от предыдущей станции символы. Такой процесс называется МАС-заменой (MAC Overwriting). Первоначальный источник удаляемого из сети кадра не имеет значения - это может быть и данный МАС-узел, который ранее поместил этот кадр в кольцо, либо другой МАС-узел. Процесс удаления кадров во время передачи никогда не приводит к удалению еще необработанных кадров: если сеть работает корректно, то удаляются только усеченные кадры, которые образуются либо при захвате токена (этот вариант уже рассмотрен), либо при удалении своего кадра станцией-источником (этот вариант будет рассмотрен ниже). В любом случае, усеченный кадр (remnant frame) - это кадр, у которого есть начальный ограничитель, но отсутствует конечный ограничитель, а вместо него и, может быть, еще некоторых полей вставлены символы простоя Idle.
В случае, если удаляемые символы принадлежат кадру, ранее сгенерированному данным МАС-узлом, то одновременно с удалением кадра из кольца проверяются признаки статуса кадра из поля FS - распознавания адреса, копирования и ошибки. Если признак ошибки установлен, то МАС-уровень не занимается повторной передачей кадра, оставляя это уровню LLC или другим верхним уровням коммуникационного стека протоколов.
Станция прекращает передачу кадров в двух случаях: либо при истечении времени удержания токена THT, либо при передаче всех имеющихся у нее кадров до истечения этого срока. После передачи последнего своего кадра станция формирует токен и передает его следующей станции.
Повторение кадра. Если кадр не адресуется данному МАС-узлу, то последний должен просто повторить каждый символ кадра на выходном порту. Каждый МАС-узел должен подсчитывать количество полученных им полных кадров (усеченные не включаются в подсчет). Каждая станция проверяет повторяемый кадр на наличие ошибок с помощью контрольной последовательности. Если ошибка обнаружена, а признак ошибки в поле FS не установлен, то МАС-узел устанавливает этот признак в кадре, а также наращивает счетчик ошибочных кадров, распознанных данным МАС-узлом.
Обработка кадра станцией назначения. Станция назначения, распознав свой адрес в поле DA, начинает копировать символы кадра во внутренний буфер одновременно с повторением их на выходном порту. При этом станция назначения устанавливает признак распознавания адреса. Если же кадр скопирован во внутренний буфер, то устанавливается и признак копирования (невыполнение копирования может произойти, например, из-за переполнения внутреннего буфера). Устанавливается также и признак ошибки, если ее обнаружила проверка по контрольной последовательности.
Удаление кадра из кольца. Каждый МАС-узел ответственен за удаление из кольца кадров, которые он ранее в него поместил. Этот процесс известен под названием Frame Stripping. Если МАС-узел при получении своего кадра занят передачей следующих кадров, то он удаляет все символы вернувшегося по кольцу кадра. Если же он уже освободил токен, то он повторяет на выходе несколько полей этого кадра прежде, чем распознает свой адрес в поле SA. В этом случае в кольце возникает усеченный кадр, у которого после поля SA следуют символы Idle и отсутствует конечный ограничитель. Этот усеченный кадр будет удален из кольца какой-нибудь станцией, принявшей его в состоянии собственной передачи.
Назад | Содержание | Вперед