Задачу выбора маршрута из нескольких возможных решают маршрутизаторы, а также конечные узлы.
При наличии у маршрутизатора блока управления (например, по протоколу SNMP) этот блок имеет собственные локальный и сетевой адреса, по которым к нему обращается центральная станция управления. Эти адреса выбираются из того же пула, что и адреса физических интерфейсов маршрутизатора. В технической документации такого рода адреса называются адресами обратной петли или адресами виртуальных интерфейсов (virtual interface address).
Рассмотрим механизм IP-маршрутизации на примере составной сети, представленной на рис. 16.2. В этой сети 20 маршрутизаторов (изображенных в виде пронумерованных квадратных блоков) объединяют 18 сетей в общую сеть; N1, N2,..., N18 — это номера сетей. На каждом маршрутизаторе и конечных узлах А и В функционируют протоколы IP.
К нескольким интерфейсам (портам) маршрутизаторов присоединяются сети. Каждый интерфейс маршрутизатора можно рассматривать как отдельный узел сети: он имеет сетевой адрес и локальный адрес в той подсети, которая к нему подключена. Например, маршрутизатор под номером 1 имеет три интерфейса, к которым подключены сети N1, N2, N3. На рисунке сетевые адреса этих портов обозначены IP11, IP12 и IP13. Интерфейс IP11 является узлом сети N1, и, следовательно, в поле номера сети порта IP11 содержится номер N1. Аналогично интерфейс IP21 — это узел в сети N2, а порт IP13 — узел в сети N3. Таким образом, маршрутизатор можно рассматривать как совокупность нескольких узлов, каждый из которых входит в свою сеть. Как единое устройство маршрутизатор не имеет выделенного адреса, ни сетевого, ни локального.
Рис. 16.2. Принципы маршрутизации в составной сети
В сложных составных сетях почти всегда существуют несколько альтернативных маршрутов для передачи пакетов между двумя конечными узлами. Так, пакет, отправленный из узла А в узел В, может пройти через маршрутизаторы 17,12, 5,4 и 1 или маршрутизаторы 17, 13, 7, 6 и 3.
При наличии у маршрутизатора блока управления (например, по протоколу SNMP) этот блок имеет собственные локальный и сетевой адреса, по которым к нему обращается центральная станция управления. Эти адреса выбираются из того же пула, что и адреса физических интерфейсов маршрутизатора. В технической документации такого рода адреса называются адресами обратной петли или адресами виртуальных интерфейсов (virtual interface address). Задачу выбора маршрута из нескольких возможных решают маршрутизаторы, а также конечные узлы.
Первый столбец таблицы содержит адреса назначения пакетов. *
В каждой строке таблицы следом за адресом назначения указывается сетевой адрес следующего маршрутизатора (точнее, сетевой адрес интерфейса следующего маршрутизатора на который надо направить пакет, чтобы тот передвигался по направлению к заданному адресу по рациональному маршруту.
Перед тем как передать пакет следующему маршрутизатору, текущий маршрутизатор должен определить, на какой из нескольких собственных портов (IP41 или IP42) он должен поместить данный пакет. Для этого служит третий столбец таблицы маршрутизации содержащий сетевые адреса выходных интерфейсов. Когда пакет поступает на маршрутизатор, модуль IP извлекает из его заголовка адрес сети назначения и последовательно сравнивает его с номерами сетей из каждой строки таблицы. Строка с совпавшим номером сети показывает ближайший маршрутизатор, который следует направить пакет. Поскольку пакет может быть адресован в любую сеть составной сети, может показаться, что каждая таблица маршрутизации должна иметь записи обо всех сетях, входящих в составную сеть. Объем таблиц маршрутизации может оказаться очень большим, что повлияет на время ее просмотра, потребуется много места для хранения и т. п. Поэтому на практике широко известен прием уменьшение количества записей в таблице маршрутизации, основанный на введении маршрута по умолчанию (default route).
Задачу маршрутизации решают не только промежуточные узлы (маршрутизаторы), но и конечные узлы — компьютеры. Решение этой задачи начинается с того, что средствами протокола IP на конечном узле определяется, направлен ли пакет в другую сеть или адресован какому-нибудь узлу данной сети. Если номер сети назначения совпадает с номером данной сети, это означает, что пакет маршрутизировать не требуется. В противном случае маршрутизация нужна.
Структуры таблиц маршрутизации конечных узлов и транзитных маршрутизаторов аналогичны. Еще одним отличием работы маршрутизатора и конечного узла является способ построения таблицы маршрутизации. Если маршрутизаторы, как правило, автоматические создают таблицы маршрутизации, обмениваясь служебной информацией, то для конечных узлов таблицы маршрутизации часто создаются вручную администраторами и хранятся в файлах на дисках.