Стеки протоколов. Сетевая модель osi
Для решения сложных задач используется универсальный прием декомпозиция, т.е. разбиение сложной задачи на несколько простых задач – модулей.
Декомпозиция состоит в четком определении каждого модуля, а также порядка и взаимодействия.
Наиболее эффективная концепция декомпозиции – многоуровневый подход. После представления исходной задачи в виде множества модулей, эти модули группируют и упорядочивают по уровням. Уровни, в свою очередь, образуют иерархию. Группа модулей, составляющая каждый уровень, для решения своих задач должна обращаться с запросами только к модулям соседнего нижележащего уровня. С другой стороны, результаты работы каждого из модулей могут быть переданы только модулем соседнего вышележащего уровня.
Межуровневый интерфейс (интерфейс услуг) определяет набор функций, которые нижележащий уровень передает вышележащему уровню.
В сетевом взаимодействии участвуют две стороны. Для взаимодействия двух сторон необходимо организовать согласованную работу двух иерархий аппаратных и программных средств на двух разных компьютерах. Оба узла должны принять множество соглашения.
Схема взаимодействия двух узлов
Каждый уровень поддерживает интерфейсы двух типов:
1 – интерфейсы услуг с выше- и нижележащими уровнями;
2 – интерфейсы со средствами взаимодействия другой стороны (протокол).
Протоколы определяют правила взаимодействия модулей одного уровня в разных узлах, а интерфейсы – соседних уровней в одном узле.
Стек протоколов – иерархически организованный набор протоколов, достаточных для организации взаимодействия узлов в сети.
Протоколы нижних уровней часто реализуются комбинацией программных и аппаратных средств. А протоколы верхних уровней – только программными средствами.
Протокольные сущности одного уровня двух взаимодействующих сторон обмениваются сообщениями в соответствии с определенным для них протоколом. Сообщения состоят из заголовка и поля данных. Работа каждого протокольного модуля состоит в интерпретации заголовков, поступающих к нему сообщений и выполнении связанных с этим действий. Заголовки сообщений разных протоколов имеют разную структуру.
Модель OSI
Назначение модели OSI состоит в обобщенном представлении средств сетевого взаимодействия. Она определяет:
– уровни взаимодействия систем в сетях с коммутацией пакетов;
– стандартные названия уровней;
– функции, которые должен выполнять каждый уровень.
В модели OSI средство взаимодействия делится на 7 уровней:
1 – прикладной;
2 - представления;
3 – сеансовый;
4 – транспортный;
5 – сетевой;
6 – канальный;
7 – физический.
Приложение A обращается с запросом к прикладному уровню, например к файловой службе. На основании этого запроса ПО прикладного уровня формирует сообщение стандартного формата. После формирования сообщения прикладной уровень отправляет его вниз. Протокол уровня представления н основе полученной информации из заголовка выполняет требуемые действия и добавляет к сообщению собственную информацию, т.е. новый заголовок. Далее сообщение передается сеансовому уровню и так далее до физического уровня. Физический уровень передает сообщение адресату по линии связи. Когда сообщение приходит на компьютер-адресат, он принимает его и перемещает вверх по уровням. Каждый уровень анализирует заголовок своего уровня, выполняет соответствующие функции, удаляет заголовок и передает сообщение вверх.
Физический уровень передает потоки битов по физическим каналам. Функции выполняются сетевым адаптером или последовательным портом.
Канальный уровень выполняет функции:
- установление логического соединения между логическими узлами;
- согласование скоростей передатчика и приемника информации;
- обеспечение надежной передачи обнаружения и коррекции ошибок.
Уровень формирует из пакетов собственные протокольные единицы-кадры, состоящие из поля данных и заголовка. Важнейшей информацией заголовка кадра является адрес назначения.
Кроме того этот уровень может обеспечить надежность передачи, например, путем фиксирования границ кадра, помещая специальную последовательность битов в его начало и конец.
В сетях, построенных на основе разделяемой среды, канальный уровень проверяет доступность разделяемой среды.
Сетевой уровень служит для образования единой транспортной системы, объединяющей несколько сетей. Технология, позволяющая соединять в единую сеть множество сетей – технология межсетевого взаимодействия. Функции сетевого уровня реализуются группой протоколов или маршрутизаторами. Маршрутизатор имеет несколько сетевых интерфейсов, к каждому из которых может быть подключена одна сеть. Данные, которые необходимо передать поступают от транспортного уровня. На сетевом уровне данные снабжаются заголовком и формируется пакет. Для того чтобы протоколы сетевого уровня могли доставлять пакеты любому узлу составной сети, эти узлы должны иметь уникальные адреса в пределах данной сети – сетевой адрес.
Транспортный уровень обеспечивает передачу данных с определенной степенью надежности. Модель OSI определяет 5 классов транспортного сервиса. Эти виды сервиса отличаются качеством предоставляемых услуг (срочность, возможностью восстановления прерванной связью, способностью к обнаружению и исправлению ошибок передачи).
Сеансовый уровень управляет взаимодействием сторон, т.е. фиксирует, какая из сторон является активной в настоящий момент и предоставляет средства синхронизации сеанса.
Уровень представления обеспечивает представление передаваемой по сети информации, не меняя при этом её содержания. На этом уровне могут проходить шифрование и дешифрование данных.
Прикладной уровень – это набор разнообразных протоколов, с помощью которых пользователи в сети получают доступ к разделяемым ресурсам. Единица данных этого уровня – сообщение.
