- •Стеки сетевых протоколов Семиуровневая модель osi
- •Уровни модели osi
- •Инкапсуляция и обработка пакетов
- •Стек протоколов tcp/ip
- •Уровень приложений
- •Транспортный уровень
- •Межсетевой уровень и протокол ip
- •Уровень доступа к среде передачи
- •Протокол ip Функции протокола ip
- •Классовая модель
- •Бесклассовая модель (cidr)
- •Запись адресов в бесклассовой модели
- •Маршрутизация
- •Пример маршрутизации
- •Пример подключения локальной сети организации к Интернет
- •Маршрутизатор или шлюз?
- •Создание статических маршрутов
- •Динамическая маршрутизация
- •Формат заголовка ip-дейтаграммы
- •Фрагментация дейтаграмм
- •Обсуждение фрагментации
- •Опции ip
- •Опции “Loose/Strict Source Routing”
- •Протокол icmp
- •Протокол arp
- •Arp для дейтаграмм, направленных в другую сеть
- •Протокол iPv6 (Internet Protocol Version 6)
- •Введение в iPv6
- •Узлы, маршрутизаторы хосты и интерфейсы
- •Связи, соседи, mtu канала и адреса уровня связи
- •Одноадресные (unicast), групповые (multicast) и адреса рассылки до первого получателя (anycast)
- •Адресация iPv6 Текстовое представление iPv6-адресов
- •Адреса одноадресной рассылки
- •Зарезервированные адреса одноадресной рассылки
- •Глобальные адреса провайдеров
- •Локальные адреса одноадресной рассылки
- •IPv6-адреса с вложенными iPv4-адресами
- •Адреса рассылки до первого получателя
- •Групповые адреса
- •Обнаружение соседа (neighbor discovery)
- •Методы обнаружения маршрутизаторов
- •Обнаружение хоста
- •Формат заголовка iPv6 и механизмы маршрутизации
- •Дополнительный заголовок Hop-by-Hop
- •Заголовок Destination Options
- •Заголовок Маршрутизации (Routing)
- •Заголовок Фрагмента (Fragment)
- •Заголовок Проверка подлинности (Authentication)
- •Механизмы перехода
- •Поддержка двух стеков протоколов
- •Туннелирование iPv6 через iPv4
ОГЛАВЛЕНИЕ
Стеки сетевых протоколов 3
Семиуровневая модель OSI 3
Уровни модели OSI 4
Инкапсуляция и обработка пакетов 5
Стек протоколов TCP/IP 6
Уровень приложений 7
Транспортный уровень 8
Межсетевой уровень и протокол IP 8
Уровень доступа к среде передачи 9
Протокол IP 11
Функции протокола IP 11
IP-адреса 13
Классовая модель 14
Бесклассовая модель (CIDR) 16
Запись адресов в бесклассовой модели 17
Маршрутизация 18
Пример маршрутизации 18
Пример подключения локальной сети организации к Интернет 19
Маршрутизатор или шлюз? 20
Таблицы маршрутов 21
Создание статических маршрутов 22
Динамическая маршрутизация 22
Формат заголовка IP-дейтаграммы 24
Фрагментация дейтаграмм 27
Обсуждение фрагментации 29
Опции IP 30
Опции “Loose/Strict Source Routing” 31
Протокол ICMP 34
Протокол ARP 40
ARP для дейтаграмм, направленных в другую сеть 41
Proxy ARP 42
Протокол IPv6 (Internet Protocol Version 6) 44
Введение в IPv6 46
Узлы, маршрутизаторы хосты и интерфейсы 46
Связи, соседи, MTU канала и адреса уровня связи 47
Одноадресные (unicast), групповые (multicast) и адреса рассылки до первого получателя (anycast) 47
Адресация IPv6 47
Текстовое представление IPv6-адресов 47
Адреса одноадресной рассылки 48
Зарезервированные адреса одноадресной рассылки 49
Глобальные адреса провайдеров 49
Локальные адреса одноадресной рассылки 51
IPv6-адреса с вложенными IPv4-адресами 52
Адреса рассылки до первого получателя 52
Групповые адреса 52
Обнаружение соседа (neighbor discovery) 54
Методы обнаружения маршрутизаторов 54
Обнаружение хоста 55
Формат заголовка IPv6 и механизмы маршрутизации 56
Дополнительный заголовок Hop-by-Hop 59
Заголовок Destination Options 59
Заголовок Маршрутизации (Routing) 60
Заголовок Фрагмента (Fragment) 61
Заголовок Проверка подлинности (Authentication) 62
Механизмы перехода 63
Поддержка двух стеков протоколов 63
Туннелирование IPv6 через IPv4 63
Стеки сетевых протоколов Семиуровневая модель osi
Модель OSI (Open System Interconnect Reference Model, Эталонная модель взаимодействия открытых систем) представляет собой универсальный стандарт на взаимодействие двух систем (компьютеров) через вычислительную сеть.
Эта модель описывает функции семи иерархических уровней и интерфейсы взаимодействия между уровнями. Каждый уровень определяется сервисом, который он предоставляет вышестоящему уровню, и протоколом - набором правил и форматов данных для взаимодействия между собой объектов одного уровня, работающих на разных компьютерах.
Идея состоит в том, что вся сложная процедура сетевого взаимодействия может быть разбита на некоторое количество примитивов, последовательно выполняющихся объектами, соотнесенными с уровнями модели. Модель построена так, что объекты одного уровня двух взаимодействующих компьютеров сообщаются непосредственно друг с другом с помощью соответствующих протоколов, не зная, какие уровни лежат под ними и какие функции они выполняют. Задача объектов - предоставить через стандартизованный интерфейс определенный сервис вышестоящему уровню, воспользовавшись, если нужно, сервисом, который предоставляет данному объекту нижележащий уровень.
Например, некий процесс отправляет данные через сеть процессу, находящемуся на другом компьютере. Через стандартизованный интерфейс процесс-отправитель передает данные нижнему уровню, который предоставляет процессу сервис по пересылке данных, а процесс-получатель через такой же стандартизованный интерфейс получает эти данные от нижнего уровня. При этом ни один из процессов не знает и не имеет необходимости знать, как именно осуществляет передачу данных протокол нижнего уровня, сколько еще уровней находится под ним, какова физическая среда передачи данных и каким путем они движутся.
Эти процессы, с другой стороны, могут находиться не на самом верхнем уровне модели. Предположим, что они через стандартный интерфейс взаимодействуют с приложениями вышестоящего уровня и их задача (предоставляемый сервис) - преобразование данных, а именно фрагментация и сборка больших блоков данных, которые вышестоящие приложения отправляют друг другу. При этом сущность этих данных и их интерпретация для рассматриваемых процессов совершенно не важны.
Возможна также взаимозаменяемость объектов одного уровня (например, при изменении способа реализации сервиса) таким образом, что объект вышестоящего уровня не заметит подмены.
Вернемся к примеру: приложения не знают о том, что их данные преобразуются именно путем фрагментации/сборки, им достаточно знать то, что нижний уровень предоставляет им некий “правильный” сервис преобразования данных. Если же для какой-то другой сети понадобится не фрагментация/сборка пакетов, а, скажем, перестановка местами четных и нечетных бит, то процессы рассматриваемого уровня будут заменены, но приложения ничего не заметят, так как их интерфейсы с нижележащим уровнем стандартизованы, а конкретные действия нижележащих уровней скрыты от них.
Объекты, выполняющие функции уровней, могут быть реализованы в программном, программно-аппаратном или аппаратном виде. Как правило, чем ниже уровень, тем больше доля аппаратной части в его реализации.
Организация сетевого взаимодействия компьютеров, построенного на основе иерархических уровней, как описано выше, часто называется протокольным стеком.
