Архитектура системы на базе ServerNet
Новая системная архитектура, построенная на базе ServerNet, объединяет
свойства систем NonStop и Integrity, решая задачу масштабируемых отказоустойчивых
систем путем реализации гибких методов соединения стандартных функциональных
блоков (модулей ЦП/памяти, подсистем внешней памяти и коммуникационных
адаптеров).
На рис. 3 показана архитектура типичной системы, построенной на базе
ServerNet. Эта система состоит из нескольких процессорных узлов и узлов
ввода/вывода, объединенных друг с другом системной сетью ServerNet. Базовым
элементом сети ServerNet является маршрутизатор, выполненный в виде отдельной
заказной СБИС. Для обеспечения отказоустойчивости предполагается возможность
построения двух независимых подсетей ServerNet: X и Y. В типовой конфигурации
большинство узлов имеют двухпортовые интерфейсы, обеспечивающие подсоединение
каждого узла к этим независимым подсетям. Одной из дополнительных возможностей
новой архитектуры является наличие специальной шины когерентности, допускающей
подключение до четырех ЦП. Эта шина обеспечивает согласованное состояние
общей для нескольких процессорных узлов памяти и их кэшей при выполнении
программ, рассчитанных на мультипроцессорную обработку в системе с разделяемой
общей памятью.
Рисунок 3.
Архитектура системы на базе ServerNet
При работе под управлением операционных систем, поддерживающих отказоустойчивость
программными средствами, например подобных NonStop Kernel, процессорные
узлы выполняют независимые потоки команд. В отличие от более ранних систем,
которые для передачи сообщений между процессорами и реализации операций
ввода/вывода использовали разные интерфейсы, в новой архитектуре все пересылки
данных осуществляются процессором по сети ServerNet.
При использовании операционных систем, в которых отсутствуют специальные
средства поддержки отказоустойчивости, это свойство может быть реализовано
с помощью аппаратных средств путем создания конфигураций ЦП в виде дуплексных
пар. В этом случае пары узлов ЦП выполняют идентичные потоки команд.
Если
один ЦП из пары отказывает, другой продолжает работать. Таким процессорам
в сети ServerNet присваивается общий идентификатор узла, и все пакеты,
адресуемые с помощью этого идентификатора, дублируются и доставляются одновременно
двум ЦП. При отсутствии неисправностей оба ЦП в паре создают идентичные
исходящие пакеты, поэтому в случае нормальной работы логика маршрутизации
ServerNet может выбрать для пересылки пакеты любого узла. При этом для
обнаружения неисправностей используются возможности самой сети ServerNet.
Как уже отмечалось, для обеспечения отказоустойчивости в системе Integrity
требуются три процессорных кристалла и три массива микросхем памяти. Новая
архитектура требует четырех процессорных кристаллов - два на каждый модуль
ЦП - и двух массивов микросхем памяти. Стоимость реализации этих двух подходов
существенно зависит от размера памяти. Для типовых систем оба метода имеют
сравнимую стоимость.