Слайд 1Протокол межсетевого взаимодействия IP
(Internet Protocol)
Основные функции
Структура пакета
Таблицы маршрутизации
Маршрутизация без использования
масок
Сети и подсети
Маршрутизация с использованием масок
Фрагментация
Слайд 5Адресация портов маршрутизатора
Порты (интерфейсы)
Блок управления
IP-адрес и MAC
Блок продвижения
Блок маршрутизации
IP-1
MAC-1
IP-2
MAC-2
. .
.
Интерфейс маршрутизатора может не иметь ни одного IP-адреса и
ни одного MAC-адреса
Один интерфейс маршрутизатора может иметь несколько IP-адресов и несколько MAC-адресов
Слайд 6
Упрощенная таблица маршрутизации
(routing table)
Слайд 8Структура заголовка IP-пакета
Длина заголовка 20
(с опциями 60)
байтов.
Максимальная длина
IP-пакета
65535 байтов
PR – приоритет 000-111
D (delay) – задержка: 0
– нормальная, 1 – малая
T (throughput) – пропускная способность: 0-норма, 1-высокая
R (reliability) – надежность: 0-норма, 1-высокая
Type of service RFC 1340 и 1349
telnet – 100
FTP –управление 100, данные 010
SNMP- 001
Максимальное время жизни 255 с
Только для заголовка
Слайд 9Протокол верхнего уровня
RFC 1700 описывает значения идентификаторов для разных протоколов
(http://www.iana.org)
6 ─ сообщение TCP
17 ─ сообщение UDP
1 ─ сообщение ICMP
Слайд 10Формат заголовка IP-датаграммы (IPv4)
Слайд 12Таблица программного маршрутизатора MPR Windows NT
Слайд 13Таблица маршрутизации аппаратного маршрутизатора NetBuilder II компании 3Com
Слайд 14Таблица маршрутизации аппаратного маршрутизатора NetBuilder II компании 3Com
Status ─
статус записи (Up ─ маршрут активен и работоспособен);
TTL ─ время
жизни записи (время, в течение которого значение записи еще действительно)
Source ─ источник появления записи
Слайд 15Таблица маршрутизации Unix-маршрутизатора
Слайд 16Таблица маршрутизации Unix-маршрутизатора
Флаги записей:
U ─ маршрут активен и работоспособен;
H ─ признак специфического маршрута к хосту;
G ─ маршрут
проходит через промежу-точный маршрутизатор;
D ─ маршрут получен из перенаправ-ленного сообщения протокола ICMP (присутствует в таблице конечного узла)
Слайд 17Таблица маршрутизации Unix-маршрутизатора
Refcnt ─ поле числа ссылок (сколько раз ссылалис
на данный маршрут при продвижении пакетов);
Use ─ поле загрузки (количество
байт, переданных по данному маршруту);
Слайд 24Сеть из 215 узлов
Сеть из 214 узлов
Сеть из
213 узлов
Структуризация сети масками переменной длины
129.44.0.0
Слайд 27Сеть 129.44.0.0 Маска 255.255.128.0 215 узлов
Сеть 129.44.128.0
Маска 255.255.192.0 214 узлов
Сеть 129.44.224.0 Маска 255.255.224.0
213 узлов
129.44.0.1
129.44.192.1
Сеть 129.44.192.0
Маска 255.255.255.248
8 узлов
129.44.128.3
129.44.224.5
129.44.192.2
Структуризация сети масками переменной длины
Слайд 33
Протокол управляющих сообщений ICMP
Internet Control Message Protocol)
Формат сообщений ICMP
Эхо-протокол
Утилиты ping
и tracert
Слайд 35Инкапсуляция сообщения ICMP
Протокол ICMP - это семейство протоколов, каждый
из которых решает свои узкие задачи и имеет свой формат
сообщения
Формат заголовка ICMP
1 байт
1 байт
2 байта
4 байта
Type Code Checksum Зависит от типа и кода
8 байт
20 байт
14 байт
Слайд 37Формат заголовка и ICMP-сообщения типа
«ответ о значении маски»
Type=18
Code=0
Checksum
Идентификатор запроса
Последовательный
номер
Значение маски
4 байта
Слайд 38Формат заголовка ICMP-сообщения об ошибке
Type=3
Code=0
Checksum
Не используется
Заголовок IP +
8 байт поля данных (Заголовка UDP или TCP)
4 байта
Слайд 40ICMP-сообщения об ошибках:
не корректируют ошибок
не могут направляться промежуточному маршрутизатору
могут теряться
Нельзя
посылать ICMP-сообщения об ICMP-сообщениях об ошибках, но для ICMP-сообщений-запросов -
можно
ICMP сообщения можно посылать только о проблемах, возникающих при обработке первого фрагмента в сегментированном IP-пакете
Слайд 44Формат ICMP сообщения для эхо запроса и эхо отклика
Слайд 47Общий формат опции записи маршрута в IP заголовке
Слайд 48Код (code) - однобайтовое поле, содержащее тип IP опции. Для
опции RR установлено значение 7.
Длина (len) - это полный
размер в байтах опции RR, в данном случае 39. (Несмотря на то, что существует возможность указать опцию RR с размером меньше максимального, ping всегда предоставляет поле опции размером 39 байт, что позволяет записать до 9 IP адресов. Несмотря на то, что существует ограничение в размере опций в IP заголовке, оно, тем не менее, позволяет указать размер меньше максимального.)
Указатель (ptr) - это индекс в 39-байтной опции, который указывает на то, где хранится следующий IP адрес. Его минимальное значение 4, что указывает на первый IP адрес. Когда следующий IP адрес записывается в список, значение ptr меняется следующим образом: 8, 12, 16 и так до 36. После того как записан девятый адрес, ptr устанавливается в значение 40, указывая на то, что список полон.
Слайд 49Программа ping с опцией записи маршрутизации
Слайд 50svr4 % ping -R slip
PING slip (140.252.13.65): 56 data bytes
64
bytes from 140.252.13.65: icmp_seq=0 ttl=254 time=280 ms
RR: bsdi (140.252.13.66)
slip (140.252.13.65)
bsdi
(140.252.13.35)
svr4 (140.252.13.34)
64 bytes from 140.252.13.65: icmp_seq=1 ttl=254 time=280 ms (same route)
64 bytes from 140.252.13.65: icmp_seq=2 ttl=254 time=280 ms (same route)
^?
--- slip ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 270/276/280 ms
Программа ping c опцией записи маршрута (RR)
Слайд 51ICMP сообщение об истечении времени ("time exceeded”)
Слайд 52Программа traceroute
На хост назначения отправляется IP датаграмма с TTL, установленным
в единицу. Первый маршрутизатор, который должен обработать датаграмму, уничтожает ее
(так как TTL равно 1) и отправляет ICMP сообщение об истечении времени (time exceeded). Таким образом, определяется первый маршрутизатор в маршруте.
Затем Traceroute отправляет датаграмму с TTL равным 2, что позволяет получить IP адрес второго маршрутизатора. Это продолжается до тех пор, пока датаграмма не достигнет хоста назначения.
Однако, если датаграмма прибыла именно на хост назначения, он не уничтожит ее и не сгенерирует ICMP сообщение об истечении времени, так как датаграмма достигла своего конечного назначения. Как можно определить, что датаграмма достигла конечного пункта назначения?
В UDP датаграммах, которые посылает Traceroute, устанавливается несуществующий номер UDP порта (больше чем 30000), что делает невозможным обработку этой датаграммы каким-либо приложением. Поэтому когда прибывает подобная датаграмма, UDP модуль хоста назначения генерирует ICMP сообщение "порт недоступен" (port unreachable). Все что необходимо в этом случае, Traceroute это определить тип принятого ICMP сообщения - либо об истечении времени, либо о недоступности порта - именно таким образом мы узнаем, доставлена ли датаграмма в пункт назначения.
Слайд 54Протокол IPv6
Причины модернизации
Расширенное адресное пространство
Гибкий формат заголовка
Снижение нагрузки на маршрутизаторы
Переход
с IPv4 на IPv6
Слайд 57IPv6
Начало работы – 1992 год
Альтернативные варианты протокола IP нового поколения:
IPv7 (Ullman), TUBA (Callon), ENCAPS (R.Hinden), SIP (S.Deering), PIP (Francis)
ENCAPS,
SIP и PIP в 1993 году слились в единое предложение SIPP
SIPP в июле 1994 года на сессии сообщества Интернета принято за основу IP нового поколения (Next Generation Internet Protocol, IPng)
Слайд 58Руководство Интернетом
Internet Society, ISOC – сообщество Интернета
Internet Architecture Board, IAB
– совет по архитектуре Интернета
Internet Research Task Force (IRTF) координирует
долгосрочные исследовательские проекты
Internet Engineering Task Force (IETF) занимается решением текущих технических задач
Слайд 59Стандарты
RFC 1752
Базовый набор протоколов принят IETF в сентябре 1995 года
В
августе 1998 года приняты пересмотренные версии группы стандартов, определяющих архитектуру
IPv6 (RFC 2460) и систему адресации (RFC 2373)
Слайд 66Формат заголовка IP-датаграммы (IPv6)