Научная статья на тему 'Распределённый алгоритм системного взаимного информационного согласования в многокомплексных вычислительных системах'

Распределённый алгоритм системного взаимного информационного согласования в многокомплексных вычислительных системах Текст научной статьи по специальности «Математика»

CC BY
174
25
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МНОГОПРОЦЕССОРНЫЕ СИСТЕМЫ / MULTIPROCESSOR SYSTEMS / РЕПЛИКАЦИЯ ЗАДАЧ / TASK REPLICATION / ОТКАЗОУСТОЙЧИВОСТЬ / ВЗАИМНОЕ ИНФОРМАЦИОННОЕ СОГЛАСОВАНИЕ / MUTUAL INFORMATION AGREEMENT / FAULT-TOLERANCE

Аннотация научной статьи по математике, автор научной работы — Ашарина Ирина Владимировна

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

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

The distribution algorithm for the system mutual informative agreement in multicomplex processor networks

The method for constructing the distributed algorithm of the system mutual informative agreement in multi-complex processor networks is considered. The aim of the algorithm is to ensure the system mutual informative agreement in case of some admissible Byzantine malfunctions

Текст научной работы на тему «Распределённый алгоритм системного взаимного информационного согласования в многокомплексных вычислительных системах»

- Т2 = £ w2q¡t2q¡ , где qi - номер диспетчерского участка на полигоне, п2 - число участков на

полигоне, t2q¡ - время, в течение которого руководитель может прибыть и присутствовать на месте ЧС и ТП, w2q¡ - частота возможных ЧС и ТП, требующих присутствия руководителя полиго-

I п2

на на месте ^ытая определяемая выражением w2q¡ = (1щ.ущащ Рщ ) £ Рщ , где 1Щ -

/ 41 =1

длина участка, уг% - интенсивность движения на одном пути участка (число транспортных средств, проходящих по одному пути участка в единицу времени), аг% - коэффициент, учитывающий число путей на участке, /Зг% - коэффициент, отражающий состояние дороги (железнодорожного полотна) на участке;

- Тг3 = £ wqtq¡ , где qi - номер инспектируемого объекта в рассматриваемом полигоне, п3 -

^=1 1 1

число инспектируемых объектов, wq¡ - регламентированная частота посещения объекта, 3 -

время, затрачиваемое на посещение объекта.

Процедуры формирования показателей сложности управления движением на основе выражений (1-3) используются при решении задачи определения границ полигонов управления движением в математической модели оптимизации структуры системы управления крупномасштабной транспортной корпорации [3].

Литература

1. Еналеев А.К., Цыганов В.В. Формирование полигонов управления движением: материалы международной конференции // Информационные технологии в науке, социологии и бизнесе: материалы конференции XLI-ой Международной конференции и XI Международной конференции молодых ученых IT+SE'13. Ялта-Гурзуф. 2013. С 54-56.

2. Еналеев А.К., Цыганов В.В. Полигоны информационного управления в больших социальных и экономических сетях // Информационные войны. 2013. № 4. С. 62-68.

3. Белый О.В., Малыгин И.Г., Цыганов В.В., Еналеев А.К., Савушкин С.А. Математические модели оптимизации структуры системы управления крупномасштабной транспортной корпорации // Транспорт: Наука, Техника, Управление. № 1. 2014. С. 7-16.

Estimation of the indexes of difficulty of traffic control

Oleg Viktorovich Beliy, Doctor of Technical Sciences, Professor, Director

Anver Kasimovich Enaleev, Leading researcher

Vladimir Viktorovich Tsyganov, Doctor of Engineering, Professor

Institute of Pproblems of Transport of Russian Academy of Sciences after N. S. Solomenko

Estimation of the difficulty of traffic control are defined for determining the boundaries of the regional traffic control polygons (for example, rail transport).

Keywords: control, hierarchy, transport, traffic, network, region, estimation of control difficulty.

УДК 62-501.72:681.326.7

РАСПРЕДЕЛЕННЫЙ АЛГОРИТМ СИСТЕМНОГО ВЗАИМНОГО

ИНФОРМАЦИОННОГО СОГЛАСОВАНИЯ В МНОГОКОМПЛЕКСНЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМАХ

Ирина Владимировна Ашарина, канд. техн. наук, доц. Тел.: 8 916 705 85 51, e-mail: [email protected] Национальный исследовательский университет НИУ МИЭТ

http://miet.ru

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

Ключевые слова: многопроцессорные системы, репликация задач, отказоустойчивость, взаимное информационное согласование.

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

Рассматривается многомашинная вычислительная система (МВС) или сеть цифровых вычислительных машин (ЦВМ) произвольной структуры. Между собой ЦВМ соединены двухто-

И.В. Ашарина ,

чечными дуплексными и/или симплексными каналами связи.

Структура системы известна. Моделью системы служит орграф, в котором вершины отображают ЦВМ, дуги - симплексные каналы связи, ребра - дуплексные каналы связи. В данной работе будем считать синонимами понятия ЦВМ и вершина, канал связи и дуга или ребро. В качестве модели неисправности ЦВМ рассматривается наиболее общий случай враждебной («византийской») неисправности [1].

При организации многозадачных параллельных вычислений в таких МВС и сетях ЦВМ одной из важнейших является задача достижения согласованности информации в различных ЦВМ системы в условиях возникновения допустимых неисправностей, формулируемая как проблема достижения взаимного информационного согласования (ВИС) [2]. Процесс ВИС представляет собой многораундный обмен индивидуальными согласуемыми значениями данных между пронумерованными с единицы до п ЦВМ. На основе результатов обмена в каждой р-й исправной ЦВМ вычисляется вектор согласованных значений (ВСЗ) &р = (в,в2,...,вп), где в (/ = 1, ..., п) - согласованное значение, соответствующее согласуемому значению 5{ 1-й ЦВМ. Этот вектор даже при условии наличия допустимого количества ц < п неисправных ЦВМ должен быть одинаковым во всех исправных ЦВМ, причем каждый элемент этого вектора, относящийся к исправной ЦВМ, должен совпадать с согласуемым значением этой ЦВМ.

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

Комплекс должен удовлетворять определенным структурным требованиям [3; 4], при которых каждая исправная ЦВМ комплекса может определить ВСЗ всех ЦВМ этого комплекса. Процесс достижения СВИС осуществляется в виде двух последовательных этапов: 1) внутрикомплексное информационное согласование (ВКИС) для каждого из комплексов, при котором во всех исправных ЦВМ комплекса вычисляется ВСЗ этого

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

В свою очередь, ВКИС также состоит из трех этапов [3]: 1) транспортировка согласуемого значения каждой неосновной вершины комплекса по непересекающимся маршрутам не менее чем в 2т+1 основных вершин этого комплекса; 2) выполнение т+1 раундов взаимообменов между основными вершинами комплекса в соответствии с алгоритмом взаимообменов и вычисление ВСЗ комплекса в каждой основной ЦВМ комплекса; 3) транспортировка ВСЗ комплекса в каждую неосновную вершину этого комплекса не менее чем из 2т+1 его основных вершин по непересекающимся маршрутам (пересекающимся только в этой неосновной вершине) и вычисление в этой неосновной ЦВМ достоверного значения ВСЗ данного комплекса.

Для обеспечения СВИС необходима синхронизация работы всех ЦВМ многокомплексной системы с точностью до пронумерованных квантов. Квант - это период обмена сообщениями между соседними ЦВМ, включающий возможные действия по обработке внутри некоторой ЦВМ сообщений, полученных в предыдущих квантах, формированию сообщений, подлежащих передаче из этой ЦВМ в данном и последующих квантах, и передача требуемых сообщений этого кванта из рассматриваемой ЦВМ к соседним ЦВМ. Собственное согласуемое значение 1-й ЦВМ системы, формируемое в первом кванте процесса СВИС, обозначим через 3}, где верхний индекс обозначает номер кванта, нижний - номер ЦВМ.

Квантовые действия по отношению к создаваемому выходному сообщению Би к,

бывают трех видов: 1) выходное сообщение не формируется, т.к. еще не получены все входные сообщения, элементы которых необходимы для его формирования, 2) выходное сообщение формируется, но не передается, т.к. передача его в данном кванте не предусмотрена индивидуальным алгоритмом, 3) выходное сообщение формируется и передается в этом же кванте или просто передается в этом кванте, если оно было сформировано ранее.

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

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

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

Собственное согласуемое значение отдельной ЦВМ является элементом сообщения. На этапе ВКИС согласуемое значение основной ЦВМ перед вторым этапом, кроме собственного согласуемого значения этой ЦВМ, также может содержать согласуемые значения некоторых неосновных ЦВМ, поступивших в нее на первом этапе. В этом случае это согласуемое значение называется составным.

Пусть требуется осуществить посылку согласуемого значения 1-й ЦВМ по пути, состоящему из двух передач: из ЦВМ I в ЦВМ у и затем из ЦВМ у в ЦВМ к. Согласуемые значения отдельных ЦВМ передаются между ЦВМ в процессе СВИС в составе сообщений Б" к, где и - номер кванта передачи, у - номер ЦВМ-передатчика, к - номер

ЦВМ-приемника [4]. При подготовке процесса СВИС для каждого сообщения Бик каж-

дого кванта в памяти каждой у-й ЦВМ-передатчика системы выделяется специально организованная область памяти ЦВМ - выходной контейнер К™1/ для передачи сообщения из ЦВМу в ЦВМ к, и входной контейнер Кп для приема сообщения из ЦВМ г

в ЦВМ у. Контейнер состоит из одной или более ячеек контейнера, предназначенных для хранения одного элемента сообщения. Состав и последовательность согласуемых значений (элементов) в сообщении определяют его формат. Кроме того, в каждой из ЦВМ, принадлежащей какому-либо комплексу, формируются контейнеры для хранения вектора согласованных значений данного комплекса (ВСЗК) - контейнер ВСЗК КкВСЗКА , содержащий ВСЗ комплекса к, вычисленный в ЦВМ г комплекса к, и вектора согласованных значений МВС (ВСЗМ) - контейнер ВСЗМ КВСЗМл = {©^,©п,©т,...}, содержащий ВСЗ всех комплексов к, I, т,... МВС, вычисленных в ЦВМ п комплекса I.

Каждый контейнер формируется в соответствии с выражениями конъюнкции, построенными в процессе работы алгоритмов А1 - А4 и преобразованными к виду дизъюнктивной нормальной формы (ДНФ) [5; 6], разбивающих МВС на требуемое количество комплексов с необходимыми степенями отказоустойчивости, выделяющих среды межкомплексных посылок и выполняющих ранжирование ЦВМ [5; 6], и однозначно соответствует номеру кванта, в котором планируется передача сообщения, размещаемого в этом контейнере. Размер каждого контейнера также определяется из анализа выражений и соответствует размеру сообщения.

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

Для каждой вершины, например, к, существует пучок простых входящих путей (простой путь - путь без повторяющихся вершин) таких, что каждый путь этого пучка исходит из некоторой начальной вершины, например, р, далее во внутренних вершинах не пересекается ни с каким другим путем этого пучка, проходит только в нужном орпод-графе (комплексе, среде межкомплексных посылок, и т.д.) и входит в конечную вершину к. В этом пути не имеется других вершин из данного орподграфа, кроме начальной и конечной вершин, и каждая вершина, кроме к, принадлежит одному и только одному из путей в пучке. Такой пучок называется входящим (сходящимся) пучком [5].

Терм представляет собой сочетание участков, причем каждый его участок принадлежит ДНФ входящей смежности одной из ЦВМ. В одном терме не может быть двух или более участков, соответствующих одной и той же ЦВМ. Каждый участок состоит из частей, каждая часть отображает отдельный путь в пучке, а все части участка отображают все пути этого пучка.

Системный орграф G задается в виде записи, элемент которой г:у, к, I, ...,р; означает, что г-я вершина орграфа соединена исходящей дугой с каждой из вершин множества {у, к, I, ..., р} и только с ними. Множество всех элементов полностью определяет структуру МВС. С помощью метода параллельного распространения обратных волновых фронтов [5] в МВС выделяются непересекающиеся комплексы в виде орподграфов с множеством основых вершин О1 = {р,q,г,...} для комплекса ф2 и т.д. до комплекса фп_1 включительно с указанной степенью отказоустойчивости для каждого из комплексов. В результате незадействованные в комплексах вершины составляют множество Бп, все или часть элементов которого могут входить в среды межкомплексных посылок.

Рассмотрим пример МВС, структура которой представлена согласно [5] следующим образом а: Ь, с, й,/; Ь: а, с, й; с: а, й, в,/, г, 8, ^ х, у; й: а, Ь, с, в, р, д, 8; в: Ь, йк/;/: а, с, в; р: й, д, г, 8, х; д: й, р, г, 8, I у; г: с, р, 8, t; 8: с, й, р, д, г, t; t: с, д, г, 8; х: с, р; у: с, д. Предположим, что в комплексе ф1 выделено множество основных вершин Оф = {а, Ь, с, й}

и множество неосновных вершин = {е, /}. Для каждой из основных вершин строятся

ДНФ входящих пучков в виде Ь ■ а ■ с■ а ■ ё ■ а, а ■ Ь ■ с■ е ■ Ь ■ ё ■ Ь , .... Для каждой из неосновных вершин строятся ДНФ входящих от основных вершин и исходящих пучков к неосновным вершинам: а■ /■ е■ с■ е■ ё■ е , а■ /■с■ /■ ё■ е■ /, е■ /■ а^е^Ь■е■ ё, /■ а■ /■ еЬ^/■с [5]. Для комплекса ф. О'у = {р, д,г, 5>, ы'у = {/}. Построение выражений происходит аналогично. Множество вершин среды межкомплексной посылки составляют вершины х и у К ф[ 0ф. = { х , у } . Пусть структура среды посылки фу ^ фi имеет вид р: ё, х; ц: ё, у; Х:

с; г: с; s: с, ё; х: с; у: с.

При построении контейнеров происходит следующий анализ термов сформированных выражений. На первом этапе алгоритма ВКИС происходит транспортировка согласуемого значения каждой неосновной ЦВМ комплекса, сформированного в первом кванте, в основные ЦВМ этого комплекса. Длина участка терма [5] соответствует количеству квантов, необходимых для осуществления этой транспортировки. Например, для транспортировки сообщения из ЦВМ / в ЦВМ Ь комплекса ф1, что соответствует участку / ■ е ■ Ь терма / ■ а ■ / ■ е ■ Ь ■ / ■ с, требуется два кванта. Количество ячеек контейнера соответствует количеству согласуемых значений в передаваемом сообщении, и это тоже следует из анализа сформированных выражений. Например, ЦВМ Ь, соответствующая основной вершине орподграфа комплекса ф1, кроме собственного согласуемого значения, будет согласовывать значения неосновных ЦВМ е и / , что следует из участков термов е ■ Ь и / ■ е ■ Ь ДНФ входящих пучков. При этом видно, что в начале второго кванта ЦВМ Ь должна получить значение е, а в начале третьего кванта -значение f. К началу второго этапа ВКИС в ЦВМ Ь должны быть сформированы выходные контейнеры по числу передаваемых сообщений (в нашем случае - три: для передачи сообщений в ЦВМ а, с и ё, каждый из контейнеров состоит из трех ячеек).

Количество основных ЦВМ определяет максимально возможное допустимое число неисправностей, а, следовательно, число раундов обмена. В процессе многораундно-го обмена в каждой из ЦВМ, участвующей в этом процессе, формируются входные и выходные контейнеры. В процессе СВИС ЦВМ выполняют вычисление ВСЗ. При этом согласуемые значения размещаются в параметрах функции вычисления ВСЗ, которой может быть функция мажорирования или другая, более сложная функция [1]. В последнем кванте многораундного обмена в каждой основной ЦВМ формируется контейнер ВСЗК для долговременного хранения вычисленного значения ВСЗК, а также выходные контейнеры, содержащие ВСЗК, сообщения из которых будут транспортироваться во входные контейнеры неосновных ЦВМ. Например, из анализа участков соответствующих термов следует, что из ЦВМ а ВСЗК последовательно транспортируется в ЦВМ е и /, при этом на передачу из а в / требуется один квант, и на передачу из / в е еще один квант. Т.о., в ЦВМ а формируется один выходной контейнер для передачи ВСЗК. Из аналогичного анализа следует, что в ЦВМ с формируются два выходных контейнера для транспортировки ВСЗК в ЦВМ е и/ но процесс транспортировки (передачи) занимает один квант.

В межкомплексном обмене могут быть задействованы ЦВМ, принадлежащие . Рассмотрим процесс согласования ВСЗК комплекса ф. в комплексе ф1. Из терма

р■ х■ с■ д■ у■ с4■ с■ г■ с■ s■ с следует, что межкомплексная посылка из вершин комплекса ф. в

вершину нулевого ранга [6] с комплекса ф1 требует два кванта, при этом в вершине с формируется пять входных контейнеров для хранения ВСЗК комплекса ф., контейнер

для хранения ВСЗМ и контейнеры для передачи ВСЗМ в ЦВМ ненулевого ранга в соответствии со структурой комплекса ф1. Аналогичные действия выполняются для остальных вершин комплекса ф . .

После завершения работы Алгоритма построения контейнеров выполняется Алгоритм связывания, в процессе которого определяются элементы сообщений, кото-

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

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

Вектор ВСЗС, сформированный в каждой исправной ЦВМ системы, является выходным параметром процедуры процесса СВИС в каждой ЦВМ системы.

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

Организация распределенного алгоритма СВИС в системе, взаимодействие индивидуальных алгоритмов отдельных ЦВМ, основанное на результатах выделения в сети комплексов и сред межкомплексного обмена, гарантируют, что при наличии допустимых неисправностей во всех комплексах и средах межкомплексных обменов в один и тот же момент времени (квант) завершится процесс СВИС такой, что в каждой исправной ЦВМ будет сформирован одинаковый вектор ВСЗС.

Литература

1. Pease M., Shostak R., Lamport L. Reaching Agreement in the Presence of Faults // J. Ass. Comput. Mach. 1980. V. 27. No. 2. P. 228-237.

2. Генинсон Б.А., Панкова Л.А., Трахтенгерц Э.А. Отказоустойчивые методы обеспечения взаимной информационной согласованности в распределенных вычислительных системах // АиТ. 1989. № 5. С. 3-18.

3. Ашарина И.В., Лобанов А.В., Мищенко И.Г. Взаимное информационное согласование в неполносвязных многомашинных вычислительных системах // АиТ. 2003. № 5. С. 190-199.

4. Лобанов А. В. Модели замкнутых многомашинных вычислительных систем со сбое- и отказоустойчивостью на основе репликации задач в условиях возникновения враждебных неисправностей // АиТ. 2009. № 2. С. 171-189.

5. Ашарина И.В., Лобанов А.В. Выделение комплексов, обеспечивающих достаточные структурные условия системного взаимного информационного согласования в многокомплексных системах // АиТ. 2014. № 6. С. 115-131.

6. Ашарина И.В., Лобанов А.В. Выделение структурной среды системного взаимного информационного согласования в многокомплексных системах // АиТ. 2014. № 6. С. 121-133.

The distribution algorithm for the system mutual informative agreement in multicomplex processor networks

Irina Vladimirovna Asharina, Candidate of Technical Sciences, Associate professor NIUMIET National Research University

The method for constructing the distributed algorithm of the system mutual informative agreement in multi-complex processor networks is considered. The aim of the algorithm is to ensure the system mutual informative agreement in case of some admissible Byzantine malfunctions.

Keywords: multiprocessor systems, task replication, fault-tolerance, mutual information agreement.

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