3.2 Эталонная модель взаимодействия открытых систем
Эталонная модель взаимодействия открытых систем (ВОС) определяет уровни взаимодействия систем, дает им стандартные имена и указывает, какие функции должен выполнять каждый уровень. Средства взаимодействия делятся на семь уровней: прикладной, представления, сеансовый, транспортный, сетевой, канальный и физический. Каждый уровень определяет один вид взаимодействия сетевых узлов и технологий.
Модель ВОС стала основой для разработки стандартов. С ее помощью можно только составить схему выполнения необходимых задач, но она не определяет конкретное описание их выполнения. Уровни модели ВОС могут быть реализованы на практике как аппаратно, так и программно. В конечном итоге в модели ВОС заложены основы стандартизации индустрии сетевых технологий, и большинство поставщиков сетевого оборудования разрабатывают свои продукты в ее терминах.
Эталонная модель взаимодействия открытых систем BOC/OSI (Open System Interconnection) разработана в начале 80-х гг. Международной организацией по стандартизации (International Organization of Standardization — ISO (ИСО)) совместно с МСЭ-Т и получила статус международного стандарта в виде ISO 7498 в 1984 г. и аналогичной Рек. МККТТ (МСЭ-Т) Х.200. Модель ВОС как единый комплекс стандартов является основой для взаимной совместимости оборудования и программ различных поставщиков. Она играет важную роль в современных сетевых технологиях.
Под открытой системой понимают систему, реализующую спецификации на интерфейсы, услуги и форматы данных, достаточные для того, чтобы обеспечить следующие возможности:
- переносимости прикладных программ, разработанных должным образом, с минимальными изменениями на широкий диапазон типов систем;
- взаимодействия с другими приложениями на локальных и удаленных платформах;
- взаимодействия с пользователями в стиле, облегчающем им переход от системы к системе.
2. Архитектура вычислительной сети. Эталонные модели взаимодействия систем.
Архитектура вычислительной сети— описание ее общей модели.
Многообразие производителей вычислительных сетей и сетевых программных продуктов поставило проблему объединения сетей различных архитектур. Для ее решения МОС разработала модель архитектуры открытых систем.
Открытая система— система, взаимодействующая с другими системами в соответствии с принятыми стандартами.
Предложенная модель архитектуры открытых систем служит базой для производителей при разработке совместимого сетевого оборудования. Эта модель не является неким физическим телом, отдельные элементы которого можно осязать. Модель представляет собой самые общие рекомендации для построения стандартов совместимых сетевых программных продуктов. Эти рекомендации должны быть реализованы как в аппаратуре, так и в программных средствах вычислительных сетей.
Рис. 8. Эталонная модель архитектуры открытых систем.
В настоящее время модель взаимодействия открытых систем (ВОС) является наиболее популярной сетевой архитектурной моделью. Модель рассматривает общие функции, а не специальные решения, поэтому не все реальные сети абсолютно точно ей следуют. Модель взаимодействия открытых систем состоит из семи уровней (рис.8).
7-й уровень— прикладной — обеспечивает поддержку прикладных процессов конечных пользователей. Этот уровень определяет круг прикладных задач, реализуемых в данной вычислительной сети. Он также содержит все необходимые элементы сервиса для прикладных программ пользователя. На прикладной уровень могут быть вынесены некоторые задачи сетевой операционной системы.
6-й уровень— представительный — определяет синтаксис данных в модели, т.е. представление данных. Он гарантирует представление данных в кодах и форматах, принятых в данной системе. В некоторых системах этот уровень может быть объединен с прикладным.
5-й уровень— сеансовый — реализует установление и поддержку сеанса связи между двумя абонентами через коммуникационную сеть. Он позволяет производить обмен данными в режиме, определенном прикладной программой, или предоставляет возможность выбора режима обмена. Сеансовый уровень поддерживает и завершает сеанс связи.
Три верхних уровня объединяются под общим названием — процесс или прикладной процесс. Эти уровни определяют функциональные особенности вычислительной сети как прикладной системы.
4-й уровень— транспортный — обеспечивает интерфейс между процессами и сетью. Он устанавливает логические каналы между процессами и обеспечивает передачу по этим каналам информационных пакетов, которыми обмениваются процессы. Логические каналы, устанавливаемые транспортным уровнем, называются транспортными каналами.
Пакет— группа байтов, передаваемых абонентами сети друг другу.
3-й уровень— сетевой — определяет интерфейс оконечного оборудования данных пользователя с сетью коммутации пакетов. Он также отвечает за маршрутизацию пакетов в коммуникационной сети и за связь между сетями — реализует межсетевое взаимодействие.
Примечание. В технике коммуникаций используется термин оконечное оборудование данных. Он определяет любую аппаратуру, подключенную к канал; связи, в системе обработки данных (компьютер, терминал, специальная аппаратура).
2-й уровень— канальный — уровень звена данных — реализует процесс передачи информации по информационному каналу. Информационный канал — логический канал, он устанавливается между двумя ЭВМ, соединенными физическим каналом Канальный уровень обеспечивает управление потоком данных в виде кадров, в которых упаковываются информационные пакеты, обнаруживает ошибки передачи и реализует алгоритм восстановления информации в случае обнаружения сбоев или потерь данных.
1-й уровень— физический — выполняет все необходимые процедуры в канале связи. Его основная задача — управление аппаратурой передачи данных и подключенным к ней каналом связи.
При передаче информации от прикладного процесса в сеть происходит ее обработка уровнями модели взаимодействия открытых систем (рис. 9).
Рис. 9. Обработка сообщений уровнями модели ВОС
Итак, пусть приложение обращается с запросом к прикладному уровню, например к файловой службе. На основании этого запроса программное обеспечение прикладного уровня формирует сообщение стандартного формата. Обычное сообщение состоит из заголовка и поля данных. Заголовок содержит служебную информацию, которую необходимо передать через сеть прикладному уровню машины-адресата, чтобы сообщить ему, какую работу надо выполнить. В нашем случае заголовок, очевидно, должен содержать информацию о месте нахождения файла и о типе операции, которую необходимо над ним выполнить. Поле данных сообщения может быть пустым или содержать какие-либо данные, например те, которые необходимо записать в удаленный файл. Но для того чтобы доставить эту информацию по назначению, предстоит решить еще много задач, ответственность за которые несут нижележащие уровни.
После формирования сообщения прикладной уровень направляет его вниз по стеку представительному уровню. Протокол представительного уровня на основании информации, полученной из заголовка прикладного уровня, выполняет требуемые действия и добавляет к сообщению собственную служебную информацию — заголовок представительного уровня, в котором содержатся указания для протокола представительного уровня машины-адресата. Полученное в результате сообщение передается вниз сеансовому уровню, который в свою очередь добавляет свой заголовок, и т. д. (Некоторые реализации протоколов помещают служебную информацию не только в начале сообщения в виде заголовка, но и в конце, в виде так называемого «концевика».) Наконец, сообщение достигает нижнего, физического уровня, который собственно и передает его по линиям связи машине-адресату. К этому моменту сообщение «обрастает» заголовками всех уровней (рис. 9.1).
Когда сообщение по сети поступает на машину — адресат, оно принимается ее физическим уровнем и последовательно перемещается вверх с уровня на уровень. Каждый уровень анализирует и обрабатывает заголовок своего уровня, выполняя соответствующие данному уровню функции, а затем удаляет этот заголовок и передает сообщение вышележащему уровню.
Каждый уровень реагирует только на свой заголовок. Заголовки верхних уровней нижними уровнями не воспринимаются и не изменяются — они «прозрачны » для нижних уровней. Так, перемещаясь по уровням модели ВОС, информация, наконец, поступает к процессу, которому она была адресована.
Достоинство семиуровневой модели ВОС.
В процессе развития и совершенствования любой системы возникает потребность изменять ее отдельные компоненты. Иногда это вызывает необходимость изменять и другие компоненты, что существенно усложняет и затрудняет процесс модернизации системы.
Здесь и проявляются преимущества семиуровневой модели. Если между уровнями определены однозначно интерфейсы, то изменение одного из уровней не влечет за собой необходимости внесения изменений в другие уровни. Таким образом, существует относительная независимость уровней друг от друга.
Необходимо сделать и еще одно замечание относительно реализации уровней модели ВОС в реальных вычислительных сетях. Функции, описываемые уровнями модели, должны быть реализованы либо в аппаратуре, либо в виде программ.
Функции физического уровня всегда реализуются в аппаратуре. Это адаптеры, мультиплексоры передачи данных, сетевые платы и т.д.
Функции остальных уровней реализуются в виде программных модулей — драйверов.