Принципы работы уровня межсетевого взаимодействия
Принципы работы уровня межсетевого взаимодействия
Протоколы основного уровня TCP или UDP пользуются сетевым уровнем для транспортировки пакетов через интерсеть. В функции уровня межсетевого взаимодействия входит разбиение сообщения на короткие пакеты с созданием служебных полей, нужных для сборки фрагментов в исходное сообщение. В сетях определяется максимальный размер поля данных пакета, в которые должен инкапсулировать свой пакет протокол IP. Эту величина называется максимальной единицей транспортировки (Maximum Transfer Unit – MTU).
Пусть маршрутизатор видит по сетевому адресу, что прибывшие два пакета нужно передать в сеть, которая имеет меньшее значение MTU, чем в данной сети. Маршрутизатор извлекает фрагмент сообщения из каждого поступившего пакета и делит его так, чтобы каждая часть уместилась в поле данных кадра канального уровня приемной сети. Затем он формирует новые пакеты IP, каждый из которых меньшую длину, чтобы они поместились в новые кадры. В результате в компьютер другой части сети приходит большее количество пакетов с одинаковым идентификатором, что позволяет протоколу IP, работающему в приемном узле, правильно собрать сообщение.
Однако маршрутизаторы не собирают фрагменты в более крупные пакеты, даже если на пути встречается сеть, допускающая такое укрупнение. Это связано с тем, что отдельные фрагменты сообщения могут перемещаться по различным маршрутам и нет гарантии, что все фрагменты проходят через промежуточный маршрутизатор для дефрагментации. При приходе первого фрагмента пакета узел назначения запускает таймер, который определяет максимально допустимое время ожидания прихода остальных фрагментов. Если таймер истекает раньше прибытия последнего фрагмента, то все полученные к этому моменту фрагменты пакета отбрасываются, а в узел, пославший исходный пакет, направляется сообщение об ошибке с помощью протокола управления сетью.
Рассмотрим принципы, на основании которых в сетях IP происходит выбор маршрута передачи пакета между сетями. Сначала необходимо обратить внимание на тот факт, что и конечные узлы должны принимать участие в выборе маршрута. Если в локальной сети имеется несколько маршрутизаторов, то компьютер должен выбирать, какому из них следует отправить пакет. Длина маршрута может измениться в зависимости от того, какой маршрутизатор выберет компьютер для передачи своего пакета на удаленный сервер. В стеке TCP/IP маршрутизаторы и конечные узлы принимают решения о том, кому передавать пакет для его доставки узлу назначения, на основании таблиц маршрутизации.
Следующая таблица маршрутов представляет пример, использующей IP-адреса сетей:
Адрес сети | Адрес следующего маршрутизатора | Номер выходного | Рекомендуемые материалы9 lab вариант 13 Лабораторная работа № 2 + ОТЧЁТ (M19) FREE Все лабораторные работы Все лабораторные работы, ДЗ, практикумы по курсу ООП (без 1-го РК) FREE Автоматизация работы фирмы по продаже автомобилей Лабораторные работы 1-10 Расстояние до |
56.0.0.0 | 198.21.17.7 | 1 | 20 |
56.0.0.0 | 213.34.12.4. | 2 | 130 |
default | 198.21.17.7 | 1 | - |
В таблице в столбце "Адрес сети назначения" указываются адреса сетей, которым маршрутизатор может передавать пакеты. В стеке TCP/IP принят одношаговый подход к оптимизации маршрута продвижения пакета, т.е. каждый маршрутизатор и конечный узел принимает участие в выборе только одного шага передачи пакета. Поэтому в каждой строке таблицы указывается не весь маршрут в виде последовательности IP-адресов маршрутизаторов, через которые должен пройти пакет, а только один IP-адрес следующего маршрутизатора, которому нужно передать пакет. Вместе с пакетом маршрутизатору передается ответственность за выбор следующего шага маршрутизации. Одношаговый подход к маршрутизации означает распределенное решение задачи выбора маршрута. Это снимает ограничение на максимальное количество маршрутизаторов на пути пакета.
Если в таблице маршрутов имеется более одной строки, соответствующей одному и тому же адресу сети назначения, то при принятии решения о передаче пакета используется та строка, в которой указано наименьшее значение в поле "Расстояние до сети назначения". Под данным расстоянием понимается любая метрика, используемая в соответствии с заданным в сетевом пакете классом сервиса. Это может быть:
· количество транзитных маршрутизаторов в маршруте,
· время прохождения пакета по линиям связи,
Бесплатная лекция: "Тема 2. Характеристика государственного сыска" также доступна.
· надежность линий связи,
· другая величина, отражающая качество маршрута по отношению к классу сервиса
Если маршрутизатор поддерживает несколько классов сервиса пакетов, то таблица маршрутов составляется и применяется отдельно для каждого критерия выбора маршрута.
Одношаговая маршрутизация обладает преимуществом. Она позволяет сократить объем таблиц маршрутизации в конечных узлах и маршрутизаторах за счет использования в качестве номера сети назначения - маршрута по умолчанию - default, который занимает в таблице маршрутизации последнюю строку. Если в таблице маршрутизации есть такая запись, то все пакеты с номерами сетей, которые отсутствуют в таблице маршрутизации, передаются маршрутизатору, указанному в строке default. Поэтому маршрутизаторы хранят в своих таблицах ограниченную информацию о сетях интерсети, пересылая пакеты для остальных сетей в порт и маршрутизатор, используемые по умолчанию. Часто приемом маршрутизации по умолчанию пользуются конечные узлы.
Маршрутизаторы автоматически создают таблицы маршрутизации, обмениваясь служебной информацией, а в конечных узлах таблицы маршрутизации создаются вручную администраторами.
Противоположностью одношаговому подходу является указание в пакете всей последовательности маршрутизаторов, которые пакет должен пройти на своем пути. Такой подход называется маршрутизацией от источника - Source Routing и используется в мостах. В этом случае выбор маршрута производится конечным узлом или первым маршрутизатором на пути пакета, а все остальные маршрутизаторы только отрабатывают выбранный маршрут, осуществляя передачу их с одного порта на другой.