Регулярные топологии в микропроцессорных системах и сетях ЭВМ
Л.Ф. Борисова
Электромеханический факультет МГТУ, кафедра электрооборудования судов
Аннотация. Использование формализованных процедур описания топологий является экономичным методом задания структуры сети и эффективным способом решения на этой основе разнообразных задач в области вычислительных систем и сетей связи. В регулярной топологии существенно упрощаются процедуры определения путей. Показаны методы формализованного описания регулярных топологий микропроцессорных систем и сетей ЭВМ. Предложен простой и экономичный метод матричного представления гиперграфов. Предлагается использовать графы кодовых пересечений для формализованного описания сетевых топологий.
Abstract. The use of the formalized procedures of topologies' description is an economical method of network structure definition and efficient way of solution of various problems in the sphere of computing systems and communication nets. The procedures of ways' determination are greatly simplified in the regular topology. The methods of the formalized description of the regular topologies of microprocessor systems and computer nets have been shown. The efficient method of the matrix presentation of the hypergraphs has been offered. It has been proposed to use the code intersection graphs for the network topologies' formalized description.
1. Введение
Появление и развитие сетей ЭВМ является логической закономерностью эволюции компьютерных технологий. Наблюдается стирание границ между вычислительной и коммутационной техникой, взаимное проникновение их друг в друга. С одной стороны, сложность организации межпроцессорных связей в распределенных вычислительных системах выросла в проблему первостепенной важности, которая до недавнего времени была свойственна лишь системам связи. С другой стороны, традиционные системы телекоммуникаций, будучи по природе своей мультипроцессорными, делаются похожими на большие вычислительные системы. В этом симбиозе становятся общими проблемы и опыт разработок, накопленный в обеих областях.
В последние годы бурное развитие вычислительных сетей породило проблему, связанную со стремлением компаний к объединению нескольких локальных вычислительных сетей (ЛВС), которые часто расположены в разных местах. Растущая сложность коммуникаций является препятствием для развития и сетей ЭВМ, и вычислительной техники. Поэтому исследование чисто топологических вопросов построения сетей ЭВМ приобрело в настоящее время большую актуальность. В проблематике топологических задач главной является задача синтеза оптимальной топологии и определение в ней оптимальных путей для пересылки данных.
Опыт построения многопроцессорных вычислительных систем показывает, что сложность алгоритма маршрутизации может быть ограничена урегулированием топологии. Высоко регулярная структура упрощает процедуру определения путей, в то время как нерегулярная структура требует обширных теоретических и конструктивных разработок.
Внедрение в практику построения вычислительных сетей методов формализованного представления, которые до недавнего времени были свойственны лишь вычислительным системам, позволят использовать в сетях преимущества компьютерной техники.
Топологии, в которых выполняются формализованные соотношения между управлением потоками и топологией сети, будем называть регулярными. В противном случае топологии будем называть произвольными (нерегулярными).
Многие типы произвольных структур можно рассматривать, как неполные регулярные, в которых не хватает некоторых ребер. Полносвязанная структура, в которой узлы соединены по принципу «каждый с каждым», может рассматриваться как универсальная однородная (регулярная) структура, из которой путем удаления ребер могут быть получены все типы известных структур.
Исследование возможности использования регулярных топологий в сетевых структурах является целью данной работы.
2. Сетевые топологии на основе произвольных графов
Несмотря на довольно большое число оригинальных топологий, предложенных для построения микропроцессорных систем, набор топологий, используемых в сетях ЭВМ, ограничен. Между тем выбор топологии существенно влияет на многие характеристики сети. Например, наличие резервных связей повышает надежность сети и делает возможным балансирование загрузки отдельных каналов. Простота присоединения новых узлов, свойственная некоторым топологиям, делает сеть легко расширяемой. Экономические соображения приводят к выбору топологий, для которых характерна минимальная суммарная длина линий связи.
Рис. 1. Простейшие сетевые топологии: а) полносвязная; б) ячеистая; в) общая шина; г) кольцо; д) звезда; е) иерархическая звезда
Простейшие топологии общей шины, звезды и кольца традиционно используются в ЛВС и являются основой для построения более сложных топологий, как для сетей, так и для микропроцессорных систем. Эти топологии в основном являются неоднородными, то есть в них узлы имеют разное число инцидентных им линий связи. Следовательно, они относятся к типу произвольных (нерегулярных) структур. Однако топология кольца является однородной, и потому может быть отнесена, как и полносвязанная, к классу регулярных структур. Рассмотрим вначале особенности традиционных сетевых топологий.
2.1. Топология общей шины
Магистраль - общая шина - до сих пор служит архитектурной основой многих ЭВМ, а также очень распространенной топологией для локальных сетей. В этой топологии компьютеры подключаются к одному коаксиальному кабелю по схеме "монтажного ИЛИ" (рис. 1в). Передаваемые данные могут распространяться в обе стороны. Основным преимуществом шины являются дешевизна и простота разводки кабеля по помещениям. Самый серьезный недостаток шины - ее низкая надежность: любой дефект кабеля или какого-нибудь из многочисленных разъемов полностью парализует всю сеть. Другой недостаток шины - ее невысокая производительность, так как при таком способе подключения в каждый момент времени только один компьютер может передавать данные в сеть. Возможность расширения шины теоретически неограниченна, практически же ограничивается физической средой передачи.
2.2. Кольцевые сетевые топологии
Кольцо из В узлов является однородным графом, имеет степень 2 и диаметр |_£/2_|, где LxJ-наименьшее целое, не меньшее х. В сетях с кольцевой конфигурацией данные передаются от одного компьютера к другому, как правило, в одном направлении (рис. 1г). Кольцо является очень удобной конфигурацией для организации обратной связи - данные, сделав полный оборот, возвращаются к узлу-источнику. Поэтому этот узел может контролировать процесс доставки данных адресату. Это свойство используется для тестирования сети и поиска узла, работающего некорректно. Кольцо имеет основные недостатки, аналогичные шинной топологии.
В сетях FDDI, Token Ring и Token Bus с кольцевой топологией используется маркерный метод доступа к среде передачи данных. По кольцу передается небольшой кадр специального формата (маркер), определяющий право передачи данных его владельцем (сетевым устройством) и предотвращающий возникновение конфликтов. Для передачи информации узел должен захватить маркер и добавить к нему сообщение и адресную информацию. Технология FDDI использует двойное кольцо с циркуляцией маркеров в противоположных направлениях.
2.3. Звездообразные топологии
В топологии звезды каждый компьютер подключается отдельным кабелем к общему устройству -концентратору (hub) (рис. 1д). Звездообразная топология применяется в сосредоточенных сетях, в которых конечные точки достижимы из центрального узла. Она хорошо подходит в тех случаях, когда предполагается расширение сети. Главное преимущество этой топологии перед общей шиной - большая надежность. Катастрофа наступает лишь при отказе центрального узла. Каждый компьютер в сети взаимодействует с центральным концентратором, который передает сообщение всем компьютерам (в сети с широковещательной рассылкой) или только компьютеру-адресату (в коммутируемой сети). Концентратор
может служить интеллектуальным фильтром информации, блокируя при необходимости запрещенные администратором передачи. К недостаткам звездной топологии относятся более высокая стоимость сетевого оборудования из-за необходимости приобретения концентратора. Кроме того, возможности по наращиванию количества узлов сети ограничиваются количеством портов концентратора. Звездная топология используется для обеспечения физических связей в логическом кольце и логической шине.
2.4. Древообразные топологии
Топология дерева представляет собой иерархическую звезду (гибридную звезду) и является самым распространенным типом топологий связей как в локальных, так и в глобальных сетях (рис. 1е). Гибридная звездообразная сеть создается путем подключения вместо одного из компьютеров еще одного концентратора и подсоединения к нему дополнительных машин. Главным недостатком сетевых технологий на основе топологии остовного дерева является то, что все их базовые функции работают при существовании только одного логического пути между двумя любыми устройствами в сети. Такое объединение ЛВС или сетевых сегментов исключает наличие альтернативных путей и характеризуется низкой структурной надежностью.
Примером сети с топологией дерева является ушедшая в прошлое локальная сеть ARCnet фирмы Datapoint. В ARCnet применялась схема с передачей маркера.
2.5. Универсальная полносвязанная топология
В полносвязной топологии (полный граф) каждый узел связан со всеми остальными (рис. 1а), иначе говоря, полный граф из В узлов представляет собой однородную сеть, у которой каждый узел имеет степень В-1 и отстоит от любого другого узла на расстояние 1. Полный граф - рекордсмен по компактности и структурной надежности. Расстояние между любой парой его узлов равно 1, и чтобы изолировать хотя бы один из его N узлов, в полном графе необходимо удалить не менее N-1 узлов. Несмотря на логическую простоту, этот вариант является громоздким и неэкономичным. Узлы с характерным для полного графа большим числом портов часто нереализуемы конструктивно и технологически. Полносвязанные топологии применяют редко, так как они не удовлетворяют требованиям к экономической эффективности. Чаще всего этот вид топологий используется в многомашинных комплексах или глобальных сетях при небольшом количестве компьютеров.
2.6. Ячеистые сетевые топологии
Ячеистая топология получается из полносвязной путем удаления некоторых возможных связей (рис. 16). В сети с ячеистой топологией непосредственно связываются только те компьютеры, между которыми происходит интенсивный обмен данными, а для обмена данными между компьютерами, не соединенными прямыми связями, используются транзитные передачи через промежуточные узлы. Топологии ячеистого типа обеспечивают альтернативную маршрутизацию, при которой осуществляется выбор оптимального пути из множества возможных путей. Сети с топологиями ячеистого типа обладают высокой надежностью и живучестью. Ячеистая топология допускает соединение большого числа компьютеров и характерна, как правило, для глобальных сетей.
Передача данных по установленным соединениям, сформированным на основе коммутируемых каналов между устройствами, осуществляется в сетях с технологиями ATM, Frame Relay, B-ISDN.
2.7. Общая характеристика простейших сетевых топологий
Топологии произвольного типа хорошо удовлетворяют спецификациям современных ЛВС. Они обеспечивают простую, дешевую, высокоскоростную передачу данных, нетребовательны в отношении расширения сети. Однако они имеют низкую надежность и живучесть, связанную со структурными ограничениями, которые накладывает специфика моноканала. Кроме того, традиционные топологии (звезда, кольцо, шина, дерево) не в состоянии обеспечить новые тенденции к объединению отдельных ЛВС в единую корпоративную сеть. При неограниченном расширении топологии сеть становится громоздкой и неуправляемой. Наиболее практичными с точки зрения объединения ЛВС являются топологии ячеистого типа. Однако их использование ограничивается двумя факторами: оно либо слишком дорого (например, технология ATM), либо малоэффективно (например, технология Х.25).
3. Регулярные топологии
Регулярные топологии типичны для распределенных процессорных архитектур. Топология системы определяет межпроцессорную архитектуру связи и является, как правило, однородной в отношении используемых процессоров, связей и структур коммутации. В таких распределенных системах существуют хорошо определенные соотношения между топологией системы и задержкой
сообщения, алгоритмами маршрутизации, отказоустойчивостью и диагностикой отказов. Задержка сообщения может быть прямо пропорциональна межузловому расстоянию.
Рассмотренные выше топологии на основе произвольных графов задаются либо списком, либо матрицей смежностей. Оба эти представления громоздки и неудобны для использования. Графы с симметрией позволяют перейти к более короткому описанию.
Хотя наиболее распространенными регулярными топологиями являются топологии на основе однородных графов, класс регулярных топологий ими не ограничивается. В настоящее время предложено достаточно большое количество разнообразных однородных структур. Набор приемов формализованного описания также достаточно разнообразен. Это и аналитические методы, основанные на использовании известных математических соотношений, и алгоритмические методы построения кластерных структур, и графические методы, использующие законы и приемы теории графов. Широко используются методы комбинаторного анализа и рекурсивные процедуры. Рассмотрим некоторые из наиболее значимых подходов.
3.1. Кубические топологии
В вычислительных системах широко используются графы межмодульных связей, конструируемые на основе гиперкубов в булевском и евклидовом пространствах.
Топология р-куба в булевском пространстве образуется как декартово произведение р множеств {0, 1} и минимизирует расстояния между узлами сети. Она позволяет осуществлять кратные межсоединения и включает ограничение, в соответствии с которым каждая магистраль должна иметь точно р процессоров, а каждый процессор должен быть связан точно с двумя магистралями. В этом случае всего в вершинахр-мерного куба размещается 2Р магистралей. На рис. 2а изображен трехмерный куб, р = 3.
/ - -(
\
\
Рис. 2. Кубические топологии: а) трехмерный куб; б) полный гиперкуб; в) двойной гиперкуб; г) обобщенный гиперкуб; д) двумерный тор
Каждая магистраль р-куба адресуется с помощью ее положения в пространстве, причем, это положение однозначно кодируется двоичным числом, состоящим из р цифр. Соседние магистрали отличаются одной цифрой. Между каждой парой соседних магистралей размещается процессор, адрес которого совпадает с адресом каждой магистрали с точностью до символа "*", отмечающего позицию, где адреса магистралей отличаются. Эта топология является базовой для построения ряда более сложных архитектур.
В случае р-мерных евклидовых пространств вершинам графа соответствуют точки с целочисленными координатами: по координате i, i = 1, 2, ..., р, вводятся точки 0, 1, ..., Pi -1, где Pi -размерность куба по координате i. Совокупность вершин графа задается декартовым произведением {0, 1, ..., P1-1}x{0, 1, ..., P2-1}x...x{0, 1, ..., Pp-1}. Две вершины соединены ребром, если соответствующие им р-комбинации отличаются друг от друга на 1 только по одной какой-либо координате.
Основной недостаток топологии р-куба состоит в том, что единственный способ ее расширения заключается в увеличении параметра р. Сложность программного обеспечения каждого процессора увеличивается с ростом р, но еще более важно, что сложность магистралей также увеличивается с ростом р, что требует все более и более сложного оборудования.
Компромисс между экономичностью и живучестью в сочетании с компактностью предлагает топология гиперкуба (рис. 2б,в). Гиперкуб размерности n - это граф, вершины которого кодируются всеми возможными n-мерными векторами из поля {0,1}, а ребра соединяют те вершины, расстояние между которыми по метрике Хэмминга равно 1. В 1985 г. фирма Intel приступила к выпуску персональных компьютеров семейства iPSC-VLX на базе микропроцессора 80286 с топологией гиперкуба из 32, 64 или 128 узлов (Asbury et al., 1985). В минимальной конфигурации такого компьютера каждый узел соединялся каналами с пятью другими узлами, шестым каналом он был связан по стандарту Ethernet c "администратором куба" - микропроцессором 80286/310, седьмой и восьмой каналы резервировались для расширения сети.
Дополнительные преимущества (повышенная надежность, низкая плотность трафика и др.) по сравнению с гиперкубом дает топология обобщенного гиперкуба. Построение обобщенного гиперкуба основано на использовании системы счисления со смешанным основанием (Bhuyan and Agrawal, 1984). В обобщенном гиперкубе число узлов N представляется в виде произведения r не обязательно простых сомножителей mt, 1<i<r : N = mr-mr-1-... ■m1. Тогда любое число X в диапазоне от 0 до N-1 может быть представлено в виде r-кортежа (х„ xr-1,.,x1), где для любого i 0<xi(m1-1). При этом для любого i существует свой вес w, wj= 1, wi = mimi-1-.. -mb 2<i<r, так что X = T.x,wi. Например, если N = 24 = 4-3-2, то любое X в диапазоне от 0 до 23 представляется тройкой цифр (x3, x2 xj), где xj - 0 или 1, x2 - 0, 1 или 2 и x3 - 0, 1, 2 или 3. В частности процессор с номеромX = 0 имеет номер (000), с номеромX = 11 - (121) и т.д. (рис. 2г).
Процедура маршрутизации в системе проста. Любое передаваемое сообщение должно содержать номер узла-адресата. Любой узел, получив сообщение, сравнивает номер этого сообщения с собственным номером. Если номера совпадают, то сообщение адресовано этому узлу. Если не совпадают, то сообщение передается любому другому узлу, номер которого отличается от номера узла-адресата меньшим числом цифр в используемой системе счисления. Этот процесс повторяется до тех пор, пока сообщение не достигнет узла-адресата.
К кубическим структурам тесно примыкают торы (в одномерном случае кольцевые структуры), которые образуются из /»-мерных кубов путем введения ребер между соответствующими вершинами граничных плоскостей по некоторым или всем координатам (рис. 2д). Цель использования торов к качестве графов межмодульных связей - увеличение отказоустойчивости и уменьшение диаметра и среднего диаметра.
В системах коммутации получили распространение многоярусные и в общем случае многослойные сети перестановочного типа (Frank et al, 1985). Эти структуры тоже можно отнести к кубическим. В их основе лежит однослойная двухъярусная ^-однородная сеть. Симметричный вариант этой сети, обозначаемый £2(д, n), имеет n узлов в каждом ярусе. Формально сеть £2(д, n) можно определить следующим образом. Пусть имеется dn ребер с номерами р = 0(1)сП-1. Тогда номера узлов, инцидентных ребру р, суть pmodn и [р/8], где [x] - целая часть числа х. Заметим, что сеть £2(д, 8/ri) несвязанна и имеет n компонентов, изоморфных друг другу: Q(8, dn) = i7(8,8). Пристраиванием третьего яруса эту сеть можно сделать связной, при этом увеличивается вдвое степень узлов среднего яруса. Чтобы получившуюся сеть сделать однородной, нужно по той же схеме соединить дополнительными ребрами крайние ярусы.
Кубические топологии нашли применение в серийных системах: булев куб используется в системе n-Cube, трехмерный тор 8x8x8 реализуется в системе CRAY T3D (Cray, 1994), двумерный тор используется в системе iWarp (Peterson et al., 1991).
3.2. Топологии снежинок Т
Топология снежинки основана на гиперкубе Витти (Finkei 1980). У^-Л —
Один из способов построить сеть из (N-p2) процессоров состоит в Т построении /^-процессорных кластеров и в соединении их между собой \ \
путем соединения одного процессора из каждого кластера с новой / / Т \
магистралью. Указанный процесс можно итерировать, порождая новую yLi s^J рекурсивную конструкцию. Для образования кластера уровня-;? из ¡F узлов !
следует взять р кластеров уровня-(п-1) и ввести новую магистраль, которая ^ис. 3. Топология снежинки связывает вместе углы каждого кластера. Эти углы называются активными
углами кластеров уровня-(п-1). Если выбрать по одному (отличному от активных) углу от каждого из указанных р кластеров в качестве углов кластера уровня-n, то эти углы будут скрытыми углами кластеров уровня-(п-1). Таким образом, каждый кластер имеет один активный угол, один скрытый и (р-2) остальных углов. Отдельный процессор образует кластер уровня-0, р углов которого представляют собой тот же самый процессор. Построение для n = 3, р = 3 показано на рис. 3, где 1 - активный узел, 2 - кластер уровня-2, 3 - скрытый угол.
При использовании топологии снежинки большая часть всех процессоров подключена только к одной магистрали; нагрузка на магистрали более высокого уровня также весьма значительна. В рамках топологии плотной снежинки ситуация улучшается за счет использования (р-1) магистралей вместо одной для соединения р подкластеров, образующих кластер уровня-n (для n> 1). Углы кластеров нумеруются (рис. 4). При этом в кластере уровня-' скрытый угол имеет адрес 0С-1; другие углы активны и имеют адреса 00-1, где 0 - любая цифра, кроме 0. Указанные связи и обеспечивают альтернативные пути между процессорами.
Топологические структуры типа снежинок образуются путем объединения углов снежинок более низкого уровня. Еще более короткое межузловое расстояние можно получить путем соединения центров кластеров более низкого уровня. Получаемая таким образом топология называется частичной звездой. Поскольку имеется только один центр, такую звезду невозможно обобщить на случай многосвязной топологии, однако звезда обладает некоторыми преимуществами по сравнению с топологией снежинки.
Рис. 4. Топология плотной снежинки
Рис. 5. Топология из частичных звезд
Рис. 6. Топология полной звезды
Звезда уровня-1 включает р-1 процессоров, подключенных к одной магистрали. Для построения частичной звезды уровня-п вводится новая магистраль с р-1 процессорами. Если связать каждый из этих процессоров с центральной магистралью одной из р-1 частичных звезд уровня-(п-1), то получится древовидная структура (рис. 5), где п = 4, р = 3.
Топология полной звезды получается при заполнении всех р связей магистрали самого высокого уровня. При этом для построения звезды уровня-п вводится новая магистраль с р новыми процессорами, причем каждый процессор связан с центральной магистралью частичной звезды уровня-(п-1) (рис. 6).
Из расширенных топологий звездная имеет наилучший показатель по максимальному межпроцессорному расстоянию, однако она имеет наихудшие показатели по нагрузке на центральную магистраль. Помимо этого топологии звезды и снежинки, будучи древовидными топологиями, обладают тем недостатком, что отказ одной компоненты может вывести из строя всю сеть.
Рис. 7. Топологии на основе бинарного дерева: а) бинарное дерево; б) полукольцо; в) полное кольцо
3.3. Регулярные топологии на основе бинарного дерева
Дерево является основой для построения многих типов топологий мультипроцессорных вычислительных систем. Наиболее известна топология бинарного дерева, которая часто используется для построения иерархических систем (рис. 7а,б,в).
Ряд публикаций посвящен разработке мультипроцессорных систем со структурами (d, k) графов, состоящих из нескольких деревьев. Сеть с топологией (d, k) графа представляет собой однородный граф степени d (и меньше) и диаметром k, содержащий n узлов. Элспас (Elspas, 1964) нашел (d, k) графы, у которых число узлов n(d, k) является максимальным. Акерс (Akers, 1965) предложил оригинальный метод построения (d, d-1) графов степени d и диаметром d-1, в результате которого получил граф с (n = (2d-1)/d) узлами. Хотя не доказано, что графы Акерса являются максимальными, они равны или превосходят графы, описанные Элспасом. Фридман (Friedman, 1966) предложил построение (d, k) графов с максимальным числом вершин n(d, k), которые имеют очень большие d. Топология представляет собой иерархические деревья, соединенные таким образом, что степени всех вершин равны d. Минимальное расстояние между любыми двумя вершинами равно k ребрам. Поэтому вершины расположены в кольце из 2k и меньше ребер. Общее число вершин в графе Фридмана для d>2 равно:
что совпадает при k= d-1 с результатами Акерса.
В работе (Arden and Hikyi, 1978) описывается построение MTS графов на основе (d, k) графов. Граф MTS (multi-tree-structured) строится за счет оригинального объединения подграфов, являющихся однородными деревьями степени d. Подобным же образом строятся графы Мура (Arden and Hikyi, 1978), которые теоретически имеют максимальное n при заданных d и k:
Однако реализуемы графы Мура лишь для сочетаний параметров (3, 2), (7, 2), (57, 2).
Для определения MTS графа вводится понятие СТ-графа (component tree) как дерева-компоненты MTS графа степени d, которое представляет собой неориентированное дерево с начальной вершиной, в котором каждая неконцевая вершина связана с (d-1) другими меньшей высоты, и все конечные вершины имеют одинаковую глубину (рис. 8). MTS граф в этом случае характеризуется двумя параметрами: m - количеством СТ-графов, содержащихся в MTS графе и t - количеством уровней в графе СТ. MTS графом степени d (3< m, 1< t) называется линейный граф, обладающий следующими свойствами: он содержит m СТ-графов равной высоты (t-1); начальные вершины СТ-графов соединены в кольцо; все конечные вершины уровня (t-1) соединены между собой, по крайней мере, одним кольцом, проходящим по каждой из этих вершин; каждая вершина уровня (t-1) соединена с (d-1) другими вершинами того же уровня непосредственно, причем не обязательно принадлежащими одному СТ-графу.
На рис. 8а изображен MTSm.t граф с параметрами m = 3 и t =3. Число вершин графа MTSm.t равно m(d-1)t-1. Выражение для n, как функции d и к, достаточно просто получить нельзя, т.к. имеется множество способов соединения конечных вершин графа MTS, в разной степени влияющих на к. Узлы MTS графа нумеруются (d-1)-3Ha4HbiMH цифрами. Система нумерации позволяет перейти к кольцевой интерпретации структуры сети (рис. 86).
а level-0 6
n = [2d/ (d-2)] [(d-1)k/2 - 1],
n = fMoore(d, к) = 1 + d + d (d-1) +...+ d (d-1)k-1 = [d (d-1)k-1 - 2] / (d-2), (d>2).
[ml level-2
level-1
(2.3)
Рис. 8. Граф MST: а) древовидная топология; б) кольцевая топология
II .3! (2.2)
Для МТ8 графов степени 3 вводится понятие модели Рш дерева-компоненты СТ. Модель Рт:1 представляет собой цепочку узлов длины 1р (2'~2-1< 1р <т0!'2), в которой выделено 2'~2 занятых узлов и 1р+1-2*-2 свободных. Общий способ построения МТ8 графов включает алгоритм построения СТ-симметричных МТ8 графов путем вращения конструкции симметричного древовидного графа по кольцу (рис. 9).
m:t
d* d¿ d? d, d-, dj ¿o h ¿i 3
Рис. 9. Построение графа MST
Построение графов Km-.t основано на использовании модели Pm.t длины m(2t-2-1), в котором занятые узлы находятся на расстоянии m друг от друга (m должно быть нечетным). Расположение m таких идентичных моделей по внешнему кольцу при определенных условиях дает структуру, в которой каждые m соседних узлов принадлежат различным СТ-графам. При этом разность р (по модулю 2t-2) между координатами двух соседних узлов постоянна.
В работе (Bowyer et al., 1981) предлагается метод построения симметричной древовидной топологии, который является особенно привлекательным для случая, когда необходимо перейти от многопроцессорной системы с распределенной памятью к централизованной или иерархической системе. Например, если исходный граф является графом Петерсона, то, применив предложенную методику, можно получить структуру, в которой центральный узел является корневым, а все остальные узлы образуют три бинарных дерева, начинающихся в центральном узле (рис. 10).
Если в узлах сети поместить процессоры, то центральному поручаются функции управления. Можно получить более сложные структуры, однако применение метода ограничивается жесткими требованиями к необходимому числу процессоров в системе.
Требуемое число узлов m для построения графа с диаметром g и степенью вершин, равной 3, определяется из выражения:
m = 2(1 + 2 + 22+ ... + 2r-1), r = g/2.
При большом числе процессоров в системе метод становится сложным.
Представляют интерес некоторые топологии, пока не получившие практического воплощения. Из них отметим: однородную плоскую триангуляцию и гипердерево. Они привлекают внимание как примеры значительного улучшения топологических характеристик путем синтеза новой топологии по известным топологическим схемам. В обоих случаях базовой топологией является дерево.
Однородная плоская триангуляция - это ^-арное дерево, на которое наложено его зеркальное отображение и которое дополнено ребрами уровней. Как показано в работе (Видоменко, 1983), число узлов на уровне n можно определить возвратным уравнением второго порядка Tn+i = рТп~Тп.\ и парой начальных условий T0 и Ть От обычного дерева триангуляция отличается резким увеличением живучести, причем достигается это введением сравнительно небольшого числа дополнительных ребер.
Количество узлов в полном ^-арном дереве равно В = (УМ)/(р-1), где n = 1, 2,. - число уровней. Степень корня равна р, листьев - 1, остальных узлов - р+\. Диаметр равен 2(n-1). Привлекательные свойства демонстрирует топология гипердерева, созданная на основе бинарного дерева и n-мерного гиперкуба (Goodmen and Sequin, 1981). Этот граф получается из бинарного дерева путем добавления на каждом уровне гиперкубических связей между узлами (рис. 11). При этом в первую очередь соединяют наиболее удаленные узлы, что приводит к существенному уменьшению диаметра графа.
В гипердереве усиливаются лучшие свойства родительских топологий - экономичность, живучесть, компактность. В то же время ослабляются недостатки, особенно свойственная гиперкубу неспособность к расширению.
В работе (Корнеев, 1999) предложен алгоритм построения однородных графов с минимальным диаметром, в основе которого лежит рекурсивная процедура построения и разбивки концентрических окружностей. В результате получается иерархическая ячеистая структура на основе Рис. 11. Гипердерево
древовидных подграфов бесконечных планарных графов с заданным обхватом.
3.5. Регулярные топологии на основе матричных преобразований.
Для описания топологии удобно использовать ее представление в виде графа и его матрицы смежности. При этом в матрице смежности графа элемент (i,j) равен 1, если в графе дуга исходит из вершины с номером i и входит в вершину с номером j.
Большинство однородных графов можно отобразить в виде матрицы смежности М размером NxN, где N - число вершин в графе, с помощью следующего выражения:
Рис. 10. Топологии на основе графа Петерсона: а) граф Петерсона; б) граф Петерсона как дерево
М = Е <8> Б + Р, (1)
где Е - пхп матрица с элементами е^ = 1 для любых / и у; Б - кхк матрица смежности фрагмента произвольного (или заданного) вида; Р - кп х кп матрица "запретов" (кп = Ы) с элементами ру = -1, если в графе отсутствует дуга (ребро), которая в полном гиперграфе находится в позиции (/, у), и ру = 0 в остальных позициях; ® - символ кронекерова произведения матриц. Полный гиперграф представляется выражением (1), в котором Р = 0.
Например, полный гиперкуб может быть описан следующим выражением:
М = Г1 Л ^^ ^^ ^ ГГ1 ^ ^^ М [1 1] ® ш 1]®И11]®ш 1]® ...ш 1Л1 о];;;;
Матричное представление привлекательно с точки зрения компьютерной обработки. Оно компактно, экономично в использовании памяти компьютера, хорошо поддается аналитическому описанию и удобно для построения рекурсивных конструкций.
3.6. Графы кодовых множеств
Топологии на основе графов кодовых множеств (ГКМ) не являются однородными. Однако по способу формализованного представления их можно отнести к регулярным. Класс ГКМ достаточно разнообразен. К их числу относятся: графы кодовых пересечений (ГКП), графы сменнокачественных кодов (ГСК), графы равномерных кодов, графы циклически перестановочных кодов, графы циклических кодов, графы смежных кодов, графы итеративных и каскадных кодов. Среди них выделяются ГКП, которые являются графами кодов без избыточности. Другие ГКМ являются графами избыточных кодов и могут рассматриваться как подграфы ГКП (Борисова, 1993а; Pradhan andSudhakar, 1982; Васильев и др., 1975; Борисова, 2000).
Наиболее привлекательными для практического использования на сетях являются ГКП и ГСК. Другие виды графов кодовых множеств обладают повышенной избыточностью и потому непривлекательны для практического использования на сетях.
Матрица смежности псевдографа кодовых пересечений с параметрами n, к, r ПКП(п, к, r) имеет размер к х kn, в каждой строке содержит к единиц, сдвинутых относительно единиц предыдущей строки на к позиций. Матрица смежности ГКП(п, к, r) отличается от матрицы смежности ПКП(п, к, r) отсутствием диагональных единиц. Свойства графов кодовых пересечений и их матриц смежности исследованы в работе {Кузнецова, 1984; Борисова, 1993а).
Определение ГКП(п, к, r) с параметрами n - длиной кодовых комбинаций, к - основанием кода и r - числом пересекающихся символов в двух соседних кодовых комбинациях (зацеплением) можно найти в работе (Борисова, 2000). На рис. 12 изображены ориентированный и неориентированный ГКП(3,2,1).
Главной особенностью ГКП является зависимость их структур от параметров n, к и r. Это позволяет на базе формализованного представления упростить решение многих задач, связанных с разработкой и эксплуатацией вычислительных систем и сетей ЭВМ. Так, кратчайший с точки зрения числа переприемов путь в ГКП определяется с помощью простых арифметических операций над кодовыми номерами их вершин (Борисова, 2000). При этом возможна сокращенная кодовая запись полного пути, которая может быть использована для автотестирования сети. Это упрощает решение задач контроля, диагностики состояния сетей связи и повышения их надежности. Возможность реализации адреснозависимой бестабличной маршрутизации не только экономически выгодна, но в том числе позволяет решить задачу структурного ограничения числа транзитных участков в сети связи, что представляет существенную трудность при разработке традиционных нерегулярных сетей.
Работы (Амосов, Шарипова, 1977; Кузнецова, 1989; Борисова, 1993в) расширяют ряд решаемых с помощью ГКП задач на область сетей связи с произвольными топологиями, что делает ГКП более предпочтительными по сравнению с другими типами регулярных структур и позволяет перенести в область нерегулярных топологий многие преимущества регулярных структур ГКП.
4. Заключение
Рассмотренные методы описания регулярных топологий микропроцессорных систем и сетей ЭВМ демонстрируют, что такое формализованное описание является экономичным методом задания структуры
сети и эффективным способом решения на этой основе разнообразных задач в области вычислительных систем и сетей связи ЭВМ, в том числе задачи оптимального объединения различных сетей в единую ассоциацию. Формализованное представление топологий делает сеть более управляемой, а развитие ее более предсказуемым. В регулярной структуре существенно упрощаются процедуры определения путей.
Предложенный метод матричного представления гиперграфов полезен для использования в компьютерных системах. Он позволяет компактно и экономично хранить информацию о топологии сети, достаточно прост по аналитическому описанию и удобен для построения рекурсивных топологических конструкций.
Литература
Akers S.B. On the construction of (d, k) graphs. IEEE Trans. On Electronic Computers, v.EC-14, June, p.488, 1965. Arden Bruce W. and Lee Hikyu. A multi-tree-structured network COMPCON'78. Fall 17-th IEEE Comput.
Socie. Int. Conf. Washington, D.C. 1978, Proc. Comput. commun. Networks, p.201-210, 1978. Asbury R., Frison S.G. and Roth Th. Concurrent computers ideal for inherently parallel problems. Comput.
Des., v.24, N 11, p.99-107, 1985. Bhuyan L.N. and Agrawal D.P. Generalized hypercube and hyperbus structures for a computer network. IEEE
Trans. Comput, v.33, N 4, p.323-333, 1984. Bowyer A., Willis P.J. and Woodwark J.R. A multiprocessor architecture for solving spatial problems. The
Computer Journal, v.24, N 4, p.353-357, 1981. Cray T3D System Architecture Overview. Cray Research, Inc., 655-E Lone Oak Drive Eagan, Minnesota 55121, 1994.
Elspas. Topological constraints on interconnection limited logic. Switching circuit theory and design, v.S-164, October, p.133-147, 1964.
Finkel R.A. Processor interconnection strategies. IEEE Trans. On Comput, v.C-29, N 5, p.360-371, 1980. Frank W., Rahier M.C., Sallaerts D. and Upp D.C. System 12 dual switch port. Electric. Common., v.59, N 23, p.98-100, 1985.
Friedman H.D. A design for (d, k) graphs. IEEE Trans. On Electronic Computers, v.EC-15, N 2, p.253-254, 1966. Goodmen J.R. and Sequin C.H. Hypertree: a multiprocessor interconnection topology. IEEE Trans. On
Comput, v.C-30, N 12, p.960-965, 1981. Peterson C., Sutton J. and Wiley P. iWarp: A 100-MORS, LIW Microprocessor for Multicomputers. IEEE
MICRO, v.11, N 3, p.26-29, 81-87, 1991. Pradhan Dhiraj K. and Reddy Sudhakar M. A fault-tolerant communication architecture for distributed
systems. IEEE Trans. Comput, v.31, N 9, p.863-870, 1982. Амосов A.A., Шарипова M.M. Метод определения путей в сетях связи. Техника средств связи, сер.
ТПС, вып. 8(18), с.15-22, 1977. Борисова Л.Ф. Некоторые структурные свойства графов кодовых пересечений. Мурманск, МГАГФ,
Материалы НТКМГАРФ, с.21-22, 1993а. Борисова Л.Ф. Повышение эффективности функционирования локальных вычислительных сетей при
использовании логических свойств их структур. Вестник МГТУ, т. 3, № 1, с.45-54, 2000. Борисова Л.Ф. Способ представления структур вычислительных сетей большой связности с помощью
графов кодовых пересечений. Мурманск, МГАГФ, Материалы НТКМГАРФ, с.25-26, 19936. Васильев В.И., Коновалов В.М., Заманский Л.Я., Фабрикант О.М. О некоторых свойствах сетей передачи данных, построенных на основе графов кодовых пересечений. В кн.: Передача и преобразование информации. Сборник. Киев, изд. ИК АН УССР, с.70, 1975. Видоменко В.П. Экстремальные свойства плоских однородных триангуляций. Кибернетика, № 2, с.57-60, 1983.
Корнеев В.В. Параллельные вычислительные системы. М., Нолидж, с.106-108, 1999. Кузнецова Л.Ф. Метод нумерации узлов, принадлежащих отдельным подсетям. Ленинград, ЛЭИС. Сети, узлы и распределение информации: Сборник научных трудов учебных институтов связи, с.85-91, 1984.
Кузнецова Л.Ф. Способ построения многосетевых ассоциаций на основе графов кодовых пересечений. Ташкент, МатериалыXIВсесоюзного совещания "Проблемыуправления-89", с.118-119, 1989.