В данном материале рассматриваются средства передачи данных между
приложениями, функционирующими на различных аппаратно-программных
платформах. В частности, рассматриваемые средства
обеспечивают обмен данными между наследованными программными
продуктами, выполняющимися в виртуальных машинах, и современными
программными продуктами. Это позволяет интегрировать наследованное
программное обеспечение в новейшие технологические процессы.
В
качестве средства обмена данными используется протокол TCP/IP ,
поддержка которого обеспечена в операционной системе VM/ESA .
Использование данной операционной системы в качестве среды
функционирования наследованных операционных систем (BPS , MVT , и т.д.)
оправдано, в частности хотя бы тем, что она позволяет функционировать
наследованным операционным системам на современных мэйнфреймах (IBM
9672 моделей выше G3 и z/серверах). В общем случае,
средства передачи данных предназначены для обмена данными между
хранилищами, соединенными сетью. Под хранилищем, в данном случае,
понимаются данные, хранящиеся под управлением программ, которые
выполняются на конкретной аппаратно-программной платформе. Например,
файловая система, реализованная в BPS , база данных “ОКА”, файловая
система в “ LINUX ” и т.д. В зависимости от реализации хранилище может
иметь возможности для организации обмена данными с внешним миром
посредством стандартных средств или не иметь их. Хранилища,
реализованные на базе наследованных операционных систем, как правило,
не поддерживают современные протоколы обмена данными. Рассматриваемые в
данном документе средства предназначены, главным образом, для
организации доступа к хранилищам такого типа.
Для
организации обмена данными разработаны программы посредники,
функционирующие в специальных виртуальных машинах и взаимодействующие,
с одной стороны, с программами поддержки протокола TCP/IP VM/ESA , а с
другой, с наследованными операционными системами, выполняющимися в
своих виртуальных машинах. Передача данных по сети выполняется
программами посредниками с помощью стандартных протоколов (FTP и NFS). В
программах посредниках предусматривается контроль доступа к информации,
посредством взаимодействия с внешним менеджером ресурсов, в частности с
RACF . Кроме того, задачей посредника является синхронизация доступа к
данным и обеспечение целостности информации. Для решения этой задачи
посредники используют средства и механизмы, имеющиеся в операционных
системах, на которых функционируют хранилища. Поэтому посредники должны
быть специализированы для работы с конкретными ОС и приложениями в них.
Хотя основные концепции, правила работы и протоколы будут для всех
посредников общими.
Управление обменом осуществляется с
рабочей станции в интерактивном или пакетном режиме с помощью программ
клиентской части. Для интерактивного режима разработан графический
интерфейс, который значительно упрощает работу пользователя. В случае
пакетного режима задания на обмен данными формулируются на специально
разработанном языке управления обменом. При пакетном режиме управление
обменом может выполняться из виртуальной машины, функционирующей в VM /
ESA или с рабочей станции. Программы клиентской части разработаны на языке программирования JAVA и могут выполняться практически на любых платформах.
В
общем случае хранилища могут располагаться на различных физических
хостах, например, хранилище может быть реализовано на эмуляторе. При
такой реализации посредник будет частью программы эмулятора.
В
настоящий момент реализован следующий сценарий обмена данными с BPS и
LINUX , функционирующими в виртуальных машинах VM/ESA . В
VM/ESA определен порт с номером 1951, при подключении к которому
рабочей станции, запускается виртуальная машина агент, которая будет
обслуживать запросы, поступающие с этой рабочей станции, все время до
тех пор пока сеанс не будет завершен.
• Сеанс начинается с
команды LINKAGENT , поступающей с рабочей станции. В этой команде могут
быть указаны имя пользователя и его пароль. На этом этапе производится
проверка прав доступа, по имени пользователя, если указаны имя и
пароль, и, возможно, по IP -адресу. Запрос на подключение может быть
отвергнут или удовлетворен, в последнем случае, агент отправляет на
рабочую станцию имя своей виртуальной машины и адрес минидиска,
используемого в качестве буфера обмена. • Следующим шагом
пользователя является подключение к хранилищу с помощью команды LINKSH
, в ней указывается имя хранилища и возможно имя пользователя,
определенное в этом хранилище и его пароль. Например, если пользователь
хочет получить доступ к данным, расположенным в файловой системе LINUX
, то доступ к ним будет осуществляться от имени пользователя,
указанного либо в этой команде, либо в команде подключения к агенту,
либо, если оно не было указано ни в одной из этих команд, в
соответствии с правилами умолчания принятыми для данного хранилища. При
описании хранилища для него может быть определен анонимный пользователь
с ограниченными правами доступа.
• Взаимодействие с
операционными системами BPS , функционирующими на конкретном хосте,
выполняется специальной виртуальной машиной (скажем – брокер BPS). В её
функции входит ввод команд оператора BPS , прием и анализ ответов BPS .
Для выполнения этих функций используется механизм вторичного
пользователя VM/ESA (служба *MSG , для приема сообщений от BPS и
команда CP SEND , для посылки команд в BPS). По сравнению с
другими наследованными операционными системами BPS имеет то
преимущество, что в нем есть возможность чтения файлов с минидисков CMS
. Эта его способность используется для передачи данных из внешнего мира
в BPS . С другой стороны, CMS распознает и может читать данные из
наборов данных традиционных IBM 'их операционных систем.
• Процесс пересылки данных с рабочей станции в BPS выглядит следующим образом: • Данные с рабочей станции с помощью FTP сервера VM/ESA пересылаются на рабочий минидиск агента.
• После завершения пересылки агенту с рабочей станции передается приказ на перенос файлов CMS в BPS . • Программы
агента подключают рабочий минидиск к виртуальной машине BPS и монтируют
том. Для этого брокером используются команды BPS и CP , посылаемые в
виртуальную машину BPS с помощью команды SEND .
• Затем, в
соответствии с параметрами приказа, формируются команды оператора BPS ,
которые переписывают данные в наборы данных BPS (команды: CPFL , CPNFL
и т.п.). Результаты выполнения команд анализируются брокером и
передаются агенту, который, в свою очередь, передает сообщение о
результате выполнения пересылки на рабочую станцию. • Для
работы в диалоговом режиме предусмотрен целый набор вспомогательных
команд, позволяющих получить на экране список доступных томов BPS ,
перечень наборов данных на томе, их характеристики DCB , список
разделов библиотек и т.д.
Дополнительно, если это
предусмотрено политикой безопасности, агент производит проверку прав
доступа пользователя к конкретным наборам данных, вплоть до разделов
библиотек. • Пересылка из BPS на рабочую станцию:
• В
соответствии с параметрами приказа, поступившего с рабочей станции (имя
тома BPS , имя набора данных и т.д.), агент подключает соответствующий
минидиск машины BPS 'а к своей виртуальной машине и выполняет перенос
данных из наборов данных в файлы CMS на своем рабочем минидиске
(команда MOVE CMS). • О результате переноса извещается рабочая станция, которая, используя FTP , переписывает данные на свой винчестер.
Для
обеспечения целостности наборов данных в BPS передаются задания,
резервирующие за собой наборы данных, участвующие в пересылке. После
завершения пересылки эти задания завершаются. Так же как и при
пересылке в BPS , производится проверка прав доступа пользователя к
конкретным наборам данных. • В случае ОС “ LINUX ” передача
данных может выполняться по различным сценариям, в зависимости от того,
есть ли FTP -сервер в самом “ LINUX ”, с каким хранилищем производится
обмен и т.д. Во всяком случае, управление обменом осуществляется путем
подключения агента к виртуальной машине посредством средства логических
устройств VM/ESA (Diagnose X '7 C ').
• В дальнейшем предполагается возможность организации с рабочей станции обмена между любыми хранилищами. Еремин О. Кирьянов М. |