Тем временем компонент «управление доступом к среде на приеме» подуровня УДС, обнаружив сигнал опознавания несу­щей, ожидает поступления подлежащих доставке битов. Компо­нент «управление доступом к среде на приеме» собирает биты из подуровня ПФС в течение всего времени, пока сигнал опознава­ния несущей остается включенным. При исчезновении этого сиг- пала кадр при необходимости усекается до границы октета и пе­редается компоненту «раскомпоновка принятых данных» для об­работки.

Компонент «раскомпоновка принятых данных» проверяет поле «Адрес получателя» кадра для того, чтобы решить, должна ли данная станция принимать этот кадр. Если да, то он передает поля ЛП, АО и блок данных УЛЗ (БД УЛЗ) подуровню УЛЗ вместе с соответствующим кодом состояния, указывающим либо прием-завершен, либо прием-слишком-длительный. Он проверяет также действительность кадров УДС, анализируя контрольную последовательность кадра с целью обнаружениялюбых искажений передаваемого кадра и проверяя соответствующую октетную структуру окончания кадра. Кадры с действительной КПК могут также проверяться на соответствие октетной структуре.

  1. Внешние помехи доступу и восстанов- л е ни е

Если несколько станций пытаются одновременно передавать, то возможно взаимное влияние их передач друг на друга, несмот­ря на попытки устранить это влияние путем отсрочек передачи. Если передачи от двух станций налагаются друг на друга, то возникающее при этом соперничество называется конфликтом. Определенная станция может ощутить ситуацию конфликта в процессе начальной части своей передачи (окно конфликта), прежде чем переданный ею сигнал успеет распространиться до всех станций данной физической среды КДОН/ОК. Как только будет пройдено окно конфликта, считается, что передающая стан­ция захватила физическую среду; последующие конфликты исклю­чаются, поскольку можно предполагать, что все другие (пра­вильно функционирующие) станции должны были получить нуж­ный сигнал (путем опознавания несущей) и отсрочили свою пере­дачу. Время для захвата физической среды основывается на вре­мени кругового распространения сигнала по физическому уровню, к элементам которого относятся подуровень ПФС, МСС и физи­ческая среда.

В случае конфликта физический уровень передающей станции вначале информирует о наличии вмешательства в физической среде и затем включает сигнал опознавания несущей. В свою очередь о конфликте оповещает компонент «управление доступом к среде на передаче» подуровня УДС и начинается обработка конфликта. Этот компонент прежде всего усиливает конфликт пу­тем передачи битовой последовательности, называемой «наличие конфликта». В п. 4.4 описана реализация, использующая эту про­цедуру усиления конфликта. Этим обеспечивается длительность конфликта, достаточная для информирования другой (их) пере­дающей (іих) станции (й), участвующей (их) в конфликте. После передачи сигнала «наличие конфликта» компонент «управление доступом к среде на передаче» заканчивает свою передачу и по истечении случайного интервала времени приступает к обслужи­ванию другой попытки передачи. В условиях повторяющихся кон­фликтов предпринимаются попытки повторной передачи. Однако поскольку повторение конфликтов указывает на занятость физи­ческой среды, то компонент «управление доступом к среде на пе­редаче» пытается согласовать нагрузку на нее с помощью вы­держек (сознательно задерживая собственные повторные переда­чи с целью снижения своей нагрузки на среду). Это осуществля­ется путем расширения временного интервала, из которого выби­рается случайный момент времени для последующей повторной попытки передачи. Возможно, что либо передача пройдет успеш­но, либо попытка будет отклонена в предположении, что физи­ческая среда неисправна или находится в состоянии перегрузки.

На приемной стороне биты, образованные в результате кон­фликта, принимаются и декодируются подуровнем ПФС точно так же, как и биты действительного кадра. Неполные кадры, поступившие во время конфликтов, выделяются из правильно пе­реданных кадров компонентом «управление доступа к среде на приеме» подуровня УДС.

  1. Взаимоотношения с подуровнем УЛЗ и физическим уров­нем

Подуровень УДС КДОН/ОК предоставляет подуровню УЛЗ услуги, необходимые ему для передачи и приема кадров. Доступ к этим услугам определен в и. 4.3. Подуровень УДС КДОН/ОК предпринимает большие усилия для захвата физической среды и передачи последовательного потока битов подуровню УЛЗ. И хотя подуровень УЛЗ информируется о некоторых ошибках, ис­правление ошибок не выполняется на подуровне УДС. Исправ­ление ошибок может быть выполнено на подуровне УЛЗ или на более высоких (под) уровнях.

  1. Функциональные возможности метода доступа КДОН/ОК

Приводимый ниже обобщенный перечень функциональных возможностей подуровня УДС КДОН/ОК предназначен обеспе­чить оперативный справочный материал по возможностям настоя­щего стандарта в соответствии с черт. 4.2.

  1. При передаче кадров осуществляется:

  1. получение данных из подуровня УЛЗ и формирование кадра;

  2. выдача физическому уровню побитового потока данных для его передачи по физіичеойой среде.

Примечание. Предполагается, что данные, поступившие из подуровня УЛЗ, кратны октету.

  1. При приеме кадров осуществляется:

  1. прием побитового потока данных из физического уровня;

Функции управления доступом к среде

КДОН/ОК

Черт. 4.2



Примечание. Цифры означают функ­ции, перечисленные в п. 4.1.4.

  1. выдача подуровню УЛЗ тех кадров, которые имеют либо глобальные адреса, либо адресованы непосредственно данной станции;

  2. удаление всех кадров, не адресованных данной прини­мающей станции, либо их передача диспетчеру сети.

  1. Отсрочка передачи побитового потока данных при каждой занятости физической среды.

  2. Присоединение надлежащего значения КПК к исходящим кадрам и проверка октетной структуры данных.

  3. Проверка поступающих кадров на наличие ошибок переда­чи с помощью КПК и проверка октетной структуры данных.

  4. Задержка передачи битового потока кадров на заданный межкадровый интервал времени.

  5. Прекращение передачи при обнаружении конфликта.

  6. Планирование повторных передач после обнаружения кон­фликта до достижения заданного предельного числа повторений.

  7. Усиление конфликта путем передачи сообщения «наличие конфликта» с целью гарантированного распространения конфлик­та по всей сети.

  8. Аннулирование принятых сообщений, длина которых мень­ше установленного минимального значения.

  9. Присоединение ІКО всем кадрам преамбулы, начального ограничителя кадра, полей АП, АО, длины и КПК и введение по­ля заполнителя в те кадры, длина которых меньше минимального установленного значения.

  10. Удаление преамбулы, начального ограничителя кадра, по­лей АП, АО, длины, КПК и заполнителя (при его наличии) из принятых кадров.

  1. Метод управления доступом к среде Л ВО КДОН/ОК. Точная спецификация

    1. Введение

В данном разделе, определяющем процедурную модель процес­са УДС КДОН/ОК, приведено точное определение алгоритма с использованием программы на машинном языке Паскаль. При появлении какой-либо неоднозначности в определении отдельных вопросов метода КДОН/ОК на подуровне УДС за точным опре­делением следует обращаться к процедурной спецификации на языке Паскаль, излагаемой в пп. 4.2.7—4.2.10. В пп. 4.2.2—4.2.6 в описательном виде представлен механизм доступа с формализо­ванной терминологией, которая подлежит использованию в ос­тальных подразделах.

  1. Краткое описание процедурной модели

Ниже описаны функции метода КДОН/ОК на подуровне УДС, представленные в виде программной модели, записанной на ма­шинном языке Паскаль. Эта процедурная модель призвана слу­жить основой спецификации тех функций, которые должны обес­печиваться в любой реализации метода КДОН/ОК на подуровне УДС. Важно отличать, однако, модель от фактической реализа­ции. Модель оптимизирована с точки зрения простоты и ясности представления, тогда как в практической реализации следует уделять основное внимание таким ограничениям, как эффектив­ность и приспособленность к конкретным методам реализации или машинной архитектуре. В этом контексте следует рассматри­вать различные важные свойства процедурной модели.

  1. Основные правила построения проце­дурной модели

  1. Описание подуровня УДС на машинном языке никоим обра­зом не означает, что соответствующие процедуры должны быть реализованы в виде программы, выполняемой ЭВМ. Конкретная реализация может содержать любые подходящие методы, вклю­чая аппаратные, микропрограммные, программные или любое со­четание этих методов.

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

  3. Обработка входящих и исходящих кадров в процедурной модели несколько упрощена в том смысле, что большая часть подуровня УДС обрабатывает кадры как простые объекты и только для представления физическому уровню кадры выстраи­ваются в последовательность. Практически же многие реализа­ции будут вместо этого обрабатывать каждый кадр последова­тельно по блокам, по октетам или по словам. Такой подход не отражен в процедурной модели, поскольку он только усложнил бы описание функций без каких-либо других изменений.

  4. Модель состоит из алгоритмов, которые должны выпол­няться многими параллельными процессами; в совокупности эти алгоритмы реализуют процедуру КДОН/ОК. Временные зависи­мости, вводимые потребностями параллельных действий, разре­шаются двумя способами:

  5. процессы относительно внешних событий. Предполагается, что алгоритм выполняется «очень быстро» относительно внешних событий в том смысле, что работа процесса никогда не нару­шается и процесс никогда не запаздывает своевременно реагиро­вать на внешние события. Если, например, необходимо принять кадр, то предполагается, что процедура управления доступом «пркем-кадра» всегда будет привлечена до момента начала пос­туплення рассматриваемого кадра;

  6. процессы относительно процессов. Относительно скорости выполнения процессов не делается никаких предположений. Это значит, что каждое взаимодействие между двумя процессами дол­жно строиться так, чтобы обеспечивалось правильное их функцио­нирование независимо от соответствующих скоростей их выпол­нения. Заметим, однако, что временные взаимодействия между процессами часто косвенно отражают в определенной степени времена появления внешних событий, и в этих случаях могут де­латься соответствующие предположения о временных параметрах.

Задача ставится так, чтобы конкуренция процессов отражала в модели параллелелизм, свойственный задаче реализации проце­дур подуровней УЛЗ и УДС, хотя фактическая параллельная их структура в конкретных реализациях, видимо, должна быть раз­личной.

  1. Использование языка Паскаль в про­цедурной модели

Относительно метода использования языка Паскаль в проце­дурной модели следует высказать несколько соображений.

  1. Для упрощения спецификации некоторые ограничения язы­ка Паскаль в настоящем стандарте обойдены:

  1. элементы программы (например переменные и процедуры) представлены в логически сгруппированном нисходящем порядке.

Тем самым некоторые ограничения, налагаемые языком Паскаль на упорядочение, обойдены для облегчения восприятия матсриа- л а;

  1. конструкции процессов и циклов производной языка Пас­каль. Введен параллельный язык Паскаль для определения мест расположения автономных параллельных активностей. В настоя­щем разделе процесс рассматривается просто как бсспарамстри- ческая процедура, которая начинает выполнение «с начала отсче­та времени», вместо того, чтобы привлекаться путем вызова про­цедуры. Циклический оператор образует основное тело процесса и его выполнение постоянно повторяется;

  2. отсутствие в языке границ пространства переменных при­водит к тому, что кадры рассматриваются так, как если бы они всегда имели единую фиксированную длину (которая фактичес­ки никогда не определяется). Длина кадра зависит от длины его поля данных, следовательно, «псевдопостоянное» значение пара­метра длина_ікадра следует рассматривать как изменяющееся в долгосрочном плане, даже если оно и фиксировано для любого данного кадра.

  3. использование различных записей для представления кадра (в виде полей и битов) соответствует духу, но не букве «Отчета по языку Паскаль», поскольку позволяет рассматривать нижс- расположенное представление как два различных типа данных.

  1. В модели не используется никаких явных примитивов меж- нроцессовой синхронизации. Вместо этого все межпроцессовые взаимодействия выполняются путем тщательно стилизованной ма­нипуляции коллективно используемыми переменными. Например, некоторые переменные устанавливаются только одним процессом, а проверяются другим таким образом, что конечный результат не будет зависеть от скоростей их выполнения. И если подобные ме­тоды в общем случае не очень подходят для конструирования крупных параллельных программ, то они упрощают данную мо­дель и больше напоминают методы, свойственные большинству схожих применяемых технологий (макрокоды, аппаратные автома­ты состояний и т. п.)

  1. О р г а н из а ц и я процедурной модели