Опубликован: 28.09.2007 | Уровень: специалист | Доступ: свободно
Лекция 8:

Маршрутные протоколы RIP, OSPF и BGP

< Лекция 7 || Лекция 8: 123456 || Лекция 9 >
Аннотация: Постановка задачи маршрутизации. Принцип оптимальности. Метрика маршрута. Понятие вектора расстояния и алгоритм Белмана-Форда, алгоритм Дикстры, внутренние и внешние протоколы маршрутизации. Формирование и использование маршрутной таблицы
Ключевые слова: транспортировка, алгоритмы маршрутизации, Интернет, IP, ISDN, ATM, маршрутизация, алгоритм, ПО, оптимизация, поток, маршрутизатор, вероятность, пропускная способность, надежность, безопасность, путь, дерево, sink, tree, адрес, таблица, выражение, маршрут, AS, пользователь, border gateway, BGP, внешний канал, порт, gateway, поддержка, локальная сеть, деление, прямой, PGP, privacy, сервер, протокол маршрутизации, сегменты, вектор, список, счетчик, значение, routing, топология, матрица, Произведение, граф, администратор, динамическая, сеть, Хакер, доступ, таблица маршрутизации, поиск, связь, ID, сообщение об ошибке, побитные операции, операции, backbone, узловой, ICMP, команда, ping, кратчайшим путем, TTL, информация, оптимальность, программа, Unix, RIP, OSPF, IGRP, метрика, IGMP, выход, шлюз, представление, анализ, тупик, кадр, переполнение, угроза, входной, IGP, protocol, определить маршрут, information, фирма, ARPANET, время доступа, расстояние, OPEN, pass, First, состояние канала, сетевой администратор, EGP, exterior, routed protocols, Ethernet, PPP, вычисление, вариация, параметр, policy, ISIS, intermediate system, CLNP, connectionless, networking protocol, IS-IS, CIDR, адресация, spanning tree, интерфейс, Reverse, path, замкнутым маршрутом, инкапсуляция пакетов, активный интерфейс, incomplete, маршрутный префикс

Основная задача сетей — транспортировка информации от ЭВМ-отправителя к ЭВМ-получателю. В большинстве случаев для этого нужно совершить несколько пересылок. Проблему выбора пути решают алгоритмы маршрутизации. Если транспортировка данных осуществляется дейтограммами, для каждой из них эта задача решается независимо. При использовании виртуальных каналов выбор пути выполняется на этапе формирования этого канала. В Интернет с его IP-дейтограммами реализуется первый вариант (если не рассматривать виртуальные сети), а в ISDN и ATM — второй. Для решения проблемы маршрутизации применяются специальные устройства, называемые маршрутизаторами.

Маршрутизация подразумевает два параллельных процесса: подготовку маршрутной таблицы и переадресацию дейтограмм с помощью этой таблицы. Формирование маршрутной таблицы производится посредством протоколов маршрутизации или под воздействием инструкций сетевого администратора.

Алгоритм маршрутизации должен обладать вполне определенными свойствами: надежностью, корректностью, стабильностью, простотой и оптимальностью. Последнее свойство не так прозрачно, как это может показаться на первый взгляд: все зависит от того, по какому или каким параметрам производится оптимизация. Эта задача иногда совсем не тривиальна даже для сравнительно простых локальных сетей (смотри, например, рис. 8.1). Предположим, что поток данных между ЭВМ B и D, соединенных через маршрутизатор (М), весьма высок. Это окажет ощутимое влияние на скорость обмена между ЭВМ А и С. Но этот факт довольно трудно выявить, находясь в ЭВМ А или С. Внешне это проявится лишь как повышенная задержка, вероятность потери пакета и пониженная пропускная способность участка А-С.


Рис. 8.1.

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

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

Принцип оптимальности маршрута. Если маршрутизатор M находится на оптимальном пути от маршрутизатора I к маршрутизатору J, тогда оптимальный путь от М к J проходит по этому же пути.

Следствием принципа оптимальности является утверждение, что оптимальные маршруты от всех отправителей к общему месту назначения образуют дерево, лишенное циклов. Такое дерево (sink tree) может быть не единственным. Задача маршрутизатора — нахождение и использование такого дерева. Маршрутизатор всегда является корнем такого дерева. В реальных условиях отдельные узлы могут выходить из строя или отключаться, что вызывает существенные видоизменения дерева. Разные маршрутизаторы могут иметь свои представления о том, какое из возможных деревьев выбрать. Поэтому путь из точки А в точку Б может не совпадать с путем из точки Б в точку А.

Главным параметром при маршрутизации пакета в Интернет является IP-адрес его места назначения. Проблема оптимальной маршрутизации в современном Интернет, насчитывающем уже более пятисот миллионов узлов, весьма сложна, полная таблица маршрутов может содержать (5*10^8)! записей (здесь "!" означает знак факториала, а не выражение эмоций), что не по плечу не только сегодняшним ЭВМ. Внешние маршрутизаторы обычно ищут оптимальный путь между сетями, а не отдельными ЭВМ. Тем не менее, размеры маршрутных таблиц растут экспоненциально, и традиционные схемы и решения рано или поздно станут неэффективны. В общем случае для формирования оптимального маршрута нужно владеть исчерпывающей информацией обо всех сетевых сегментах. Это реально только для локальных сетей малого или среднего размеров. Следует также учитывать, что ситуация в сети постоянно меняется и маршрутизаторы для решения их задач имеют ограниченные ресурсы времени. На практике оптимизация осуществляется для ограниченной области сегментов, тогда и объем данных, подлежащих обработке, сокращается на многие порядки. Понятно, что компромиссы здесь неизбежны и результирующий маршрут в этом случае отнюдь не всегда будет оптимальным. Сбор данных о сетевых сегментах и маршрутах выполняется путем обмена этой информацией между маршрутизаторами. Переадресация же дейтограммы должна осуществляться за время 1-20 миллисекунд, которое зависит от длины очереди в буфере.

Одной из радикальных мер решения проблемы может стать географическая маршрутизация, которая будет возможной при массовом внедрении адресации IPv6.

При географическом принципе каждая из стран получит равные по численности блоки IP-адресов (США и Андорра будут иметь равное число адресов). Именно по этой причине при 32-битах адреса такая схема была неосуществима.

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

Обычный пользователь не задумывается и не должен задумываться над проблемами маршрутизации, но даже ему иногда может пригодиться понимание, что возможно, а что невозможно в Интернет.

IP делит все ЭВМ на маршрутизаторы и обычные ЭВМ, последние, как правило, не рассылают свои маршрутные таблицы. Предполагается, что маршрутизатор владеет исчерпывающей информацией о правильных маршрутах (хотя это и не совсем так). Обычная ЭВМ имеет минимальную маршрутную информацию (например, адрес маршрутизатора локальной сети и сервера имен). Автономная система (AS) может содержать множество маршрутизаторов, но взаимодействие с другими AS она осуществляет только через один маршрутизатор, называемый пограничным (Border Gateway, именно он дал название протоколу внешней маршрутизации BGP). Пограничный маршрутизатор нужен лишь тогда, когда автономная система имеет более одного внешнего канала, в противном случае его функции выполняет порт внешнего подключения (Gateway; поддержка внешнего протокола маршрутизации в этом случае не требуется). Здесь и далее используются достаточно простые на первый взгляд понятия внешних и внутренних каналов, внешних и внутренних протоколов или маршрутизаторов. Но такое разделение часто весьма условно. Поясню это на примере, представленном на рисунке 8.2.


Рис. 8.2.
< Лекция 7 || Лекция 8: 123456 || Лекция 9 >
Каролина Попович
Каролина Попович
Евгений Виноградов
Евгений Виноградов

Прошел экстерном экзамен по курсу перепордготовки "Информационная безопасность". Хочу получить диплом, но не вижу где оплатить? Ну и соответственно , как с получением бумажного документа?

Сергей Смоляр
Сергей Смоляр
Россия, Ялта