Если значение счет-запросов равно нулю и в таймере-обслу- живания-кольца остается время, данная станция разрешает новым станциям войти в логическое кольцо до передачи маркера. Станция, владеющая маркером, выполняет это, передавая кадр запрос_преемника-1 или запрос-преемника-2 в зависимости от обстоятельств, и входит в состояние ОЖИДАНИЕ-ОТВЕТА. (Подробнее об этой операции см. в п. 5.1.4).
Если адрес преемника, СС, известен, станция просто передает маркер, следуя запросу любого нового преемника. (Подробнее об этой операции см. в п. 5.1.3). Если преемник отвечает и станция опознает действительный кадр, она выполняет свои обязанности по передаче маркера.
Если СС неизвестен, станция передает кадр запрос-преемни- ка_2 самой себе. Поскольку этот кадр имеет два окна ответа и одинаковые адреса отправителя и получателя, он побуждает все станции в сети, которые желают войти в логическое кольцо (независимо от того, были они в нем ранее или нет) выдать ответ. Те станции, адреса которых ниже, чем у передавшей кадр маркера, передают в первом окне ответа, а станции, адреса которых выше, — во втором •окне ответа.
Станция, владеющая маркером, во время окна (он) ответа следит за появлением кадров установить-преемника от потенциальных преемников. Если такие кадры не опознаются, станция прекращает попытку поддержать логическое кольцо и слушает передачи от любой другой станции. (Подробнее об этой операции см. в п. 5.1.4).
Контроль передачи маркера. КОНТРОЛЬ-ПЕРЕДА- ЧИ-МАРК.ЕРА — это такое состояние станции, в котором она ожидает реакции другой станции, которой она только что переда- .ла маркер.
Станция, передавшая маркер, ожидает в течение одного интервала-ответа передачи данных от станции, принявшей маркер. Задержка в один интервал-ответа учитывается во временной задержке между передачей кадра данных и возвратом соответствующего ■ ответа передатчику.
Если опознан действительный кадр данных, передача которого начата во время окна ответа, станция полагает, что передача маркера прошла успешно. Кадр данных обрабатывается так, как если бы он был принят в состоянии ДЕЖУРНОЕ.
Если в течение одного интервала-ответа ничего не опознано, •станция, передавшая маркер, полагает, что передача маркера оказалась безуспешной, и возвращается в состояние ПЕРЕДАЧА- МАРКЕРА для того, чтобы повторить передачу, либо выбрать другую стратегию.
При обнаружении помех или недействительного кадра станция продолжает прослушивать последующие передачи в соответствии с изложенными в п. 5.1.3.
Ожидание ответа. ОЖИДАНИЕ ОТВЕТА — это состояние станции, в котором она пытается упорядочить кандидатов в- преемники посредством алгоритма распределенного разрешения соперничества до тех пор, пока не будет правильно принят один из кадров этих преемников установить-преемника или пока нс останется ни одного (преемника. В это состояние станция входит из состояния ПЕРЕДАЧА-МАРКЕРА всякий раз, когда она определяет, что настало время открыть окно ответа, либо если станция не знает своего преемника (при инициации или при неудачной попытке передачи маркера).
В состоянии ОЖИДАНИЕ-ОТВЕТА станция ожидает в течение нескольких окон ответа. Если в течение всего времени открытости окна (окон) станция ничего не опознает, она переходит в. состояние ПЕРЕДАЧА-МАРКЕРА для того, чтобы передать маркер своему известному преемнику, либо попытаться изменить- стратегию передачи маркера.
При получении кадра установить-преемника станция ожидает, пока не истечет оставшееся время окна ответа. Затем станция-, входит в состояние ПЕРЕДАЧА-МАРКЕРА и передает маркер новому преемнику.
Если полученный кадр не является кадром установить-преемника, станция сбрасывает свой маркер (поскольку какая-то другая станция действует так, как будто она также владеет маркером, что создает ситуацию дублирования .маркера) и снова входит в состояние ДЕЖУРНОЕ.
Если в течение окон ответа обнаруживаются помехи, станция зацикливает процедуру передачи кадров разрешение-еоперничс- ства, каждый из которых открывает четыре окна ответа, и ожидает различимого ответа, начатого в окне ответа. Станция повторяет цикл максимум макс-число-передач, каждый раз инструктируя соперничающие станции выбрать два различных бита своего адреса для определения, в каком из четырех открытых окон им следует вести передачу.
Описание интерфейсного конечного автомата. Автомат ИНТ—КА действует как посредник между другими функциональными автоматами подуровня УДС и теми логическими объектами пользователя-УДС, с которыми УДС взаимодействует. Его внутренние операции в значительной степени являются неопределен- ны'М'и, поскольку подуровень УДС будет функционировать пра-вильно независимо от того, каким образом удовлетворяются функциональные требования ИНТ—КА.
Автомат ИНТ—КА выполняет восемь следующих основных функций, три из которых факультативные:.
прием и генерация сервисных примитивов, определенных для интерфейса УЛЗ—УДС;
постановка в очередь запросов услуг;
распознавание адресов кадров данных, предназначенных для данной станции;
преобразование запросов качества услуг УЛЗ .из терминов УЛЗ (класс-услуг) в термины УДС (класс-доступа);
факультативное обслуживание многих очередей запросов передачи, различаемых по классу_доступа (или по классу-услуг);
обеспечение дисциплины «первый пришел—первый вышел» в каждой очереди ожидающих запросов услуг;
факультативная генерация сообщения ответ-принят для УД—КА при приеме кадра данных, параметр качества которого определяет «ответ»;
факультативный прием ответа от отвечающего логического объекта пользователя_УДС вслед за получением кадра, определяющего запрос-с-ответом, и передача кадра ответа.
Поскольку сервисные примитивы подробно рассматриваются далее по тексту настоящего стандарта, они здесь больше не обсуждаются.
Автомат ИНТ—КА должен обеспечивать также распознавание адресов в кадрах данных. Если распознавание некоторых адресов может быть выполнено автоматом ПМ—КА, то необходимость проверки соответствия потенциально большого количества групповых адресов нерационально возлагать на ПМ—КА.
Примечание, Определение механизма распознавания групповых адресов находится в стадии изучения.
Понятие качества услуг аналогично понятию приоритета, хотя оно несколько менее конкретно и это сделано сознательно. Протоколы верхних уровней могут назначать своим сообщениям определенную значимость, которая может быть только приблизительно учтена более низкими уровнями. В случае ЛВС подуровень УЛЗ может присвоить каждому кадру, который он запрашивает для передачи, любой из восьми классов услуг. Подуровень УДС шины с маркерным доступом может оказаться ніе в состоянии обеспечить различное качество услуг или различные классы-доступа УДС, поэтому он должен обеспечить преобразование всех клас- сов-услуг в один класс-доступа. Подуровень УДС может в качестве факультативной возможности обеспечить четыре различных класса-доступа. Если он их обеспечивает, то ИНТ—КА должен поддерживать несколько очередей запросов с тем, чтобы запросы могли обрабатываться в соответствии как с классом-доступа (или классом-услуг) , так и порядком их поступления.
Описание приемного конечного автомата. Автомат ПМ—КА (см. черт. 1.3 и 5.4) принимает символы УДС (см. п. 6.1.2) из физического уровня, вырабатывает структуры данных верхних уровней и передает сигналы автомату УД—КА и автомату ИНТ—КА. Интерфейсом между физическим уровнем и автоматом УД—КА служит примитив ФИЗ-БЛОК-ДАННЫХ.индикация, определяемый в разд. 8. В данном описании автомата ПМ—КА примитив ФИЗ — БЛОК-ДАННЫХ.индикация 'представлен как кодируемый символ-УДС и соответствующий синхронизатор. Другие интерфейсы автомата ПМ—КА являются внутренними для УДС и состоят из следующих сигналов и структур данных:
Шина_свободна — этот сигнал вырабатывается, когда среда неактивна. Он устанавливается и сбрасывается автоматом ПМ— КА и читается автоматом УД—КА.
ПМ-протокольный-кадр — булева переменная, который имеет значение «истинно» при приеме действительного кадра управле- ния-УДС. Эта переменная устанавливается автоматом ПМ—КА, читается и стирается автоматом УД—КА.
ПМ-кадр-данных — булева переменная, которая принимает значение «истинно» при приеме действительного кадра данных. Эта переменная устанавливается автоматом ПМ—КА, читается автоматами УД—КА и ИНТ—КА, но сбрасывается только автоматом ИНТ—КА.
Пакет_помех — этот сигнал указывает, что физическая среда была активной, но это не привело к появлению действительного кадра (определение недействительных кадров см. в п. 4.2.3). Этот сигнал устанавливается автоматом ПМ—КА, читается и стирается автоматом УД—КА.
Буфер.кадров — при приеме действительного кадра данных в нем содержится октет управления кадра, поля адрес-получателя, адрес-отправителя, блок_данных и поле КПК. Это содержимое записывается автоматом ПМ—КА. При установленном сигнале ПМ_протокольный_кадр это содержимое используется автоматом УД—КА, а при сигнале ПМ_кадр_д энных—автоматом ИНТ—КА.
В автомате ПМ—КА имеется четыре главных функциональных блока: интерпретатор символа-УДС, блок КПК, преобразователь последовательного кода и блок управления приемником (см. черт. 5.4). Эти блоки описываются как синхронные автоматы, тактируемые от ФИЗ_синхр. .В необходимых на практике случаях эти блоки разбиваются на конечные автоматы. На черт. 5.5—5.7 обозначения на дугах, указанные без скобок, представляет состояния дуг; обозначение в скобках указывает выход из этой дуги.
Интерпретатор символов_УДС принимает символы-УДС и вырабатывает следующие сигналы:Черт. 5.4
С. 64 ГОСТ 34.913.4—91
3*
* Эти дуги должны входить, скорее, в состояние 1 или 0, чем в указанные здесь состояния
Черт. 5.6
Инициация
I C//Z7J
С. 66 ГОСТ 34.913.4—91
* Эти дуги должны входить, скорее, в состояние 1 или 0, чем в указанные здесь состояния
Черт. 5.7молч. раб — эти сигналы представляют собой состояние молчания (молч) и рабочее состояние (раб) шины соответственно. Сигналы молч и раб непосредственно управляют сигналами уста- новить-ШСВ и оч_ШСВ (установить и очистить состояние ііш- на-свободна соответственно). Единственная причина их неполной эквивалентности состоит в том, что блок управления приемника должен поддержать определенные временные соотношения между переменными шина-свободна и пакет-помех. Приведенный на чертеже конечный автомат вырабатывает сигнал молч только после восьми символов-УДС молчание (S), а для выработки сигнала раб требует трех символов-УДС не-молчание. Отчасти это делается .исключительно для обеспечения необходимого запаздывания приемника, а точное число сигналов может варьироваться разработчиком сети; однако при приеме действительного кадра сигнал шина-свободна должен быть ^установлен после установки соответствующего сигнала ПМ-кадр. Ошибка в этих действиях может привести к неправильной работе автомата УД—КА.
НО, КО — ограничитель любого действительного кадра в принимаемой последовательности символов_УДС обнаруживается независимо от контекста. Сигнал КО передается уровню ФИЗ для использования его схемами подстройки и синхронизации.
байт, ош (конечный автомат не показан) — детектор байт/ош инициируется, безусловно, полем НО, обеспечивая побайтовое выравнивание. Поскольку в последующем принимаются только сим- волы-УДС 0 и 1, стробирующие сигналы байта действительны каждые восемь периодов ФИЗ-синхр. При приеме любого сим- вола-УДС, отличного от 0 или 1, начинается последовательность выхода. (Определения символов_УДС см. в п. 6.1.2). Возможны следующие выходные последовательности.
Прием символов_УДС Р, В или S; отчет об ошибке и окончание (ожидание инициации).
Прием символа N не на границе октета: отчет об ошибке и окончание.
Прием символа N на границе октета, которая не подтверждена как ограничитель кадра: отчет об ошибке и окончание.
Прием символа N на границе октета, после которого следует НО: отчет об ошибке, если кадр находится в процессе приема, и инициация.
Прием символа N на границе октета, после которого следует КО: окончание.
Блок КПК выполняет вычисление КПК в соответствии с п. 4.1.6. Он инициируется любым НО и последовательно продвигается по данным, пока не будет принят символ не-данные..
Выход преобразователя последовательного кода определяется только тогда, когда передается НО, КО или байт данных.
Примечание. Настоящая спецификация не требует оповещать вышерасположенные уровни о значениях бит данных ограничителей.
Блок управления приемником имеет три компонента. Детектор сигналов пакет_помех/шина_свободна (ПП/ШСВ) устанавливает и сбрасывает сигнал шина-свободна и устанавливает сигнал пакет помех по переднему франту сигнала шмна-свободна, если не был принят действительный кадр (см. черт. 5.8). Блок управления кадра передает выходные -сигналы преобразователя последовательного кода в буфер кадра, проверяет поле УК для кадров данных и определяет, содержится ли в кадре разрешенное число октетов. Детектор действительных кадров проверяет далее правильность КПК и кратность кадра октету.