Московский государственный университет путей сообщения
Опубликован: 11.04.2006 | Доступ: свободный | Студентов: 1311 / 300 | Оценка: 4.39 / 4.00 | Длительность: 17:21:00
ISBN: 978-5-9556-0036-1
Специальности: Разработчик аппаратуры
Лекция 8:

Средства управления распределенными системами

< Лекция 7 || Лекция 8: 12345 || Лекция 9 >
Ключевые слова: значение, IBM, OPEN, распределенные вычисления, технология клиент-сервер, отношение, сеть, очередь, менеджер ресурсов, network architecture, APPN, разрыв соединения, модульность, анализ, вывод, семантика, CTS, системный сервис, CPI-C, MQI, C, сеанс, место, интерфейс, логическое соединение, программа, операции, ISO, OSI, APPC, SNA, MVS, ESA, RPC, связь, NFS, OSF/1, Вычислительный элемент, DCE, очереди сообщений, запрос, MQSeries, коммуникационные протоколы, информация, IMS, CIC, доступ, TCP, OS/2, VMS, Unix, SUN, API, прием данных, advanced, communications, программное обеспечение, transfer, protocol, AFTP, remote procedure call, разделяемая память, stub, сервер, менеджер, маршрут данных, активность, interface definition, language, IDL, объектный файл, компилятор, файл, идентификатор, global, unique identifier, GUID, время выполнения, UDP, управляющие, менеджер очередей, локальная очередь, система очередей сообщений, прямой, приложение, байт, descriptor, message queue, interface, manager, transport, semantics, LAN, Ethernet, IPX, Дополнение, шлюз, архитектура, AIX, Windows, функция, BSD, software, distribution, узел сети, скорость передачи, передача данных, поток

Все возрастающее значение открытых систем привело к необходимости обеспечить возможность взаимодействия программных продуктов от различных производителей. Для обеспечения упорядоченности развития сетей и обеспечения взаимодействия процессов, выполняющихся в гетерогенных сетях, компанией IBM разработана концепция Open Blueprint , отвечающая всем требованиям, предъявляемым к открытым системам. Open Blueprint определяет структуру для управления распределенными системами и обеспечивает основу, на которой строятся, выполняются и управляются распределенные приложения в гетерогенных сетях. Она разработана на основе промышленных стандартов и позволяет удовлетворять требования заказчиков, предъявляемые к продуктам и решениям, которые соединяют различные аппаратные и программные платформы как корпорации IBM, так и других производителей. Следует отметить, что открытые распределенные вычисления, или технология клиент-сервер, в настоящее время являются основной моделью, определяющей развитие информационных технологий. Структура Open Blueprint дает возможность всем, кто имеет отношение к открытым распределенным средам, рассматривать систему как часть распределенной сети, а сеть, в свою очередь, трактовать как единую информационную структуру. Структура Open Blueprint представлена на рис. 4.1.

Структура системы Open Blueprint

Рис. 4.1. Структура системы Open Blueprint
Основные ее <строительные блоки> - это менеджеры ресурсов, которые функционально сгруппированы в наборы сервисов:

  1. Сетевые сервисы. Они обеспечивают перемещение данных из одной системы в другую. Эта группа сервисов включает в себя семантику общей транспортной среды, физическую сеть, охватывающую локальные и глобальные сети, каналы и протоколы передачи данных. При этом семантика общей транспортной среды рассматривается как промежуточный слой между сервисами вышестоящего уровня и собственно сетевыми сервисами, такими как SNA (Systems Network Architecture), высокоуровневые сети с соединениями (APPN), сети TCP/IP, NetBIOS, IPX и др.

    Развивающиеся информационные технологии, такие, как компьютерная телефония, обмен видеоинформацией, конференц-связь, требуют прямого доступа к функциям сетевых сервисов. Для удобства объединения различных областей обработки данных и обеспечения доступа к сетевым протоколам в Open Blueprint введена система сигнализации и управления. Она обеспечивает выполнение таких функций, как установка/разрыв соединений и управление видео- и аудио конференциями. Сигнальная система в сетях связи - это набор процедур, используемых для динамической установки, поддержки и разрыва соединений, которые требуются для обмена данными между пользователями сети и узлами коммутации. Функции этой системы определяют необходимые последовательность и форматы сообщений, обмен которыми осуществляется через сетевой интерфейс. Например, в среде подсетей АТМ одно мультимедийное приложение через сигнальную систему может одновременно принимать данные, используя транспортные сервисы и устанавливать соединения для приема и передачи аудио- и видеоинформации. Таким образом, сигнальная система является объединением множества сетевых протоколов и специфических функций, имеющих отношение к подсетям.

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

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

Рассмотренные менеджеры ресурсов совсем не обязательно соответствуют каким-либо конкретным продуктам. Концепция Open Blueprint реализована в виде различных продуктов на различных системных и аппаратных платформах. Она только определяет атрибуты и свойства программного обеспечения, отражает функциональную модульность и стандартизирует различные интерфейсы.

Анализ приведенной выше структуры позволяет сделать вывод, что взаимодействием распределенных сетевых процессов и, следовательно, распределенными системами непосредственно управляют сервисы распределенных систем и сетевые сервисы. В данном разделе рассматриваются сервисы, непосредственно относящиеся к взаимодействию сетевых процессов. Эти сервисы в рамках концепции Open Blueprint называются коммуникационными. Кроме того, анализируется промежуточный слой между коммуникационными и сетевыми сервисами - семантика общей транспортной среды CTS.

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

  • межпрограммный интерфейс взаимодействия (CPI-C) для диалоговых сервисов;
  • интерфейс вызова удаленных процедур (RPC) для сервисов вызова удаленных процедур;
  • интерфейс очереди сообщений (MQI) для сервисов очереди сообщений.

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

CPI-C поддерживает взаимодействие между одновременно выполняющимися прикладными процессами, основанное на установке между ними логического соединения. Отсюда следует, что сетевой сеанс связи в этом случае имеет место только для взаимодействующих программ. Интерфейс CPI-C разработан, в первую очередь, для структурированного обмена информацией между программами. При этом взаимодействующие программы являются клиент-серверными приложениями, то есть приложениями, устанавливающими логическое соединение. Каждая программа при этом функционирует в своем (локальном) адресном пространстве. Программы, использующие интерфейс CPI-C, могут выполнять операции по обмену данными различного назначения. В рамках стандарта ISO диалоговая модель является базовой для обработки транзакций в спецификации протоколов OSI, базирующейся на архитектуре APPC SNA. Операционные системы используют протокол межпрограммного взаимодействия (APPC) для облегчения применения интерфейса CPI-C при разработке приложений. Указанный протокол в рамках систем MVS/ESA и OS-390 предлагает разработчикам набор встроенных функций для использования в клиент-серверных приложениях. Эти функции доступны из программ, написанных на языках высокого уровня, что избавляет от необходимости написания ассемблерных программ.

Вызов удаленных процедур (RPC) использует механизм вызова/возврата в/из процедуры для обеспечения взаимодействия между клиент/серверными приложениями. Клиентская (вызывающая) программа определяет местоположение сервера в сети (вызываемой процедуры), устанавливает необходимую связь и передает фактические параметры для выполнения требуемой процедуры. Вызывающая программа ждет завершения работы процедуры (выполнение этой операции синхронно!) и принимает результат. На сегодняшний день рабочие станции с приложениями, реализующими интерфейс RPC, работают как клиентские части в рамках системы OS-390 с использованием функций сервера сетевой файловой системы (NFS), поддерживаемых операционной системой. Кроме того, OS-390 поддерживает RPC в рамках сетевой вычислительной системы Apollo.

В рамках архитектуры OSF интерфейс RPC выбран в качестве базовой коммуникационной модели для распределенных вычислительных элементов (DCE). Интерфейс RPC в стандарте OSF/DCE поддерживается операционными системами OS-390 и MVS/ESA.

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

Сервис MQSeries IBM упрощает процесс межплатформенного взаимодействия, основанный на MQI. Этот сервис работает независимо от нижележащих сетевых протоколов. Использование MQSeries дает разработчикам возможность проектировать и реализовывать межплатформенные связи между приложениями быстрее и эффективнее, чем это может быть сделано с помощью традиционной техники программирования сетевых процессов. MQSeries поддерживает соответствующие коммуникационные протоколы и восстановление в случае возникновения аварийных ситуаций, обеспечивая корректную доставку сообщений. Информация может передаваться между приложениями, работающими в рамках System/390, серверов и персональных компьютеров. Наиболее целесообразным применение этого сервиса оказывается в тех случаях, когда взаимодействующие приложения характеризуются длительными промежутками работы без необходимости в установлении соединения, или промежутками периодического обслуживания. Такие случаи характерны для приложений, обрабатывающих транзакции с использованием IMS, CICS и TSO. Мосты для таких типов транзакций дают возможность пользователям различных систем иметь доступ к приложениям, работающим на мэйнфреймах, без перепрограммирования собственных интерфейсов. MQSeries поддерживает соединения как по протоколу TCP/IP, так и по протоколу SNA APPC. Поддерживаемые этим сервисом платформы включают в себя такие системы, как OS/2, MVS/ESA, OS/390, OS/400, VSE/ESA, VAX/VMS, UNIX, Sun Solaris и др.

< Лекция 7 || Лекция 8: 12345 || Лекция 9 >