Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сети передачи АВД_2011.doc
Скачиваний:
9
Добавлен:
15.12.2018
Размер:
1.55 Mб
Скачать

4.1.3. Фрагментация ip-сегментов

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

Изменение размера IP-сегмента реализуется механизмом, называемым фрагментацией. IP-модуль на любом узле сети должен иметь возможность:

  • разбивать полученный им IP-сегмент на IP-фрагменты необходимого размера перед их передачей через конкретную сеть;

  • восстанавливать исходный IP-сегмент из получаемых им IP-фрагментов.

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

IP-фрагменты в своих заголовках содержат поле Смещение фрагмента, описывающее смещение данных IP-фрагмента в данных исходного IP-сегмента. Это поле позволяет корректно восстановить данные исходного IP-сегмента в принимающем IP-фрагменты узле даже в ситуации, когда IP-фрагменты приходят в порядке, отличающемся от порядка их посылки.

4.2. Указания к выполнению работы

4.2.1. Захват пакетов с помощью программы Traceroute

При запросе генерации следов IP-дейтаграмм в этой лабораторной работе мы будем использовать программу Traceroute, чтобы отправлять дейтаграммы разного размера к хосту-адресату.

Программа Traceroute сначала отправляет серию из одной или нескольких дейтаграмм со временем жизни (time-to-live, TTL) установленном в заголовке IP равным 1; затем она отсылает серии дейтаграмм к тому же хосту с TTL равным 2; затем с TTL равным 3 и т.д. Кроме того, для каждой из этих дейтаграмм отправитель запускает таймер. Также напомним, что каждое соединение должно уменьшать значение TTL в каждой полученной дейтаграмме на 1. Когда значение TTL достигнет 0, то n-й маршрутизатор, на который пришла эта дейтаграмма, увидит, что время жизни этой дейтаграммы только что истекло. В соответствии с правилами протокола IP, маршрутизатор отбрасывает эту дейтаграмму и посылает источнику предупреждающее ICMP-сообщение (тип 11 – время жизни истекло). Это сообщение содержит имя маршрутизатора и его IP-адрес. Когда это сообщение приходит к отправителю, тот по значению таймера узнает время оборота пакета, а также (из ICMP-сообщения) имя и IP-адрес n-го маршрутизатора. Таким образом, программа Traceroute позволяет проследить маршрут от одного хоста до другого.

Итак, нам необходимо запустить программу Traceroute и отправить дейтаграммы различной длины. Наиболее подходящим вариантом этой программы для Windows является программа Pingplotter. Размер ICMP запросов эха в этой программе устанавливается путем выбора пункта меню Edit>Advanced Options>Packet Options и последующего заполнения поля Packet Size. По умолчанию этот размер составляет 56 байт. Единовременно Pingplotter отправляет серии пакетов с увеличивающимися значениями TTL, затем процесс отправки возобновляется с TTL=1 по истечении времени ожидания. Время ожидания и количество интервалов в этой программе можно установить.