Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Тема: Фрагментация дейтаграмм в составных сетях с различными значениями MTUСодержание книги
Поиск на нашем сайте
Цель: Исследовать процессы маршрутизации и фрагментации дейтаграмм при передаче сообщений в сети Теоретические сведения: IP-адресация IP -адрес является уникальным 32-битовым идентификатором IP -интерфейса в Internet. Часто говорят, что IP -адрес присваивается узлу сети (например, хосту) - это верно в случае, если узел является хостом с одним IP -интерфейсом, иначе следует уточнить, об адресе какого именно интерфейса данного узла идет речь. Далее для краткости там, где это не вызовет неверного толкования, вместо адреса IP -интерфейса узла сети говорится об IP -адресе хоста. IP -адреса принято записывать разбивкой всего адреса по октетам, каждый октет записывается в виде десятичного числа, числа разделяются точками. Например, адрес записывается как 10100000.01010001.00000101.10000011 = 160.81.5.131. IP -адрес хоста состоит из номера IP -сети, который занимает старшую область адреса, и номера хоста в этой сети, который занимает младшую часть. Положение границы сетевой и хостовой частей (обычно оно характеризуется количеством бит, отведенных на номер сети) может быть различным, определяя различные типы IP -адресов, которые рассматриваются ниже. Классовая модель IP -адресации Существуют две модели IP -адресации: классовая и бесклассовая. В данной лабораторной работе используется классовая модель адресации. В классовой модели IP -адрес может принадлежать к одному из четырех классов сетей. Каждый класс характеризуется определенным размером сетевой части адреса, кратным восьми; таким образом, граница между сетевой и хостовой частями IP -адреса в классовой модели всегда проходит по границе октета. Принадлежность к тому или иному классу определяется по старшим битам адреса. Класс А. Старший бит адреса равен нулю. Размер сетевой части равен 8 битам. Таким образом, может существовать всего примерно 27 сетей класса А, каждая сеть обладает адресным пространством на 224 хостов. Так как старший бит адреса нулевой, то все IP -адреса этого класса имеют значение старшего октета в диапазоне 0 - 127, который является также и номером сети. Класс В. Два старших бита адреса равны 10. Размер сетевой части равен 16 битам. Таким образом, может существовать всего примерно 214 сетей класса В, каждая сеть обладает адресным пространством на 216 хостов. Значения старшего октета IP -адреса лежат в диапазоне 128 - 191, при этом номером сети являются два старших октета. Класс С. Три старших бита адреса равны 110. Размер сетевой части равен 24 битам. Количество сетей класса С примерно 221, адресное пространство каждой сети рассчитано на 254 хоста. Значения старшего октета IP -адреса лежат в диапазоне 192 - 223, а номером сети являются три старших октета. Класс D. Сети со значениями старшего октета IP -адреса 224 и выше. Зарезервированы для специальных целей. Некоторые адреса используются для мультикастинга - передачи дейтаграмм группе узлов сети, например: 224.0.0.1 - всем хостам данной сети; 224.0.0.2 - всем маршрутизаторам данной сети; 224.0.0.5 - всем OSPF -маршрутизаторам; 224.0.0.6 - всем выделенным (designated) OSPF- маршрутизаторам Рисунок 6.1 Классы IP -адресов
В классе А выделены две особые сети, их номера 0 и 127. Сеть 0 используется при маршрутизации как указание на маршрут по умолчанию и в других особых случаях. IP -интерфейс с адресом в сети 127 используется для адресации узлом себя самого (loopback, интерфейс обратной связи). Интерфейс обратной связи не обязательно имеет адрес в сети 127 (особенно у маршрутизаторов), но если узел имеет IP -интерфейс с адресом 127.0.0.1, то это - интерфейс обратной связи. Обращение по адресу loopback -интерфейса означает связь с самим собой (без выхода пакетов данных на уровень доступа к среде передачи); для протоколов на уровнях транспортном и выше такое соединение неотличимо от соединения с удаленным узлом, что удобно использовать, например, для тестирования сетевого программного обеспечения. В любой сети все нули в номере хоста обозначают саму сеть, все единицы - адрес широковещательной передачи (broadcast). Например, 194.124.84.0 - сеть класса С, номер хоста в ней определяется последним октетом. При отправлении широковещательного сообщения оно отправляется по адресу 194.84.124.255. Номера, разрешенные для присваивания хостам: от 1 до 254 (194.84.124.1 - 194.84.124.254), всего 254 возможных адреса. Другой пример: в сети 135.198.0.0 (класс В, номер хоста занимает два октета) широковещательный адрес 135.198.255.255, диапазон номеров хостов: 0.1 - 255.254 (135.198.0.1 - 135.198.255.254). Бесклассовая модель IP- адресации (CIDR) Предположим, в локальной сети, подключаемой к Internet, находится 2000 компьютеров. Каждому из них требуется выдать IP -адрес. Для получения необходимого адресного пространства нужны либо 8 сетей класса C, либо одна сеть класса В. Сеть класса В вмещает 65534 адреса, что много больше требуемого количества. При общем дефиците IP -адресов такое использование сетей класса В расточительно. Однако если мы будем использовать 8 сетей класса С, возникнет следующая проблема: каждая такая IP -сеть должна быть представлена отдельной строкой в таблицах маршрутов на маршрутизаторах, потому что с точки зрения маршрутизаторов - это 8 абсолютно никак не связанных между собой сетей, маршрутизация дейтаграмм в которые осуществляется независимо, хотя фактически эти IP -сети и расположены в одной физической локальной сети и маршруты к ним идентичны. Таким образом, экономя адресное пространство, мы многократно увеличиваем служебный трафик в сети и затраты по поддержанию и обработке маршрутных таблиц. С другой стороны, нет никаких формальных причин проводить границу сеть-хост в IP -адресе именно по границе октета. Это было сделано исключительно для удобства представления IP -адресов и разбиения их на классы. Если выбрать длину сетевой части в 21 бит, а на номер хоста отвести, соответственно, 11 бит, мы получим сеть, адресное пространство которой содержит 2046 IP -адресов, что максимально точно соответствует поставленному требованию. Это будет одна сеть, определяемая своим уникальным 21-битным номером, следовательно, для ее обслуживания потребуется только одна запись в таблице маршрутов. Единственная проблема, которую осталось решить: как определить, что на сетевую часть отведен 21 бит? В случае классовой модели старшие биты IP -адреса определяли принадлежность этого адреса к тому или иному классу и, следовательно, количество бит, отведенных на номер сети. В случае адресации вне классов, с произвольным положением границы сеть-хост внутри IP -адреса, к IP -адресу прилагается 32-битовая маска, которую называют маской сети (netmask) или маской подсети (subnet mask). Сетевая маска конструируется по следующему правилу: · на позициях, соответствующих номеру сети, биты установлены; · на позициях, соответствующих номеру хоста, биты сброшены. Описанная выше модель адресации называется бесклассовой (CIDR - Classless Internet Direct Routing, прямая бесклассовая маршрутизация). В настоящее время классовая модель считается устаревшей и маршрутизация и (большей частью) выдача блоков IP -адресов осуществляются по модели CIDR, хотя классы сетей еще прочно удерживаются в терминологии. Пример записи адресов в бесклассовой модели Для удобства записи IP -адрес в модели CIDR часто представляется в виде a.b.c.d / n, где a.b.c.d - IP адрес, n - количество бит в сетевой части. Пример: 137.158.128.0/17 Маска сети для этого адреса: 17 единиц (сетевая часть), за ними 15 нулей (хостовая часть), что в октетном представлении равно 11111111.11111111.10000000.00000000 = 255.255.128.0. Представив IP -адрес в двоичном виде и побитно умножив его на маску сети, мы получим номер сети (все нули в хостовой части). Номер хоста в этой сети мы можем получить, побитно умножив IP -адрес на инвертированную маску сети.
Пример: IP = 205.37.193.134/26 или, что то же, IP = 205.37.193.134 netmask = 255.255.255.192. Распишем в двоичном виде: IP = 11001101 00100101 11000111 10000110 netmask = 11111111 11111111 11111111 11000000
Умножив побитно, получаем номер сети (в хостовой части - нули): network = 11001101 00100101 11000111 11 000000 или, в октетном представлении, 205.37.193.128/26, или, что то же, 205.37.193.128 netmask 255.255.255.192. Хостовая часть рассматриваемого IP адреса равна 000110, или 6. Таким образом, 205.37.193.134/26 адресует хост номер 6 в сети 205.37.193.128/26. В классовой модели адрес 205.37.193.134 определял бы хост 134 в сети класса С 205.37.193.0, однако указание маски сети (или количества бит в сетевой части) однозначно определяет принадлежность адреса к бесклассовой модели. Упражнение. Покажите, что адрес 132.90.132.5 netmask 255.255.240.0 определяет хост 4.5 в сети 132.90.128.0/20 (в классовой модели это был бы хост 132.5 в сети класса В 132.90.0.0). Найдите адрес broadcast для этой сети. Очевидно, что сети классов А, В, С в бесклассовой модели представляются при помощи масок, соответственно, 255.0.0.0 (или /8), 255.255.0.0 (или /16) и 255.255.255.0 (или /24). Маршрутизация в составных сетях Процесс маршрутизации дейтаграмм состоит в определении следующего узла (next hop) в пути следования дейтаграммы и пересылки дейтаграммы этому узлу, который является либо узлом назначения, либо промежуточным маршрутизатором, задача которого определить следующий узел и переслать ему дейтаграмму. Ни узел-отправитель, ни любой промежуточный маршрутизатор не имеют информации о всей цепочке, по которой пересылается дейтаграмма; каждый маршрутизатор, а также узел-отправитель, основываясь на адресе назначения дейтаграммы, находит только следующий узел ее маршрута. Маршрутизация дейтаграмм осуществляется на уровне протокола IP. Маршрутизация выполняется на основе данных, содержащихся в таблице маршрутов. Строка в таблице маршрутов состоит из следующих полей: · адрес сети назначения; · адрес следующего маршрутизатора (то есть узла, который знает, куда дальше отправить дейтаграмму, адресованную в сеть назначения); · вспомогательные поля. Таблица может составляться вручную или с помощью специализированных протоколов. Каждый узел сети, в том числе и хост, имеет таблицу маршрутов, хотя бы самую простую. Пример подключения локальной сети организации к Internet Рассмотрим реальный пример подключения к Internet локальной сети организации (рис. 6.2). IP -адрес локальной сети - 194.84.124.0/24 (сеть класса С). В эту сеть включен маршрутизатор G1. IP -интерфейс этого маршрутизатора, подключенный к локальной сети Ethernet, имеет адрес 194.84.124.1. Второй IP -интерфейс маршрутизатора подключен к выделенной линии (синхронный последовательный канал), ведущей к провайдеру Internet. К другому концу этой линии подключен IP -интерфейс маршрутизатора G2, принадлежащего провайдеру. Эти два интерфейса образуют отдельную сеть 194.124.0.116/30. В этой сети на номер интерфейса отведено всего 2 бита - 4 варианта адресов, из которых один (00) обозначает саму сеть, один (11) - широковещательный; таким образом, в подобной сети может находиться всего 2 узла - это минимальная возможная сеть. Интерфейс маршрутизатора G1 в сети 194.124.0.116/30 имеет адрес 194.124.0.117, а маршрутизатора G2 - 194.124.0.118. Маршрутизатор G2 имеет еще некоторое количество интерфейсов, к части которых подключены выделенные линии от других клиентов, к части - локальные сети коммуникационного центра, другие маршрутизаторы и магистральные линии дальней связи. Рисунок 6.2 Подключение локальной сети к Internet Таблицы маршрутов Рассмотрим примеры маршрутных таблиц, с которыми имеет дело администратор локальной сети 194.84.124.0/24. Таблица маршрутов рядового хоста с адресом 194.84.124.4 (хост В на рис. 6.2): Таблица 6.1
Значения флагов: U (Up) - маршрут работает; H (Host) - пунктом назначения является отдельный узел (хост), а не сеть; G (Gateway) - маршрут к сети назначения проходит через один или несколько промежуточных маршрутизаторов. Интерфейс le0 обозначает Ethernet, lo0 - интерфейс обратной связи (loopback). Значение первой записи очевидно, вторая запись определяет, что дейтаграммы, адресованные в локальную сеть, хост отправляет самостоятельно через свой интерфейс le0. Третья запись (маршрут по умолчанию) устанавливает, что все остальные дейтаграммы передаются на адрес 194.84.124.1, который является адресом следующего маршрутизатора (флаг G), для дальнейшей пересылки. Чтобы определить способ достижения самого маршрутизатора, следует, очевидно, обратиться ко второй строке таблицы, так как адрес маршрутизатора принадлежит сети 194.84.124.0. Заметим, что в этой таблице для простоты опущены маски сетей. Пример таблицы маршрутов маршрутизатора, соединяющего локальную сеть с провайдером по выделенному каналу (G1 на рис.6.2): Таблица 6.2
В таблице 2 явно показаны маски сетей. Первые две записи говорят о том, что маршрутизатор самостоятельно, через свои соответствующие IP -интерфейсы отправляет дейтаграммы, адресованные в сети, к которым он подключен непосредственно. Все остальные дейтаграммы перенаправляются к G2 (194.124.0.118). Интерфейс se0 обозначает последовательный (serial) канал - выделенную линию. Создание статических маршрутов Таблица маршрутов может заполняться различными способами. Статическая маршрутизация применяется в том случае, когда используемые маршруты не могут измениться в течение времени, например, для выше рассмотренных хоста и маршрутизатора, где просто отсутствуют какие-либо альтернативные маршруты. Статические маршруты конфигурируются администратором сети или конкретного узла. Для рядового хоста из рассмотренного выше примера достаточно указать только адрес шлюза (следующего маршрутизатора в маршруте по умолчанию), остальные записи в таблице очевидны, и хост, зная свой собственный IP -адрес и сетевую маску, может внести их самостоятельно. Адрес шлюза может быть указан как вручную, так и получен автоматически при конфигурировании стека TCP/IP. Динамическая маршрутизация В случае объединения сетей со сложной топологией, когда существует несколько вариантов маршрутов от одного узла к другому и (или) когда состояние сетей (топология, качество каналов связи) изменяется с течением времени, таблицы маршрутов составляются динамически с помощью различных протоколов маршрутизации. Подчеркнем, что протоколы маршрутизации не осуществляют собственно маршрутизацию дейтаграмм - она в любом случае производится модулем IP согласно записям в таблице маршрутов, как обсуждалось выше. Протоколы маршрутизации на основании тех или иных алгоритмов динамически редактируют таблицу маршрутов, то есть вносят и удаляют записи, при этом часть записей может по-прежнему статически вноситься администратором. В зависимости от алгоритма работы различают дистанционно-векторные протоколы (distance vector protocols) и протоколы состояния связей (link state protocols). По области применения существует разделение на протоколы внешней (exterior) и внутренней (interior) маршрутизации. Дистанционно-векторные протоколы реализуют алгоритм Беллмана-Форда (Bellman-Ford). Общая схема их работы такова: каждый маршрутизатор периодически широковещательно рассылает информацию о расстоянии от себя до всех известных ему сетей (“вектор расстояний”). В начальный момент времени, разумеется, рассылается информация только о тех сетях, к которым маршрутизатор подключен непосредственно. Также каждый маршрутизатор, получив от кого-либо вектор расстояний, в соответствии с полученной информацией корректирует уже имеющиеся у него данные о достижимости сетей или добавляет новые, указывая маршрутизатор, от которого получен вектор, в качестве следующего маршрутизатора на пути в данные сети. Через некоторое время алгоритм сходится и все маршрутизаторы имеют информацию о маршрутах до всех сетей. При работе протоколов состояния связей каждый маршрутизатор контролирует состояние своих связей с соседями и при изменении состояния (например, при обрыве связи) рассылает широковещательное сообщение, после получения которого все остальные маршрутизаторы корректируют свои базы данных и пересчитывают маршруты. В отличие от дистанционно-векторных протоколов протоколы состояния связей создают на каждом маршрутизаторе базу данных, описывающую полный граф сети и позволяющую локально и, следовательно, быстро производить расчет маршрутов. Распространенный протокол такого типа, OSPF, базируется на алгоритме SPF (Shortest Path First) поиска кратчайшего пути в графе, предложенном Дейкстрой (Dijkstra). Протоколы состояния связей существенно сложнее дистанционно-векторных, но обеспечивают более быстрое, оптимальное и корректное вычисление маршрутов. Протоколы внутренней маршрутизации (например, RIP, OSPF; собирательное название IGP - Interior Gateway Protocols) применяются на маршрутизаторах, действующих внутри автономных систем. Автономная система - это наиболее крупное деление Internet, представляющее из себя объединение сетей с одинаковой маршрутизационной политикой и общей администрацией. Область действия того или иного протокола внутренней маршрутизации может охватывать не всю автономную систему, а только некоторое объединение сетей, являющееся частью автономной системы. Такое объединение мы будем называть системой сетей, или просто системой, иногда с указанием протокола маршрутизации, действующего в этой системе, например: RIP -система, OSPF -система. Маршрутизация между автономными системами осуществляется пограничными (border) маршрутизаторами, таблицы маршрутов которых составляются с помощью протоколов внешней маршрутизации (собирательное название EGP - Exterior Gateway Protocols). Особенность протоколов внешней маршрутизации состоит в том, что при расчете маршрутов они должны учитывать не только топологию графа сети, но и политические ограничения, вводимые администрацией автономных систем на маршрутизацию через свои сети трафика других автономных систем. В настоящее время наиболее распространенным протоколом внешней маршрутизации является BGP. Формат заголовка IP -дейтаграммы Формат заголовка Значения полей заголовка Ver (4 бита) - версия протокола IP, в настоящий момент используется версия 4, новые разработки имеют номера версий 6-8. IHL (Internet Header Length) (4 бита) - длина заголовка в 32-битных словах; диапазон допустимых значений от 5 (минимальная длина заголовка, поле “Options” отсутствует) до 15 (т.е. может быть максимум 40 байт опций). TOS (Type Of Service) (8 бит) - значение поля определяет приоритет дейтаграммы и желаемый тип маршрутизации. Структура байта TOS 111 - управление сетью, 110 - межсетевое управление, 101 - CRITIC-ECP, 100 - более чем мгновенно, 011 - мгновенно, 010 - немедленно, 001 - срочно, 000 - обычно. Биты D,T,R,C определяют желаемый тип маршрутизации: D (Delay) - выбор маршрута с минимальной задержкой, T (Throughput) - выбор маршрута с максимальной пропускной способностью, R (Reliability) - выбор маршрута с максимальной надежностью, C (Cost) - выбор маршрута с минимальной стоимостью. В дейтаграмме может быть установлен только один из битов D,T,R,C. Старший бит байта не используется. Реальный учет приоритетов и выбора маршрута в соответствии со значением байта TOS зависит от маршрутизатора, его программного обеспечения и настроек. Маршрутизатор может поддерживать расчет маршрутов для всех типов TOS, для части или игнорировать TOS вообще. Маршрутизатор может учитывать значение приоритета при обработке всех дейтаграмм или при обработке дейтаграмм, исходящих только из некоторого ограниченного множества узлов сети, или вовсе игнорировать приоритет. Total Length (16 бит) - длина всей дейтаграммы в октетах, включая заголовок и данные, максимальное значение 65535, минимальное - 21 (заголовок без опций и один октет в поле данных). ID (Identification) (16 бит), Flags (3 бита), Fragment Offset (13 бит) используются для фрагментации и сборки дейтаграмм и будут подробнее рассмотрены ниже. TTL (Time To Live) (8 бит) - “время жизни” дейтаграммы. Устанавливается отправителем, измеряется в секундах. Каждый маршрутизатор, через который проходит дейтаграмма, переписывает значение TTL, предварительно вычтя из него время, потраченное на обработку дейтаграммы. Так как в настоящее время скорость обработки данных на маршрутизаторах велика, на одну дейтаграмму тратится обычно меньше секунды, поэтому фактически каждый маршрутизатор вычитает из TTL единицу. При достижении значения TTL =0 дейтаграмма уничтожается, при этом отправителю может быть послано соответствующее ICMP -сообщение. Контроль TTL предотвращает зацикливание дейтаграммы в сети. Protocol (8 бит) - определяет программу (вышестоящий протокол стека), которой должны быть переданы данные дейтаграммы для дальнейшей обработки. Header Checksum (16 бит) - контрольная сумма заголовка, представляет из себя 16 бит, дополняющие биты в сумме всех 16-битовых слов заголовка. Перед вычислением контрольной суммы значение поля “Header Checksum” обнуляется. Поскольку маршрутизаторы изменяют значения некоторых полей заголовка при обработке дейтаграммы (как минимум, поля “TTL”), контрольная сумма каждым маршрутизатором пересчитывается заново. Если при проверке контрольной суммы обнаруживается ошибка, дейтаграмма уничтожается. Source Address (32 бита) - IP -адрес отправителя. Destination Address (32 бита) - IP- адрес получателя. Options - опции, поле переменной длины. Опций может быть одна, несколько или ни одной. Опции определяют дополнительные услуги модуля IP по обработке дейтаграммы, в заголовок которой они включены. Padding - выравнивание заголовка по границе 32-битного слова, если список опций занимает нецелое число 32-битных слов. Поле “Padding” заполняется нулями. Фрагментация дейтаграмм Различные среды передачи имеют различный максимальный размер передаваемого блока данных (MTU - Media Transmission Unit), это число зависит от скоростных характеристик среды и вероятности возникновения ошибки при передаче. Например, размер MTU в 10 Мбит/с Ethernet равен 1536 октетам, в 100 Мбит/с FDDI - 4096 октетам. При передаче дейтаграммы из среды с большим MTU в среду c меньшим MTU может возникнуть необходимость во фрагментации дейтаграммы. Фрагментация и сборка дейтаграмм осуществляются модулем протокола IP. Для этого применяются поля “ID” (Identification), “Flags” и “Fragment Offset” заголовка дейтаграммы. Flags -поле состоит из 3 бит, младший из которых всегда сброшен:
Значения бита DF (Don’t Fragment): 0 - фрагментация разрешена, 1 - фрагментация запрещена (если дейтаграмму нельзя передать без фрагментации, она уничтожается). Значения бита MF (More Fragments): 0 - данный фрагмент последний (единственный), 1 - данный фрагмент не последний. ID (Identification) - идентификатор дейтаграммы, устанавливается отправителем; используется для сборки дейтаграммы из фрагментов для определения принадлежности фрагментов одной дейтаграмме. Fragment Offset - смещение фрагмента, значение поля указывает, на какой позиции в поле данных исходной дейтаграммы находится данный фрагмент. Смещение считается 64-битовыми порциями, т.е. минимальный размер фрагмента равен 8 октетам, а следующий фрагмент в этом случае будет иметь смещение 1. Первый фрагмент имеет смещение нуль. Пример фрагментации. Допустим, дейтаграмма размером 4020 октетов (из них 20 октетов заголовка) передается из среды FDDI (MTU =4096) в среду Ethernet (MTU =1536). На границе сред производится фрагментация дейтаграммы. Заголовки в данной дейтаграмме и во всех ее фрагментах одинаковой длины - 20 октетов. Исходная дейтаграмма: Фрагмент 1: Фрагмент 2: Фрагмент 3: Фрагментация может быть рекурсивной, т.е., например, фрагменты 1 и 2 могут быть еще раз фрагментированы; при этом смещение (Fragment Offset) считается от начала исходной дейтаграммы. Максимальное количество фрагментов равно 213=8192 при минимальном (8 октетов) размере каждого фрагмента. При большем размере фрагмента максимальное количество фрагментов соответственно уменьшается. При фрагментации некоторые опции копируются в заголовок фрагмента, некоторые - нет. Все остальные поля заголовка дейтаграммы в заголовке фрагмента присутствуют. Следующие поля заголовка могут менять свое значение по сравнению с первоначальной дейтаграммой: поле опций, флаг “MF”, “Fragment Offset”, “Total Length”, “IHL”, контрольная сумма. Остальные поля копируются во фрагменты без изменений. Каждый модуль IP должен быть способен передать дейтаграмму из 68 октетов без фрагментации (максимальный размер заголовка 60 октетов [ IHL =15] + минимальный фрагмент 8 октетов). Сборка фрагментов осуществляется только в узле назначения дейтаграммы, поскольку разные фрагменты могут следовать в пункт назначения по разным маршрутам. Если фрагменты задерживаются или утрачены при передаче, то у остальных фрагментов, уже полученных в точке сборки, TTL уменьшается на единицу в секунду до тех пор, пока не прибудут недостающие фрагменты. Если TTL становится равным нулю, то все фрагменты уничтожаются и ресурсы, задействованные на сборку дейтаграммы, высвобождаются. Максимальное количество идентификаторов дейтаграмм - 65536. Если использованы все идентификаторы, нужно ждать до истечения TTL, чтобы можно было вновь использовать тот же самый ID, поскольку за TTL секунд “старая” дейтаграмма будет либо доставлена и собрана, либо уничтожена. Передача дейтаграмм с фрагментацией имеет определенные недостатки. Например, как следует из предыдущего абзаца, максимальная скорость такой передачи равна 65536/ TTL дейтаграмм в секунду. Если учесть, что рекомендованная величина TTL равна 120, получаем максимальную скорость в 546 дейтаграмм в секунду. В среде FDDI MTU равен примерно 4100 октетам, откуда получаем максимальную скорость передачи данных в среде FDDI не более 18 Мбит/с, что существенно ниже возможностей этой среды. Другим недостатком фрагментации является низкая эффективность: при потере одного фрагмента заново передается вся дейтаграмма; при одновременном ожидании отставших фрагментов нескольких дейтаграмм создается ощутимый дефицит ресурсов и замедляется работа узла сети. Способом обойти процесс фрагментации является применение алгоритма “Path MTU Discovery” (“Выявление MTU на пути следования”), этот алгоритм поддерживается протоколом TCP. Задачей алгоритма является обнаружение минимального MTU на всем пути от отправителя к месту назначения. Для этого посылаются дейтаграммы с установленным битом DF (“фрагментация запрещена”). Если они не доходят до места назначения, размер дейтаграммы уменьшается, и так происходит до тех пор, пока передача не будет успешной. После этого при передаче полезных данных создаются дейтаграммы с размером, соответствующим обнаруженному минимальному MTU. Руководство пользователя Для выполнения лабораторной работы используется комплекс программных средств, позволяющих моделировать составную сеть заданной конфигурации с использованием классовой модели IP -адресации отдельных узлов сети и установлением произвольных значений MTU для отдельных связей между элементами сети. На созданной модели сети предлагается исследовать процессы маршрутизации и фрагментации дейтаграмм при передаче сообщений в сети. Главное окно программы разбито на три части 1. Поле проектирования В данном окне отображается текущая конфигурация сети. 2. Окно данных элемента сети В данном окне отображается информация об отдельном элементе сети. 3. Командное окно В данном окне дублируются команды главного меню программы, относящиеся к текущему этапу работы программы. Работа пользователя с программой разбивается на три этапа (переход между этапами осуществляется командами меню “Следующий”, “Предыдущий” или с помощью больших стрелок) 1. Проектирование произвольной конфигурации сети. На данном этапе пользователь строит произвольную конфигурацию глобальной сети в окне проектирования. · Для добавления маршрутизатора необходимо выбрать команду “Добавить маршрутизатор” и щелкнуть левой клавишей мыши в поле проектирования. · Для добавления сети необходимо выбрать команду “Добавить сеть” и щёлкнуть левой клавишей мыши сначала на одном маршрутизаторе, а за тем на другом (сеть будет добавлена между этими маршрутизаторами). · Для удаления элемента необходимо выбрать команду “Удалить элемент” (маршрутизатор можно удалить, только если он не связан с сетями). 2. Заполнение информации, необходимой для работы сети (IP-адреса компьютеров и портов маршрутизаторов, максимальная единица передачи данных сети, количество узлов в сети). На данном этапе пользователь заполняет информацию у каждого элемента спроектированной глобальной сети (сети, маршрутизатора). · Для отображения текущей информации отдельного элемента необходимо щелкнуть левой клавишей мыши на нужном элементе в поле проектирования. · Для сети необходимо заполнить следующую информацию: a) максимальная единица передачи данных (максимальное значение, которое может иметь длина поля данных сообщения) – 21.. 5000; b) количество узлов данной сети (от одного до трех, графически они не отражаются на схеме); c) IP-адрес каждого узла данной сети; · Для маршрутизатора необходимо заполнить IP -адрес каждого порта. · IP -адрес имеет длину четыре байта и записывается в виде четырех чисел, представляющих значения каждого байта в десятичной форме и разделенных точками. Адрес состоит из двух логических частей – номера сети и номера узла в сети. При заполнении IP -адреса любого компьютера автоматически вычисляется номер сети и заносится в поле номера сети для всех остальных компьютеров данной сети и портов маршрутизаторов, принадлежащих данной сети (при заполнении IP -адреса элемента глобальной сети, перемещение между отдельными байтами адреса осуществляется при помощи клавиш – “space” или “Ctrl” + “->”(“<-“)). · Пользователь может заполнить IP -адреса сразу всех элементов сети автоматически, выбрав команду “Заполнить автоматически” (при этом, вся заполненная ранее IP -информация будет утеряна). · Когда вся информация заполнена можно переходить на следующий этап (переход между этапами осуществляется с помощью команд: ”Следующий”, “Предыдущий” или по нажатию треугольных стрелок в командном окне). При переходе на следующий этап проверяется корректность заполненной информации. При выявлении ошибки выдается сообщение о характере ошибки (элемент сети, в котором обнаружена ошибка, становится активным). 3. Работа с текущей конфигурацией сети. На данном этапе пользователь работает с текущей конфигурацией сети (наблюдает процесс построения таблицы маршрутизации, осуществляет отправку сообщений между компьютерами, наблюдает процессы передачи сообщений, фрагментации и сборки дейтаграмм). · В исходном состоянии все маршрутизаторы сети не осуществляют рассылку своих текущих таблиц маршрутизации (сеть не работает). · При щелчке на маршрутизаторе в поле проектирования в окне данных элемента сети отображаются IP -адреса всех его портов и текущая таблица маршрутизации. · При щелчке на сети в поле проектирования в окне данных элемента сети отображается информация о данной сети (+ маршрутизатор по умолчанию для всех компьютеров данной сети) и один из компьютеров, который является активным. Поменять активный компьютер можно при помощи щелчка на кнопках – синих стрелочках. · Для того чтобы маршрутизаторы начали рассылать и обновлять свои таблицы маршрутизации по протоколу RIP, необходимо выполнить команду “Запустить сеть”. При выполнении этой команды, щелкая на маршрутизаторе в поле проектирования, можно наблюдать как обновляется его таблица маршрутизации. Обновление происходит каждые три секунды. · Команда “Пауза” служит для временной приостановки рассылки RIP- сообщений всеми маршрутизаторами. В режиме “Паузы”, маршрутизатор сохраняет свою текущую таблицу. Отправка сообщений между компьютерами возможна только в режиме “Паузы” (или в исходном состоянии). · Для отправки сообщения необходимо выбрать сеть и компьютер, и, после этого, щелкнуть на кнопке “Отправить сообщение”. Реакцией на эту команду будет выведено диалоговое окно, в котором необходимо набрать текст сообщения (или загрузить текст из файла <меню – “файл” диалогового окна>), указать IP -адрес получателя, если нужно, установить флажок “не фрагментировать” для запрещения фрагментации сообщения и щелкнуть кнопку “Отправить” (размер сообщения + размер заголовка отображается в правом верхнем углу диалогового окна). Если IP -адрес получателя заполнен корректно, набранное сообщение будет отправлено. Для отправки сообщения всем узлам какой либо сети в IP -адресе получателя в поле номера узла в сети каждый байт должен быть равен 255. Для отправки сообщения всем узлам этой же сети каждый байт IP -адреса получателя должен быть равен 255. · Для информирования пользователя о том, что какой-либо компьютер получил сообщение, каждый компьютер имеет почтовый ящик – индикатор “почта” в окне данных элемента сети. Если какой-либо компьютер получил сообщение, его индикатор подсвечивается красным цветом. При щелчке на подсвеченном индикаторе, пользователь сможет прочитать полученное сообщение. Текст полученного сообщения может содержать символ “|”. Данный символ определяет границы поля данных каждой дейтаграммы (исходное сообщение фрагментируется в зависимости от максимальной единицы передачи данных каждой сети, через которые проходит сообщение от отправителя к получателю). · Если какой-либо компьютер получил сообщение, то при щелчке на кнопке “Информация” отображается подробная информация о пути следования сообщения, количес
|
||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-08-16; просмотров: 684; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.140.195.8 (0.012 с.) |