Часть I

1.3. Примеры профилей


Пример 1.

     В данном примере зададимся целью определить профили основных функциональных компонент корпоративной информационной технологии некоторой организации, которая хотела бы обеспечить переносимость разрабатываемых ей SQL-приложений (как серверной, так и клиентских частей), написанных с использованием языков С++ и SQL. При этом для определенности будем предполагать, что сетевая инфраструктура данной организации основана на использовании локальной сети FDDI (См. рис. 1.1).



Рис. 1.1. Пример корпоративной информационной технологии


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

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

     Коммуникационный интерфейс начнем формировать, начиная с мощного протокола прикладного уровня RDA (ISO 9579), используемого, в частности, для реализации распределенных SQL-приложений с архитектурой клиент-сервер над стеком протоколов модели RM OSI. Для большей гибкости решения разобьем стек протоколов модели RM OSI на две группы протоколов – протоколы верхних трех уровней, которые обозначим OSI Stack (7-5), и протоколы транспортной системы, обеспечивающие транспортные услуги OSI в режиме с соединением.

     Если мы обратимся к справочнику международных стандартизованных профилей [38], то, обнаружим, что уже существует профиль, описывающий набор протоколов для реализации передачи данных по транспортному протоколу OSI через локальную сеть FDDI. Данный профиль имеет наименование TC54. Он включает ссылки на стандарт транспортного протокола OSI, стандарт протокола сетевого уровня (X.25) вместе с дополнениями, адаптирующими этот протокол для использования в локальных сетях, а также ссылки на стандарты протоколов нижних уровней, определяющих функционирование сети FDDI. Профиль TC54 является типичным примером OSI-профиля, так как определяет только функции сетевого взаимодействия, определенные стандартными протоколами, разработанными в соответствии с моделью RM OSI.

     Таким образом, описание коммуникационного интерфейса в профиле Pc будет включать ссылки на следующие спецификации:

  • стандарт протокола DRA
  • стандарты протоколов верхних уровней модели RM OSI (OSI Stack (7-5))
  • профиль TC54.

     В состав спецификаций API включим стандарты языков С++ и SQL (будем пока обозначать их как Std «С++» и Std «SQL», соответственно), а также интерфейс RDA, реализующий сервис протокола RDA для клиентских систем. Таким образом, описание интерфейса API в профиле Pc включает ссылки на следующие спецификации:

  • Std «С++»
  • Std «SQL»
  • интерфейс RDA-клиента.

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

     Профиль серверной части, обозначим его Ps, будет содержать идентичный с профилем Pc коммуникационный интерфейс (иначе клиентские и серверные системы не смогли бы взаимодействовать). Интерфейс API профиля Ps будет почти идентичным соответствующему интерфейсу профиля Pc, за исключением различий в программных интерфейсах для сервиса RDA в клиентской и сервисных системах. Однако для простоты примера мы не будем заострять внимание на этих различиях.

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

     Отметим еще раз что, в соответствии с введенными выше определениями, построенные нами в примере профили Pc и Ps относятся к OSE-профилям.

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

     Для профилей Pc и Ps таким сценарием может служить схема, показанная на рис. 1.2.


Рис. 1.2. Сценании для профилей Pc и Ps.

     Предположим, что при анализе предложенного нами решения заказчик захотел построить транспортную систему своей организации на основе сети Intranet.

     В этом случае нам пришлось бы перепроектировать профиль T54, заменив его, например, на профиль Ti, основанный на использовании следующих стандартов:

  • RFC 1006 (IETF STD 35). ISO Transport Service on top the TCP.
  • RFC 793 (IETF STD 7). Transmission Control Protocol (TCP).
  • RFC 791 (IETF STD 5). Internet Protocol (IP).
  • RFC 1390 (IETF STD 36). Transmission of IP and ARP over FDDI Networks.
  • ISO 9314 FDDI LAN.

     Таким образом, основная идея построения новой транспортной системы Ti состоит в использовании протокола TS (RFC 1006), эмулирующего интерфейс протокола TP OSI над стеком протоколов TCP/IP, а также протокола (RFC 1390), обеспечивающего передачу IP-пакетов через сеть FDDI. Протокольная структура транспортной системы Ti иллюстрируется на рис. 1.3.



Рис. 1.3. Стек протоколов конечной системы, реализующей транспортный сервис TP OSI над стеком протоколов TCP/IP и FDDI.


     Следует заметить, что профиль Ti относится к классу коммуникационных профилей. Однако по определению он не является OSI-профилем, так как содержит ссылки на стандарты, не входящие в состав стандартов модели OSI.



Пример 2.

     Во втором примере детальнее рассмотрим использовавшийся выше международный стандартизованный профиль TC54, определяющий транспортный сервис в режиме с соединением через локальную сеть FDDI и являющийся примером OSI-профиля.

     Сценарий для профиля TC54, взятый из справочника международных стандартизованных профилей, приведен на рис. 1.4. На сценарии показывается типовая конфигурация систем, участвующих во взаимосвязи, и, собственно, эталонная точка (reference point) взаимосвязи, которая и обозначает определяемый в профиле коммуникационный интерфейс для подключения оконечной системы к сети FDDI.



Рис. 1.4. Сценарий, иллюстрирующий применение профиля TC54


     Функциональность данного профиля (без учета функций сетевого управления), т.е. состав протоколов, входящих в профиль, показаны на рис. 1.5. Данный стек включает:

  • многочастевой стандарт ISO 9314 FDDI LAN, определяющий базовые протоколы сетевой технологии FDDI;
  • стандарт для подуровня управления логическим каналом - LLC типа 2 (ISO/IEC 8802-2), т.е. с сервисом, ориентированным на соединение;
  • протокол и сервис сетевого уровня OSI (X.25) - ISO/IEC 8208 и ISO/IEC 8878, соответственно;
  • протокол транспортного уровня OSI - ISO/IEC 8073.


Рис. 1.5. Стек протоколов конечной системы, реализующей профиль TC54

Пример 3.

     Следующий пример проиллюстрирует применение API-профилей. В системе стандартов POSIX, с которой нам предстоит еще детальное знакомство, определяются стандарты на переносимые интерфейсы операционных систем. В ней аппарат профилей используется для построения стандартизованных API-интерфейсов различной проблемной ориентации посредством агрегирования и параметрической настройки модулей функциональности (Units of Functionality) уже определенных стандартных интерфейсов. В частности, к важнейшим профилям, включенным в состав набора спецификаций POSIX [5], относятся:

  • профиль супервычислительных систем (Supercomputing Profile)
  • профили систем реального времени (Realtime Profiles)
  • профиль систем мультипроцессной обработки (Multiprocessing Profile).

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

  • профиль минимальных (встроенных) систем реального времени (Minimal (Embedded) Realtime System Profile)
  • профиль систем-контроллеров реального времени (Realtime Controller System Profile)
  • профиль выделенных систем реального времени (Dedicated Realtime System Profile)
  • профиль многоцелевых систем реального времени (Multi-Purpose Realtime System Profile).

     Для определенности рассмотрим профиль для встроенных или минимальных систем реального времени. Данный профиль, имеющий в классификации стандартов наименование PSE51, описывает API-окружение систем с минимальными функциональными возможностями. В частности, таким системам не требуется файловая система, средства мультипроцессности, система управления памятью, средства пользовательского взаимодействия, расширенные средства ввода/вывода и пр. Поэтому основным приемом построения профиля является селекция требуемых для систем данного класса сервисов, описанных в стандартах POSIX.

     Для удобства выбора нужной функциональности все возможности, определенные стандартами POSIX, разбиты на модули функциональности (Units of Functionality). Такое разбиение задано в табличной форме. Аналогично представлены и опции или дополнительные возможности. В частности, для стандарта P1003.1 (System Interfaces - системный интерфейс) все описанные в нем функции API разбиты на 14 функциональных групп.

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

     Более конкретно, определение функциональности данного профиля формируется из следующих стандартов:

  • P1003.1 (System Interfaces - системный интерфейс)
  • P1003.1b (Realtime Extention - расширение для реального времени)
  • P1003.1с (Threads Extention).

    Из стандарта P1003.1 в профиль выбираются следующие модули функциональности:

  • POSIX_SIGNALS
  • POSIX_SINGL_PROCESS
  • POSIX_DEVICE_IO
  • POSIX_C_LANG_SUPPORT.

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



Пример 4.

    В данном примере рассмотрим профили, разработанные с целью классификации и описания функциональности оконечных систем для различных технологий обработки сообщений. Такие профили предназначены для разработчиков оконечных систем обработки сообщений, например, для разработчиков информационных приборов (information appliances), предоставляющих пользователям сервис электронной почты.

    Стандартизации сервисов и принципов функционирования систем обработки сообщений (Message Handling System - MHS) посвящена серия рекомендаций ITU-T X.400 (в эквивалентном этим рекомендациям стандарте ISO 10021 системы данного класса называются системами обмена текстовыми сообщениями (Message-oriented Text Interchange Systems - MOTIS)). Кроме этого, серия F.400 рассматривает вопросы использования для передачи сообщений систем телематики (телекс, телетекст, видеотекст, факс) и систем физической доставки сообщений (почта, курьерская доставка), а также использование систем передачи сообщений для передачи электронных данных.

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

    Прежде, чем перейти к описанию профилей для классов систем , рассмотрим функциональную модель системы обработки сообщений, а также принципы ее работы. Данная модель, заимствованная из документа Rec. ITU-T X.400, иллюстрируется на рис. 1.6.


Рис. 1.6. Функциональная модель системы обработки сообщений (MHS)

На рис. 1.6. используются следующие сокращения:

  • MHS - Message Handlig System - система обработки сообщений;
  • MTS - Message Transfer System - система передачи сообщений;
  • MTA - Message Transfer Agent – агент системы передачи сообщений;
  • MS - Message Store – система хранения сообщений;
  • UA - User Agent – агент пользователя;
  • PDAU – Physical Delivery Access Unit – блок доступа к системе физической доставки;
  • AUs - Access Units - блоки доступа к системам телематики;
  • [user] - пользователь.

     Система обработки сообщений предоставляет пользователям возможность обмениваться сообщениями на основе метода промежуточного хранения сообщений (Store-and-forward – запомни-передай). Сообщения, отправляемые пользователем-отправителем (originator) через соответствующий ему прикладной процесс UA, передаются системой передачи сообщений MTS (являющейся составной частью системы обработки сообщений MHS) одному или нескольким пользователям-получателям (recipient). Все функции в MHS выполняются активными сущностями (прикладными процессами OSI), какими являются MTA, MS, UA, AU.

В частности:

  • агенты MTA обеспечивают передачу между узлами системы MTS накопленных в них сообщений, а также предоставление сервиса MTS своим пользователям (агентам UA и системам хранения MS);
  • системы хранения сообщений MS хранят полученные от MTS сообщения и предоставляют возможность своим пользователям осуществлять поиск полученных сообщений и манипулирование ими;
  • агенты UA обеспечивают пользователям доступ к сервисам MHS;
  • блоки доступа AU реализуют подключение к системе передачи MTS различных служб телематики и служб физической доставки почты.

     Рекомендации X.400 содержат несколько сот страниц текста с описанием сервисов указанных функциональных компонент системы MHS и протоколов взаимодействия между ними.

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

Рассматриваемая система профилей охватывает три сферы применения систем MHS, а именно:

  • системы общего назначения (Common Messaging), независящие от конкретных областей применения и типов передаваемой информации;
  • системы межабонентского обмена сообщениями (Interpersonal Messaging System или IPMS), т.е. системы, которые для взаимодействия персональных пользователей объединяют возможности систем обработки сообщений общего назначения, систем телематики и систем физической доставки сообщений, формируя единую среду обмена сообщениями;
  • системы обмена электронными данными (Electronic Data Interchange Messaging или EDIGM), например, системы, поддерживающие построение распределенных приложений, компоненты которых могут обмениваться между собой производственными данными, используя сервис, предоставляемый MTS.

     Для этих трех случаев определены три набора профилей, получивших наименования AMH1n, AMH2n, AMH3n, соответственно.

     Рассмотрим для определенности набор профилей AMH3n, который мог бы представлять интерес для развития первого примера, связанного с построением некоторой корпоративной технологии, обеспечивающей, например, возможность обмена между удаленными подразделениями организации EDI-документами, соответствующими стандарту EDIFACT (ISO 9735-88).

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

     Данная группа включает следующие профили, в которых определяются требования к функциональным возможностям сущностей EDI-UA и EDI-MTS, а также к контентозависящему протоколу взаимодействия между конечными пользователями:

  • AMH31 (EDIMG Content (Pedi protocol) - between EDIMG user agents (UAs)) - контентозависящий протокол взаимодействия между конечными EDIMG-пользователями;
  • AMH32 (EDIMG Requirements for Message Transfer (P1 protocol) - between message transfer agents (MTAs)) – EDIMG-требования на передачу сообщений (протокол P1) – между агентами передачи сообщений MTA;
  • AMH33 (EDIMG Requirements for Message Transfer System (MTS) Access (P3 protocol) - between a remote UA and an MTA, and between a remote message store (MS) and an MTA - EDIMG-требования к доступу к системе передачи сообщений MTS (протокол P3) – между удаленной системой хранения MS и MTA;
  • AMH34 - EDIMG Requirements for Enhanced Message Store (MS) Access (P7 protocol) - between a remote UA and an MS - EDIMG-требования к доступу к системе хранения MS (протокол P7) – между удаленным агентом UA и системой хранения MS.

     На рис. 1.7 показан сценарий для набора профилей



Рис. 1.7. Сценарий для набора профилей AMH3n (знаком * отмечен протокол доступа к сервису EDI-MS с расширенными возможностями по сравнению с описанным в профиле AMH14)

Пример 5.

     Аппарат профилирования применяется также и в стандартизации Internet-технологий. В качестве примера укажем на RFC 1890 ‘RTP Profile for Audio and Video Conference with Minimal Control’, в котором описывается применение транспортного протокола реального времени (RTP) и соответствующего ему протокола управления RTCP для поддержки реализации аудио- и видеоконференций с множеством участником при минимальном управлении. При этом учитывается использование ряда стандартов на представление и передачу аудио- и видео данных.


Предыдущая глава Оглавление Следующая глава