Понятие маршрутизации. Таблицы маршрутизации

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

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

Когда на маршрутизатор поступает новый пакет, номер сети назначения, извлеченный из поступившего кадра, последовательно сравнивается с номерами сетей из каждой строки таблицы. Строка с совпавшим номером сети указывает, на какой ближайший маршрутизатор следует направить пакет. Например, если на какой-либо порт маршрутизатора 4 поступает пакет, адресованный в сеть S6, то из таблицы маршрутизации следует, что адрес следующего маршрутизатора - М2(1), то есть очередным этапом движения данного пакета будет движение к порту 1 маршрутизатора 2.

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

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

В табл. 5.1 расстояние между сетями измерялось хопами. Расстояние для сетей, непосредственно подключенных к портам маршрутизатора, здесь принимается равным 0, однако в некоторых реализациях отсчет расстояний начинается с 1.


Алгоритмы маршрутизации.

Маршрутизация – это выбор маршрута доставки пакета. Частично, алгоритм маршрутизации уже был рассмотрен в лекции, посвященной протоколу IP. Здесь будет рассмотрена только общая классификация алгоритмов маршрутизации, не упоминавшихся ранее.

По степени распределенности схемы маршрутизации выделяют следующие алгоритмы маршрутизации:

- Одношаговые алгоритмы. Наиболее широко распространены в сетях. В таблице маршрутизации хранится информация только об одном шаге маршрута (ближайший маршрутизатор на пути к адресату). При отсутствии возможности доставки пакета напрямую (когда маршрутизатор различными сетевыми интерфейсами одновременно подключен и к сети отправителя и к сети адресата), пакет доставляется на следующий ближайший маршрутизатор на пути к адресату, который анализирует свои таблицы маршрутизации и занимается дальнейшей доставкой пакета. Подробнее см. лекции по протоколу IP.

- Многошаговые алгоритмы. В таблице маршрутизации указываются все шаги маршрута (промежуточные маршрутизаторы), которые должен пройти пакет. Схема работы - аналогично мостам, с маршрутизацией от источника (см. ранее). В сетях распространена мало. Однако в новой версии протокола IP (IPv6), наряду с классической одношаговой маршрутизацией, будет разрешена и маршрутизация от источника.

По способу построения таблиц маршрутизации выделяют следующие алгоритмы маршрутизации:

- Алгоритмы статической маршрутизации. Все записи в таблице маршрутизации задаются админстратором вручную. Пригоден только для небольших сетей. В крупных сетях применяется только совместно с алгоритмом динамической маршрутизации.

- Алгоритмы динамической маршрутизации (таблицы маршрутизации составляются и обновляются автоматически, на основании имеющейся информации о непосредственно подключенных к маршрутизатору сетях и информации от соседних маршрутизаторов, передаваемой по протоколам RIP, OSPF, NLSP, подробнее см. ниже).

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

По использованию маски подсети в процессе маршрутизации IP-пакетов выделяют:

Маршрутизацию на основании классов IP-адресов, без использования маски подсети.

- Бесклассовая междоменная маршрутизация, с использованием маски подсети.

При маршрутизации на основании классов IP-адресов, в таблицах маршрутизации маски подсетей не хранятся. Решение о том, является ли данный IP-адрес адресом сети или адресом конкретного компьютера принимается на основании класса IP-адреса (у сетей класса C адрес компьютера находится в последнем октете, у сетей класса B адрес компьютера находится в последних двух октетах и т.д.). Такой подход прост, но создает неудобства, т.к. минимальный размер подсети составляет 253 компьютера (сеть класса C), что является нерациональным расходованием адресов и не позволяет структуризировать сеть на более мелкие подсети. Поэтому постепенно в сетях происходит переход на маршрутизацию с использованием масок подсети - бесклассовая междоменная маршрутизация (CIDR, Classless Inter-Domain Routing). При этом подходе подсетям выделяются непрерывные диапазоны IP-адресов так, чтобы номер компьютера и номер сети можно было описать при помощи маски подсети (подробнее см. лекции по протоколу IP). При обмене информацией между маршрутизаторами (например, по протоколу RIPv2), вместе с информацией о маршру-тах передается и информация о масках подсетей для соответствующих IP-адресов.


32.Структура стека TCP /IP.

Прикладной уровень объединяет все службы, предоставляемые системой пользовательским приложениям. Прикладной уровень реализуется программными системами, построенными в архитектуре клиент-сервер, базирующимися на протоколах нижних уровней. В отличие от протоколов остальных трех уровней, протоколы прикладного уровня занимаются деталями конкретного приложения и «не интересуются» способами передачи данных по сети. Этот уровень постоянно расширяется за счет присоединения к старым, прошедшим многолетнюю эксплуатацию сетевым службам типа Telnet, FTP, TFTP, DNS, SNMP сравнительно новых служб таких, например, как протокол передачи гипертекстовой информации HTTP.

Основной уровень

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

На этом уровне функционируют протокол управления передачей TCP (Transmission Control Protocol) и протокол дейтаграмм пользователя UDP (User Datagram Protocol). Протокол TCP обеспечивает надежную передачу сообщений между удаленными прикладными процессами за счет образования логических соединений. Этот протокол позволяет равноранговым объектам на компьютере-отправителе и компьютере-получателе поддерживать обмен данными в дуплексном режиме. TCP позволяет без ошибок доставить сформированный на одном из компьютеров поток байт в любой другой компьютер, входящий в составную сеть. TCP делит поток байт на части - сегменты, и передает их ниже лежащему уровню межсетевого взаимодействия. После того как эти сегменты будут доставлены средствами уровня межсетевого взаимодействия в пункт назначения, протокол TCP снова соберет их в непрерывный поток байт.

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