Что такое сеансовый протокол

Обновлено: 25.05.2024

Сетевая модель OSI (англ. open systems interconnection basic reference model) - концептуальная модель, которая обобщает и стандартизирует представление средств сетевого взаимодействия в телекоммуникационных и компьютерных системах, независимо от их внутреннего устройства и используемых технологий. Модель OSI была разработана в 1984 году Международной организацией стандартизации (ISO). Основной целью ее создания был поиск решения проблемы несовместимости устройств, использующих различные коммуникационные протоколы, путем перехода на единый, общий для всех систем стек протоколов.

OSI состоит из двух основных частей:

  • абстрактная модель сетевого взаимодействия (семиуровневая модель)
  • набор специализированных протоколов взаимодействия


Концепция семиуровневой модели была описана в работе Чарльза Бахмана. Данная модель подразделяет коммуникационную систему на уровни абстракции (англ. "abstraction layers"). В модели OSI средства взаимодействия делятся на семь уровней: прикладной, представления, сеансовый, транспортный, сетевой, канальный и физический. Каждый уровень:

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


Протоколы связи же решают две задачи: они обеспечивают взаимодействие между сущностями, находящимися на одном и том же уровне абстракции, но на разных хостах и абстрактно описывают функционал, который (N-1)-ый уровень предоставляет (N)-ому, где N - один из 7 уровней модели OSI. В рамках модели, любой протокол может взаимодействовать либо с протоколами своего уровня (горизонтальные взаимодействия), либо с протоколами уровня на единицу выше/ниже своего уровня (вертикальные взаимодействия).

Каждый из семи уровней характеризуется типом данных (PDU, сокращение от англ. protocol data units), которым данный уровень оперирует и функционалом, который он предоставляет слою, находящемуся выше него. Предполагается, что пользовательские приложения обращаются только к самому верхнему (прикладному) уровню, однако на практике это выполняется далеко не всегда.

Прикладной уровень выполняет следующие функции:

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

К числу наиболее распространенных протоколов верхних трех уровней относятся:

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

  • Генерация запросов на установление/завершение сеансов взаимодействия прикладных процессов
  • Согласование представления данных между прикладными процессами
  • Конвертация форм представления данных
  • Шифрование данных

Примеры протоколов данного уровня:

  • AFP — Apple Filing Protocol
  • ICA — Independent Computing Architecture
  • LPP — Lightweight Presentation Protocol
  • NCP — NetWare Core Protocol

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

На сеансовом уровне определяется, какой будет передача между двумя прикладными процессами:

  • полудуплексной (процессы будут передавать и принимать данные по очереди)
  • дуплексной (процессы будут передавать данные, и принимать их одновременно)

Примеры протоколов сеансового уровня:

  • ADSP (AppleTalk Data Stream)
  • ASP (AppleTalk Session)
  • RPC (Remote Procedure Call)
  • PAP (Password Authentication Protocol)

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

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

  • Управление передачей по сети и обеспечение целостности блоков данных
  • Обнаружение ошибок, частичная их ликвидация
  • Восстановление передачи после отказов и неисправностей
  • Разбиение данных на блоки определенного размера
  • Предоставление приоритетов при передаче блоков (нормальная или срочная)
  • Подтверждение передачи.

Транспортный уровень использует сегменты или датаграммы в качестве основного типа данных.

  • TCP (Transmission Control Protocol)
  • UDP (User Datagram Protocol)
  • SCTP (Stream Control Transmission Protocol)

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

Сетевой уровень выполняет функции:

  • Обнаружение и исправление ошибок, возникающих при передаче через коммуникационную сеть
  • Упорядочение последовательностей пакетов
  • Маршрутизация и коммутация
  • Сегментирование и объединение пакетов

Наиболее часто на сетевом уровне используются протоколы:

  • IP/IPv4/IPv6 (Internet Protocol) сетевой протокол стека TCP/IP
  • IPX (Internetwork Packet Exchange, протокол межсетевого обмена)
  • AppleTalk

Канальный уровень предназначен для передачи данных между двумя узлами, находящихся в одной локальной сети. Роль PDU исполняют фреймы (англ. frame). Фреймы канального уровня не пересекают границ локальной сети, что позволяет данному уровню сосредоточиться на локальной доставке (фактически межсетевой доставкой занимаются более высокие уровни).

Заголовок фрейма формируется из аппаратных адресов отправителя и получателя, что позволяет однозначно определить устройство, которое отправило данный фрейм и устройство, которому он предназначен. При этом никакая часть адреса не может быть использована, чтобы определить некую логическую/физическую группу к которой принадлежит устройство.

Канальный уровень состоит из двух подуровней: LLC и MAC.

Канальный уровень выполняет функции:

  • LLC Multiplexing: Интерфейс между сетевым уровнем и MAC, чтобы несколько различных протоколов сетевого уровня могли сосуществовать.
  • LLC Flow control: Механизм ограничении скорости передачи данных при медленном приёмнике
  • LLC Error control: Определение (и иногда исправление) ошибок с помощью чексумм
  • MAC Adressing mechanism: Адрессация на основе уникальных MAC-адресов
  • MAC Channel access control mechanism: Предоставляет протокол множественного доступа

Наиболее часто на канальной уровне используются протоколы:

  • PPP (Point-To-Point Protocol, протокол прямого соединения между двумя узлами)
  • SLIP (Serial Line Internet Protocol, предшественник PPP, который всё ещё используется в микроконтроллерах)
  • Ethernet II framing

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

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

Физический уровень выполняет функции:

  • Побитовая доставка
  • Физическое кодирование (способ представления данных в виде импульсов)
  • LLC Error control: Определение (и иногда исправление) ошибок с помощью чексумм
  • MAC Adressing mechanism: Адрессация на основе уникальных MAC-адресов
  • MAC Channel access control mechanism: Предоставляет протокол множественного доступа

Наиболее часто на физическом уровне используются протоколы:

  • Ethernet physical layer (семейство стандартов с оптическими или электрическими свойствами соединений между устройствами)
  • USB

Аналогичный пример инкапсуляции данных в UDP

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

Физический уровень ответственен за физическую передачу данных. IP предоставляет глобальный способ адресации устройств. TCP добавляет возможность выбора приложения (порт).

Во время инкапсуляции каждый уровень собирает свой собственный PDU, добавляя некоторый заголовок с контрольной информацией к PDU с более высокого уровня.

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

p, blockquote 1,0,0,0,0 -->

p, blockquote 2,0,0,0,0 -->

Аббревиатура OSI Open Systems Interconnection, означает модель взаимодействия открытых систем. Для решения задачи совместимости разнообразных систем, организация по стандартизации выпустила в 1983 г. эталон модели OSI. Она описывает структуру открытых систем, их требования, и их взаимодействие.

p, blockquote 3,0,0,0,0 -->

Структура модели OSI

p, blockquote 4,0,0,0,0 -->

Open system – это система, составлена согласно открытым спецификациям, которые доступны каждому, а также соответствуют определенным стандартам. Например, ОС Windows считается open system, потому что она создана на основе открытых спецификаций, которые описывают деятельность интернета, но начальные коды системы закрыты.

p, blockquote 5,0,0,0,0 -->

Достоинство в том, что есть возможность построить сеть из устройств от разных изготовителей, если нужно, заменить ее отдельные компоненты. Можно без проблем, объединить несколько сетей в одну целую.

p, blockquote 6,0,0,0,0 -->

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

p, blockquote 7,0,0,0,0 -->

К сожалению, с практической точки зрения, модель взаимодействия открытых систем не применяется. Её особенность заключается в овладении теоретическими вопросами сетевого взаимодействия. Именно поэтому в качестве простого языка для описания построения разных видов сети используется эта модель.

p, blockquote 8,0,0,0,0 -->

Уровни модели OSI

p, blockquote 9,0,0,0,0 -->

Нижние ступени системы с первой по третью, управляют физической доставкой данных по сети, их называют media layers.

p, blockquote 10,0,0,0,0 -->

Остальные, уровни способствуют обеспечению точной доставки данных между компьютерами в сети, их называют хост-машины.

p, blockquote 11,0,0,0,0 -->

Прикладной – это ближайший уровень к юзеру. Его отличие от других в том, что он не предоставляет услуги другим ступеням. Обеспечивает услугами прикладные процессы, которые лежат за пределами масштаба модели, например, передача базы данных, голоса, и другое.

p, blockquote 12,0,0,0,0 -->

Физический уровень (PHYSICAL)

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

p, blockquote 13,0,0,0,0 -->

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

p, blockquote 14,0,0,0,0 -->

p, blockquote 15,0,0,0,0 -->

p, blockquote 16,0,0,0,0 -->

В качестве канала передачи информации используются:

  • Кабели: телефонный, коаксиал, витая пара, оптический.
  • Беспроводные технологии, такие как, радиоволны, инфракрасное излучение.
  • Спутниковые КС
  • Беспроводная оптика или лазеры, применяются редко, из-за низкой скорости и большого количества помех.

Очень редко возникают ошибки в оптических кабелях, так как повлиять на распространение света сложно. В медных кабелях, ошибки возникают, но достаточно редко, а в беспроводной среде, ошибки возникают очень часто.

p, blockquote 19,0,0,0,0 -->

Канальный уровень (DATA LINK)

Следующая станция, которую посетит информация, напомнит таможню. А именно IP-адрес будет сравнен на совместимость со средой передачи. Здесь также выявляются и исправляются недочеты системы. Для удобства дальнейших операций, биты группируются в кадры – frame.

p, blockquote 20,0,0,0,0 -->

p, blockquote 21,0,0,0,0 -->

Задачи data link

На канальном уровне выявляются и исправляются ошибки. При обнаружении таковой проводится проверка правильности доставки данных, если неправильно, то кадр отбрасывается.

p, blockquote 22,0,0,0,0 -->

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

p, blockquote 23,0,0,0,0 -->

p, blockquote 24,0,0,0,0 -->

Повторная отправка данных, применяется совместно с методом обнаружения ошибок. Если в кадре обнаружена ошибка, он отбрасывается, и отправитель направляет этот кадр заново.

p, blockquote 25,0,0,0,0 -->

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

p, blockquote 26,0,0,0,0 -->

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

p, blockquote 27,0,0,0,0 -->

Некоторые протоколы, используемые на канальном уровне, это HDLC, Ethernet применяющая шинную топологию и другие.

p, blockquote 28,0,0,0,0 -->

Сетевой уровень (NETWORK)

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

p, blockquote 29,0,0,0,0 -->

p, blockquote 30,0,0,0,0 -->

Назначение сетевого уровня

Мы можем передавать информацию от одного компьютера к другому через Ethernet и Wi-Fi, тогда зачем нужен еще один уровень? У технологии канального уровня (КУ) есть две проблемы, во-первых, технологии КУ отличаются друг от друга, во-вторых, есть ограничение по масштабированию.

p, blockquote 31,0,0,0,0 -->

Какие могут быть различия в технологиях канального уровня?

p, blockquote 32,0,0,0,0 -->

p, blockquote 33,0,0,0,0 -->

Может различаться максимальный размер кадра (MTU), например, в изернете 1500, а в вай-фай 2300. Как можно согласовывать такие различия на сетевом уровне?

p, blockquote 34,0,0,0,0 -->

Можно предоставлять разный тип сервиса, например, кадры из Вай-Фай принимаются с отправкой подтверждения, а в Ethernet отправляются без подтверждения.

p, blockquote 35,0,0,0,0 -->

Для того чтобы согласовать разницу адресаций, на сетевом уровне, вводятся глобальные адреса, которые не зависят от адресов конкретных технологий (ARP для TCP/IP) канального уровня.

p, blockquote 36,0,0,0,0 -->

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

p, blockquote 37,1,0,0,0 -->

Первый компьютер передает данные второму

p, blockquote 38,0,0,0,0 -->

Компьютер сформировал первый кадр и передал его на маршрутизатор, маршрутизатор проанализировал размер кадра, и понял, что передать полностью его через сеть 2 нельзя, потому что mtu2 у него слишком мал.

p, blockquote 39,0,0,0,0 -->

Компьютер сформировал первый кадр и передал его на маршрутизатор

p, blockquote 40,0,0,0,0 -->

Маршрутизатор разбивает данные на 3 части и передает их отдельно.

p, blockquote 41,0,0,0,0 -->

Маршрутизатор разбивает данные на 3 части

p, blockquote 42,0,0,0,0 -->

Следующий маршрутизатор объединяет данные в один, большой пакет, определяет его размер и сравнивает с mtu сети 3. И видит, что один пакет MTU3 целиком передать нельзя (MTU3 больше, чем MTU2, но меньше, чем MTU1) и маршрутизатор разбивает пакет на 2 части и отправляет следующему маршрутизатору.

p, blockquote 43,0,0,0,0 -->

Последний маршрутизатор объединяет пакет и отправляет получателю

p, blockquote 44,0,0,0,0 -->

Последний маршрутизатор объединяет пакет и отправляет получателю целиком. Фрагментация занимается объединением сетей и это скрыто от отправителя и получателя.

p, blockquote 45,0,0,0,0 -->

Как решается проблема масштабируемости на сетевом уровне?

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

p, blockquote 46,0,0,0,0 -->

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

  • Объединить сети, построенные разными технологиями;
  • Обеспечить качественное обслуживание;
  • Маршрутизация, поиск пути от отправителя информации к получателю, через промежуточные узлы сети.

Маршрутизация

Поиск пути отправки пакета между сетями через транзитные узлы – маршрутизаторы. Рассмотрим пример выполнения маршрутизации. Схема состоит из 5 маршрутизаторов и двух компьютеров. Как могут передаваться данные от одного компьютера к другому?

p, blockquote 47,0,0,0,0 -->

Передача данных первым путем

p, blockquote 48,0,0,0,0 -->

В следующий раз данные могут быть отправлены другим путем.

p, blockquote 49,0,0,0,0 -->

Передача файла другим путем

p, blockquote 50,0,0,0,0 -->

В случае поломки одного из маршрутизатора, ничего страшного не произойдет, можно найти путь в обход сломанного маршрутизатора.

p, blockquote 51,0,0,0,0 -->

Передача данных продолжится даже в случае поломки одного из маршрутизаторов

p, blockquote 52,0,0,0,0 -->

Протоколы, применяемые на этом этапе: интернет протокол IP; IPX, необходимый для маршрутизации пакетов в сетях и др.

p, blockquote 53,0,0,0,0 -->

Транспортный уровень (TRANSPORT)

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

p, blockquote 54,0,0,0,0 -->

Задачи транспортного уровня

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

p, blockquote 55,0,0,1,0 -->

Модель взаимодействия open system

Хосты — это устройства где функционируют полезные пользовательские программы и сетевое оборудование, например, коммутаторы, маршрутизаторы.

p, blockquote 56,0,0,0,0 -->

Прямое взаимодействие одного компьютера с транспортным уровнем на другом компьютере

p, blockquote 57,0,0,0,0 -->

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

p, blockquote 58,0,0,0,0 -->

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

p, blockquote 59,0,0,0,0 -->

Для адресации на транспортном уровне используются порты, это числа от 1 до 65 535. Порты записываются вот так: 192.168.1.3:80 (IP адрес и порт).

p, blockquote 60,0,0,0,0 -->

Особенности транспортного уровня

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

p, blockquote 61,0,0,0,0 -->

p, blockquote 62,0,0,0,0 -->

Сеансовый уровень (SESSION)

Сеансовый (сессия) – это набор сетевых взаимодействий, целенаправленных на решение единственной задачи.

p, blockquote 63,0,0,0,0 -->

p, blockquote 64,0,0,0,0 -->

Сеансовый определяет, какая будет передача информации между 2-мя прикладными процессами: полудуплексной (по очередная передача и прием данных); или дуплексной (одновременная передача и прием информации).

p, blockquote 65,0,0,0,0 -->

Уровень представления данных (PRESENTATION)

Функции – представить данные, передаваемых между прикладными процессами, в необходимой форме.

p, blockquote 66,0,0,0,0 -->

Для описания этого уровня, используют автоматический перевод в сети с различных языков. Например, Вы набираете номер телефона, говорите на русском, сеть автоматом переводит на французский язык, передает информацию в Испанию, там человек поднимает трубку и слышит Ваш вопрос на испанском языке. Это задача, пока не реализована.

p, blockquote 67,0,0,0,0 -->

Для защиты отправляемых данных по сети используется шифрование: secure sockets layer, а также transport layer security, эти технологии позволяют шифровать данные которые отправляются по сети.

p, blockquote 68,0,0,0,0 -->

Значок замок и окончание s

p, blockquote 69,0,0,0,0 -->

p, blockquote 70,0,0,0,0 -->

Прикладной уровень (APPLICATION)

Необходим для взаимодействия между собой сетевых приложений, таких как web, e-mail, skype и тд.

p, blockquote 71,0,0,0,0 -->

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

p, blockquote 72,0,0,0,0 -->

Функции application:

  • Решение задач, отправка файлов; управление заданиями и системой;
  • Определение пользователей по их логину, e-mail адресу, паролям, электронным подписям;
  • Запросы на соединение с иными прикладными процессами;

Видео о всех уровнях модели OSI

p, blockquote 73,0,0,0,0 -->

Заключение

Анализ проблем с помощью сетевых моделей OSI поможет быстро найти и устранить их. Недаром работа над проектом программы, способной выявить недочеты имея при этом сложное ступенчатое устройство, велась достаточно долго. Данная модель является в действительности эталоном. Ведь в одно время с ней велись работы по созданию других протоколов. Например, TCP/IP. На сегодняшний день, они довольно часто применяются.

OSI расшифровывается как Open System Interconnection. На русском языке это звучит следующим образом: Сетевая модель взаимодействия открытых систем (эталонная модель). Эту модель можно смело назвать стандартом. Именно этой модели придерживаются производители сетевых устройств, когда разрабатывают новые продукты.

  • 7. Прикладной уровень (application layer)
  • 6. Представительский уровень или уровень представления (presentation layer)
  • 5. Сеансовый уровень (session layer)
  • 4. Транспортный уровень (transport layer)
  • 3. Сетевой уровень (network layer)
  • 2. Канальный уровень (data link layer)
  • 1. Физический уровень (physical layer)

Эталонная сетевая модель OSI

Как говорилось выше, сетевая модель – это модель взаимодействия сетевых протоколов (стандартов), вот на каждом уровне и присутствуют свои протоколы. Перечислять их скучный процесс (да и не к чему), поэтому лучше разберем все на примере, ведь усваиваемость материала на примерах гораздо выше ;)

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

Представительский уровень

Представительский уровень или уровень представления данных (presentation layer) – он преобразует данные в соответствующий формат. На примере понять проще: те картинки (все изображения) которые вы видите на экране, передаются при пересылке файла в виде маленьких порций единиц и ноликов (битов). Так вот, когда Вы отправляете своему другу фотографию по электронной почте, протокол Прикладного уровня SMTP отправляет фотографию на нижний уровень, т.е. на уровень Представления. Где Ваша фотка преобразуется в удобный вид данных для более низких уровней, например в биты (единицы и нолики).

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

Вот так и работает этот уровень с протоколами (стандартами) изображений (JPEG, GIF, PNG, TIFF), кодировок (ASCII, EBDIC), музыки и видео (MPEG) и т.д.

Сеансовый уровень

Сеансовый уровень или уровень сессий(session layer) – как видно из названия, он организует сеанс связи между компьютерами. Хорошим примером будут служить аудио и видеоконференции, на этом уровне устанавливается, каким кодеком будет кодироваться сигнал, причем этот кодек должен присутствовать на обеих машинах. Еще примером может служить протокол SMPP (Short message peer-to-peer protocol), с помощью него отправляются хорошо известные нам СМСки и USSD запросы. И последний пример: PAP (Password Authentication Protocol) – это старенький протокол для отправки имени пользователя и пароля на сервер без шифрования.

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

Транспортный уровень (transport layer) – этот уровень обеспечивает надёжность передачи данных от отправителя к получателю. На самом деле всё очень просто, например вы общаетесь с помощью веб-камеры со своим другом или преподавателем. Нужна ли здесь надежная доставка каждого бита переданного изображения? Конечно нет, если потеряется несколько битов из потокового видео Вы даже этого не заметите, даже картинка не изменится (м.б. изменится цвет одного пикселя из 900000 пикселей, который промелькнет со скоростью 24 кадра в секунду).

А теперь приведем такой пример: Вам друг пересылает (например, через почту) в архиве важную информацию или программу. Вы скачиваете себе на компьютер этот архив. Вот здесь надёжность нужна 100%, т.к. если пару бит при закачке архива потеряются – Вы не сможете затем его разархивировать, т.е. извлечь необходимые данные. Или представьте себе отправку пароля на сервер, и в пути один бит потерялся – пароль уже потеряет свой вид и значение изменится.

Таким образом, когда мы смотрим видеоролики в интернете, иногда мы видим некоторые артефакты, задержки, шумы и т.п. А когда мы читаем текст с веб-страницы – потеря (или скжение) букв не допустима, и когда скачиваем программы – тоже все проходит без ошибок.

На этом уровне я выделю два протокола: UDP и TCP. UDP протокол (User Datagram Protocol) передает данные без установления соединения, не подтверждает доставку данных и не делает повторы. TCP протокол (Transmission Control Protocol), который перед передачей устанавливает соединение, подтверждает доставку данных, при необходимости делает повтор, гарантирует целостность и правильную последовательность загружаемых данных.

Следовательно, для музыки, видео, видеоконференций и звонков используем UDP (передаем данные без проверки и без задержек), а для текста, программ, паролей, архивов и т.п. – TCP (передача данных с подтверждением о получении, затрачивается больше времени).

Сетевой уровень

Сетевой уровень (network layer) – этот уровень определяет путь, по которому данные будут переданы. И, между прочим, это третий уровень Сетевой модели OSI, а ведь существуют такие устройства, которые как раз и называют устройствами третьего уровня – маршрутизаторы.

Все мы слышали об IP-адресе, вот это и осуществляет протокол IP (Internet Protocol). IP-адрес – это логический адрес в сети.

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

Те самые маршрутизаторы (с которыми мы и будет работать в дальнейшем) используют протоколы этого уровня для маршрутизации пакетов (RIP, EIGRP, OSPF).

Канальный уровень

Канальный уровень (data link layer) – он нам нужен для взаимодействия сетей на физическом уровне. Наверное, все слышали о MAC-адресе, вот он является физическим адресом. Устройства канального уровня – коммутаторы, концентраторы и т.п.

IEEE (Institute of Electrical and Electronics Engineers - Институт инженеров по электротехнике и электронике) определяет канальный уровень двумя подуровнями: LLC и MAC.

LLC – управление логическим каналом (Logical Link Control), создан для взаимодействия с верхним уровнем.

MAC – управление доступом к передающей среде (Media Access Control), создан для взаимодействия с нижним уровнем.

Объясню на примере: в Вашем компьютере (ноутбуке, коммуникаторе) имеется сетевая карта (или какой-то другой адаптер), так вот для взаимодействия с ней (с картой) существует драйвер. Драйвер – это некоторая программа - верхний подуровень канального уровня, через которую как раз и можно связаться с нижними уровнями, а точнее с микропроцессором (железо) – нижний подуровень канального уровня.

Типичных представителей на этом уровне много. PPP (Point-to-Point) – это протокол для связи двух компьютеров напрямую. FDDI (Fiber Distributed Data Interface) – стандарт передаёт данные на расстояние до 200 километров. CDP (Cisco Discovery Protocol) – это проприетарный (собственный) протокол принадлежащий компании Cisco Systems, с помощью него можно обнаружить соседние устройства и получить информацию об этих устройствах.

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

Физический уровень (physical layer) – самый нижний уровень, непосредственно осуществляющий передачу потока данных. Протоколы нам всем хорошо известны: Bluetooth, IRDA (Инфракрасная связь), медные провода (витая пара, телефонная линия), Wi-Fi, и т.д.

Подробности и спецификации ждите в следующих статьях и в курсе CCNA. Вся первая часть курса CCNA (Exploration 1) посвящена модели OSI.

Заключение

Вот мы и разобрали сетевую модель OSI. В следующей части приступим к Сетевой модели TCP/IP, она меньше и протоколы те же. Для успешной сдачи тестов CCNA надо провести сравнение и выявить отличия, что и будет сделано.

Sheldon

Когда мы говорим о коммутаторах уровня 2 и Ethernet коммутаторах уровня 3, на самом деле мы имеем в виду уровни модели общего протокола - модель Open Source Interconnect (OSI). Это обычно используется в описании сетевых коммуникаций. Передача данных между различными сетями невозможна, если отсутствуют общие правила для передачи и приема пакетов данных. Эти правила известны как протоколы, среди которых Протокол Управления Передачей (Transmission Control Protocol, TCP) / Интернет-протокол (IP) является одним из наиболее широко используемых. Модель TCP/IP широко используется в описании сети и старше, чем модель OSI. У них обоих много слоев, в чем разница между ними?

Сетевая модель OSI

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

семь-уровней-модели-OSI

Рисунок 1: семь уровней модели OSI.

Уровень 7: прикладной уровень

Уровень 6: уровень представления

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

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

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

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

Транспортный уровень обеспечивает функции и средства передачи последовательностей данных от источника к хосту назначения через одну или несколько сетей, сохраняя при этом функции quality of service (QoS) и обеспечивая полную доставку данных. Целостность данных может быть гарантирована через исправление ошибок и аналогичные функции. Он также может предоставить явную функцию управления потоком. Хотя протоколы TCP и User Datagram Protocol (UDP) не строго соответствуют модели OSI, они являются важными протоколами на уровне 4.

Уровень 3: сетевой уровень

Уровень 2: канальный уровень

Канальный уровень предназначен для обеспечения взаимодействия сетей на физическом уровне и контроля ошибок, которые могут возникнуть. Полученные с физического уровня данные, представленные в битах, он упаковывает в кадры, проверяет их на целостность и, если нужно, исправляет ошибки (формирует повторный запрос повреждённого кадра) и отправляет на сетевой уровень. Канальный уровень обычно делится на два подуровня - уровень media access control (MAC) layer и logical link control (LLC) . Уровень MAC отвечает за управление тем, как устройства в сети получают доступ к мультимедиа и разрешение на передачу данных. Уровень LLC отвечает за идентификацию и инкапсуляцию протоколов сетевого уровня, а также контролирует проверку ошибок и синхронизацию кадров.

Уровень 1: физический уровень

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

Сетевая модель TCP/IP

Модель TCP/IP также является многоуровневой сетевой моделью, но это четырехуровневая модель. Он широко известен как TCP/IP, поскольку основными протоколами являются TCP и IP, но в этой модели используются не только эти два протокола.

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

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

Транспортный уровень, также известный как транспортный уровень хост-хост, отвечает за предоставление прикладного уровня сервисами связи сеанса и датаграмм. Основными протоколами этого уровня являются TCP и UDP. Протокол TCP обеспечивает один-на-один, ориентированную на соединение, надежную службу связи. Он отвечает за последовательность и подтверждение отправленных пакетов, а также восстановление пакетов, потерянных при передаче. UDP предоставляет один-к-одному или один-ко-многим, без подключения, ненадежную службу связи. UDP обычно используется, когда объем передаваемых данных невелик (например, данные помещаются в один пакет).

Сетевой уровень

примеры-адресов-IPv4-и-адресов-IPv6

Рисунок 2: примеры адресов IPv4 и адресов IPv6.

Канальный уровень

Канальный уровень (Link layer) описывает, каким образом передаются пакеты данных через физический уровень, включая кодирование (то есть специальные последовательности бит, определяющих начало и конец пакета данных). Канальный уровень иногда разделяют на 2 подуровня — LLC и MAC. Кроме того, канальный уровень описывает среду передачи данных (будь то коаксиальный кабель, витая пара, оптическое волокно или радиоканал), физические характеристики такой среды и принцип передачи данных (разделение каналов, модуляцию, амплитуду сигналов, частоту сигналов, способ синхронизации передачи, время ожидания ответа и максимальное расстояние).

Как обрабатываются данные во время передачи?

В многоуровневой системе, устройства уровня обмениваются данными в другом формате, который известен как protocol data unit (PDU). В таблице ниже показаны PDU на разных уровнях.

Таблица: protocol data unit (PDU), обрабатываемый на разных уровнях.

Тип модели Уровни OSI Protocol Data Unit (PDU) Уровни TCP/IP
Уровни хоста Прикладной уровень Данные Прикладной уровень
Уровень представления Сеансовый уровень
Сеансовый уровень Применение
Транспортный уровень Segment (TCP) / Datagram (UDP) Транспортный уровень
Уровни медиа Сетевой уровень Пакет Сетевой уровень
Канальный уровень Кадр Канальный уровень
Физический уровень Бит

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

как-данные-обрабатываются-в-моделях-OSI-и-TCPIP

Рисунок 3: потоки данных от верхних уровней к нижним, каждый уровень добавляет верхний/нижний колонтитул к PDU.

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

Значение TCP/IP и OSI для устранения неполадок

Модель TCP/IP vs. модель OSI

Модель TCP/IP старше модели OSI. На следующем рисунке показана соответствующая взаимосвязь их уровней.

сравнение-OSI-и-TCPIP

Рисунок 4: модель OSI vs модель TCP/IP и набор протоколов TCP/IP.

Сравнивая слои TCP/IP-модели, и модели OSI, прикладной уровень протокола TCP/IP-модели аналогичен комбинации слоев 5, 6, 7 модели OSI, но TCP/IP-модель не имеет отдельного уровня представления и сеансового уровня. Транспортный уровень протокола TCP/IP включает в себя функции транспортного уровня OSI и некоторые функции сеансового уровня модели OSI. Уровень доступа сети модели TCP/IP охватывает канальный и физический уровни модели OSI. Обратите внимание, что сетевой уровень TCP/IP не использует преимущества служб последовательности и подтверждения, которые могут присутствовать на канальном уровне передачи данных модели OSI. Это ответственность транспортного уровня в модели TCP/IP.

Учитывая значения двух моделей, модель OSI является концептуальной моделью. Она в основном используется для описания, обсуждения и понимания отдельных сетевых функций. Однако, TCP/IP в первую очередь сконструирована для того чтобы разрешить специфический круг проблем, а не действовать как описание поколения для всех сетевых взаимодействий как модель OSI. Модель OSI является общей, независимой от протокола, но большинство протоколов и систем придерживаются ее, в то время как модель TCP/IP основана на стандартных протоколах, которые разработал интернет. Другой момент, который следует отметить в модели OSI заключается в том, что не все уровни используются в более простых приложениях. В то время как уровни 1, 2, 3 являются обязательными для любой передачи данных, приложение может использовать какой-то уникальный интерфейс уровня вместо обычных верхних уровней в модели.

Заключение

Модель TCP/IP и модель OSI являются концептуальными моделями, используемыми для описания всех сетевых коммуникаций, в то время как TCP/IP сама по себе также является важным протоколом, используемым во всех операциях Интернета. Как правило, когда мы говорим об уровне 2, уровне 3 или уровне 7, в котором работает сетевое устройство, мы имеем в виду модель OSI. Модели TCP/IP используется как для моделирования текущей архитектуры Интернета и обеспечивают набор правил, которым следуют все формы передачи по сети.

Читайте также: