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

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

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

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

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

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

Уровень 6 Представления

Уровень 6 Представления

[ 7 | 6 ]

ч______________________________>

Уровень 5 Сеансовый

Уровень 5 Сеансовый

Уровень 4 Транспортный

Уровень 4 Транспортный

сегменты, датагоаммы

сегменты.

датаграммы

Уровень 3 Сетевой

(~7~| 6 | 5 |У"| 3

Уровень 3 Сетевой

Уровень 7 Прикладной

?

F Ч

Уровень 7 Прикладной

J

к________________/

пакет

пакет

кадры

Уровень 1 Физический

Уровень 2 Канальный

OZE0EHD

‘ты кг

B3ZIZEIIBO

Уровень 1 Физический

Уровень 2 Канальный

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

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

В литературе часто принято начинать описание уровней модели OSI с 7-го уровня, называемого прикладным, на котором пользовательские приложения обращаются к сети. Модель OSI заканчивается 1-м уровнем — физическим, на котором определены стандарты, предъявляемые независимыми производителями к средам передачи данных:

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

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

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

При приеме сообщения нижележащий уровень после обработки своей части сообщения удаляет его и оставшееся сообщение передает вышележащему уровню. Например, уровень 2 удаляет данные, предназначенные для него, затем передает остальные к уровню 3. Уровень 3 затем удаляет данные, предназначенные для него, и передает остальные к уровню 4 и т. д.

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

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

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

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

Семь уровней функционально можно разделить на три группы. Первую группу образуют нижние уровни — физический (1), канальный (или звена данных) (2) и сетевой (3), которые оперируют физическими аспектами данных, перемещающихся от одного устройства к другому (это электрические спецификации, физические подключения, физическая адресация и синхронизация передачи). Вторую группу составляют верхние уровни — сеансовый (5), представления (6) и прикладной (7). Они обеспечивают взаимодействие несвязанных программных систем. Транспортный уровень (4) — связывает обе группы. Верхние уровни OSI почти всегда реализуются программным обеспечением; нижние уровни, за исключением физического, — это комбинация аппаратных средств и программного обеспечения. Физический уровень является, главным образом, аппаратным.

Рассмотрим подробнее функции каждого уровня.

Физический уровень (Physical Layer — PL) обеспечивает побитовую транспортировку кадров (часто называемых пакетом) между узлами по требуемой физической среде передачи (металлический кабель, оптоволоконная линия связи, радиоканал).

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

  • физические характеристики интерфейсов и сред передачи. На физическом уровне задают характеристики интерфейса между устройствами и средами передачи. Он также определяет тип среды передачи;
  • представление бит. Физические данные уровня состоят из потока битов (последовательность нулей или единиц) без любой интерпретации. Чтобы быть переданными, биты должны кодироваться электрическими или оптическими сигналами. Физический уровень определяет тип кодирования (каким именно образом нули и единицы представляются в форме электрических сигналов);
  • скорость данных. Скорость передачи — число бит, передаваемых каждую секунду. Другими словами, физический уровень задает продолжительность бита, которая определяет, как долго длится передача блоков информации;
  • синхронизацию битов. Передатчик и приемник могут иметь расходящиеся по своим значениям скорости, которые должны быть синхронизированы на уровне разряда;
  • конфигурацию линии, т. е. подключение устройств к среде передачи. В конфигурации «точка — точка» два устройства связаны вместе через приданную им линию связи. В многоточечной конфигурации линия связи разделена между несколькими устройствами;
  • физическую топологию, которая устанавливает, как устройства связаны для того, чтобы создать сеть. Устройства могут быть связаны при использовании топологии «каждый с каждым» (каждое устройство связано с каждым другим устройством), звездной топологии (устройства связаны через центральное устройство), кольцевой топологии (каждое устройство связано со следующим, формируя кольцо) или топологии типа «шина» (каждое устройство на общей линии связи);
  • режим передачи, т. е. направление передачи между двумя устройствами: симплекс, полудуплекс или дуплекс. В симплексном режиме только одно устройство может передать, а другое может только получить. Симплексный режим — это однонаправленная связь. В полудуплексном режиме два устройства могут передавать и получать, но не в одно и то же время. В полнодуплексном (или просто дуплексном) режиме два устройства могут передавать и получать информацию одновременно.

На канальном уровне (или уровне звена передачи данных) (Data Link Layer — DLL) реализуются механизмы обнаружения и коррекции ошибок, возникающих в канале связи между узлами.

Задачи этого уровня следующие:

  • цикловая синхронизация. Канальный уровень данных преобразует поток битов, полученных от сетевого уровня, в управляемые модули данных, которые называются кадрами',
  • физическая адресация. Если кадры должны быть распределены между несколькими различными приемниками, уровень звена передачи данных добавляет заголовок к кадру, чтобы определить конкретный передатчик и (или) приемник кадра. Если кадр предназначен для системы вне сети передатчика, добавляется адрес приемника или адрес устройства, которое подключает его к другой сети;
  • управление потоком. Если скорость, на которой данные поглощаются приемником, меньше, чем скорость, порождаемая в передатчике, уровень звена передачи данных применяет механизм управления потоком, чтобы предотвратить переполнение приемника;
  • —маршрутизация. Когда независимые сети или линии связи включены вместе, чтобы создать интернет-сети или большую сеть, то используются подключающие устройства (маршрутизаторы или коммутаторы). Они последовательно направляют или коммутируют пакеты к конечному пункту назначения. Одна из функций сетевого уровня должна обеспечить этот механизм;
  • контроль ошибок. Для этого пакет, поступающий с вышележащего (сетевого) уровня, преобразуется в кадр, т. е. дополняется контрольной суммой и обрамляется специальной последовательностью «флаг», позволяющей определить начало и конец кадра. На приеме «флаги» отбрасываются, и снова вычисляется контрольная сумма. Если вычисленная контрольная сумма совпадает с суммой, принятой из кадра, то кадр считается правильным и в виде пакета передается на сетевой уровень, а на передающую сторону высылается квитирующий кадр. В случае искажения или пропажи кадра квитирующий кадр не высылается, и передающая сторона через некоторый промежуток времени возобновляет передачу. Поскольку к узлу (например, маршрутизатору) обычно подключено несколько каналов связи с различными технологиями передачи кадра, то для каждой технологии передачи канальный уровень добавляет к пакету соответствующее дополнительное поле. Сетевому уровню поставляются пакеты единообразного вида;
  • управление доступом. Когда два или более устройств могут использовать одну и ту же линию связи, протоколы уровня звена передачи данных необходимы для того, чтобы определить, какое устройство может иметь доступ к линии связи в конкретный момент времени.

Сетевой уровень (Network Layer — NL) служит для образования сквозной транспортной системы между оконечными устройствами пользователя через все промежуточные сети связи — «из конца в конец».

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

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

Транспортный уровень выполняет следующие задачи:

  • адресацию точки сервиса. Компьютеры часто выполняют несколько программ в одно и то же время. По этой причине доставка «источник — пункт назначения» означает доставку не только от одного компьютера до следующего, но также и от заданного процесса (функционирующей программы) на одном компьютере к заданному процессу (функционирующей программе) на другом. Поэтому заголовок транспортного уровня должен включать тип адреса, называемый адрес сервисной точки (или адрес порта). Сетевой уровень доставляет каждый пакет на корректный адрес компьютера; транспортный уровень доставляет полное сообщение к корректному процессу на этом компьютере;
  • сегментацию и повторную сборку. Сообщение разделено на транспортируемые сегменты, каждый сегмент содержит порядковый номер. Эти номера дают возможность транспортному уровню после достижения пункта назначения правильно повторно собрать сообщение и заменять пакеты, которые были потеряны в передаче;
  • управление подключением. Транспортный уровень может быть ориентирован на работу без установления соединения (connectionless transfer) или ориентирован на подключение (connection-oriented transfer) — датаграммный режим. Транспортный уровень без установления соединения (по предварительно установленному виртуальному соединению) обрабатывает каждый сегмент как независимый пакет и поставляет его транспортному уровню в машине пункта назначения. Ориентированный на подключение транспортный уровень сначала перед поставкой пакетов устанавливает соединение с транспортным уров нем в компьютере пункта назначения. После того как все данные переданы, подключение заканчивается. В режиме, не ориентированном на соединение, транспортный уровень используется для передачи одиночных датаграмм и не гарантирует их надежную доставку. Режим, ориентированный на соединение, применяется для надежной доставки данных;
  • —управление потоком. Подобно уровню звена передачи данных, транспортный уровень несет ответственность за управление потоком. Однако управление потоком на этом уровне выполняется «от конца к концу»;
  • контроль ошибок. Подобно уровню звена передачи данных, транспортный уровень несет ответственность за контроль ошибок. Транспортный уровень передачи удостоверяется, что полное сообщение достигло транспортного уровня приема без ошибки (повреждения, потери или дублирования). Исправление ошибки обычно происходит с помощью повторной передачи.

Уровень сеанса (Session Layer — SL) устанавливает, поддерживает и синхронизирует взаимодействие между связывающимися системами.

При помощи сеансового уровня организуется диалог между сторонами, фиксируется, какая из сторон является инициатором, какая из сторон активна, каким образом завершается диалог.

Задачи сеансового уровня:

  • —управление диалогом. Сеансовый уровень дает возможность двум системам вступать в диалог. Он позволяет обмен сообщениями между двумя процессами. При этом возможны режимы: либо полудуплексный (один путь одновременно), либо дуплексный (два пути одновременно). Например, диалог между терминалом и универсальной ЭВМ может быть полудуплексным;
  • синхронизация. Сеансовый уровень позволяет процессу добавлять контрольные точки (точки синхронизации) в поток данных. Например, если система посылает файл из 1000 страниц, желательно вставить контрольные точки после каждых 100 страниц, чтобы гарантировать, что каждый модуль со 100 страницами получен и опознается независимо. В этом случае, если случается нарушение в течение передачи страницы 129, единственная страница, которая требуется и которая будет снова послана после системного восстановления, — страница 101 (первая страница второй сотни).

Уровень представления (Presentation Laye — PL) занимается формой предоставления информации нижележащим уровням, например, перекодировкой или шифрованием информации.

Задачи уровня представления:

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

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

Примеры услуг, оказываемых прикладным уровнем:

  • сетевой виртуальный терминал, представляющий собой программную версию физического терминала. Он позволяет пользователю войти в удаленный хост. Чтобы сделать это, приложение создает программную имитацию терминала в удаленном хосте. Компьютер пользователя общается с программным терминалом, который, в свою очередь, общается с хостом, и наоборот. Удаленный хост определяет эту связь как связь с одним из его собственных терминалов и позволяет вход;
  • передача файлов, доступ и управление. Это приложение позволяет пользователю обращаться к файлам в удаленном хосте, чтобы изменять или читать данные, извлекать файлы из удаленного компьютера для использования в местном компьютере и администрировать или управлять файлами на удаленном компьютере;
  • —услуги почты. Это приложение обеспечивает базу для передачи и хранения электронной почты;
  • —услуги каталога. Это приложение обеспечивает распределенные источники базы данных и доступ к глобальной информации о различных объектах и услугах.

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

  • [1] Олифер В. Г, Олифер Н. А. Компьютерные сети. Принципы, технологии, протоколы : учебник для вузов. СПб., 2010. С. 124. 2 ГОСТ Р ИСО/МЭК 7498-1-99 «Информационная технология. Взаимосвязь открытых систем. Базовая эталонная модель». С. 1. URL: http://standartgost.ni/g/ ГОСТ Р ИСО/МЭК 7498-1-99 (дата обращения: 15.03.2013).
  • [2] URL: http://www.intuit.rU/department/network/intemetprot/l/intemetprot_l .html (дата обращения: 15.03.2013).
 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ ОРИГИНАЛ   След >