
- •На лабораторную работу №
- •Изучение программ Generator и Analyzer
- •Анализ параметров сетевых протоколов в ip сетях
- •Построение карты сети
- •Подготовка к выполнению задания
- •Узнайте ip адрес машины, за которой вы работаете.
- •Запустите необходимые для выполнения лабораторной работы программы.
- •Построение карты сети
- •Контрольные вопросы
- •Программа Generator
- •Генерирование tcp пакетов
- •Генерирование udp пакетов
- •Генерирование icmp пакетов
- •Приложение 2. Программа Analyzer
- •Приложение 3. Структура заголовков сетевых протоколов
- •Формат tcp заголовка
Формат tcp заголовка
Source Port (порт отправителя) 16 бит: номер порта отправителя;
Destination Port (порт получателя) 16 бит: номер порта получателя;
Sequence Number (порядковый номер) 32 бита: номер очереди для первого октета данных в данном сегменте.
Acknowledgment Number (номер подтверждения) 32 бита: если установлен контрольный бит ACK, то это поле содержит следующий номер очереди, который отправитель данной дейтаграммы желает получить в обратном направлении.
Data Offset (длинна TCP заголовка) 4 бита: количество 32-битных слов в TCP заголовке. Указывает на начало поля данных. TCP заголовок всегда кончается на 32-битной границе слова, даже если он содержит опции.
Reserved 6 бит: это резервное поле, должно быть заполнено нулями.
Control Bits (контрольные биты) 6 бит:
Биты этого поля слева направо
URG: поле срочного указателя задействовано
ACK: поле подтверждения задействовано
PSH: функция проталкивания
RST: перезагрузка данного соединения
SYN: синхронизация номеров очереди
FIN: нет больше данных для передачи
Window (размер окна) 16 бит:
Количество октетов, получения которых ждет отправитель настоящего сегмента.
Checksum (контрольная сумма) 16 бит:
Поле контрольной суммы - это 16-битное дополнение суммы всех 16-битных слов заголовка и текста.
Urgent Pointer (указатель на срочные данные) 16 бит:
Это поле сообщает текущее значение срочного указателя.
Options (опции) длина переменная:
Опции могут располагаться в конце TCP заголовка, а их длина кратна 8 бит.
RFC 768 User Datagram Protocol
Этот протокол (User Datagram Protocol - UDP) проектировался для создания в объединенной системе компьютерных сетей с коммутацией пакетов режима передачи дейтаграмм клиента. Протокол UDP предполагает, что нижестоящим протоколом является Internet Protocol (IP).
Данный протокол предоставляет прикладной программе процедуру для посылки сообщений другим программам. Протокол UDP ориентирован на транзакции, получение дейтаграмм и защита от дублирования не гарантированы. Приложения, требующие гарантированного получения потоков данных, должны использовать протокол управления пересылкой (Transmission Control Protocol - TCP).
Формат заголовка UDP
Порт отправителя / получателя – указывают порт отправителя и получателя
Длина - длина данной дейтаграммы, включая как заголовок, так и данные
Контрольная сумма - 16 бит. Контрольная сумма заголовка и данных, контролирующая целостность данных.
RFC 792 Internet Control Message Protocol
Шлюз или хост-компьютер, получающий данные, обменивается служебной информацией с хост-компьютером, отправляющим эти данные. Для этого используется протокол контрольных сообщений Internet (ICMP).
Сообщения ICMP должны отправляться и в некоторых затруднительных ситуациях, например, когда дейтаграмма не может достичь своего адресата, когда шлюз не имеет достаточно места в своем буфере для передачи какой-либо дейтаграммы, или когда шлюз приказывает хост-компьютеру отправлять информацию по более короткому маршруту.
Протокол Internet не создан для того, чтобы обеспечивать абсолютную надежность передачи информации. Целью же данных контрольных сообщений является обеспечение обратной связи, оповещение отправителя данных о проблемах, возникающих в коммуникационном оборудовании.
Форматы сообщений
Каждое ICMP-сообщение вкладывается в IP-пакет. Протоколом ICMP определено около двух десятков типов сообщений. Наиболее важные из них такие:
Тип Сообщение Назначение
0 Echo Reply Ответ ICMP - эхо (ping)
3 Destination Unreachable Цель не достижима
4 Source Quench Переполнение очереди источника
5 Redirect Перенаправление маршрута
8 Echo Request Запрос ICMP - эхо (ping)
9 Объявление маршрутизатора
10 Запрос маршрутизатора
11 Time Exceeded Время жизни истекло
12 Parameter Problem Неверный параметр
13 Timestamp Request Запрос метки времени
14 Timestamp Reply Ответ метки времени
15 Information Request Запрос информации
16 Information Reply Ответ информации
17 Address Mask Request Запрос маски адреса
18 Address Mask Reply Ответ маски адреса
Формат ICMP заголовка
Рассмотрим примеры использования ICMP пакетов.
Программа Ping — это служебная компьютерная программа, предназначенная для проверки соединений в сетях на основе TCP/IP. Она отправляет запросы Echo-Request протокола ICMP указанному узлу сети и фиксирует поступающие ответы (ICMP Echo-Reply). Время между отправкой запроса и получением ответа позволяет определять двусторонние задержки по маршруту и частоту потери пакетов, т.е. косвенно определять загруженности каналов передачи данных и промежуточных устройств. Полное отсутствие ICMP-ответов может также означать, что удалённый узел (или какой-либо из промежуточных маршрутизаторов) блокирует ICMP Echo-Reply или игнорирует ICMP Echo-Request.