Модели и протоколы передачи данных. Модель открытых систем OSI Тема 2-05 Понятие интерфейса, протокола, процесса, порта. Обмен данными между уровнями. Понятия пакета, сообщения, их структура. Заголовки и концевики пакетов
Модели и протоколы передачи данных. В компьютерных сетях не применяется передача данных в виде непрерывной последовательности битов. Данные разбиваются на небольшие блоки, называемые пакетами, фреймами, кадрами Компьютерные сети часто называют пакетными сетями или сетями с пакетной коммутацией
Модели и протоколы передачи данных. Каждый пакет снабжается заголовком, в котором указывается адрес узла назначения. Наличие адреса в каждом пакете - одно из важнейших свойств техники коммутации пакетов, так как каждый пакет обрабатывается коммутатором независимо от других пакетов информационного потока. В конце пакета размещается дополнительное поле, которое называется концевиком. В концевике помещается контрольная сумма, которая позволяет проверить, была ли искажена информация при передаче через сеть или нет. Исходя из сказанного - различают две категории передачи информации: коммутация пакетов и коммутация каналов.
Отправляемые данные 1 этап – исходное сообщение на узле отправителе 2 этап – разбиение сообщения на части 3 этап – образование пакетов 4 этап - сборка пакетов на узле назначения Принятые данные Рис 213_1.1 Разбиение потока данных на пакеты
Модели и протоколы передачи данных. Модель открытых систем OSI Пакеты поступают в сеть без предварительного резервирования линий связи и не с фиксированной наперед заданной скоростью, как это делается в сетях с коммутацией каналов, а в том темпе, в котором их генерирует источник. Предполагается, что сеть с коммутацией пакетов в отличие от сети с коммутацией каналов всегда готова принять пакет от конечного узла.
Структура пакетов (типы данных в пакетах) Пакеты могут содержать несколько типов данных: 1. Пользовательскую информацию (например, сообщения или файлы); 2. определенные виды данных и команд, управляющих компьютером (например, запросы к службам); 3. коды управления сеансом (например, запрос на повторную передачу для исправления ошибок). Компоненты пакетов всех типов 1. адрес источника (source), идентифицирующий компьютер- отправитель; 2. адрес место назначения (destination), идентифицирующий компьютер-получатель; 3. передаваемые данные; 4. инструкции сетевым компонентам о дальнейшем маршруте данных; 5. информация компьютеру-получателю о том, как объединить передаваемый пакет с остальными, чтобы получить данные в исходном виде; 6. информация для проверки ошибок, обеспечивающая корректность передач
Компоненты пакета Заголовок; Данные; Трейлер. группируются в три раздела : Заголовок пакета включает: адрес источника; адрес места назначения; информацию, синхронизирующую передачу (идентификатор пакета и порядковый номер пакета); сигнал, говорящий о том, что передается пакетом;
Данные: Эта часть пакета - собственно передаваемые данные. В зависимости от типа сети её размер может меняться. Но для большинства сетей он составляет от 512 байтов (0,5 Кб) до 4 Кб. Для Ethernet сетей минимальный сигнал может составить 46 байтов, Max Так как обычно размер исходных данных гораздо больше 4 Кб, для помещения в пакет их необходимо разбивать на меньшие блоки. При передаче объемного файла может потребоваться много пакетов. Трейлер (концевик, терминатор) Содержимое трейлера зависит от метода связи, или протокола. Чаще всего трейлер содержит информацию для проверки ошибок, называемую циклическим избыточным кодом (Cyclical Redundancy Check, CRC) или контрольной суммы пакета (FCS – вычисляется по алгоритму CRC-32). CRC - это число, получаемое в результате математических преобразований над пакетом и исходной информацией. Когда пакет достигает место назначения, заново вычисляется CRC. Если результат совпадает с CRC, с высокой вероятностью можно считать, что пакет принят без ошибок.
Иерархия протоколов Взаимодействие между устройствами сети - сложная задача и в данном случае используется известный универсальный прием декомпозиция, то есть разбиение одной сложной задачи на несколько более простых задач-модулей. Декомпозиция состоит в четком определении функций каждого модуля, а также порядка их взаимодействия (то есть межмодульных интерфейсов). Рис 2-05_2 Уровни протоколы, интерфейсы
Протоколы, интерфейсы Протокол – это совокупность правил, устанавливающих формат и процедуры обмена информацией между двумя или несколькими устройствами (уровнями, модулями) Интерфейс – формально определенная логическая и (или) физическая граница между взаимодействующими независимыми объектами. Интерфейс задает параметры, процедуры и характеристики взаимодействия объектов. Физический интерфейс (называемый также портом) определяется набором электрических связей и характеристиками сигналов. Обычно он представляет собой разъем с набором контактов, каждый из которых имеет определенное назначение, например, это может быть группа контактов для передачи данных, контакт синхронизации данных, и т.п. Логический интерфейс это набор информационных сообщений определенного формата, которыми обмениваются два узла ( устройства сети, два соседних уровня) или две программы.
Рис 2-05_3 Связь между службой и протоколом Протоколы, интерфейсы Между каждой парой смежных уровней находится интерфейс, определяющий набор примитивных операций, предоставляемых нижним уровнем верхнему.
Набор уровней и протоколов называется архитектурой сети. Архитектура сети– это концепция, определяющая взаимосвязь, структуру и функции взаимодействия рабочих станций в сети. Она предусматривает логическую, функциональную и физическую организацию технических и программных средств сети. Архитектура определяет принципы построения и функционирования аппаратного и программного обеспечения элементов сети. Выделяют три вида архитектур: архитектура терминал – главный компьютер, архитектура клиент – сервер одноранговая архитектура. Список протоколов, используемых системой (на каждый уровень по одному протоколу), называется стеком протоколов.
Рис 2-05_4 Поток информации на уровне 5 (см. файл *.doc).
Обмен данными в сети. Службы сети. Служба Пример Ориентированная на соединение Надежный поток сообщений Последовательность страниц Надежный поток байтов Удаленная регистрация Ненадежное соединение Цифровая голосовая связь Без Установления соединения Ненадежная дейтаграмма Рассылка рекламы электронной почтой Дейтаграмма с подтверждением Заказная корреспонденция (письма) Запрос - Ответ Запрос к базе данных Рис 2-05_5 основные службы сети.
Методы продвижения пакетов Рис 2-05_6 Классификация методов коммутации
Методы продвижения пакетов 1) Дейтаграммная передача – Дейтаграмма (datagram), также датаграмма блок информации, посланный как пакет сетевого уровня через передающую среду без предварительного установления соединения и создания виртуального канала. -соединение не устанавливается, и все передаваемые пакеты продвигаются (передаются от одного узла сети другому) независимо друг от друга на основании одних и тех же правил. - Процедура обработки пакета определяется только значениями параметров, которые он несет в себе, и текущим состоянием сети. -Информация об уже переданных пакетах сетью не хранится, и в ходе обработки очередного пакета во внимание не принимается. -Каждый отдельный пакет рассматривается сетью как совершенно независимая единица передачи дейтаграмма.
Коммутации в дейтаграммной сети
Рис Иллюстрация дейтаграммного принципа передачи пакета. (пакет к узлу N2 идет двумя разными путями)
Методы продвижения пакетов 2) Передача с установлением логического соединения распадается на так называемые сеансы, или логические соединения. Процедура обработки определяется не для отдельного пакета, а для всего множества пакетов, передаваемых в рамках каждого соединения. Для реализации диффер-ого обслуживания пакетов, принадлежащих разным соединениям, сеть должна: 1)присвоить каждому соединению идентификатор, 2)запомнить параметры соединения, то есть значения, определяющие процедуру обработки пакетов в рамках данного соединения. Эта информация называется информацией о состоянии соединения. Фиксированный маршрут не является обязательным параметром соединения. Пакеты, принадлежащие одному и тому же соединению, даже имеющие одни и те же адреса отправления и назначения, могут перемещаться по разным независимым друг от друга маршрутам.
Методы продвижения пакетов Рис Передача без установления соединения (а) и с установлением соединения (б)
Рис Взаимодействие клиента и сервера по сети с установлением соединения. (1) Запрос на соединение (4) Ответ (3) Запрос Данных (2) Подтверждение (5) Разрыв соединения (6) Разрыв соединения Клиент Сервер
Методы продвижения пакетов 3) Передача с установлением виртуального канала. Если в число параметров соединения входит маршрут, то все пакеты, передаваемые в рамках данного соединения, должны проходить по указанному пути. Такой единственный заранее проложенный фиксированный маршрут, соединяющий конечные узлы в сети с коммутацией пакетов, называют виртуальным каналом (virtual circuit, или virtual channel). Рис Иллюстрация принципа работы виртуального канала
Модель OSI В начале 80-х годов ряд международных организаций по стандартизации, в частности International Organization for Standardization (ISO), часто называемая также International Standards Organization, а также International Telecommunications Union (ITU) и некоторые другие, разработали стандартную модель взаимодействия открытых систем (Open System Interconnection, OSI). Эта модель сыграла значительную роль в развитии компьютерных сетей.
Компьютер 1Компьютер 2 Процесс В Интерфейсы Сообщение Полезная информация Заголовки со служебной информацией Процесс А Протоколы Сообщение Передача по сети Физический уровень Канальный уровень Сетевой уровень Транспортный уровень Сеансовый уровень Представительный уровень Прикладной уровень Рис Модель взаимодействия открытых систем ISO/OSI API
Рис Вложенность сообщений различных уровней Trailer3 Концевик 3 Концевик 2 Концевик 1 Header3 Заголовок 3 Заголовок 2 Заголовок 1 Поле данных 2 Поле данных 1 Data3 Поле данных 3 Сообщение 3-го уровня Сообщение 2-го уровня... Сообщение 1-го уровня
Рис. Рис Формирование пакета каждого уровня семиуровневой модели
Протокольная единица данных ISO В стандартах ISO для обозначения единиц обмена данными, с которыми имеют дело протоколы разных уровней, используют общее название протокольная единица данных. (Protokol Data Unit, PDU). Для обозначения единиц обмена данными конкретных уровней часто используют специальные названия, в частности: сообщения, кадр, пакет, дейтаграмма, сегмент.
1 - Заголовок процесса 5 - Концевик пакета 2 - Данные 6 - Заголовок пакета 3 - Концевик процесса 7 - Концевик кадра 4 - Заголовок передачи 8 - Заголовок кадра Рис Идеология взаимодействия двух процессов
Рис Соответствие функций коммутационного оборудования модели OSI
Concentrator Switch Router Physical Data Link Physical Data Link Physical Network Data Link Physical Рис Соответствие функций различных устройств сети уровням модели OSI Application Presentation Session Transport Network Data Link Physical Application Presentation Session Transport Network Data Link Physical
Соответствие популярных стеков протоколов модели OSI
Рис Соответствие популярных стеков протоколов модели