Модель открытых систем OSI

В начале 80-х годов ряд международных организаций по стандартизации - ISO, ITU-Т и некоторые другие - разработали модель, которая сыграла значительную роль в развитии сетей. Эта модель называется моделью ISO/OSI.

Модель взаимодействия открытых систем {Open System Interconnection, OSI) опреде­ляет различные уровни взаимодействия систем в сетях с коммутацией пакетов, дает им стан­дартные имена и указывает, какие функции должен выполнять каждый уровень [2].

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

Функционирование сетей описывается в терминах процессов.

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

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

Обмен данными производится через логические (программно организованные) точ­ки, называемые портами.

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

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

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

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

В сущности, протокол и интерфейс выражают одно и то же понятие, но традиционно в сетях за ними закреплены разные области действия: протоколы определяют правила взаи­модействия модулей одного уровня в разных узлах, а интерфейсы - модулей соседних уров­ней в одном узле [1,2].

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

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

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



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


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

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

В модели OSI (рис. 1.) средства взаимодействия делятся на семь уровней: прикладной, представительный, сеансовый, транспортный, сетевой, канальный и физи­ческий. Каждый уровень имеет дело с опре­деленным аспектом взаимодействия сете­вых устройств [2].

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

Следует также иметь в виду, что приложение может взять на себя функции некоторых верхних уровней модели OSI. Например, некоторые СУБД имеют встро­енные средства удаленного доступа к фай­лам. В этом случае приложение, выполняя доступ к удаленным ресурсам, не использу­ет системную файловую службу; оно обхо­дит верхние уровни модели OSI и обращает­ ся напрямую к системным средствам, ответственным за транспортировку сообщений по сети, которые располагаются на нижних уровнях модели OSI.



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


После формирования сообщения прикладной уровень направляет его вниз по стеку представительному уровню. Протокол представительного уровня на основании информации, полученной из заголовка прикладного уровня, выполняет требуемые действия и добавляет к сообщению собственную служебную информацию — заголовок представительного уровня, в котором содержатся указания для протокола представительного уровня машины-адресата. Полученное в результате сообщение передается вниз сеансовому уровню, который в свою оче­редь добавляет свой заголовок, и т. д. (Некоторые протоколы помещают служебную инфор­мацию не только в начале сообщения в виде заголовка, но и в конце, в виде так называемого "концевика".) Наконец, сообщение достигает нижнего, физического уровня, который, собст­венно, и передает его по линиям связи машине-адресату. К этому моменту сообщение "об­растает" заголовками всех уровней (рис. 2). Рис. 2. Вложенность сообщений различных уровней

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


9031616955640113.html
9031651731409230.html
    PR.RU™