Маркерный метод доступа

 

Token Ring – это наиболее распространенная технология локальной сети с передачей маркера. В таких сетях циркулирует (передается станциями друг другу в определенном порядке) специальный блок данных – маркер (token). Станция, принявшая маркер, имеет право передавать свои данные. Для этого она изменяет в маркере один бит (“маркер занят”), добавляет к нему свои данные и передает в сеть (следующей станции). Станции передают такой кадр дальше по кольцу, пока не достигнет получателя, который скопирует из него данные и передаст дальше. Когда отправитель получает свой кадр с данными совершивший полный круг, он его отбрасывает и либо передает новый кадр данных (если не истекло максимальное время владения маркером), либо изменяет бит занятости маркера на “свободен” и передает маркер дальше по кольцу.

В течение всего времени обладания маркером, до и после передачи своего кадра, станция должна выдавать заполняющую последовательность (fill sequence) – произвольную последовательность 0 и 1. Это делается для поддержания синхронизации и контроля за обрывом кольца.

Основной режим работы адаптера – повторение: передатчик побитно выдает данные, поступившие к приемнику. Когда у станции есть кадр для передачи и принят свободный маркер, станция переходит в режим передачи, при этом поступающий через приемник битовый поток анализируется на служебные кадры и либо (если обнаружен служебный кадр) инициируется прерывание (прекращение передачи своего кадра и выдача кадра прерывания), либо принятые данные отбрасываются.

В сетях Token Ring 4 Мбит/c станция освобождала маркер только после возвращения ее кадра данных. Сети Token Ring 16 Мбит/c используют алгоритм раннего освобождения маркера(Early Token Release): маркер передается в кольцо сразу по окончании передачи кадра данных. При этом по кольцу одновременно передается несколько кадров данных, но генерировать их в каждый момент времени может только одна станция – владеющая в этот момент маркером.

За правильной работой сети следит активный монитор (Active Monitor, AM), выбираемый во время инициализации кольца как станция с максимальным MAC-адресом. В случае отказа активного монитора, проводятся выборы нового (все станции в сети, кроме активного монитора, считаются резервными мониторами (Standby monitor)). Основная функция активного монитора – контроль наличия единственного маркера в кольце. Монитор выпускает в кольцо маркер и удаляет кадры, прошедшие больше одного оборота по кольцу. Чтобы сообщить другим станциям о себе, активный монитор периодически передает служебный кадр AMP. Если за некоторое время (достаточное для оборота маркера по кольцу) маркер не вернется к активному монитору, маркер считается утерянным, и активный монитор генерирует новый маркер.

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

- время удержания маркера (Token Holding, THT) – 8,9 мс; по истечении этого интервала станция должна прекратить передачу своих данных (текущий кадр можно передать) и освободить маркер; за время удержания маркера станция может передать несколько (небольших) кадров;

- допустимое время передачи кадра (Valid Transmission, TVX) – 10 мс; максимальное время, в которое должна уложиться передача одного кадра; контролируется активным монитором;

- время ожидания свободного маркера (No Token, TNT) – 2,6 с; время ожидания свободного маркера активным монитором; если за это время маркер не появится, активный монитор выполняет очистку кольца и генерирует новый маркер;

- период посылки AMP (Active Monitor, TAM) – 7 с;

- время ожидания AMP (Standby Monitor Detect AMP, TSM) – 16 с; если за этот интервал не было ни одного кадра AMP, инициируются выборы нового активного монитора.

 

Форматы кадров Token Ring

 

Token Ring определяет три типа кадров: маркер, кадр данных (служебных или пользовательских) и прерывание.

 

Маркер

Поле SD AC ED
Длина (байт)

 

Кадр данных

Поле SD AC FC DA SA RI Info FCS ED FS
Длина (байт) ≥0 ≥0

 

Прерывание

Поле SD ED
Длина (байт)

 

Рис.9.1. Форматы кадров Token Ring

 

Поле SD (Starting Delimiter, начальный ограничитель) указывает на начало кадра и имеет значение JK0JK000 в манчестерском коде. Поскольку в поле присутствуют специальные коды J и K, последовательность данных нельзя спутать с ограничителем кадра.

Поле ED (Ending Delimiter, конечный ограничитель) имеет значение JK1JK1IE, где бит I (Intermediate, промежуточный) указывает, является ли кадр промежуточным в последовательности кадров (I=1) или последним/единственным (I=0), а бит E (Error, ошибка) указывает на обнаруженную ошибку (E=1).

Поле AC (Access Control, управление доступом) имеет формат PPPTMRRR, где биты PPP (Priority, приоритет) содержат приоритет маркера, бит T (Token, маркер) отличает свободный маркер (T=1) от кадра данных (T=0), бит M (Monitor, монитор) используется для распознавания кадров, совершивших более одного оборота по кольцу: монитор устанавливает M=1 во всех проходящих через него кадрах (остальные станции устанавливают M=0), а кадры с M=1 должен удаляться монитором. Биты RRR (Priority reservation, резервирование) несут приоритет станции, желающей захватить маркер.

Поле FC (Frame Control, управление кадром) имеет формат FFZZZZZZ. Биты FF определяют тип кадра:

- 00 – кадр данных со служебной информацией (MAC-кадр)

- 01 – кадр данных пользователя (LLC-кадр)

- 10, 11 – резерв.

Биты ZZZZZZ используются LLC-кадрами для хранения информации о приоритете кадра уровня LLC. MAC-кадры в этих битах хранят свой тип. IEEE 802.5 определяет 25 типов MAC-кадров, среди которых основные:

- CT (Claim Token, заявка на создание маркера) – отправляется резервным монитором при подозрении об отказе активного монитора;

- DAT (Duplicate Address Test, тест на дублирование адреса) – отправляется станцией при подключении к кольцу для проверки уникальности своего адреса;

- AMP (Active Monitor Present, присутствует активный монитор) – регулярно (раз в 7 с) отправляется активным монитором для подтверждения своего присутствия;

- SMP (Standby Monitor Present, присутствует резервный монитор) – ответ на кадр AMP;

- BCN (Beacon, бакен) – отправляется станцией, обнаружившей сетевую проблему (тишину или нескончаемый поток, что может указывать на обрыв кабеля, наличие неисправного адаптера у одной из станций и т.п.);

- PRG (Purge, очистка) – сигнал от активного монитора об очистке кольца от всех кадров.

Поле DA (Destination Address, адрес назначения) имеет структуру, подобную структуре адреса в стандарте IEEE 802.3. Старший бит адреса определяет получателя: 0 – индивидуальный (одна станция), 1 – групповой. Второй бит адреса определяет способ назначения адреса: 0 – глобально (универсально, зашито в ПЗУ адаптера), 1 – локально. Остальные биты используются для указания адреса станции, кольца или группы получателей. Несколько адресов зарезервировано для служебных целей:

FF FF FF FF FF FF – широковещательный кадр (всем станциям)

C0 00 FF FF FF FF – широковещательный MAC-кадр

C0 00 00 00 00 01 – активный монитор

C0 00 00 00 00 02 – сервер параметров кольца

C0 00 00 00 00 08 – монитор ошибок кольца

C0 00 00 00 00 10 – сервер отчетов о конфигурации

C0 00 00 00 01 00 – мост

C0 00 00 00 20 00 – управление сетью.

Поле SA (Source Address, адрес источника) имеет тот же формат, что и адрес назначения, за исключением старшего бита. В адресе источника старший бит называется RII (Routing Information Indicator) и указывает (если RII=1) на наличие данных в поле RI.

Поле RI (Routing Information, маршрутная информация), если используется (RII=1), содержит последовательность (двухбайтных) адресов сегментов на пути к получателю. Данные этого поля управляют работой мостов в режиме маршрутизации от источника.

Поле Info содержит либо данные пользователя (кадр LLC), либо служебные данные, определяемые типом кадра (кадр MAC). Стандарт не ограничивает размер этого поля, хотя практически его максимальный размер определяется соотношением времен передачи кадра и удержания маркера. Для 4 Мбит/с максимальный размер кадра обычно устанавливается в 4 Кбайт, а для 16 Мбит/с – в 16 Кбайт. Минимальный размер поля данных не определен.

Поле FCS (Frame Check Sequence, контрольная сумма) хранит 4-байтный CRC-код для всех полей с FC по Info включительно.

Поле FS (Frame Status, статус кадра) имеет формат AСrrACrr. Биты rr зарезервированы и не используются, остальные биты дублируются для надежности. Бит A (Address Recognized, адрес распознан) указывает на то, что получатель кадра присутствует в кольце, а бит C (Frame Copied, кадр скопирован) указывает на то, что приемник скопировал кадр себе в буфер. По этим полям станция-отправитель может узнать, что переданный ею кадр был получен.