TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security)
Шрифт:
Алгоритмы вычисления состояния связи часто первым именуют кратчайший путь (Shortest Path First — SPF). Это же название дается компьютерному алгоритму, вычисляющему наиболее короткие пути от одного узла до всех остальных узлов сети.
8.5 Таблицы маршрутизации
При направлении датаграммы в удаленную точку назначения хост или маршрутизатор использует сведения из таблицы маршрутизации. Таблица отражает соответствие между каждой из точек назначения и маршрутизатором следующего попадания на пути к этой точке.
Перечисленные в таблице точки назначения могут включать в себя суперсети (бесклассовый блок IP-адресов с единым префиксом), сети, подсети и отдельные системы.
Точка назначения по умолчанию представляется как 0.0.0.0.
Не существует стандартов на формат таблиц маршрутизации, однако наиболее простая из них должна содержать следующие элементы:
■ Адрес сети, подсети или системы назначения
■ IP-адрес используемого маршрутизатора
■ Сетевой интерфейс для доступа к маршрутизатору следующего попадания
■ Маску для точки назначения
■ Расстояние до точки назначения (количество попаданий)
■ Время в секундах от последнего изменения маршрута
Для сокращения размера таблицы многие или все элементы идентифицируют только суперсети, сети или подсети назначения. Смысл этого в том, что, если известно, как добраться до маршрутизатора сети нужного хоста, а затем до маршрутизатора подсети, то вопрос с маршрутизацией будет решен. Иногда несколько элементов таблицы содержат полные IP-адреса отдельных систем. Для изучения работы таблиц маршрутизации рассмотрим два примера.
8.6 Таблица маршрутизации по протоколу RIP
Элементы маршрутизации таблицы 8.1 получены из университетского маршрутизатора, работающего по протоколу RIP. В таблице перечислены точки назначения и перемещающиеся по пути следования к этим точкам маршрутизаторы (на них нужно направить датаграмму при отправке ее в заданную точку назначения). Кроме того, в таблице хранятся метрики (по вектору расстояния), помогающие маршрутизатору выбрать следующее попадание.
Таблица 8.1 Таблица маршрутизации RIP-маршрутизатора
IP-маршрут назначения | Маска IP-маршрута | IP-маршрут следующего попадания | Тип IP-маршрута | Протокол IP-маршрута | Метрика IP-маршрута 1 | Метрики IP-маршрутов: 2, 3, 4, 5 (совпадают) | Индекс ЕСЛИ IP-маршрута | Возраст IP-маршрута (секунды) |
---|---|---|---|---|---|---|---|---|
0.0.0.0 | 0.0.0.0 | 128.36.0.2 | * | rip | 2 | – 1 | 1 | 153,84 |
128.36.0.0 | 255.255.255.0 | 128.36.0.62 | ** | *** | 0 | – 1 | 1 | 0 |
128.36.2.0 | 255.255.255.0 | 128.36.0.7 | * | rip | 1 | – 1 | 1 | 30 |
128.36.11.0 | 255.255.255.0 | 128.36.0.12 | * | rip | 1 | – 1 | 1 | 13 |
128.36.12.0 | 255.255.255.0 | 128.36.0.21 | * | rip | 1 | – 1 | 1 | 15 |
128.36.13.0 | 255.255.255.0 | 128.36.0.12 | * | rip | 1 | – 1 | 1 | 14 |
128.36.14.0 | 255.255.255.0 | 128.36.0.21 | * | rip | 1 | – 1 | 1 | 16 |
128.36.15.0 | 255.255.255.0 | 128.36.0.21 | * | rip | 1 | – 1 | 1 | 17 |
128.36.16.0 | 255.255.255.0 | 128.36.0.36 | * | rip | 12 | – 1 | 1 | 24 |
128.36.17.0 | 255.255.255.0 | 128.36.0.12 | * | rip | 1 | – 1 | 1 | 16 |
128.36.19.0 | 255.255.255.0 | 128.36.0.10 | * | rip | 14 | – 1 | 1 | 27 |
128.36.20.0 | 255.255.255.0 | 128.36.0.10 | * | rip | 1 | – 1 | 1 | 28 |
128.36.21.0 | 255.255.255.0 | 128.36.0.5 | * | rip | 1 | – 1 | 1 | 5 |
128.36.22.0 | 255.255.255.0 | 128.36.0.5 | * | rip | 1 | – 1 | 1 | 5 |
128.36.126.0 | 255.255.255.0 | 128.36.0.41 | * | rip | 1 | – 1 | 1 | 23 |
130.132.0.0 | 255.255.0.0 | 128.36.0.2 | * | rip | 2 | – 1 | 1 | 25 |
192.31.2.0 | 255.255.255.0 | 128.36.0.1 | * | rip | 3 | – 1 | 1 | 10 |
192.31.235.0 | 255.255.255.0 | 128.36.0.41 | * | rip | 1 | – 1 | 1 | 25 |
* — косвенный
** — прямой
*** — локальный
Таблица маршрутизации содержит элементы для многих различных подсетей сети 128.36.0.0, а также маршруты к сетям 130.132.0.0, 192.31.2.0 и 192.31.235.0 (эти значения извлечены из маршрутизатора приложением HP Open View for Windows Workgroup Node Manager). Четыре столбца правой части таблицы не используются в RIP).
8.6.1 Использование маски маршрута
Для поиска совпадения с адресом назначения (например, 128.36.2.25) нужно сравнить 128.36.2.25 с каждым элементом маршрута назначения (Route Destination). Элементы маски маршрута (Route Mask) указывают, сколько бит из 128.36.2.25 должны совпадать с битами маршрута назначения. Допустим, третья строка таблицы 8.1 имеет маску маршрута 255.255.255.0, означающую, что должны совпадать первые три байта, 128.36.2 (именно так и будет). Более формально можно сказать, что нужно сравнивать маршрут назначения с результатом операции логического умножения адреса назначения и маски маршрута.
Предположим, что совпадение выявлено для двух строк таблицы. Предпочтительный путь будет определять строка с более длинной маской.
8.6.2 Маршрут по умолчанию
Первой строкой в таблице 8.1 стоит маршрут по умолчанию. В ней указано, что, не найдя совпадения со строкой таблицы, трафик должен быть направлен на ближайший соседний маршрутизатор с адресом 128.36.0.2.
8.6.3 Использование подсети 0
Администратор данной сети сделал то, что не разрешается стандартами. Он присвоил локальной сети, в которой расположен маршрутизатор, номер подсети 0. Мы уже знаем, что нельзя присваивать 0 в качестве номера подсети. Однако, понимая, что некоторые возможности должны быть у любого доступного номера, разработчики маршрутизаторов позволяют управлять и такими адресами.
8.6.4 Прямые и косвенные назначения
Отметим, что один элемент таблицы указывает на прямой (direct) тип локальной сети 128.36.0, что означает непосредственное подключение этой сети к маршрутизатору. Протокол является локальным (local), когда маршрут можно изучить, просмотрев конфигурационные параметры самого маршрутизатора.
Оставшиеся элементы перечисляют удаленные подсети и сети, которые достигаются косвенно (indirect) при направлении трафика на другие маршрутизаторы. Такие маршруты изучаются средствами протокола RIP.
8.6.5 Метрики маршрутизации
В таблице предусмотрено место для нескольких метрик. RIP использует только одну из них — простой счетчик количества попаданий по пути к точке назначения. Неиспользуемые значения установлены в -1. Отметим, что метрика 0 присвоена подсети 128.36.0, которая подключена непосредственно к маршрутизатору. Многие другие точки назначения доступны за одно попадание. Однако подсеть 128.36.19.0 отстоит от маршрутизатора на 14 попаданий.
Мы рассматривали маршрутизатор модели Shiva Lanrover, имеющий множество телефонных номеров для подключения линий к интерфейсу 1.
8.6.6 Возраст маршрута
Столбец возраста маршрута (Route Age) отслеживает количество секунд от последнего изменения или проверки каждого из маршрутов. Элементы таблицы, созданные через RIP, будут считаться недействительными по тайм-ауту возраста, если их невозможно реконфигурировать в течение трех минут.
8.7 Таблица маршрутизации IGRP/BGP
Элементы маршрутизации в таблице 8.2 получены из маршрутизатора провайдера Интернета. В ней перечислены назначения и идентифицированы маршрутизаторы для следующего попадания, используемые при доставке датаграмм к каждой точке назначения. Кроме того, здесь содержится информация для помощи маршрутизатору при повторном вычислении участка следующего попадания, когда произойдет изменение топологии сети.