ZuboLom.ru

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

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

Среда передачи

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

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


Уровни OSI

Уровни OSI

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

Протоколы специфицируют форматы сообщений:
Адрес получателя | Адрес отправителя | Данные | Контрольная сумма

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

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

1 уровень – Физическое управление. Этот уровень определяет механические (кабели и разъемы) и электрические соединения между компьютерами. Здесь описывается:

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

2 уровень – Канальный уровень. Формирует из данных, передаваемых уровнем "1" (биты), формирует специальные кадры и их последовательности.
Кадр выглядит так:

Адрес получателя | Адрес отправителя | Данные | Контрольные суммы

На уровне "2" так же осуществляется управление доступом к передающей среде, если несколько машин используют один и тот же кабель связи. Возможные решения:

  • Последовательный опрос;
  • Передача маркера;
  • Соперничество.
В настоящее время канальный уровень реализуется с помощью следующих сетевых технологий: Ethernet, ARC net, Token Ring, FDDI – оптоволокно. Их характеристики:

ПротоколСкорость передачиMax длина пакета (байт)Цена подключенияДоступ
ARC net2,5 Мбит/с51210 $Toking passing
Ethernet10 Мбит/с1,5 тыс.15 $CSMA/CD
Token Ring4-15 Мбит/с4 тыс.50 $Toking passing

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

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


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


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

  • Обмен по очереди;
  • Диалог с прерыванием друг друга.
Здесь же устанавливается продолжительность общения в диалоге.

6 уровень – Уровень представления данных. Осуществляет интерпретацию данных, передаваемых во время диалога. Осуществляется перекодировка символов, шифрование, сжатие, редактирование данных.

7 уровень – Прикладной уровень. Определяет работу прикладных программ. Операторские функции над сетью, передача почты (mail), работа с базами данных, FTP, HTTP, TELNET.

В реальных системах, четко определены и выдерживаются, как правило, первые четыре уровня, потому что они основные. Уровни "5"-"7" могут значительно отличатся у разных производителей.

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

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