Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ГОСЫ / Kolchin.doc
Скачиваний:
316
Добавлен:
15.02.2016
Размер:
777.22 Кб
Скачать

12. Фрагментация протокола ip

IP-пакет — форматированный блок информации, передаваемый по компьютерной сети, структура которого определена протоколом IP. В отличие от них, соединения компьютерных сетей, которые не поддерживают IP-пакеты, такие как традиционные соединения типа «точка-точка» в телекоммуникациях, просто передают данные в виде последовательности байтов, символов или битов. При использовании пакетного форматирования сеть может передавать длинные сообщения более надежно и эффективно.

IP-фрагментация это разбиение датаграммы на множество частей, которые могут быть повторно собраны позже. Для IP-фрагментации и повторной сборки используются такие поля из IP заголовка как источник, адресат, идентификация, полная длина, и смещение фрагмента, наряду с флажками "больше фрагментов" (MF) и "не фрагментировать" (DF). 

Фрагментация – это разбивка полезной нагрузки на части. Для нее используются 3 поля из IP-заголовка – 5 (идентификатор пакета), 6 (поле флагов), 7 (смещение фрагмента).

IP-пакет может быть помечен как не фрагментируемый. Любой пакет, помеченный таким образом, не может быть фрагментирован модулем IP ни при каких условиях. Если же пакет, помеченный как не фрагментируемый, не может достигнуть получателя без фрагментации, то этот пакет просто уничтожается, а узлу-отправителю посылается соответствующее ICMP-сообщение.

Поле смещения фрагмента сообщает получателю положение фрагмента в исходном пакете. Смещение фрагмента и длина определяют часть исходного пакета, принесенную этим фрагментом. Флаг «more fragments» показывает появление последнего фрагмента. Модуль протокола IP, отправляющий неразбитый на фрагменты пакет, устанавливает в нуль флаг «more fragments» и смещение во фрагменте.

Чтобы собрать фрагменты пакета, модуль протокола IP (например, модуль на хост - компьютере) объединяет IP-пакеты, имеющие одинаковые значения в полях идентификатора, отправителя, получателя и протокола. Таким образом, отправитель должен выбрать идентификатор таким образом, чтобы он был уникален для данной пары отправитель-получатель, для данного протокола и в течение того времени, пока данный пакет (или любой его фрагмент) может существовать в составной IP-сети.

Каждый модуль IP должен быть способен передать пакет из 68 байт без дальнейшей фрагментации. Это связано с тем, что IP-заголовок может включать до 60 байт, а минимальный фрагмент данных - 8 байт. Каждый получатель должен быть в состоянии принять пакет из 576 байт в качестве единого куска либо в виде фрагментов, подлежащих сборке.

13. Icmp-сообщения

ICMP (Internet Control Message Protocol — межсетевой протокол управляющих сообщений) — сетевой протокол, входящий встек протоколов TCP/IP. В основном ICMP используется для передачи сообщений об ошибках и других исключительных ситуациях, возникших при передаче данных. Также на ICMP возлагаются некоторые сервисные функции. Хотя формально ICMP используетIP(ICMP пакетыинкапсулируютсявIPпакеты), он является неотъемлемой частьюIPи обязателен при реализациистека TCP/IP.

Протокол ICMP не делает протокол IPсредством надёжной доставки сообщений. Для этих целей существуетTCP.

Структура ICMP-заголовка:

  1. Тип – 1 байт

  2. Код – 1 байт

  3. Контрольная сумма – 2 байта

  4. Содержание сообщения (зависит от значений полей «Код» и «Тип»)

Типы:

0 – отклик

3 – адресат не достижим

4 – обрыв передачи

5 – переадресация

8 – эхо (запрос отклика)

9 – объявление маршрутизатора

10 – выбор маршрутизатора

11 – время истекло

12 – ошибка параметров

Технические подробности

ICMP-сообщение строится из IP-пакетов, сгенерировавших ICMP-ответ.IPинкапсулирует (скрывает) соответствующее ICMP-сообщение с новым заголовком IP(чтобы отправить ICMP-сообщение обратно отправителю) и передает полученные пакеты дальше.

Например, каждая машина (такая, как маршрутизатор), которая перенаправляетIP-пакеты, уменьшаетTime to live(TTL) поля заголовкаIPна единицу, если TTL достигает 0, ICMP-сообщение о превышении TTL отправляется на источник пакета.

ICMP основан на протоколе IP. Каждое ICMP-сообщение инкапсулируется непосредственно в пределах одногоIP-пакета, и, таким образом, как иUDPи в отличие отTCP, ICMP является т. н. "ненадежным" (не контролирующим доставку и её правильность). В отличие от UDP, где реализация надёжности возложена на ПО прикладного уровня, ICMP (в силу специфики применения) обычно не нуждается в реализации надёжной доставки. Его цели отличны от целей транспортных протоколов, таких какTCPиUDP: он, как правило, не используется для передачи и приема данных между конечными системами. ICMP не используется непосредственно в приложениях пользователей сети (исключение составляют инструментыPingиTraceroute). Тот же Ping, например, служит обычно как раз для проверки потерь IP-пакетов на маршруте.

Использование ICMP-сообщений

ICMP-сообщения (тип 12) генерируются при нахождении ошибок в заголовке IP-пакета (за исключением самих ICMP-пакетов, дабы не привести к бесконечно растущему потоку ICMP-сообщений об ICMP-сообщениях).

ICMP-сообщения (тип 3) генерируются маршрутизаторомпри отсутствии маршрута к адресату.

Утилита Ping, служащая для проверки возможности доставкиIP-пакетов, использует ICMP-сообщения с типом 8 (эхо-запрос) и 0 (эхо-ответ).

Утилита Traceroute, отображающая путь следованияIP-пакетов, использует ICMP-сообщения с типом 11.

ICMP-сообщения с типом 5 используются маршрутизаторамидля обновления записей втаблице маршрутизацииотправителя.

ICMP-сообщения с типом 4 используются получателем (или маршрутизатором) для управления скоростью отправки сообщений отправителем.

Соседние файлы в папке ГОСЫ