Базовая эталонная модель взаимодействия открытых систем (бэмвос)
Базовая эталонная модель взаимодействия открытых систем (БЭМВОС) - это концептуальная основа, определяющая характеристики и средства открытых систем. Она обеспечивает работу в одной сети систем, выпускаемых различными производителями. Разработана ISO (международной организацией стандартов) и широко используется во всём мире как основа концепций информационных сетей и их ассоциаций. На базе этой модели описываются правила и процедуры передачи данных между открытыми системами. Она также описывает структуру открытой системы и комплекс стандартов, которым она должна удовлетворять.
Открытая система
Открытая система (OSI) - это система, использующая соответствующие международные стандарты.
По определению комитета IEEE открытая система - это система, реализующая открытые спецификации (стандарты) на интерфейсы, службы и форматы данных, достаточное для того, чтобы обеспечить:
· возможность переноса (мобильность) прикладных систем с минимальными изменениями на широкий диапазон систем;
· совместную работу (интероперабельность) с другими прикладными системами на локальных и удалённых платформах;
· взаимодействие с пользователями в системе, облегчающее переход от системы к системе (мобильность пользователей).
"Открытая спецификация" определяется как "общедоступная спецификация, которая поддерживается открытым, гласным согласительным процессом, направленным на постоянную адаптацию новой технологии, и соответствует стандартам". Согласно этому определению, открытая спецификация не зависит от конкретной технологии, т.е. не зависит от конкретных технических и программных средств или продуктов отдельных производителей.
Каждая открытая система предназначена для выполнения двух задач: обработки и передачи данных, следовательно, она состоит из 2 частей.
Первая часть - это прикладные процессы, предназначенные для обработки данных и в первую очередь для нужд пользователей. Вторая часть - область взаимодействия, которая обеспечивает передачу данных между прикладными процессами, расположенными в различных системах.
Основными элементами модели являются: уровни, объекты, соединения, физические средства соединений.
Модель информационной системы состоит из трёх основных составляющих:
· прикладные процессы (осуществляют обработку данных, а также организуют управление сетью);
· область взаимодействия (размещаемые в ней блоки прокладывают в сети логические каналы (пунктирная линия на рисунке) между портами прикладных процессов и обеспечивает их взаимодействие);
· физические средства соединений (обеспечивают физическую связь систем).
Рисунок «Модель информационной сети»
Из-за сложности области взаимодействия она делится на группу расположенных друг над другом уровней. В БЭМВОС их выделяется семь. При этом логическая структура системы может быть представлена следующим рисунком:
Каждый уровень выполняет определённые ему функции сетей:
№ | Уровень | Основные функции |
Прикладной | интерфейс с прикладными процессами | |
Представи-тельный | согласование формы представления информации (изображение, текст, строка и т.д.); формирование данных (коды, алфавиты, элементы графики) | |
Сеансовый | поддержка диалога прикладных процессов; обеспечение соединения и разъединения этих процессов; обеспечение передачи данных между прикладными процессами | |
Транспорт-ный | сквозной (через коммуникационную сеть) обмен данными между системами | |
Сетевой | обнаружение ошибок в физических средствах соединения; маршрутизация информации; сегментирование и объединение блоков данных | |
Канальный | управление каналами передачи данных; передача данных по каналам; обнаружение ошибок в каналах | |
Физический | обеспечение физического интерфейса с каналами |
Уровни выполняют широкий комплекс функций, связанных с передачей данных между прикладными процессами и не зависят друг от друга. Любой уровень состоит из активных объектов. Каждый из них взаимодействует с другими объектами на том уровне, на котором они расположены, предоставляет сервис соседнему сверху уровню и получает сервис с соседнего нижнего уровня. Для выполнения возложенных на них задач объекты обмениваются блоками данных.
Рассмотрим указанные уровни подробно:
7. Прикладной. Обеспечивает прикладным процессам средство доступа к области взаимодействия. Для этого он выполняет функции:
· описание форм и методов взаимодействия прикладных процессов;
· идентификация пользователей по их паролям, адресам, электронным подписям;
· определение достаточности имеющихся ресурсов;
· подача заявок представительному уровню на необходимые методы описания информации;
· посылка запросов на соединение с другими прикладными процессами;
· синхронизация взаимодействия прикладных процессов;
· определение качества обслуживания (время доставки блоков данных, обнаружение ошибки и т.д.)
6. Представительный. Он представляет в нужной форме данные, передаваемые между прикладными процессами (кодирование, шифрование, синтаксис и т.д.). Представительный уровень выполняет следующие основные задачи:
· выбор образа представления из возможных вариантов;
· изменение образа в виртуальный (использование стандартных виртуальных форм представления данных позволяет обеспечить взаимодействие между прикладными процессами, не выясняя, какие виды представления данных используют взаимодействующие партнёры);
· преобразование синтаксиса данных (кодов символов в стандартный);
· определение формата данных.
Для реализации этого представительный уровень выполняет следующие функции:
· генерация запросов на установление сеансов взаимодействия прикладных процессов;
· согласование между прикладными процессами видов представления данных;
· засекречивание данных;
· передача запросов на прекращение сеансов.
5. Сеансовый уровень. Определяет процедуру проведения сеансов (циклов операций, выполняемых без перерыва) между пользователями или прикладными процессами.
Для проведения сеанса в каждой информационной сети выполняются процедуры, которые определяют установление сеанса, его идентификацию, восстановление после отказа, сбоя или ошибки, и прекращение сеанса. Во время каждого сеанса партнёры обмениваются данными и активно управляют происходящим процессом.
Данный уровень обеспечивает выполнение следующих функций:
· установление и завершение на сеансовом уровне соединения между партнёрами;
· управление взаимодействием прикладных процессов;
· синхронизация работы сеансовых соединений;
· извещение прикладных процессов об исключительных ситуациях;
· прерывание в нужных случаях прикладных процессов и их корректное возобновление.
4. Транспортный уровень. На этом уровне данные передаются через коммуникационную сеть. В перечень функций транспортного уровня входят:
· управление передачей и обеспечение целостности блоков данных;
· обнаружение ошибок, частичная их ликвидация, сообщение об неисправленных ошибках;
· восстановление передачи после отказов и неисправности;
· предоставление приоритетов при передаче блоков;
· присылка подтверждений от переданных блоков данных.
3. Сетевой уровень. Для того, чтобы, с одной стороны, сохранить простоту процедур передачи данных для типовых топологий, а, с другой стороны, допустить использование произвольных топологий, вводится дополнительный сетевой уровень. Сообщения сетевого уровня принято называть "пакетами" (packet).
Главная задача сетевого уровня - выбора наилучшего пути следования пакетов, т.е. маршрутизация. Эта проблема осложняется тем, что самый короткий путь не всегда самый лучший, время передачи данных по маршруту зависит от пропускной способности каналов связи и интенсивности трафика, которые могут изменяться с течением времени.
Основная идея сетевого уровня состоит в том, чтобы оставить технологии, используемые в объединяемых сетях в неизменном в виде, но добавить в кадры канального уровня дополнительную информацию - заголовок сетевого уровня, на основании которой можно было бы находить адресата в сети с любой базовой топологией.
Таким образом, сетевой уровень обеспечивает прокладку каналов, соединяющих системы через коммуникационную сеть. Он может выполнять функции:
· создание сетевых соединений и идентификация их портов;
· обнаружение и исправление ошибок;
· управление потоками пакетов;
· маршрутизация и коммутация;
· сегментирование и объединение пакетов.
2. Канальный уровень. Протоколы канального уровня обеспечивают доставку данных между любыми узлами только в сети с соответствующей типовой топологией.
На этом уровне осуществляется передача данных между системами. Поскольку на физическом уровне просто пересылаются биты и не учитывается, что в некоторых сетях физическая среда передачи может быть занята, одной из задач канального уровня является проверка доступности среды передачи.
Сформированный на сетевом уровне пакет перемещается на канальный уровень для упаковки в блок данных, именуемый кадром.
Кадр по каналам передачи данных направляется смежной системе. Здесь пакет извлекается из кадра. Если рассматриваемая система является адресатом (абонентской системой), то пакет передаётся на верхние уровни этой системы. Если же это ретрансляционная система, которая находится на пути к системе - адресату, то пакет упаковывается в новый кадр, пока пакет не достигнет адресата.
Функции уровня:
· организация (установление, управление, расторжение) канальных соединений и идентификация их портов;
· организация последовательностей и передача блоков данных;
· обнаружение и исправление ошибок;
· управление потоками данных.
Размер кадра зависит от способа передачи и качества канала, по которому он передаётся.
1. Физический уровень - это уровень, определяющий механические, оптические, электрические и процедурные средства передачи сигналов через физические средства соединения. Задачей уровня является создание физических интерфейсов, необходимых для подключения систем к физическим средствам соединения. Каждый из этих интерфейсов включает механические аспекты (муфты, соединители и т.д.), а также оптические или электрические характеристики (напряжение, ток, методы модуляции и т.д.).
Данный уровень выполняет следующие функции:
· установление и разъединение физических соединений;
· передача последовательностей сигналов;
· прослушивание канала (оно необходимо в тех случаях, когда к одному каналу подключается группа систем, но одновременно передавать сигналы разрешается только одной из них). Прослушивание используется для определения, свободен ли канал для передачи;
· идентификация канала;
· оповещение о появлении неисправностей и отказов.