Опубликован: 16.07.2017 | Доступ: свободный | Студентов: 2350 / 1087 | Длительность: 26:49:00
Лекция 18:

Основы построения системы стандартов ИТ

18.5.2. Базовая эталонная модель взаимосвязи открытых систем (модель OSI)

Обобщенная структура любой программной или информационной системы (ИС) может быть представлена, как было отмечено выше, двумя взаимодействующими частями:

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

С этим разделением и обеспечением взаимосвязи тесно связаны две группы вопросов стандартизации:

  • стандарты интерфейсов взаимодействия прикладных программ со средой ИС, прикладной программный интерфейс (API - Application Program Interface);
  • стандарты интерфейсов взаимодействия самой ИС с внешней для нее средой (EEI - External Environment Interface).

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

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

Эта модель используется более 20 лет, она "выросла" из сетевой архитектуры SNA (System Network Architecture), предложенной IBM. Модель взаимосвязи открытых систем OSI (Open Systems Interconnection) описывает общие принципы взаимосвязи открытых систем и используется в качестве основы для разработки многих стандартов ISO в области ИТ. Публикация этого стандарта подвела итог многолетней работы многих известных телекоммуникационных компаний и стандартизующих организаций.

В 1984 г. модель получила статус международного стандарта ISO 7498, в 1993 г. вышло расширенное и дополненное издание ISO 7498-1-93. Стандарт имеет составной заголовок "Информационно-вычислительные системы - Взаимосвязь (взаимодействие) открытых систем - Эталонная модель". Краткое название - "Эталонная модель взаимосвязи (взаимодействия) открытых систем" (OSI/BRM - Open Systems Interconnection / Basic Reference Model).

Модель основана на разбиении вычислительной среды на семь уровней, взаимодействие между которыми описывается соответствующими стандартами и обеспечивает связь уровней вне зависимости от внутреннего построения уровня в каждой конкретной реализации (рис. 18.5-2). Основным достоинством этой модели является детальное описание связей в среде с точки зрения технических устройств и коммуникационных взаимодействий. Вместе с тем она не принимает в расчет взаимосвязь с учетом мобильности прикладного программного обеспечения.

Семиуровневая модель взаимодействия (взаимосвязи) информационных систем

Рис. 18.5-2. Семиуровневая модель взаимодействия (взаимосвязи) информационных систем

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

В соответствии с ISO 7498 выделяются семь уровней (слоев) информационного взаимодействия, которые отделены друг от друга стандартными интерфейсами:

  • Уровень приложения (прикладной уровень).
  • Уровень представления.
  • Сеансовый уровень (уровень сессии).
  • Транспортный уровень.
  • Сетевой уровень.
  • Канальный уровень.
  • Физический уровень.

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

Протоколом называется набор алгоритмов (правил) взаимодействия объектов одноименных уровней различных систем.

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

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

При разбиении среды на уровни соблюдались следующие принципы:

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

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

Уровень 7 - уровень приложения (прикладной уровень).

Уровень приложений связан с прикладными процессами. Протоколы, которые определены на седьмом уровне, предназначены для обеспечения доступа к ресурсам сети и программам-приложениям пользователя. На данном уровне определяется интерфейс с коммуникационной частью приложений. В качестве примера протоколов прикладного уровня можно привести протокол Telnet, который обеспечивает доступ пользователя к хосту (главному вычислительному устройству, одному из основных элементов в многомашинной системе или любому устройству, подключенному к сети и использующему протоколы TCP/IP) в режиме удаленного терминала.

Уровень 6 - уровень представления.

На этом уровне информация преобразуется к такому виду, в каком это требуется для выполнения прикладных процессов. Например, выполняются алгоритмы преобразования формата представления данных - ASCII или КОИ-8. Или если для представления данных используется дисплей, то эти данные по заданному алгоритму формируются в виде страницы, которая выводится на экран.

Уровень 5 - сеансовый уровень (уровень сессии).

На данном уровне устанавливаются, обслуживаются и прекращаются сессии между представительными объектами приложений (прикладными процессами). В качестве примера протокола сеансового уровня можно рассмотреть протокол RPC (Remote Procedure Call). Как следует из названия, данный протокол предназначен для отображения результатов выполнения процедуры на удаленном хосте. В процессе выполнения этой процедуры между приложениями устанавливается сеансовое соединение. Назначением данного соединения является обслуживание запросов, которые возникают, например, при взаимодействии приложения-сервера с приложением-клиентом.

Уровень 4 - транспортный уровень.

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

Существует два типа протоколов транспортного уровня - сегментирующие протоколы и дейтаграммные протоколы. Сегментирующие протоколы транспортного уровня разбивают исходное сообщение на блоки данных транспортного уровня - сегменты. Основной функцией таких протоколов является обеспечение доставки этих сегментов до объекта назначения и восстановление сообщения. Дейтаграммные протоколы не сегментируют сообщение, они отправляют его одним пакетом вместе с адресной информацией. Пакет данных, который называется "дейтаграмма" (Datagram), маршрутизируется в сетях с переключением адресов или передается по локальной сети прикладной программе или пользователю.

Уровень 3 - сетевой уровень.

Основной задачей протоколов сетевого уровня является определение пути, который будет использован для доставки пакетов данных при работе протоколов верхних уровней. Для того чтобы пакет был доставлен до какого-либо хоста, этому хосту должен быть поставлен в соответствие известный передатчику сетевой адрес. Группы хостов, объединенные по территориальному принципу, образуют сети. Для упрощения задачи маршрутизации сетевой адрес хоста составляется из двух частей: адреса сети и адреса хоста. Таким образом, задача маршрутизации распадается на две - поиск сети и поиск хоста в этой сети.

Уровень 2 - канальный уровень (уровень звена данных).

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

На канальном уровне данные передаются в виде блоков, которые называются кадрами. Тип используемой среды передачи и ее топология во многом определяют вид кадра протокола транспортного уровня, который должен быть использован. При использовании топологии "общая шина" и"Point-to-Multipoint" средства протокола канального уровня задают физические адреса, с помощью которых будет производиться обмен данными в среде передачи и процедура доступа к этой среде. Примерами таких протоколов являются протоколы Ethernet (в соответствующей части) и HDLC. Протоколы транспортного уровня, которые предназначены для работы в среде типа "точка-точка", не определяют физических адресов и имеют упрощенную процедуру доступа. Примером протокола такого типа является протокол PPP.

Уровень 1 - физический уровень.

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

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

18.6. Базовые спецификации

Базовые спецификации являются основными строительными блоками, из которых конструируются конкретные открытые технологии, и относятся к понятию "общедоступные спецификации" (PAS - Publicly Available Specifications). Система PAS охватывает стандарты де-факто, которые не являются международными стандартами, однако сейчас интенсивно осуществляется процесс принятия наиболее распространенных и сопровождаемых PAS в качестве международных стандартов, что открывает возможность использования PAS в качестве элементов стандартизованных профилей ИТ.

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

Базовые функции ОС: определяются стандартами по окружению открытых систем POSIX (Portable Operating System Interface for Computer Environments)

[ISO/IEC 9945/1:1990, (IEEE Std 1003.1 - 1990), Information technology. Portable Operating System Interface (POSIX) - Part 1: System Application Program Interface (API) [C Language]].

Список соответствующих международных стандартов на базовые спецификации, приведенные ниже, можно найти по адресу:

http://www.osp.irtel.ru/os/1996/04/source/48.htm.

Функции управления базами данных:

  • язык баз данных SQL (Structured Query Language);
  • информационно-справочная система IRDS (Information Resource Dictionary System);
  • протокол распределенных операций RDA (Remote Database Access);
  • PAS Microsoft на открытый прикладной интерфейс доступа к базам данных ODBC API.

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

  • MOTIF из OSF для графического пользовательского интерфейса (GUI);
  • стандарт OPEN LOOK;
  • X Window вместе с GUI и телекоммуникациями;
  • стандарты для виртуального терминала (Virtual Terminal - VT), включая процедуры работы VT в символьном режиме через TCP/IP;
  • стандарты машинной графики GKS (Graphical Kernel System);
  • GKS-D (Graphical Kernel System - 3 Dimentional);
  • PHIGS (Programmers Hierarchical Interactive Graphics System);
  • CGI (Computer Graphics Interface).

Функции взаимосвязи открытых систем, включающие:

  • спецификации сервиса и протоколов, разработанные в соответствии с моделью OSI (рекомендации серии X.200);
  • стандарты для локальных сетей (IEEE 802) [IEEE Std 802-1990];
  • спецификации сети Internet [Transmission Control Protocol (TCP) - RFC 793, User Datagram Protocol (UDP) - RFC 768, Internet Protocol (IP) - RFC 791].

Функции распределенной обработки, включая следующие базовые спецификации OSI:

  • вызов удаленной процедуры RPC (Remote Procedure Call);
  • фиксация, параллельность и восстановление CCR (Commitment, Concurrency and Recovery);
  • протокол надежной передачи (RT);
  • обработка распределенной транзакции DTP (Distributed Transaction Processing);
  • управление файлами, доступ к файлам и передача файлов FTAM (File Transfer, Access and Management);
  • управление открытыми системами (OSI Management);
  • API для доступа к сервису Object Request Broker (ORB) в архитектуре CORBA и API, определяющий базовые возможности такого сервиса (Commom Object Services - COS);
  • язык спецификации интерфейсов объектов IDL (Interface Definition Language) и его проекции на объектно-ориентированные языки.

Распределенные приложения: спецификации специальных сервисных элементов прикладного уровня модели OSI, стандартов Internet, OMG, X/Open. Например:

  • система обработки сообщений MHS (Message Handling System - X.400)];
  • служба справочника (The Directory - X.500);
  • спецификации распределенных приложений с архитектурой клиент-сервер и распределенных объектных приложений.

Структуры данных и документов, форматы данных:

  • средства языка ASN.1 (Abstract Syntax Notation One), предназначенного для спецификации прикладных структур данных - абстрактного синтаксиса прикладных объектов;
  • форматы метафайла для представления и передачи графической информации CGM (Computer Graphics Metafile);
  • спецификация сообщений и электронных данных для электронного обмена в управлении, коммерции и транспорте EDIFACT (Electronic Data Interchange for Administration, Commence and Trade);
  • спецификации документов: спецификации структур учрежденческих документов ODA (Open Document Architecture);
  • спецификации структур документов для производства, например SGML (Standard Generalized Markup Language);
  • языки описания документов гипермедиа и мультимедиа, например HTML (HyperText Markup Language); HyTime, SMDL (Standard Music Description Language), SMSL (Standard Multimedia/Hypermedia Scripting Language), SPDS (Standard Page Description Language), DSSSL (Document Style Semantics and Specification Language);
  • спецификация форматов графических данных, например форматов JPEG, JBIG и MPEG.

Спецификации инструментальных окружений (в частности, языков реализации и их библиотек) и CASE-окружений (как, например, ISO/IEC DIS 13719, ECMA Portable Common Tool Environment).

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

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

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

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

Идентификация спецификаций производится по следующим элементам: имя (наименование) спецификации, дата публикации (дата, когда спецификация стала доступной для общего использования), организация-спонсор (организация, ответственная за разработку и(или) поддержание, и(или) существование данной спецификации), применимость, степень согласованности, доступность изделия, полнота, зрелость, стабильность, проблемы/ограничения, аттестационное тестирование, привязки, дальнейшие возможности развития, альтернативные спецификации.

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

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

валентина петрашева
валентина петрашева
rozybayev kemal
rozybayev kemal