Тема 2. Модель OSI (Open System Interconnection). Стек протоколов TCP\IP.
Протоколы и службы.
Типы связи
Симплексная связь предполагает, что соединение одностороннее, то есть передача данных возможна только в одну сторону. Пример: передача посланий потомкам.
Если связь в принципе возможна в обе стороны, но не в одно и то же время, или если существенно отличаются характеристики связи в разные стороны, такая связь называется полудуплексной. Пример: фрагменты железнодорожного пути – однопутки.
Равноправная двусторонняя связь называется дуплексной. Пример: почта.
Еще одно важное понятие: надежность передач. Один из самых распространенных способов обеспечения надежности – квитанции. При этом, получив правильные данные, получатель отправляет источнику специальное сообщение – квитанцию о получении.
Протокол – это набор правил, в соответствии с которыми осуществляется взаимодействие. В протоколе оговаривается формат данных, упорядочивание, решаются вопросы синхронизации, обработки ошибок.
Служба – набор примитивов (системных вызовов), которые более низкий уровень предоставляет более верхнему. Причем способ реализации этих примитивов скрыт от верхнего уровня. Этот способ реализации и есть конкретный протокол. То есть служба может быть одна, а реализаций может быть несколько. Более того, не меняя службу (то есть интерфейс для более высоких уровней), общающиеся стороны могут менять протокол.
Пример1.
Вы хотите пообщаться с кем-то. И у вас и у вашего собеседника есть секретарь. Прямое общение между вами затруднено, например, по языковой причине. Вы можете обратиться к услугам своих секретарей. На каком языке будут общаться ваши секретари, при помощи каких средств связи (телефон, почта) вас совершенно не интересует. Здесь служба – это секретари. А протокол – способ общения секретарей.
Пример 2.
Связь через модем. Вам, как верхнему уровню требуется установить соединение, для того чтобы передать файл. При установлении соединения модемы договариваются о протоколе общения. Выбираемый протокол должен быть приемлем для обоих модемов, кроме того, он должен соответствовать качеству сети (разная скорость, разная проверка ошибок и т.п.).
С целью стандартизации уровней общения сетевых устройств международной организацией ISO (international organization of standard) была разработана модель OSI (Open System Interconnection), которая описывает, как, по каким правилам высокоуровневое сообщение преобразуется в конечном итоге в электрические сигналы, передающиеся по сетевому кабелю или телефонной сети, а затем восстанавливаются вновь у получателя.
1. Прикладной.
Обеспечивает связь человека и компьютера или любого другого сетевого устройства. Определяет правила интерфейса с пользователем.
2. Представления
Обеспечивает подготовку данных к передаче по сети, например, кодирование, упаковка.
3. Сеансовый
Обеспечивает установление логического или физического соединения.
4. Транспортный
Обеспечивает надежную передачу пакетов данных.
5. Сетевой
Обеспечивает распределение пакетов по многоуровневой сети (с подсетями). Решаются вопросы адресации, выбора маршрута.
6. Канальный
Обеспечивает прохождение пакета по каналу связи. Стандарты на сетевые технологии.
7. Физический
Описывает требования к физическим характеристикам сетевых устройств, способы кодирования, аппаратного контроля правильности и т.п.
Сейчас нам важно понять, что для протоколов более старшего уровня информация, получаемая от протоколов младшего уровня, рассматривается как непрерывный поток битов, которые разбиваются на некоторые куски, называемые пакетами или дейтаграммами в зависимости от типа соединения. Пакетом обычно называют единицу информации, передаваемой с подтверждением. А дейтаграммой – без подтверждения. Причем обе эти единицы рассматриваются на транспортном уровне. На канальном уровне единица передаваемой информации обычно называется кадром.
Пусть исходный текст, который мы хотим передать по сети: «Данные». Тогда этот текст разобьется на некоторые фрагменты, размер которых соответствует размеру минимального буфера (минимум по источнику, получателю и промежуточным узлам). Каждый фрагмент снабжается заголовком. Такая конструкция называется пакетом. Заголовок пакета (адрес отправителя и адрес получателя + служебная информация).