2.5.6. IP-маршрутизация

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

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

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

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

Непосредственная доставка значит, что сеть может преобразовать IP-адрес получателя в адрес формата уровня соединения (скажем, адрес Ethernet). Процесс преобразования обычно осуществляется протоколом преобразования адресов (АRР). Сеть инкапсулирует IP-датаграмму в кадр данных и передает прямо в пункт назначения.

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

Маршрутизатор В принимает пакет с местом назначения в сети 100.0.0.0, запись в таблице гласит, что данная сеть соединена напрямую. В этом случае маршрутизатор В непосредственно доставит пакет до места назначения.

Приняв пакет для сети 400.0.0.0, маршрутизатор обнаружит, что должен передать его маршрутизатору по адресу 100.0.0.2, несмотря на то, что сеть 100.0.0.0 не связана напрямую с сетью 400.0.0.0. Устройство с адресом 100.0.0.2 — просто следующий скачок пакета на пути к месту назначения сети — 400.0.0.0.

Таблица 2.6

Записи в таблице маршрутизатора В

на рис. 2.9

Сеть назначения

Маршрут

100.0.0.0

Прямая доставка

200.0.0.0

Прямая доставка

300.0.0.0

Через 100.0.0.2

400.0.0.0

Через 100.0.0.2

Добравшись до места с номером 100.0.0.2, пакет направляется к устройству 400.0.0.1. Маршрутизатор 400.0.0.1 может доставить пакет непосредственно на сеть 400.0.0.0. Для маршрутизатора В это значит, что он осуществил промежуточную доставку пакета к месту назначения.