Научная статья на тему 'Базовые механизмы взаимодействия активных объектов цифровых систем и возможные способы их технической реализации'

Базовые механизмы взаимодействия активных объектов цифровых систем и возможные способы их технической реализации Текст научной статьи по специальности «Электротехника, электронная техника, информационные технологии»

CC BY
298
41
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АКТИВНЫЙ ОБЪЕКТ / РАСПРЕДЕЛЕННАЯ КОММУТАЦИЯ / СИНХРОНИЗАЦИЯ / РАСПРЕДЕЛЕННЫЕ ВЫЧИСЛЕНИЯ / АКТИВНЫЕ СООБЩЕНИЯ / ACTIVE OBJECT / DISTRIBUTED SWITCHING / SYNCHRONIZATION / DISTRIBUTED CALCULATIONS / ACTIVE MESSAGES

Аннотация научной статьи по электротехнике, электронной технике, информационным технологиям, автор научной работы — Стецюра Геннадий Георгиевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по электротехнике, электронной технике, информационным технологиям , автор научной работы — Стецюра Геннадий Георгиевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The fast mechanisms for interaction of active objects of digital systems are proposed. Their applicability for providing the fast reaction of complex digital systems on the change of the system and environment and fast distributed calculations is shown. The ways of creation of technical devices necessary for realisation of the proposed mechanisms are shown.

Текст научной работы на тему «Базовые механизмы взаимодействия активных объектов цифровых систем и возможные способы их технической реализации»

И нформационные технологии в управлении

УДК 004.032.24

БАЗОВЫЕ МЕХАНИЗМЫ ВЗАИМОДЕЙСТВИЯ АКТИВНЫХ ОБЪЕКТОВ ЦИФРОВЫХ СИСТЕМ И ВОЗМОЖНЫЕ СПОСОБЫ ИХ ТЕХНИЧЕСКОЙ РЕАЛИЗАЦИИ

Г.Г. Стецюра

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

Ключевые слова: активный объект, распределенная коммутация, синхронизация, распределенные вычисления, активные сообщения.

ВВЕДЕНИЕ

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

Кроме того, часто нужен не простой обмен сообщениями: содержимое отдельного сообщения требуется изменять в процессе передачи, коллективно воздействуя на него группой объектов. Такое сообщение доставляет всем объектам системы сведения о состоянии системы, о ходе распределенной обработки информации, ускоряет распределенные вычисления. Во многих эвристических алгоритмах, в том числе в эволюционных алгорит-

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

Важная область применения быстрых механизмов взаимодействия активных объектов — восстановление работоспособности действующих автономно сложных цифровых систем при возникновении нештатных ситуаций без вмешательства оператора, автономно. Автономной системе для корректной реакции необходимо в таких ситуациях быстро выполнять очень сложно реализуемые самоконтроль, самовосстановление, самоконфигурирование, самооптимизацию (Autonomic Computing, IBM, P. Horn [1]). К автономным системам по требованиям к скорости реакции близки про-активные системы, активные сети (Proactive Computing, Active Network, Intel, DARPA, D.L. Tennen-house [2, 3]). Предлагаемые в статье механизмы взаимодействия активных объектов облегчают достижение быстрой реакции на возникающие возмущения.

Употребляемое в статье понятие «активный объект» введено впервые применительно к управлению экономическими объектами [4]. Скорость взаимодействия таких объектов не высока, и вопросы разработки быстрых механизмов взаимодействия объектов не поднимались. Но цифровые активные объекты, рассматриваемые в настоящей статье, требуют высокой скорости реакции на события, что послужило одной из причин разработки предлагаемых быстрых механизмов взаимодействия.

С учетом изложенного, обобщим требования, предъявляемые к базовым механизмам взаимодействия активных объектов. При этом будем ориентироваться на удовлетворение наиболее жестким временным ограничениям:

• наряду с взаимодействиями активных объектов типа «один источник сообщения — один приемник» должны быстро выполняться взаимодействия «один источник — много приемников» и «много источников — много приемников»;

• должны быстро устраняться конфликты при доступе активных объектов к общим ресурсам;

• активные объекты должны быстро синхронизо-вывать совместные действия;

• должна иметься возможность преобразовывать сообщения с учетом их содержания в процессе передачи сообщения через цепочку активных объектов, не затрачивая на это дополнительное время сверх времени, необходимого только на передачу сообщения; в частности, требуется без задержки распределенно выполнять вычисления над данными, находящимися в сообщении;

• между объектами должны передаваться групповые программы — активные сообщения, которые воздействуют на состояние объектов и сами изменяются под воздействием объектов, причем эти действия должны выполняться без задержки сообщения в объектах.

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

Перечисленные требования к механизмам взаимодействия, в свою очередь, выдвигают требования к реализующим их техническим средствам:

• должны обеспечиваться одновременные бесконфликтные соединения между парами и группами объектов (вплоть до связей между всеми объектами системы);

• должны максимально использоваться беспроводные каналы связи, существенно упрощающие реализацию сложных межсоединений объектов;

• в больших системах со сложными связями коммутационное оборудование составляет значительную часть системы, поэтому необходимы

решения, его упрощающие1;

• непосредственно в средствах связи должны быстро выполняться распределенные вычисления и устраняться конфликты доступа к общему ресурсу;

• при выполнении требований, предъявляемых к механизмам взаимодействия, должны приниматься решения, направленные на уменьшение энергозатрат и рассеяния энергии в объектах системы.

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

Статья представляет собой продолжение, развитие и более развернутое изложение решений, приведенных в работе [5].

1. БЕСПРОВОДНЫЕ ВЗАИМОДЕЙСТВИЯ ОБЪЕКТОВ

1.1. Распределенный оптический беспроводный коммутатор

Рассмотрим способы создания распределенного оптического коммутатора, обладающего свойствами:

— коммутатор полностью распределен, его активные элементы — оптические демультиплексо-ры — являются частью коммутируемых объектов, беспроводные оптические соединения источников с приемниками создаются динамически по мере необходимости;

— между демультиплексорами коммутируемых объектов отсутствуют промежуточные звенья коммутации, поэтому коммутатор не создает внутренние конфликты;

— демультиплексор каждого объекта-источника для соединения с любым из п объектов-приемников содержит 1о§2п последовательно соединенных двоичных каскадов, пройдя через которые световой луч распространяется в одном из п направлений. Каждый каскад демультиплексора переключает свет в одном из двух направлений, вы-

1 В настоящей работе сложность активного коммутационного оборудования (число двоичных переключателей направления передачи сигналов) доведена до значения где п — число коммутируемых объектов.

бираемых значением соответствующего каскаду разряда адреса, который содержит 1о§2 п разрядов, по одному разряду на каскад демультиплексора. Для указания любого из п направлений адрес не может иметь меньшее число разрядов, поэтому такой демультиплексор имеет минимально возможное число каскадов.

Таким образом, предлагаются способы создания распределенного оптического бесконфликтного коммутатора минимальной сложности. Распределенность позволяет легко трансформировать систему и обеспечивает быстрые взаимодействия групп объектов. Изложение базируется на публикации [6].

Демультиплексор на элементах коммутации микроэлектромеханических систем (МЭМС). Элементы коммутации на электромеханически перемещаемых зеркалах можно построить в соответствии с рис. 1, где изображен локальный демультиплексор на 8 направлений луча. Здесь показаны три поворачивающихся зеркала, на первое из которых направляет луч света лазерный источник сигналов Модулируя этот сигнал, объект передает сигналы сообщения. Отразившись от всех зеркал, луч займет одно из указанных восьми положений, определяемых положением зеркал. Размеры зеркал последовательно увеличиваются с тем, чтобы на них попадал любой отклоняемый луч. Зеркало с большой поверхностью можно заменить группой зеркал с малой поверхностью, на которых действует общий управляющий электрический сигнал.

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

1/2

всю площадь зеркала: п

1/2

лучей размещаются в

плоскости рисунка и — в перпендикулярной плоскости. Для перемещения луча между источником 5 и демультиплексором требуется расположить дополнительно аналогичный демультиплексор на п1/2 выходов. Он отличается от основного тем, что любой выходящий из него луч должен поступать в основной демультиплексор подобно лучу от источника 5, но с параллельным сдвигом. Это достигается установкой на выходе демультиплексора п1/2 неподвижных зеркал, создающих требуемое направление лучей.

Чаще всего объекты располагаются так, что с помощью указанных демультиплексоров невозможно направить луч любому приемнику. В этом случае надо на пути лучей поместить вне вычислительной системы дополнительную систему неуправляемых неподвижных зеркал, направляющих лучи на произвольно расположенные приемники.

Требуется п2 таких неподвижных зеркал для обслуживания связи со всеми п устройствами.

Рис. 1. Демультиплексор на МЭМС

При создании многомашинной системы зеркала ориентируются так, чтобы связать места, где размещены компьютеры, а система наращивается установкой компьютеров в отведенные для них места без какой-либо перенастройки демультиплексоров. Полезна двухступенчатая система пассивных зеркал: п пассивных зеркал расположены в месте размещения каждого из п компьютеров системы, а удаленно расположено единственное зеркало. Вместо этого зеркала можно поместить решетку из п ретрансляторов, по одному на каждого объекта — приемника сигналов. Каждый ретранслятор содержит приемник оптического сигнала объекта — источника; сигнал ретранслируется далее в объект — приемник имеющимся в ретрансляторе источником направленного оптического сигнала по волоконно-оптической линии или без проводов. Если объект — приемник возвращает сигнал в ретранслятор, то сигнал принимает второй приемник оптического сигнала, управляющий модулятором. Модулятор расположен в ретрансляторе перед ретрорефлектором, который возвращает оптический сигнал, пославшему его объекту — источнику. Таким образом, каждый ретранслятор обеспечивает двустороннюю связь одного или группы объектов — источников сигнала с одним объектом — приемником сигнала. Ретрансляторы позволяют индивидуально регулировать каналы связи между объектами.

Выделим особенности описанного устройства.

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

• Каждый из двоичных элементов коммутации, переходя в одно из двух состояний, позволяет переключать одновременно группу лучей (виртуальных каналов); размеры группы варьируются от 2 до п для разных элементов демультиплексора. Для управления группой требует-

ся однобитовый сигнал. В каждый момент времени реализуется только один из виртуальных каналов.

• Каждое зеркало способно также коммутировать многоразрядные слова, например, при использовании различных частот сигнала для разных разрядов.

• Источники света ^ могут быть вынесены не только за пределы коммутатора, но и за пределы всей системы. В элементах коммутации не создаются новые сигналы. Все это уменьшает энергопотребление в системе. Быстродействующие демультиплексоры. Техника

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

Во многих исследовательских коллективах проводятся исследования по созданию быстрых переключательных оптических элементов, которые могли бы применяться в предлагаемом демультип-лексоре, но пока они не вышли на стадию промышленного применения.

Из имеющихся публикаций для указанного применения, по мнению автора, представляют большой интерес работы над фотонными кристаллами, включающими в себя соединения ванадия (У02, У205). Они очень быстро переходят из прозрачного состояния в отражающее свет. Показано, что такое переключение выполнимо за время не более 12 фс.

Рис. 2 демонстрирует демультиплексор, в котором используется это свойство. Сплошными наклонными линиями показаны три управляемых зеркала из У02, пунктирными — обычные пассивные зеркала или призмы. Источник ^ направляет

Рис. 2. Демультиплексор на фотонных кристаллах

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

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

Для демультиплексоров, подобных приведенному на рис. 2, необходима разработка высокоскоростных элементов, переключающих и модулирующих группу сигналов одновременно под управлением общего управляющего сигнала. Примером реализации такого типа устройства может быть модулятор на фотонных кристаллах [7—9]. Для этой же цели важны исследования [10].

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

Однако обе стороны могут использовать общий канал. Для этого приемник должен иметь ретро-рефлектор, возвращающий луч источнику, и расположенный между ним и источником модулятор оптического сигнала (см. п. 1.2).

Для симплексной связи источник после завершения передачи своего сообщения продолжает передавать свой смодулированный сигнал. Этот сигнал возвращается ретрорефлектором к источнику, модулированный возвращаемым сообщением приемника.

Для дуплексной связи источник посылает свое сообщение сигналами одной частоты /1 и посылает непрерывный сигнал частоты /2. Последний возвращается источнику, модулированный сигналами приемника. При этом многие объекты могут посылать непрерывные сигналы на частоте /2 для широковещательного получения сообщения приемника, не мешая передаче источником сообщения на частоте /1.

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

В целом решения, приведенные в настоящем п. 1.1, рассчитаны на осуществление бесконфликтной коммутации, пригодной как для создания систем с оперативно реконфигурируемой структурой, так и для коммутации сообщений, в том числе и коротких.

1.2. Синхронизация взаимодействия объектов

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

— в группе выделен объект — лидер, по сигналу которого все объекты группы должны послать сигналы так, чтобы они поступили одновременно в заранее заданную точку пространства (центр);

— по сигналу лидера во всех объектах должны одновременно начать выполняться заданные индивидуально для каждого из объектов действия.

Далее использованы результаты статьи [11]. Рассмотрим первый вид синхронизации.

Воспользуемся обменом оптическими сигналами. Помимо перечисленных объектов введем центр, через который осуществляется обмен сообщениями между объектами. Центр расположен так, чтобы не существовало помех доставке сигналов от объектов в центр и в обратном направлении. Центр содержит оптический ретрорефлектор. Основное свойство ретрорефлектора: луч света, поступивший на ретрорефлектор от объекта, отражается в направлении объекта — источника света. Если такие сигналы посылает группа объектов, то каждый объект получит только собственный сигнал. В частности, ретрорефлектором может быть катафот.

Предполагается, что, послав и получив сигнал, объект 0; измеряет интервал времени Т., требуемый сигналу для достижения ретрорефлектора и возвращения к объекту (для лидера Т1). Благодаря свойству ретрорефлектора все объекты определяют Т независимо друг от друга и, в частности, одновременно.

Объекты и центр обмениваются сигналами и сообщениями, причем объект направляет в фотоприемник центра лазерный луч, модулированный двоичными сигналами, или же этот сигнал направляется в световом конусе, также попадающем на фотоприемник центра.

Полученный от объектов сигнал центр возвращает всем объектам, используя один из двух вариантов. В соответствии с первым из них принятый на частоте /1 сигнал объектов возвращается на частоте /2 не направленно, в конусе, охватывающем

все объекты. Использование второй частоты исключает помехи в приемниках объектов от сигналов, передаваемых объектами.

Согласно второму варианту каждый объект использует для связи с центром два лазерных луча с частотами f и f2. На частоте f объекты передают в центр сообщения. На частоте f2 объекты передают непрерывный сигнал, который поступает в ретро-рефлектор центра и возвращается к объекту. На пути сигналов f2 перед ретрорефлектором располагается модулятор света, при помощи которого центр, используя сигналы fx, модулирует сигналы f2, рассылая этим широковещательно сигналы объектам. Отличительная особенность второго варианта — для рассылки сообщения центр использует энергию объектов — получателей сообщений от центра.

Лидер взаимодействует с объектами по следующей схеме. Предполагается, что всем объектам известен интервал Ттах l maxТ, i = 1, ..., n. Лидер посылает сигнал в центр, который его ретранслирует каждому объекту O. Эти объекты с задержкой = ТТ „„ — T + а посылают свои сигналы в центр.

i max i -*-

Каждый сигнал поступит в центр через интервал времени t. + T. = + а после отправки сигнала

i i max

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

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

Изложенный обмен сигналами, где двоичные единица и ноль передаются наличием и отсутствием сигнала, требуют, как это обычно делается, применения избыточного кодирования для выделения сигналов в последовательности единиц или нулей. Однако можно ввести дополнительные сигналы на частотах f3 и f и использовать их в качестве разделителей соседних разрядов поступающих в ретрорефлектор и возвращаемых ретрореф-лектором сообщений.

Если не пользоваться описанной синхронизацией, то потери в пропускной способности средств

обмена сообщениями могут быть велики. Приведем пример. Пусть в группе каждый объект удален от центра не более чем на 3 м. Это расстояние сигнал преодолеет за 10 нс. Чтобы не было конфликтов сигналов, каждая следующая передача сообщения должна начинаться после паузы в 10 нс. Скорость передачи сигналов в современных средствах связи приближается к 1 пс, и за время паузы могло бы быть передано ~104 сигналов.

Для решения второй задачи синхронизации сделаем допущение, что сигнал в объекте Ог принимается с задержкой 0,5 Т относительно момента посылки сигнала из центра, т. е. предполагается равенство интервалов времени распространения сигналов от центра к объекту O; и обратно. Каждый синхронизируемый объект, получив из ретранслятора команду, переходит в требуемое состояние с задержкой t'i = Ттах — 0,5 + b. В результате все объекты перейдут в заданное состояние с одинаковой задержкой Ттах + b.

Следуя работе [11], приведем дополнительные варианты взаимодействия объектов, базирующихся на изложенной синхронизации.

Синхронизация показаний часов. До сих пор не

требовалось, чтобы объекты имели показывающие одинаковое время часы, нужны были только таймеры. Но часы могут потребоваться, как, например, в стандарте IEEE 1588 [12, 13]. Поэтому рассмотрим синхронизацию часов объектов с часами лидера, используя приведенные оптические средства. Для синхронизации лидер посылает объектам сообщение, содержащее t — отсчет времени на часах лидера и 0,5 TL — интервал времени прохождения сигнала от лидера до центра. Объект O; получит сообщение лидера через интервал времени 0,5 TL + 0,5 Ti_. В этот момент времени на часах лидера будет отсчет времени S = t + 0,5 TL + 0,5 Т. и объект Oi для синхронизации своих часов установит на них отсчет S.

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

Применение часов для синхронизации подвижных объектов. При отсутствии в центре ретрореф-лектора не удается одновременно определить все интервалы времени Т., что существенно при наличии подвижных объектов. Наличие часов у объектов устраняет этот недостаток. Подвижными могут быть лидер, объекты, центр, и при любых перемещениях требуется определять значение Тi.

Для синхронизации лидер измеряет интервал Ть и сообщает его объектам вместе с г — отсчетом своих часов. Отсюда, если возникло изменение АТр то

ДТ = г + 0,5ТЬ + 0,5Т - Бр

где Б. — показание часов объекта, Т. — предыдущий временной отсчет.

Соблюдается следующая последовательность измерений:

— при неподвижных объектах измеряются интервалы Ть и Т;

— синхронизируются часы;

— одновременно во всех объектах определяется изменение ДТ1.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

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

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

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

Синхронизация позволяет эффективно использовать планирование обменов данными. Если лидеру известны размеры сообщений объектов, то он может посылать команды на передачу сообщений объектам, не ожидая завершения ответа на предыдущую команду. Этим обеспечивается не только отсутствие пауз в формировании составного сообщения — ответа на отдельную команду, но и создание непрерывного потока таких ответов на поток команд. ♦

1.3. Устранение конфликтов доступа к ресурсу

Применим результаты, полученные в п. 1.1 и 1.2, для решения задач устранения конфликтов доступа к ресурсам в системах, использующих беспроводные связи.

Пусть группа объектов по индивидуальному для каждого объекта-источника беспроводному оптическому каналу одновременно пытается передать сообщения одному и тому же объекту-приемнику. Требуется устранить конфликт, упорядочив их передачи.

Предполагается, что сообщения имеют равную длину (пакет). Использование сообщений переменной длины рассмотрено в работах [14, 15].

Для устранения конфликта доступа совместно с объектом-приемником поместим устройство разрешения конфликтов доступа (УРКД), которое обнаруживает запросы доступа, синхронизирует их, разрешает объектам самостоятельно определить порядок обслуживания запросов, осуществляет обмен сообщениями. Для уменьшения энергопотребления объекта-приемника взаимодействие его с источниками должно осуществляться за счет энергии источников.

Предполагается, что объекты системы распределены на небольшие расстояния ~10 м и обмениваются оптическими сигналами на предельно высоких для настоящего времени скоростях ~1011^1012 бит/с.

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

Общая схема взаимодействия объектов следующая. Каждый объект соединен с УРКД любого другого объекта трактом, состоящим из трех беспроводных оптических каналов /1, /2, /3. Тракты создаются по мере необходимости, как показано в п. 1.1. Каждый канал обеспечивает два пути распространения сигнала — от источника к УРКД (прямые пути) и от УРКД к источнику (обратные пути). Обозначим прямые пути как/11, /21, /31, обратные — как/12, /22, /32. По трем каналам /х, /2, /3 оптические сигналы передаются на трех частотах /х, /2, /3 соответственно. В зависимости от используемого пути сигналы обозначим так же, как эти

пути: /ll, ^ /31 и ^ /32.

По путям /11 объекты посылают в УРКД импульсные сигналы для определения удаленности

объектов от УРКД в соответствии с п. 1.2. По пути /21 объект, которому УРКД предоставит право передачи сообщения, передаст двоичные сигналы сообщения. По пути /31 каждый объект посылает непрерывный сигнал /31; УРКД принимает сигналы /21 и при появлении каждого приходящего импульсного сигнала с помощью модулятора прерывает непрерывные сигналы /32 — возвращаемые ретрорефлектором сигналы /31 источников. В результате все объекты получат передаваемое по пути /21 в объект-приемник сообщение. Отметим, что УРКД может также модулировать сигналы /32 собственными сигналами и сигналами объекта-приемника.

Для обмена информацией используются импульсные сигналы трех длительностей V, а, т, которые связаны соотношением V < а < т. Далее длительности указываются перед именем сигнала.

При подаче управляющего электрического сигнала модулятор в УРКД одновременно модулирует все сигналы /32 и только их.

Устранение конфликтов доступа. Если приемник обнаруживает конфликт, то его УРКД выполняет следующий алгоритм разрешения конфликта доступа.

Шаг 1. Если объект-приемник обнаруживает конфликт, то он одновременно прерывает все возвращаемые источникам с помощью УРКД сигналы /32 одиночным синхросигналом т/32. Этот синхросигнал все объекты воспринимают как начало процесса устранения конфликта.

Шаг 2. Получив синхросигнал т/32, каждый объект, которому требуется передать сообщение, посылает в УРКД приемника импульс v/21 с задержкой ку, где к — порядковый номер объекта. Источники действуют, как указано в п. 1.2, и в результате все объекты создадут единое сообщение 51 длительностью пу, содержащее импульсы v/21 в количестве, равном числу объектов, запрашивающих доступ к приемнику. Здесь п — максимально возможное число объектов, которым может потребоваться доступ к УРКД, V — длительность сигнала сообщения.

Получая в сообщении 51 сигналы у/21, УРКД ретранслирует их всем объектам, прерывая сигналы /32 каждым сигналом у/21. Этим УРКД создает сообщение 52. Приемник или его УРКД, обнаружив завершение сообщения 51, посылает синхросигнал а/32, прерывая сигналы /32, как при посылке синхросигнала т/32 на шаге 1.

Шаг 3. В ответ на синхросигнал а/32 объекты посылают, используя сигналы /2Х, свои сообщения

приемнику с временным сдвигом, соответствующим порядковому номеру передачи. В результате в УРКД поступит состоящее из этих сообщений общее сообщение ¿3, длительность которого также не зависит от расположения объектов. Затем УРКД направляет сообщение ¿3 своему объекту-приемнику и ретранслирует всем тем объектам, которые создали сообщение ¿3.

Для сигнализации объектам о завершении устранения конфликта приемник повторно посылает сигнал т/32.

Конфликт устранен. Дальнейшие детали приведены в работах [14, 15].

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

Между моментом посылки источником сигнала запроса и получением от приемника сигнала разрешения передачи существует задержка г = 2Ь/с, где Ь — расстояние между источником и приемником, с — скорость света. Для взаимодействующих устройств, взаимно удаленных на расстояние порядка 10 м г ~ 1 мкс.

Если обмен сигналами происходит в наносекун-дном диапазоне и сообщение содержит

~103 бит,

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

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

Введем дополнительное средство — асинхронный анализатор конфликта, состоящий из устройств, добавляемых в источник и УРКД приемника. В источник сообщений добавляются передатчики сигналов частот / и /5 и фотоприемники

этих сигналов. Сигналы / используются для передачи сообщений источника приемнику подобно сигналам /т Сигналы/5 источник и приемник используют подобно сигналам /3. В УРКД приемника сообщений добавляется ретрорефлектор, фотоприемник сигналов / и модулятор сигналов /5.

Будем передавать сообщения следующим способом. Любой источник передает сообщение приемнику, не ожидая разрешения от УРКД приемника. Для этого источник посылает одновременно в ретрорефлектор сигналы сообщения/ и сигнал /5. Ретрорефлектор возвратит источникам посланные ими сигналы /А, что позволит источнику проверить наличие искажений в посланном приемнику сообщении. При этом в приемнике фотоприемник сигналов / при получении сигналов одновременно от нескольких источников (наличие конфликта) воспринимает их как общий сигнал и модулирует своим выходным сигналом сигнал /5, возвращаемый ретрорефлектором источникам. Сигналы / и /5 возвратятся от приемника к источнику, и через интервал времени Т источник обнаружит наличие конфликта по несовпадению последовательностей сигналов / и /5. Для интервала времени Т соблюдается условие: 2Ь/с < Т< 2Ь/с + Т*, где Т* — длительность сообщения источника.

Если источник обнаруживает конфликт, то он переходит к его устранению по рассмотренному ранее способу и ожидает прихода синхросигнала т/32 от УРКД приемника.

Отметим, что при реализации способа можно не включать дополнительный ретрорефлектор. Достаточно на выходе имеющегося ретрорефлектора поместить модулятор возвращаемых приемникам сигналов /5.

Устранение конфликтов на основе децентрализованного приоритетного управления (ДПУ). Данное управление было разработано для детерминированного разрешения конфликтов источников сообщений при доступе к каналу связи [16], но оно применимо и для решения других задач выделения лидера из группы объектов. Исходный вариант ДПУ состоит в следующем. Пусть все объекты — претенденты на лидерство перенумерованы, и каждый из них передает значение старшего разряда своего номера в среду, за состоянием которой наблюдают все остальные претенденты. Объекты обнаруживают отсутствие в среде передачи сообщений и передают старший разряд своего порядкового номера. После этого каждый объект наблюдает за средой в течение интервала времени, равному двойному времени прохода сигнала по среде. По завершении этого интервала времени объект, пославший 0 и обнаруживший в среде 1, прекра-

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

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

1.4. Выполнение широковещательных и групповых взаимодействий объектов

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

Источники заявок на групповые или широковещательные взаимодействия обращаются к центру, который разрешает конфликт доступа, если он возникает, и ретранслирует последовательность сообщений — заявок на связь всем объектам системы. Каждая заявка содержит имя группы приемников и имя источника заявки. Получив заявку, объекты-приемники устанавливают парные связи с источником заявки, и далее конфликт разрешается, как при парных связях. Такую структуру можно реализовать по-разному. Наиболее близка к изложенным решениям следующая структура.

Все объекты следят за центром, посылая непрерывные сигналы частот/ и /5. Расположение центра источникам известно. Центр все заявки, получаемые сигналами частот /2 и ретранслирует объектам, модулируя их сигналы / и /5 соответственно. Из этих сигналов объекты выделяют адресованную им информацию и устанавливают требуемые парные связи с источником заявки.

Такая структура не требует новых технических решений, но она энергетически затратная, так как все объекты непрерывно посылают сигналы /3 и /5 в центр. Более экономична структура, когда центр дополнительно содержит источник ненаправленных сигналов, который может генерировать импульсные оптические сигналы на двух частотах, отличных от частот /2 и или соответствующие радиосигналы. Эти сигналы принимают все объекты. Центр все получаемые сигналы частот /2 и / направляет в источник ненаправленных сигналов, который ретранслирует их всем объектам, используя собственные сигналы.

2. БЫСТРЫЕ РАСПРЕДЕЛЕННЫЕ ВЫЧИСЛЕНИЯ, АКТИВНЫЕ СООБЩЕНИЯ — ГРУППОВЫЕ ПРОГРАММЫ

В отличие от § 1, здесь рассматриваются оптические проводные связи между устройствами. Основная цель: расширить функциональность средств связи, дав им возможность выполнять также распределенные вычисления и управление.

2.1. Распределенные вычисления

Постановка задачи. Объекты, обрабатывающие данные, объединены последовательно так, что операнд — результат вычисления одного объекта — становится исходным данным для следующего по порядку подключения объекта. Набор вычислительных операций, выполняемых объектами, ограничен логическими операциями, определением max и min, арифметическими сложением, вычитанием, умножением. Требуется указанные распределенные вычисления выполнять без внесения дополнительной временной задержки по сравнению с временем перемещения операнда между объектами. ♦

Способы решения данной задачи разработаны давно и были реализованы с помощью средств электроники [17, 18], но, как показано в работе [19], наиболее эффективно применять оптоэлект-ронные средства. Это позволяет получить высокое быстродействие при существенном уменьшении энергопотребления устройств. Далее показано, какие дополнения следует ввести в описанные в литературе оптоэлектронные средства, чтобы их использовать для решения поставленной задачи. В качестве таких средств выберем оптические переключатели, разработанные в IBM [20—22]. Схематично такой переключатель представлен на рис. 3.

Управляемый электрическим сигналом m переключатель M имеет два входа и два выхода. Оптический сигнал поступает только на один из входов. Входы объединены и поступают на переключающий элемент, в качестве которого взят интерферометр Маха — Цандера.

При отсутствии электрического управляющего сигнала (m = 0) переключающий элемент соединен с верхним на рисунке выходом, при наличии

Рис. 4. Вычислитель/коммутатор

управляющего сигнала (т = 1) он соединен с нижним выходом. Устройство пассивное — при отсутствии управляющего сигнала переключатель можно рассматривать как участок оптической линии.

Размеры переключателя 100 х 200 мкм, скорость переключения 10 Гбит/с, энергия переключения 5 пДж/бит.

На основе такого переключателя предложен элемент, схема которого приведена на рис. 4 [23]. Он действует как вычислительное устройство и коммутатор (ВК).

Здесь квадраты — четыре переключателя М1 — М4, схема которых представлена на рис. 3. На каждый переключатель М' поступает электрический управляющий сигнал т.. Оптические сигналы поступают в ВК на два входа а и Ь. Перед входами расположены оптические ответвители 1, направляющие по линиям с и й сигналы в устройство управления ВК.

Сигнал, поступающий на вход а, обозначим как а+, соответственно для входа Ь как Ь+. Отсутствие сигнала обозначим как а— и Ь—. Комбинации распределения сигналов обозначим: а+ и Ь— как 1, а— и Ь+ как 0, а— и Ь— как 2, а+ и Ь+ — как С.

В табл. 1 в столбцах 2—5 приведены значения управляющих сигналов т. подаваемых на переключатели М. В столбцах 6 и 7 показано, на какие выходы ВК перейдут сигналы с входов при подаче заданного набора управляющих сигналов.

Действия в соответствии со строкой 1 таблицы приводят к соединению входов а и Ь с одноименными выходами, вторая строка дает перестановку на выходе. Из третьей строки таблицы видно, что при подаче т1 = т3 = 0, т2 = 1 и любом значении сигнала т4 сигнал, приходящий со входа а или Ь, будет далее передан на выход а. Четвертая строка: сигнал со входа а или Ь далее передаст на выход Ь.

Использование строк 5—8 таблицы дает аналогичные результаты для выходов а' и Ь' вместо выходов а и Ь.

Применим ВК для преобразования значений входящих двоичных сигналов. Воспользуемся приведенным ранее парафазным кодированием: «1» представлена сигналом только на входе а, «0» представлен сигналом только на входе Ь. Пусть на входы ВК поступает двоичный сигнал х. Тогда при выполнении первой строки таблицы на выходных линиях а и Ь появится х. Вторая строка таблицы дает на выходе инверсию сигнала х.

Третья строка любое значение х переводит в 1, четвертая строка — в 0. Строки 5—8 выполняют указанные выше операции при посылке сигналов на выходы а' и Ь, что приводит к коммутации двоичных сигналов и позволяет удалять сигналы из канала.

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

Пример 1. Пусть требуется к приходящему на вход ВК числу Х прибавить число У, хранящееся в устройстве, управляющем данным ВК. Число Х поступает в ВК, начиная с младших разрядов. Если значение разряда у. числа У равно 0, то ВК пропускает разряд х. числа X без изменения. Если у = 1, то значение у инвертируется. При переносе в следующий разряд его подготовку ВК выполнит за время прохождения сигнала х1 через ВК, и задержка разряда х1 не требуется.

Пример 2. ВК должен определить тах (X, У) и полученное значение передать на выход. Число Х поступает в ВК, начиная со старших разрядов. Если у. = 0, то ВК

Таблица 1

Коммутация в вычислителе/коммутаторе

№ т1 т2 т3 т4 Вход Выход

1 0 0 0 0 а (Ь) а (Ь)

2 1 1 0 0 а (Ь) Ь (а)

3 0 1 0 1/0 а (Ь) а (а)

4 1 0 1/0 0 а (Ь) Ь (Ь)

5 0 0 1 1 а (Ь) а' (Ь)

6 1 1 1 1 а (Ь) Ь' (а)

7 0 1 1 1/0 а (Ь) а' (а)

8 1 0 1/0 1 а (Ь) Ь' (Ь)

9 0 0 0 1 а (Ь) а (Ь)

10 0 0 1 0 а (Ь) а' (Ь)

Рис. 5. Расширенный выключатель/коммутатор

пропускает разряд х. без изменения. При этом, если X = 1, то ВК пропускает остальные разряды Х без изменения, а если = 0, то ВК с разрядом х1 -1 действует как с разрядом х. Здесь также задержка не возникает. Таким образом, эти вычисления — конвейерные с нулевой задержкой на обработку данных. ♦

Рассмотрим небольшое дополнение к ВК, расширяющее его возможности как переключателя между выходами в направлениях а, Ь и а', Ъ \ Пусть в начале сообщения есть указание, что его надо направить не по направлению а, Ь, а по а', Ь'. Тогда ВК проанализирует заголовок сообщения и выполнит переключение, но заголовок при этом выйдет в направлении а, Ь, что нежелательно. Дополним ВК двумя оптическими переключателями на интерферометре Маха — Цандера, как показано на рис. 5.

Здесь узлы И1—ИА — это ВК, из которого ответ-вители с и й удалены и перемещены к входам а, Ь. Непосредственно за ответвителями расположены два оптических переключателя, которые пропускают сигналы в ВК или выводят их из системы. В результате переключения заголовок поступает только в объект, управляющий действиями ВК, и не проходит в ВК. Аналогично можно вывести из системы другие произвольные части сообщения.

Это переключение полезно для коммутации по методу «червоточина» ^огшЬоЬ), где сообщение с указанным в заголовке перечнем путей проходит через последовательность распределенных переключателей, выбирающих дальнейший путь сообщения. Устройство (см. рис. 5) несложное и быстро выполняет такие переключения на двоичном дереве.

Разомкнутый канал связи. Для объектов, использующих ВК, целесообразно применять структуру связи, показанную на рис. 6. Здесь связыва-

ющий ВК канал имеет три ветви Вр В2 и В3, каждая состоит из линий а и b (на рис. 6 не показаны). К первой и второй ветвям подключены BK объектов Р. Из третьей ветви с помощью пассивных ответвителей О оптического сигнала объекты считывают сигналы. Каждый объект содержит два экземпляра BK (включенных в ветви В1 и В2 соответственно). Имеется генератор Г непрерывного оптического сигнала, посылаемого в линию а канала через формирователь Ф дискретных оптических сигналов.

Структура (см. рис. 6) представляет собой пассивную оптическую сеть, в которой имеется только один активный источник сигнала. Пассивные оптические сети (passive optical networks — PON) в настоящее время широко применяются для передачи телевизионного сигнала [24], эта техника может быть полезна и здесь.

Любой объект может изменить сообщение в канале, используя ВК в ветвях В1 и В2. Наблюдая за ветвью В3, каждый объект обнаружит сообщение с изменениями, выполненными всеми объектами. Такой S-образный канал назовем S-каналом (он также напоминает канцелярскую скрепку — staple).

Если об изменениях в сообщении достаточно информировать только объект, находящийся в начале ветви В1, то ветвь В3 не нужна. Такой канал, состоящий только из ветвей В1 и В2 — U-канал.

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

Замечание. Для связи между макрообъектами приемлемы переключатели большего размера, чем рассмотренные; для модуляции каждого передаваемого бита необходимы предельно высокие скорости переключения. Примером допустимых значений параметров служит оптический переключатель с длиной участка переключения 81 мм и временем переключения 0,47 пс [25]. ♦

Так как для вычисления в цепочку объединяется много объектов, то решения упрощаются при

Рис. 6. Разомкнутый канал

уменьшении потерь энергии сигнала. В частности, в работе [26] описаны оптические каналы для связей внутри кристалла с потерями менее 0,1 дБм 1.

2.2. Групповые команды и групповые программы (активные сообщения)

Назовем сообщение активным, если оно содержит групповую команду или групповую программу. Суть понятий «групповая команда» и «групповая программа» очень просто изложить, используя понятие выполняемых без задержки распределенных вычислений (см. п. 2.1).

Пусть активное сообщение содержит поле с именами объектов, которым сообщение адресовано, поле с кодом операции и поле данных. При приходе сообщения к активному объекту код операции заставляет объект без задержки сообщения изменять содержимое поля данных (с учетом состояния объекта). Модифицированная объектом команда перемещается к следующим объектам, неся им информацию о действиях объектов-предшественников. Если используется канал, показанный на рис. 6, то все объекты получают общие сведения о действиях всех объектов. Также можно использовать результаты § 1: последний объект в последовательности, используя беспроводную связь, пошлет широковещательное сообщение объектам. Сообщение с такими возможностями представляет собой групповую команду.

Групповая команда также имеет возможность изменять состояние объектов, что повлияет на последующие действия объекта, в частности, на реакцию объекта на другие групповые команды. Воздействие групповой команды может заставить объект стать инициатором распределенных действий. При этом возможны конфликты с другими объектами-инициаторами действий, которые разрешимы с помощью способов, предложенных в § 1.

Теперь рассмотрим активное сообщение, содержащее несколько полей с кодами операций и несколько полей данных. Такая конструкция является групповой программой. Каждый код операции в ней действует как в групповой команде со следующим отличием: он может указать объекту на любую совокупность полей данных в сообщении, к которым объект должен применить код этой операции. Применение изложенной общей схемы позволяет создавать конкретные, существенно различающиеся по назначению операции. Например, операция условного перехода заставит объект с учетом его состояния и результатов действий других операций групповой программы выполнить, пропустить или изменить заданные операции групповой программы.

Групповые команды и программы были предложены в начале 1980-х гг. в ИПУ РАН [17] и ориентированы на повышение реактивной способности систем управления со многими активными объектами.

Заметим, что в настоящее время в мире проводятся исследования сетей, названных активными (Active Networks). Назначение этих сетей — объединить взаимно удаленные узлы, связанные, например, через Интернет, в которых фрагменты сообщения действуют как команды. Эти команды инициируют действия в узлах сети, направленные на то, чтобы сделать протоколы сетей адаптируемыми под индивидуальные особенности и требования передаваемых сообщений. Такие работы начаты во второй половине 1990-х гг. [2] и активно продолжаются сейчас во многих организациях, регулярно проводятся конференции по этой тематике. Взаимодействия в активных сетях отличаются от описанных выше групповых взаимодействий сферой применения и возможностями.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Групповые взаимодействия и соответствующие технические средства, разработанные в ИПУ РАН, также активны, но они ориентированы на предельно быстрое выполнение команд сообщения с преобразованием содержимого сообщения без его задержки. Групповые программы могут передаваться следующим способом через активные сети. Пусть сообщение, передаваемое по активной сети, является групповой программой. При поступлении такого сообщения в конкретную систему его содержимое без дополнительного анализа передается объектам системы и начинает действовать, а полученный результат отправляется активной сетью в другие системы.

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

3. ПРИМЕРЫ ПРИМЕНЕНИЯ ПРЕДЛОЖЕННЫХ РЕШЕНИЙ2

Пример 1. Решение вычислительных задач с применением совмещения вычислений с передачей данных рассмотрено в статье [27] и цитированных в ней публикациях.

2 На опубликованные ранее примеры даются только ссылки.

В табл. 2 для ряда задач показано полученное ускорение вычислений по сравнению с другими известными методами. Здесь п — число компонентов в задаче (размерность матрицы, число членов уравнения, полинома и др.). В строках таблицы для заданного числа процессоров показано время, требуемое для выполнения вычисления. Время выражено в условных единицах Т. Сравниваются наиболее быстрый из известных методов с методом совмещения передачи данных и распределенного вычисления.

Пример 2. Организация рефлективной памяти — распространенная задача: об изменении данных в любом компьютере системы требуется гарантированно информировать все компьютеры системы. В статье [28] для этого применены решения § 2 и показано, что с их помощью улучшаются параметры системы, в том числе отказоустойчивость и потребление энергии в ВК.

Пример 3. Повышение отказоустойчивости бортовых распределенных систем типа «ведущий (лидер) — ведомые», где устройства объединены двумя оптическими кольцевыми каналами [29]. Применение решений § 2 обеспечивает доставку ведомым устройствам команды ведущего при отказах в приемо-передатчиках части ведомых устройств.

Пример 4. Задача о наименьшем отсутствующем числе: требуется отыскать наименьшее натуральное число, отсутствующее в заданном конечном множестве натуральных чисел [30]. Покажем применение этой задачи для

Таблица 2

Ускорение распределенных вычислений

Время вычисления

Число

Вид операции Метод Обычно процес-

совмеще- ггр Л/ГРТТРР соров

ния ни жипии

Распределен- Тп Tn\og2n п2

ное умноже- Т Т(Г^2п1 + 1) п3

ние матриц

Алгебраичес- Тп Тп\о%2п п(п+1)

кие уравнения,

метод Гаусса —

Жордана, на-

хождение глав-

ных элементов

Вычисление Т Т \og2n п

значения поли-

нома

Вычисление 2Т 2 T\og2n п

значения про-

изведения

полиномов

Свертка Т Т \og2n п

Дискретное Тп Tn\og2n п2

преобразова-

ние Фурье

Сортировка Т(Гп/21 + 1) Тп(^2п) п

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

Пусть объекты цифровой системы перенумерованы (номера объектов возрастают по мере удаления от лидера) и связаны оптическим каналом, состоящим из двух линий в соответствии с § 2 настоящей статьи. Требуется найти ближайший к лидеру объект, не отвечающий на команду лидера.

В команде лидера последовательно размещены три поля А, В и С, размер каждого из полей А и С достаточен для помещения номера объекта, поле В однобитное, исходно содержащее нуль. Каждый объект помещает в поле А свой порядковый номер и одновременно читает и запоминает номер, приходящий от предшествующего объекта в этом же поле А. Если он отличается не на единицу и при этом В = 0, то только в этом случае объект устанавливает В = 1 и помещает запомненный номер в поле С. В результате все другие отказы будут проигнорированы (так как В = 1), и лидер в поле С получит номер работоспособного числа, непосредственно предшествующего ближайшей к лидеру цепочке отказавших объектов.

Эта задача применима и для беспроводного соединения объектов. Воспользуемся синхронизацией из § 1. Каждый объект в ответ на команду лидера помещает сигнал в выделенное ему место в создаваемом объектами общем сообщении. В результате при обмене единственным сообщением объекты получают сведения обо всех отказавших объектах.

Пример 5. Циклическое вычисление в кольцевом канале («цифровой синхротрон»). Далее используются многократные «обороты» по кольцевому каналу сообщения, обрабатываемого без задержки группой объектов. Это несколько напоминает работу ускорителя — синхротрона, где заряженные частицы, совершая ряд оборотов в устройстве, увеличивают свою энергию и затем выводятся в заданном направлении.

Обратимся к рис. 6, оптические сигналы сообщения — групповой программы из ветви В2 принимает формирователь Ф, запоминает в своей электронной памяти и вновь направляет в ветвь В1, чтобы обеспечить многократное перемещение сообщения по кольцу В1, В2. Объекты, используя групповые команды сообщения, постепенно преобразуют исходное сообщение в требуемый результат.

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

Согласование возможности передачи фрагмента и саму передачу можно выполнить, используя решения § 1 статьи. В частности, пусть объект имеет показанный в § 1 демультиплексор, с его помощью объект устанавливает соединение с объектом-приемником, получает разрешение на передачу и передает фрагмент.

Одно из возможных применений такой схемы вычислений — быстрое нахождение наилучшего или наихудшего результата в эвристических задачах, например, в генетических алгоритмах.

Пример 6. Клеточные автоматы с дальними связями, сети. В клеточных автоматах все клетки организованы одинаково и имеют небольшое фиксированное число связей только с соседними клетками. Они служат удобным механизмом при моделировании и исследовании непрерывных физических сред. Подобную организацию имеют эффективные вычислительные средства — систолические структуры. Но многие системы реального мира имеют сложную сетевую структуру: активно используются дальние связи, узлы сети имеют различную внутреннюю организацию, у узлов число связей с другими узлами не одинаково. Это характерно для социальных сетей, экономических структур, систем управления взаимно удаленными объектами. Регулярные механизмы функционирования клеточных автоматов усложняют их применение для моделирования и исследования таких нерегулярных сетей, и применяются менее регулярные сетевые структуры.

Механизмы настоящей статьи более соответствует приведенным сетевым задачам — при использовании клеточных автоматов эти механизмы позволяют придать клеточным автоматам более гибкую сетевую организацию: ввести дальние связи и неоднородность клеток. Дальние связи можно изменять очень быстро, и такой автомат является системой с полностью динамически перестраиваемой структурой. Сложно организовать переменное и динамически изменяемое число связей в кажждой вершине, но пример 5 показывает, как это делается путем динамического формирования циклической структуры с переменным числом внешних связей. Все предлагаемые механизмы, как показано, технически реализуемы.

ЗАКЛЮЧЕНИЕ

Отметим основные результаты.

Предложены базовые системообразующие механизмы — скоростные механизмы групповых взаимодействий активных объектов:

— механизмы установления непосредственных (без промежуточных звеньев коммутации) связей между отдельными источниками и приемниками сообщений и их группами;

— быстрые механизмы устранения конфликтов между взаимодействующими объектами при обращении группы активных объектов к общему ресурсу;

— механизмы синхронизации совместных действий активных объектов;

— механизмы распределенных вычислений, проводимых взаимодействующими объектами без задержки сообщений, над которыми выполняются вычисления;

— групповые программы (активные сообщения) — механизмы быстрого распределенного управления действиями объектов системы, формируемого группой активных объектов.

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

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

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

Приведенные в статье механизмы взаимодействия основаны только на исследованиях, выполненных в Институте проблем управления РАН, и поэтому носят частный характер. Однако, так как именно быстрые механизмы взаимодействия активных объектов позволяют получить высокую скорость реакции системы на события и повысить скорость выполнения распределенных вычислительных алгоритмов, то полезен поиск других решений в этой области с участием в исследованиях разработчиков алгоритмов управления и программ, разработчиков архитектур цифровых систем и разработчиков элементной базы.

ЛИТЕРАТУРА

1. An architectural blueprint for autonomic computing. — Autonomic Computing White Paper / Third Edition. — Hawthorne, N.-Y.: IBM, 2005. — P. 32.

2. Tennenhouse D.L., Wetherall D.J. Towards an Active Network Architecture // Computer Communication Review. — 1996. — Vol. 26, N 2. — 1996. — С. 5—18.

3. Want R., Perling T, Tennenhouse D.L. Comparing autonomic and Proactive Computing // IBM Systems Journal. — 2003. — Vol. 42, iss. 1. — P. 129—135.

4. Бурков В.Н., Новиков Д.А. Теория активных систем: состояние и перспективы. — М.: СИНТЕГ, 1999. — С. 128.

5. Стецюра Г.Г. Механизмы взаимодействия объектов сетевых цифровых систем // Управление большими системами. — 2010. — Вып. 30.1. — С. 337—350. URL: http:// ubs.mtas.ru/upload/library/UBS30121.pdf (дата обращения 20.08.2013).

6. Стецюра Г.Г. Уменьшение сложности распределенного полного коммутатора для параллельных систем обработки данных // Автоматика и телемеханика. — 2010. — № 5. — С. 147—154.

7. Briggs R.M., Pryce I.M., Atwater H.A. Compact silicon photonic waveguide modulator based on the vanadium dioxide metal-insulator phase transition // Optics Express. — 2010. — Vol. 18, N 11. — P. 11192—11201. URL: http://dx.doi.org/10.1364/ 0E.18.011192 (дата обращения 20.08.2013).

8. Rabinovich W.S., Goetz P.G., Mahon R., et al. 45-Mbit/s cat's-eye modulating retroreflectors // Optical Engineering. — 2007. — Vol. 46, N 10. — P. 1—8.

9. Rabinovich W.S., Meehan T.J, Katzer D.S., et al. Modulating Retroreflector Implementation of MIL-STD-1553 Protocol with Free-Space Optics P.G.G. // Proc. of 2003 IEEE Aerospace Conf. — Paper N 1559. URL: http://www.nrl.navy. mil/fpco/pubs/03-1226-0334.pdf (дата обращения 20.08.2013).

10. Голубев В.Г., Каплянский А.А. Управляемые трехмерные фотонные кристаллы на основе нанокомпозитов опал-полупроводник. URL: http://85.142.23.144/packages/mifi/ 45B8BA7D-22B8-4275-A73A-BC1C89DB981B/1.0.0.0/11.pdf (дата обращения 20.08.2013).

11. Стецюра Г.Г. Синхронизация взаимодействия цифровых устройств с помощью центра ретрансляции сигналов // Автоматика и телемеханика. — 2012. — № 5. — С. 111—124.

12. Eidson J.C. Measurement, Control, and Communication Using IEEE 1588. — London: Springer, 2006. — P. 283.

13. IEEE Std 1588—2008 (Revision of IEEE Std 1588—2002) / IEEE Instrumentation and Measurement Society. — 2008. — P. 269.

14. Стецюра Г.Г. Способ устранения конфликтов доступа // Журнал радиоэлектроники. — 2012. — № 5. (Электронное издание). URL: http://jre.cplire.ru/jre/may12/7/text.pdf (дата обращения 20.08.2013).

15. Стецюра Г.Г. Исключение задержки в передаче сообщений при устранении конфликтов доступа // Там же, № 8. URL: http://jre.cplire.ru/jre/aug12/9/text.pdf (дата обращения 20.08.2013).

16. Котюжанский Г.А., Нисневич Л.Б, Стецюра Г.Г. Децентрализованное приоритетное управление в одноканальной системе обмена данными // Изв. АН СССР. Техническая кибернетика. — 1970. — № 6. — С. 115—119.

17. Прангишвили И.В., Подлазов В.С., Стецюра Г.Г. Локальные микропроцессорные вычислительные сети. — М.: Наука, 1984. — С. 176.

18. Стецюра Г.Г. Методы совмещения вычислений и передачи данных в мультипроцессорных системах и локальных сетях. — М.: ИПУ РАН, 2005. — 86 с. URL: http://www. ipu.ru/labs/lab31kom/ggs.zip (дата обращения 20.08.2013).

19. Подлазов В.С., Стецюра Г.Г. О потребности в новых логических элементах // Журнал радиоэлектроники — 2009. —

№ 6. (электронное издание). URL: http://jre.cplire.ru/jre/ jun09/2/text.pdf (дата обращения 20.08.2013).

20. Green W.M., Rooks M.J, Sekaric L., Vlasov Y.A. Ultra-compact, low RF power, 10 Gb/s silicon Mach-Zehnder modulator // Optics Express. — 2007. — Vol. 15, N 25. — Р. 17106—17113.

21. Van Campenhout J., Green W.M.J., Assefa S., Vlasov Y.A. Low-power, 2x2 silicon electro-optic switch with 110-nm bandwidth for broadband reconfigurable optical networks // Optics Express. — 2009. — Vol. 17, N 26. — P. 24020—24029.

22. Vlasov Y.A. CMOS Integrated Silicon Nanophotonics: Enabling Technology for Exascale Computational Systems / Semicon. Tokyo. 2010. URL: http://www.research.ibm.com/photonics/ publications/SEMICON_Tokyo_12_1_2010.pdf (дата обращения 20.08.2013).

23. Стецюра Г.Г. Интерферометр Маха — Цандера как средство выполнения быстрых распределенных вычислений. Журнал радиоэлектроники. — 2013. — № 1. (Электронное издание). URL: http://jre.cplire.ru/jre/jan13/3/text.pdf (дата обращения 20.08.2013).

24. Петренко И. И, Убайдуллаев Р. Р. Пассивные оптические сети PON. Часть 1. Архитектура и стандарты // Lightwave Russian Edition. — 2004. — № 1. — C. 22—28.

25. Ponmalar S, Sundaravadivelu S. Design of ultra fast 2x2 electro-optic polymer waveguide switch for protection in intelligent optical networks // J. Sci. Industrial Res. Jan. — 2011. — Vol. 70. — Р. 36—40.

26. Lee H, Chen T, Li J., Painter O, Vahala K. J. Ultra-low-loss optical delay line on a silicon chip. Nature Communications. —

2012. — Vol. 3, N 5. — P. 1—11. URL: www.nature.com/ ncomms/journal/v3/n5/full/ncomms1876.html (дата обращения 20.08.2013).

27. Стецюра Г.Г. Совмещение вычислений и передачи данных в системах с коммутаторами // Автоматика и телемеханика. — 2008. — № 5. — С. 170—179.

28. Соколов В.В., Стецюра Г.Г. Организация оптической связи узлов рефлективной памяти // Датчики и системы. —

2013. — № 8. — C. 32—38.

29. Стецюра Г.Г. Способ устранения отказов в оптических средствах обмена данными // Автоматика и телемеханика. 2013. — № 6. — С. 165—174.

30. Берд Р. Жемчужины проектирования алгоритмов. Функциональный подход. — М.: ДМК, 2013. — С. 330.

Статья представлена к публикации членом редколлегии чл.-корр. РАН П.П. Пархоменко.

Геннадий Георгиевич Стецюра — д-р техн. наук, гл. науч. сотрудник, Институт проблем управления им. В.А. Трапезникова РАН, г. Москва, ® (495) 334-78-31, И stetsura@ipu.ru.

ВЫСШАЯ ШКОЛА ЭКОНОМИКИ

НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ

The Second international Conference on information Technology and Quantitative Management, ITQM'14 Moscow, Russia, Э—5 June, 2014

Более подробную информацию см. на сайте http://itqm2014.hse.ru, е^ай: itqm@hse.ru.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.