Концепция семиуровневой модели.
В компьютерных сетях идеологической базой стандартизации является многоуровневый подход разработки средств сетевого взаимодействия. На основе этого подхода была разработана стандартная семиуровневая модель взаимодействия открытых систем.
Организация взаимодействия между устройствами компьютерной сети является сложной задачей, для решения которой при построении модели ISO использовался принцип декомпозиции, согласно которому:
- одна сложная задача была разбита на 7 более простых задач, образуя 7 отдельных уровней.
- для решения задач некоторого уровня могут быть использованы средства непосредственно примыкающего ниже лежащего уровня.
- полученные результаты выполненной работы могут быть переданы только соседнему вышележащему уровню.
Т.к. в процессе обмена сообщениями участвуют 2 узла сети (компьютера), необходимо организовать согласованную работу 2х иерархий в 2х направлениях: горизонтальном и вертикальном (см. рис).
В горизонтальном направлении происходит протокольный обмен между 2 узлами (А↔ В). Для обмена оба участника должны принять ряд соглашений. Например, для физического уровня необходимо согласовать способ кодирования электрических сигналов, метод контроля достоверности и т.п.
Такие соглашения в виде формализованных правил, определяющих формат и последовательность передачи сообщений, которыми обмениваются сетевые компоненты, лежащие на одном уровне, но в разных узлах, называются протоколом.
В вертикальном направлении обмен осуществляется в отдельном узле (А или В) от одного уровня к другому. Модули, находящиеся в одном узле на 2х соседних уровнях так же взаимодействуют друг с другом, в соответствии с чётко определёнными правилами, которые называются интерфейс. Интерфейс определяет услуги, предоставляемые данным уровнем соседнему уровню. Таким образом, средство каждого уровня должны отрабатывать свой собственный протокол, также интерфейсы с соседними уровнями. При этом протоколы определяют правила взаимодействия модулей одного уровня в разных узлах, а интерфейсы – правила взаимодействия модулей соседних уровней в одном узле.
Иерархически организованный набор протоколов, достаточный для организации взаимодействия узлов сети, называется стеком коммуникационных протоколов.
Коммуникационные протоколы могут быть реализованы как программно, так и аппаратно, не только компьютерами, но и такими сетевыми устройствами, как концентраторы, мосты, коммутаторы, маршрутизаторы и т.д.
В зависимости от типа устройства в нём должны быть встроенные средства (аппаратные или программные), реализующие тот или иной набор протоколов. Протоколы нижних уровней часто реализуются комбинацией программных и аппаратных средств, а протоколы верхних уровней, как правило, чисто аппаратными средствами.
Другие сетевые модели.
Получившее широкое распространение семиуровневая модель OSI не является единственной. Самая первая сетевая модель DoD была разработана в 1970 годах. Позднее она получила название TCP/IP, поскольку разрабатывалась вместе с протоколом как часть проекта ARPA NET – это более простая модель, чем OSI. Она содержит только 4 уровня, которые можно приближённо отразить на 7 уровней модели OSI. Некоторые поставщики сетевых ОС используют для описания работы компонентов этих систем собственные сетевые модели. Примером такой модели может служить сетевая модель Microsoft Windows для Windows NT/2000.
Семиуровневая сетевая модель (OSI).
Прикладной уровень.
Прикладной уровень – это высший уровень модели, которая организует взаимодействие прикладных программ пользователя с процессами моделями OSI.
Обеспечивает им набор определённых сетевых устройств (передачи файлов, обмен почтовыми сообщениями, доступ к принтеру, управление сетью и т.д.). Взаимодействие сообщения с высшим уровнем модели осуществляется через прикладной программный интерфейс (API).
Назначение, задачи и функции прикладного уровня определяются набором протоколов, с помощью которого пользователи сети получают доступ к сетевым ресурсам.
Например, FTP используется для передачи файлов между компьютерами, на которых могут быть установлены разные ОС или платформы, при этом клиентская программа FTP предназначена для организации соединения при загрузке файлов сервера, а программное обеспечение FTP-сервера используется на компьютере, передающем файлы.
Уровень представления.
Уровень представления – этот уровень обеспечивает требуемую форму представления, передаваемой по сети информации без изменений её содержания. На этом уровне анализируется представление символов, формат страниц и графическое кодирование вместе с различными правилами шифрования.
При управлении экраном терминала реализуются и другие функции, например очистка экрана, защита от стирания некоторых частей экрана и обозначения на экране особо важных полей (в частности с помощью мерцания).
Средствами данного уровня протоколы прикладных уровней могут преодолеть синтаксические различия представления данных. Благодаря этому информация, передаваемая прикладным уровнем одной системы будет понятна прикладному уровню в другой системе.
При передаче на этом уровне могут выполняться:
- шифрование данных, благодаря которому обеспечивается секретность обмена данными сразу для всех прикладных служб. Примером такого протокола является Secure Socket Layer (SSL - уровень защитных гнёзд сокетов), обеспечивающих секретный обмен сообщениями для протоколов прикладного уровня стека TCP/IP.
- сжатие данных: уменьшение объёма данных в целях их быстрой передачи по сети;
- преобразование данных из одного протокола в другой для передачи их между разными платформами и ОС.
На принимающем компьютере уровень представления обеспечивает распаковку, расшифровку и другие преобразования данных, пригодных для пользовательских приложений и передаче данных на прикладной уровень.
Уровень представления могут поддерживать редиректор, представляющий собой программу, которая определяет средства (локальный компьютер или сетевое устройство) обработки запросов и шлюз в виде устройства или программы, служащей точкой соединения между 2 разными сетями.
Сеансовый уровень.
Сеансовый уровень. Данный уровень обеспечивает координацию связи между 2 узлами (ПК) сети, т.е. поддержание диалога между процессами определённого типа. Для этого предусмотрено большое число функций по организации передачи данных и по синхронизации процедур взаимодействия.
Сеансовый уровень выполняет следующие функции:
- отвечает за установление сеанса связи между передающим и принимающим узлами связи (ПК), организует сеанс обмена данными, управляет приёмом и передачей пакетов, обеспечивает завершение сеанса.
- осуществляет контроль за степенью завершения длинных передач, что позволяет избежать повторной пересылки данных при разрыве связи и возобновить передачу с прерванного места. Для этого устанавливается точки проверки для синхронизации потока данных к приложению, т.е. в потоке данных размещаются маркеры. Если в канале связи произошёл сбой, то повторно передаются только данные, начиная с последнего маркера.
- обеспечивает управление диалогом для того, чтобы фиксировать, какая из сторон в настоящий момент является активной;
- устанавливает и разрывает диалоги приложения с приложением;
- проверяют режим связи (одно или двунаправленный);
- определяет категории (приоритеты) услуг и генерирует сообщение о неполадках у себя и на вышестоящих уровнях.
- выполняет задачи обеспечения безопасности для распознавания имён.
Транспортный уровень.
Этот уровень занимает центральное место в иерархии уровней сети. Он является пограничным уровнем между вышележащими уровнями, в сильной мере зависящими от приложений, и нижележащими уровнями, привязанными к конкретной сети. Сообщением является пакет данных протокола транспортного уровня. По сути, транспортный уровень связывает промежуточные системы Intermediate System – IS, обеспечивающий передачу пакетов между отправителем и получателем с использованием нижних уровней, и оконченные системы (End System – ES), работающие на верхних уровнях.
Назначение транспортного уровня – обеспечение качественной передачи сообщений от отправителя к получателю и контроль ошибок.