Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 24 Next »

Содержание

Термины

ABR

ASBR

DR

BDR

LSA

LSDB

DBD

LSR

LSU

LSAck

Динамическая маршрутизация

Статическая маршрутизация, рассмотренная в документе Статическая маршрутизация, имеет ряд существенных недостатков:

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

Протоколы динамической маршрутизации лишены всех перечисленных недостатков статической маршрутизации. Кроме того, некоторые из протоколов поддерживают следующие функции:

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

Из названия следует, что протоколы динамической маршрутизации выполняют обмен маршрутной информацией и её актуализацию в автоматическом режиме и, несмотря на схожесть основной функциональности, протоколы можно классифицировать следующим образом:

  • По области применения:
    • внутренние: протоколы динамической маршрутизации, используемые внутри автономной системы, т.е. набора устройств и каналов связи, находящихся под единым управлением (например, ODR, RIP, OSPF);
    • внешние: протоколы динамической маршрутизации, используемые для обмена маршрутной информацией между автономными системами (например, BGP).
  • По принципу работы:
    • дистанционно-векторные (distance-vector): протоколы подобного типа предусматривают обмен таблицами маршрутизациями, при этом сетевые узлы оперируют только информацией о своих непосредственных соседях и маршрутной информацией, полученной от них (например RIP, ODR);
    • состояния канала связи (link state): протоколы подобного типа предусматривают обмен таблицами топологии, при этом каждый из сетевых узлов оперирует информацией о структуре всей сети и может воспроизвести всю схему (например, OSPF).

Поддержка протоколов динамической маршрутизации реализована на устройствах Инфинет семейств InfiLINK 2x2 и InfiMAN 2x2. Далее все примеры будут рассматриваться для устройств данного типа.

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

Рисунок 1 - Внутренняя архитектура модулей динамической маршрутизации в устройствах InfiLINK 2x2, InfiMAN 2x2

Описание протоколов динамической маршрутизации

Ниже, в текущем документе будет представлено описание протоколов динамической маршрутизации ODR, RIP, OSPF. Для каждого из протоколов предусмотрены дочерние страницы с примера практической настройки устройств:

Протокол ODR

ODR (On Demand Routing - маршрутизация по запросу) - протокол распространения маршрутной информации, применяемый в сетевых топология типа "звезда". Топология "точка-многоточка" по своему смыслу является "звездой", поэтому ODR широко используется в беспроводных сетях. Алгоритм работы ODR, по сравнению с другими протоколами динамической маршрутизации, очень прост, поэтому его использование не является ресурсозатратным.

Рассмотрим алгоритм работы протокола ODR на примере (рис. 2). Схема сети состоит из базовой станции БС1 и трёх абонентских устройств АС2, АС3 и АС4, подключенных к БС1. За каждым беспроводным устройством расположен сегмент локальной сети с закреплённой за ним адресацией. За областью MINT также закреплена IP-подсеть.

  • Этап 0: предварительная настройка. Необходимо установить радиоканал между беспроводными устройствами, назначить IP-адреса на сетевые интерфейсы и глобально отключить коммутацию. Таблица маршрутизации устройств после выполнения предварительной настройки представлена в таблице 1.
  • Этап 1: распределение ролей. Протокол ODR предусматривает две роли: hub - центральное устройство, spoke - тупиковые устройства. Как правило в качестве центрального устройства выступает сектор базовой станции, имеющий подключение к опорной сети, а в качестве тупиковых устройств - абонентские станции, за которыми непосредственно расположены пользовательские устройства.
  • Этап 2: рассылка маршрута по умолчанию. Устройства, для которых определена роль hub, рассылают сообщения, в которых сообщают о своей роли всем устройствам. Для рассылки таких сообщений используются служебные поля протокола MINT (см. Коммутация в устройствах семейств InfiLINK 2x2 и InfiMAN 2x2.), т.е. граница получателей сообщений ограничена областью MINT. Получая такое сообщение, устройства с ролью spoke формируют список hub'ов. Поскольку топология "звезда" подразумевает, что устройство с ролью hub имеет подключение к опорной сети, то устройства с ролью spoke могут добавить в таблицу маршрутизации маршрут по умолчанию, указав в качестве шлюза адрес hub'а (таблица 2). В одной области MINT может быть несколько устройств с ролью hub, поэтому каждый из spoke'ов может иметь в RIB несколько маршрутов по-умолчанию.
  • Этап 3: выборы маршрута по умолчанию. Для распространения информации об устройствах с ролью hub используется протокол MINT, имеющий внутреннюю метрику, отражающую радиопараметры каналов связи и их текущую загрузку, поэтому критерием для выбора маршрута по умолчанию для добавления в FIB является наименьшее значение этой метрики. Анализ метрик для каждого из устройств с ролью hub выполняется перманентно, поэтому, в случае роста метрики для используемого маршрута по умолчанию он может быть заменён другим. Таким образом реализуются функции отказоустойчивости и балансировки.
  • Этап 4: рассылка маршрутной информации. Каждое из устройств с ролью spoke формирует служебные сообщения для каждого устройства с ролью hub. Эти сообщения содержат информацию о непосредственно подключенных и статических маршрутах, находящихся в FIB устройства. Важно отметить, что информация о сетях, общих с hub'ами, в такие сообщения не включаются. Например, устройство АС3 сообщит БС1 о сети 192.168.3.0/24, но не сообщит о 172.16.0.0/29, т.к. радиоинтерфейс БС1 ассоциирован с этой сетью и информация о ней уже есть в FIB БС1 (таблица 1).
  • Этап 5: связность между всеми сегментами локальной сети достигнута. В таблицу маршрутизации беспроводных устройств добавлены необходимые маршруты (таблица 2).

Рисунок 2 - Схема работы протокола ODR в сети с топологией "звезда"


Таблица 1 - Таблицы маршрутизации беспроводных устройств после предварительной настройки

Таблица 2 - Таблицы маршрутизации беспроводных устройств после настройки ODR

Чаще всего протокол ODR используется в схеме PTMP (рис. 2), однако для лучшего понимания усложним схему, реализовав функцию балансировки и отказоустойчивости (рис.3):

  • два сектора БС1 и БС2, коммутаторы InfiMUX1 и InfiMUX2 подключены в Коммутатор 1;
  • к каждому из секторов подключены по два абонентских устройства: АС11 и АС12 к БС1, АС21 и АС22 к БС2;
  • все устройства объединены в единую область MINT (см. Коммутация в устройствах семейств InfiLINK 2x2 и InfiMAN 2x2.);
  • устройствам InfiMUX1 и InfiMUX2 назначены роли hub, т.к. они имеют подключение к внешней сети WAN, беспроводным устройствам - роль spoke.

Следует пояснить, что роль - характеристика не устройства, а интерфейса, поддерживающему работу протокола MINT. Например, беспроводное устройство может играть роль hub в области MINT, к которой оно подключено интерфейсом rf5.0, и роль spoke в области MINT, подключенной через интерфейс prf0. В рассматриваемом примере используется одна общая область MINT, поэтому на устройствах БС1 и БС2 достаточно активировать поддержку протокола ODR на одном из интерфейсов, поддерживающих работу MINT

После предварительной настройки и распределения ролей, устройства АС11, АС12, АС21 и АС22 добавят в таблицу маршрутизации маршрут по умолчанию, указав в качестве шлюза InfiMUX1 или InfiMUX2. Выбор шлюза будет продиктован наименьшим значением метрики до этого устройства. Каждое из устройств с ролью hub получит маршрутную информацию о пользовательских сетях LAN-11, LAN-12, LAN-21 и LAN-22 от устройств с ролями spoke. Устройства БС1 и БС2 являются в данной схеме промежуточными и не сообщают маршрутную информацию устройствам с ролью hub.

Отказоустойчивость: допустим, что весь трафик, проходящий через БС1, также проходит через InfiMUX1, а трафик БС2 - через InfiMUX2. В случае выхода из строя InfiMUX1, устройства БС1, АС11 и АС12 удалят из таблицы маршрутизации запись со шлюзом InfiMUX1, а вместо него добавят другой маршрут по умолчанию через InfiMUX2. Аналогичная ситуация произойдёт при выходе из строя InfiMUX 2.

Балансировка: метрика маршрутов по умолчанию в ODR рассчитывается исходя из радиопараметров и уровня загрузки каналов. Это позволяет выполнять балансировку трафика на стороне устройств с ролью spoke и равномерно утилизировать устройства и каналы связи в области MINT.

можно вместо картинки сделать видео

Рисунок 3 - Схема резервирования с использованием протокола ODR

Особенности протокола ODR

В списке особенностей протокола ODR по сравнению со статической маршрутизацией можно выделить:

  • простота настройки: базовая конфигурация ODR подразумевает распределение ролей;
  • масштабируемость: рост числа устройств в сети не требует выполнения большего объёма работ, на устройствах достаточно выполнить предварительную настройку и определить роль;
  • оперативность: состояние устройств и каналов связи постоянно отслеживаются протоколом ODR, поэтому изменения в топологии сети мгновенно отразятся на таблице маршрутизации;
  • отказоустойчивость и балансировка: реализация схем повышения надёжности и равномерной утилизации не требует дополнительных манипуляций и выполняется автоматически;
  • ограничение топологии: ODR не может быть применён в сетях с произвольной топологией и предназначен для сетей типа "звезда";
  • фирменная реализация: протокол ODR поддерживается другими производителями оборудования, однако эти реализации не будет совместимы с устройствами Инфинет. Это происходит потому что транспортная технология для ODR не стандартизована и в устройствах Инфинет используется фирменный протокол MINT.

Практика ODR

Практические примеры по настройки ODR представлены на дочерней странице документа: Настройка протокола ODR.

Протокол OSPF

OSPF (Open Short Path First - открытый протокол выбора кратчайшего пути) - протокол динамической маршрутизации, базирующийся на алгоритме построения дерева кратчайших путей. Протокол OSPF обладает следующими характеристиками:

  • OSPF разработан сообществом IETF в 1988 году. Поскольку протокол является открытым, то он может использоваться в герерогенных сетях, построенных с использованием оборудования разных производителей.
  • На текущий момент актуальны две версии протокола OSPF: версия 2 для IPv4-сетей, описанная в RFC 2328, и версия 3 для IPv6-сетей, описанная в RFC 2740. Устройства Инфинет поддерживают работу протокола IPv4, поэтому далее в статье будет рассматриваться OSPF версии 2.
  • OSPF относится к протоколам динамической маршрутизации состояния каналов связи.
  • OSPF является внутренним протоколом маршрутизации, т.е. используется для обмена маршрутной информации внутри автономной системы (АС).
  • Служебные сообщений протокола OSPF инкапсулируются в IP-пакеты. Поле "Протокол верхнего уровня" устанавливается равным 89.
  • За протоколом OSPF зарезервированы два адреса группового вещания 224.0.0.5 и 224.0.0.6. Их назначение описано ниже (см. этапы установки отношений соседства и алгоритм выбора DR и BDR).
  • Значение Distance для протокола OSPF равно 110.
  • Как рассчитывается метрика?

Области OSPF

Число маршрутизаторов автономной системы, использующих протокол OSPF для обмена маршрутной информацией может быть велико. Следствием этого является высокая загрузка каналов связи из-за большого объёма служебных сообщений OSPF. Для снижения объёма передаваемой служебной информации, в протоколе OSPF предусмотрено деление автономной системы на области (аrea).

Каждая из областей имеет 32-битный идентификатор, который принято записывать в двух форматах:

  • формат IP-адреса: используется в конфигурации устройств. Так, например области 0 и 2 (рис. 4а) в конфигурации устройств будут записаны как 0.0.0.0 и 0.0.0.2 соответственно;
  • формат числа: используется на схемах (рис. 4а-б) для того, чтобы упростить понимание и проще запоминать.

Не обязательно использовать последовательные идентификаторы для областей. Так, например, сеть может включать в себя области с идентификаторами 0,2 и 7 (рис. 4а).

Принадлежность к области является характеристикой интерфейса, а не устройства. Таким образом, один маршрутизатор может быть подключен к нескольким областям (рис. 4а).

За областью с идентификатором 0.0.0.0 зарезервировано специальное название - магистральная. Наличие магистральной области является обязательным условием для работы протокола OSPF. Каждая из областей должна быть непосредственно подключена к магистральной области, т.е. схема, в которой одна из областей подключена к другой, не имея соединения с магистральной, запрещена (рис. 4б).

Рисунок 4а - Разрешённая схема сети с использованием нескольких областей OSPF

Рисунок 4б - Запрещённая схема сети с использованием нескольких областей OSPF

Типы маршрутизаторов

В зависимости от места маршрутизатора в схеме сети выделяют следующие типы устройств (рис. 5):

  • Внутренний маршрутизатор (IR - internal router): маршрутизатор, все интерфейсы которого ассоциированы с одной областью. Маршрутизаторы R2 и R4 являются внутренними.
  • Магистральный маршрутизатор (BR - backbone router): маршрутизатор, обладающий интерфейсом, подключенным к магистральной области. Маршрутизаторы R1, R2 и R3 являются магистральными.
  • Пограничный маршрутизатор области (ABR - area border router): маршрутизатор, интерфейсы которого ассоциированы с разными областями OSPF. Маршрутизатор R3 является ABR, т.к. находится на стыке областей 0 и 2.
  • Пограничный маршрутизатор автономной системы (ASBR - autonomous system border router): маршрутизатор, имеющий подключение к внешней сети. Маршрутизатор R1 является ASBR, т.к. имеет подключение к сети LAN, которая находится под управлением сторонних лиц.

Рисунок 5 - Схема сети с маршрутизаторами различных типов

Алгоритм работы OSPF

Рассмотрим этапы работы протокола OSPF. Некоторые из этапов потребуют подробного объяснения - оно приведено в соответствующих разделах ниже.

  • Этап 1: Запуск протокола OSPF. Устройство определяет список интерфейсов, которые будут участвовать в работе протокола OSPF, и идентификаторы областей, к которым эти интерфейсы подключены.
  • Этап 2: Установка отношений соседства. На списке интерфейсов, определённых на этапе 1, предпринимается попытка найти другие маршрутизаторы и установить с ними соседские отношения.
  • Этап 3: Распределение ролей. Для снижения объёма служебных сообщений в широковещательных сегментах сети выбирается назначенный маршрутизатор (DR), являющийся центральной точкой обмена обмена маршрутной информацией в сегменте.
  • Этап 4: Синхронизация базы данных о состоянии каналов связи (LSDB). В соответствии с протоколом OSPF каждый из маршрутизаторов должен обладать одинаковым набором маршрутной информации, что требует синхронизации базы данных о состоянии каналов связи.
  • Этап 5: Построение дерева кратчайших связей (SPT). К маршрутной информации, полученной на этапе 4, применяется алгоритм Дейкстры, позволяющий получить дерево кратчайших связей. Корнем этого дерева является устройство, запустившее алгоритм, а ветками - известные сети назначения, информация о которых получена от других маршрутизаторов. Таким образом, каждое из устройств обладает набором путей к каждой из сетей, оптимизированных по критерию метрики.
  • Этап 6: Экспорт маршрутов в FIB. Набор маршрутов, полученный на этапе 5 хранится в RIB, поэтому устройство проводит дополнительную оптимизацию, сравнивая значения Distance для маршрутной информации, полученной из разных источников. Лучшие маршруты, полученные в ходе сравнения, помещаются в FIB и используются при передачи пользовательских и служебных данных.
  • Этап 7: Контроль за состоянием сети. Протоколы динамической маршрутизации выполняют постоянный контроль за состоянием каналов связи, т.к. таблица маршрутизации всех устройств должна поддерживаться в актуальном состоянии.
Запуск протокола OSPF

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

Маршрутизатор имеет 32-битный идентификатор, который, как правило, записывается в формате IP-адреса. Идентификатор может быть установлен вручную, либо выбран автоматически, как наибольший IP-адрес устройства. При ручном выборе идентификатора рекомендуется устанавливать его равным IP-адресу, предварительно ассоциированным с интерфейсом loopback0. Совпадение адреса управления и идентификатора маршрутизатора упростит эксплуатацию и диагностику сетевых проблем. При автоматическом выборе идентификатора, устройство Инфинет генерирует специальный адрес из подсети группового вещания 224.*.*.*, связанный с серийным номером маршрутизатора. Это позволяет избежать переопределения идентификатора при удалении IP-адреса или сетевого интерфейса.

Набор интерфейсов, участвующих в работе протокола OSPF, определяется в соответствии со следующей логикой:

  • в конфигурации устройства указывается диапазон адресов для работы OSPF и их связь с конкретной областью;
  • сетевые интерфейсы, IP-адреса которых включены в указанный диапазон, используются в OSPF и связываются с заданной областью. Следует понимать, что проверяется вхождение в диапазон не только IP-адреса интерфейса, но и всех адресов этой сети.

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

КомандаСоответствие eth1Соответствие eth2Комментарий
network 0.0.0.0/0 area 0дада

Сеть 0.0.0.0/0 включает в себя все IP-адреса, поэтому сети, ассоциированные с интерфейсами eth1 и eth2, входят в этот диапазон.

Такая конфигурация обладает скрытым поведением: если в конфигурации устройства появится новый IP-адрес, то на интерфейсе, ассоциированным с ним, будет запущен протокол OSPF. Это происходит потому что сеть 0.0.0.0/0 включает в себя все сети.

network 10.10.30.0/24 area 0

network 192.168.6.0/28 area 1

дадаВ команде явно указаны сети, ассоциированные с интерфейсами erh1 и eth2, поэтому протокол OSPF будет использовать оба этих интерфейса.

network 10.10.30.0/25 area 0

network 192.168.6.0/28 area 1

нетда

Несмотря на то, что IP-адрес маршрутизатора R1 принадлежит сети 10.10.30.0/25, протокол OSPF на этом интерфейсе запущен не будет. Это происходит потому что сеть, ассоциированная с интерфейсом eth1, содержит адреса в диапазоне 10.10.30.0-255, что не удовлетворяет команде 10.10.30.0/25 (10.10.30.0-127).

Протокол OSPF будет запущен на интерфейсе eth2.



Рисунок 6 - Схема маршрутизатора с двумя сетевыми интерфейсами

Пассивные интерфейсы

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

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

Внешние маршруты

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

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

Установка отношений соседства

Обмен маршрутной информации возможен только после установления отношений соседства между маршрутизаторами. Два маршрутизатора, имеющих общий канал связи, установят отношения соседства при совпадении следующих параметров:

  • адрес маска сети на интерфейсе в сторону потенциального соседа;
  • MTU на интерфейсах в сторону потенциального соседа;
  • идентификатор области и тип области;
  • параметры аутентификации;
  • интервал отправки Hello-сообщений и Router dead интервал (см. этап 1 установки отношений соседства).

Установка отношений соседства происходит в несколько этапов. Рассмотрим их на примере сети (рис. 7а): сеть состоит из трёх маршрутизаторов R1, R2 и R3, подключенных к коммутатору, между маршрутизаторами установлены отношения соседства, причём маршрутизатор R2 выбран назначенным маршрутизатором (DR), а R3 - резервным назначенным маршрутизатором (BDR). В схему сети будет добавлен маршрутизатор R4, причём будем считать, что выполняются условия для установления отношений соседства.

  • Этап 1: маршрутизатор R4 выполняет рассылку Hello-сообщений на групповой адрес 224.0.0.5 (рис. 7б). Этот адрес поддерживается всеми устройствами, на которых запущен протокол OSPF. Hello-сообщения рассылаются со всех интерфейсов, определённых на этапе запуска OSPF, с заданной периодичностью. По умолчанию используется интервал рассылки Hello-сообщений равный 10 секунд. Hello-сообщения - индикатор соединения с соседом, поэтому, если от соседа не получены Hello-сообщения на протяжении Router dead интервала, то устройство считается недоступным. По умолчанию Router dead интервал равен четырём интервалам рассылки Hello-сообщений.
  • Этап 2: маршрутизаторы R1, R2 и R3, получив Hello-сообщение от R1 добавляют его в список соседей со статусом Init (рис. 7б).
  • Этап 3: в соответствии с внутренними таймерами, маршрутизаторы R1, R2, R3 отправляют Hello-сообщения маршрутизатору R4 (рис. 7в). Поскольку Hello-сообщения содержат список соседей, то сообщения, отправленные для R4 содержат его идентификатор. Это значит, что маршрутизатор R4 может добавить в список соседей все маршрутизаторы сети со статусами 2-Way, пропустив статус Init. Далее R4 сформирует Hello-сообщения для маршрутизаторов, где укажет их в качестве соседей, что позволит R1, R2 и R3 сменить статус для R4 с Init на 2-Way (рис. 7г).
  • Этап 4: в широковещательных сегментах (Ethernet, MINT, и т.д.) должны быть выбраны основной и резервный назначенные маршрутизаторы, DR и BDR соответственно. Остальным маршрутизаторам будет назначены роли DROther. Этот механизм нужен для того, чтобы снизить объём служебной информации: каждый из DROther будет выполнять обмен маршрутной информацией только с DR и BDR. Алгоритм выбора DR и BDR описан ниже. Следует иметь в виду, что роли закрепляются не за устройством, а за интерфейсом, поэтому маршрутизатор, у которого есть несколько интерфейсов в разных широковещательных сегментах, может быть DR в одном и DROther в другом.
    • Этап 4а: пусть R2 будет назначен DR, а R3 - BDR, как и было до подключения R4 к сети. Маршрутизаторам R1 и R4 назначены роли DROther, поэтому статус отношений между ними останется равным 2-Way.
  • Этап 5: пары маршрутизаторов R2-R4 и R3-R4 распределяют роли master и slave между собой, статус их отношений становится равным ExStart.
  • Этап 6: устройство с ролью master начинает первым обмен служебными сообщениями с кратким описанием базы данных маршрутов DBD. Во время обмена такими сообщениями статус отношений устанавливается равным Exchange.
  • Этап 7: устройства, получив краткое описание базы данных маршрутов от соседа, формируют запросы детальной информации о неизвестных им сетях. Такие сообщения называются LSR.
    • Этап 7а: ответом на LSR является LSU. LSU содержат подробную информацию о запрашиваемых маршрутах.
    • Этап 7б: получив LSU, устройство формирует подтверждение о получении информации. Такое сообщение называется LSAck, его использование являетс следствием отказа от использования протоколов гарантированной доставки, например TCP.
    • Этап 7г: совокупность всей маршрутной информации называется LSDB, а процесс обмена служебными сообщениями о LSDB сопровождается изменением статусом отношений на Loading.
  • Этап 8: после синхронизации LSDB на устройствах, отношения между маршрутизаторами R4-R2 и R4-R3 устанавливаются в статус Full (рис. 7д). Следует обратить внимание, что DR и BDR устанавливают отношения Full со всеми маршрутизаторами в сегменте.

Рисунок 7а - Добавление в схему сети маршрутизатора R4

Рисунок 7б - Рассылка Hello-сообщений маршрутизатором R4

Рисунок 7в - Рассылка Hello-сообщений маршрутизаторами R1, R2, R3

Рисунок 7г - Установление симметричных 2-Way отношений

Рисунок 7д - Установление Full-отношений маршрутизатором R4 с DR и BDR

Распределение ролей

В каждом широковещательном сегменте, к которому подключены маршрутизаторы с запущенным протоколом OSPF, выполняются выборы DR и BDR. Выборы происходят в соответствии со следующими правилами:

  • Значение приоритета интерфейса: DR - маршрутизатор с наибольшим значением приоритета, BDR - маршрутизатор, следующий за DR по значению приоритета, DROther - остальные маршрутизаторы. Приоритет - свойства интерфейса маршрутизатора, подключенный к широковещательному сегменту. Приоритет принимает значение от 0 до 255 и определяется администратором сети вручную. По умолчанию приоритет равен 1, а, если значение приоритета интерфейса маршрутизатора установлено равным 0, то такой маршрутизатор не участвует в выборах DR и BDR.
  • Значение Router-id: DR - маршрутизатор с наибольшим значением Router-id, BDR - маршрутизатор, следующий за DR по значению Router-id, DROther - остальные маршрутизаторы. Значение Router-id является уникальным, поэтому сравнение идентификаторов маршрутизаторов используется при равенстве приоритетов, что гарантирует распределение ролей.

За устройствами DR и BDR закрепляется групповой адрес 224.0.0.6, используемый при синхронизации LSDB. Устройства с ролями DR и BDR устанавливают отношения Full с каждым из маршрутизатором широковещательного сегмента, что предъявляет большие требования к производительности устройств по сравнению с DROther. Если аппаратная производительность устройств может стать "бутылочным горлышком" сети, то необходимо учитывать это при планировании сети и использовать назначение приоритетов интерфейсов для предсказуемого выбора наиболее производительных устройств в качестве DR и BDR.

Основная функция DR - быть центральной точкой обмена маршрутной информацией в сегменте. Основная функция BDR - контроль за состоянием DR и, при выходе его из строя, смена роли на DR. Поскольку каждый из DROther устанавливает Full отношения как с DR, так и с BDR, то LSDB на BDR является синхронной с DR, поэтому BDR может начать выполнять функции DR без временных задержек на синхронизацию базы данных маршрутов. Если BDR становится DR, то среди DROther выполняется выбор BDR в соответствии с логикой, описанной выше.

Синхронизация LSDB

Маршрутная информация в OSPF представлена в виде LSA разного типа. Совокупность LSA образует LSDB. Следует понимать, что LSA не является служебным сообщением протокола OSPF, поэтому для их передачи используются сообщения DBD, LSR, LSU, LSAck в соответствии с логикой, описанной на этапах 6-8 алгоритма установления отношений соседства.

Протокол OSPF версии 2 определяет 7 типов LSA, представленных в таблице ниже. Для пояснения предназначения LSA различных типов будем использовать схему сети (рис. 8а): сеть состоит из 6 маршрутизаторов, образующих три области OSPF. При рассмотрении схемы абстрагируемся от этапов установления отношений соседства, сосредочившись на типах LSA, формируемых устройствами.

ТипНаименованиеОписаниеПример
Нет устойчивого перевода и в профессиональной среде названия LSA не переводят.
1

LSA о маршрутизаторе

(Router LSA)

LSA данного типа распространяются всеми маршрутизаторами в пределах одной области.

LSA содежит следующую маршрутную информацию:

  • описание всех каналов связи маршрутизатора, относящиеся к данной области;
  • стоимость каналов связи маршрутизатора;
  • список маршрутизаторов области, с которыми установлены отношения соседства.

LSA данного типа формируют все маршрутизаторы в сети (рис 8б).

Обратим внимание на следующие особенности:

  • в LSA типа 1, рассылаемых в области 0, маршрутизатор R3 включит только информацию о сети 10.10.234.0/29, а в LSA типа 1, рассылаемых в области 36 - информацию о сети 192.168.36.0/24. Это поведение объясняется тем, что LSA типа 1 предназначен для обмена информацией внутри области;
  • маршрутизатор R5 не формируется LSA типа 1 с информацией о внешней сети 172.16.0.0/16;
  • LSA типа 1, сформированный маршрутизатором R4 будет получен маршрутизатором R2 и передан маршрутизатору R1 с увеличенным значением метрики. Таким образом, LSA типа 1 распространяются по всей области с приращением метрики, остальные параметры остаются неизменными.
2

LSA о сети

(Network LSA)

LSA данного типа распространяются DR в пределах одной области.

LSA содержит следующую маршрутную информацию:

  • адрес сети широковещательного сегмента;
  • маска сети широковещательного сегмента;
  • список маршрутизаторов, с которыми установлены отношения соседства.

LSA данного типа формируют только маршрутизаторы R1, R2, R3 и R4, т.к. им назначена роль DR (рис. 8в).

По аналогии с LSA типа 1, LSA типа 2 распространяются по всей области с приращением значения метрики.

3

Суммарный LSA

(Summary Network LSA)

LSA данного типа распространяются ABR и содержат маршрутную информацию о соседней области. ABR распространяет не топологию, как в LSA 1 и 2 типа, а маршрутную информацию, т.е. в этой ситуации OSPF проявляет признаки дистанционно-векторного протокола.

ABR формирует один LSA типа 3 для каждой сети. Число сообщений может быть уменьшено за счёт настройки суммирования маршрутов.

LSA данного типа рассылается маршрутизаторами R3 и R4, т.к. они являются ABR (рис. 8г).

Маршрутизатор R3 сформирует следующие LSA типа 3:

  • маршрут к сети 192.168.36.0/24 для области 0. Маршрутизатор R3 подключен к этой сети с помощью интерфейса eth1;
  • маршрут к сети 10.10.234.0/29 для области 36. Маршрутизатор R3 подключен к этой сети с помощью интерфейса eth0;
  • маршрут к сети 10.10.21.0/30 для области 36. Информация о сети взята из LSA типа 1 и 2, полученных от R1;
  • маршрут к сети 192.168.45.0/24 для области 36. Маршрут к этой сети получен через LSA типа 3 от маршрутизатора R4. Интересно, что при анонсе этой сети, маршрутизатор R3 подменяет источник LSA, устанавливая себя в качестве источника маршрута. Подмена источника является необходимым условием, т.к. маршрутизаторе области 36 не знают о местонахождении маршрутизатора R4.

Маршрутизатор R4 формирует LSA типа 3 по аналогии с R3.

4

Суммарный LSA ASBR

(ASBR Summary LSA)

LSA данного типа формируют ABR в дополнение к LSA типа 5.

LSA такого типа содержат информацию о местонахождении ASBR для соседней по отношению к ASBR области.

См. пример для LSA типа 5.
5

Внешний LSA

(External LSA)

LSA данного типа формируют ASBR для внешних маршрутов, в том числе маршрутов по-умолчанию. Такие сообщения распространяются через всю АС без изменений.

По аналогии с ABR, ASBR может выполнять суммирование внешних маршрутов.

LSA типа 5 формируется маршрутизатором R5, т.к. это единственный ASBR в схеме сети (рис. 8д).

LSA типа 5, сформированный маршрутизатором R5 содержит информацию о сети 172.16.0.0/16 и распространяется через всю автономную систему без изменений. Таким образом, каждый из маршрутизаторов на схеме обладает данными о том, что сеть 172.16.0.0/16 является внешней и подключение к этой сети имеет маршрутизатор R5.

Скрытая проблема заключается в том, что маршрутизаторы R1, R2, R3 и R6 не знают местонахождения R5. LSA типа 1, в котором указан идентификатор R5, распространяется только внутри области 45.

Для решения этой ситуации, пограничные маршрутизаторы R4 и R3 дополнительно к передаваемому LSA типа 5 генерируют LSA типа 4. В LSA типа 4 маршрутизаторы сообщают о том, что весь трафик, адресованный R5 можно передать на ABR.

6

LSA членства в группе

(Group Membership LSA)

LSA такого типа используются в Multicast-сетях и содержат список групп, потребители которых есть в сегменте сети. В рамках данной статьи LSA такого типа рассматриваться не будут.

-
7

LSA типа 7

(Type 7 LSA)

LSA данного типа являются аналогом LSA типа 5, применяемых в NSSA областях. Использование LSA типа 7 является следствием соблюдения совместимости между областями типа Stub и NSSA. LSA типа 7 преобразовывается в LSA типа 5 маршрутизатором ABR при экспорте из NSSA области.Пример формирования LSA типа 7 представлен при описании NSSA областей.




Рисунок 8а - Схема сети для анализа типов LSA

Рисунок 8б - Рассылка LSA типа 1

Рисунок 8в - Рассылка LSA типа 2

Рисунок 8г - Рассылка LSA типа 3

Рисунок 8д - Рассылка LSA типов 4 и 5

Построение дерева кратчайших связей

После синхронизации LSDB каждый из маршрутизаторов выполняет расчёт дерева кратчайших путей с использованием алгоритма Дейкстры.

В сетях с избыточными каналами связи LSDB содержит анонсы об одной и той же сети, полученную от разных источников. Использование таких маршрутов для передачи в RIB определяется в следующем приоритетном порядке:

  • Intra-area маршруты: маршруты, распространяемые внутри одной области с использованием LSA типа 1 и 2.
  • Inter-area маршруты: маршруты, полученные из соседних областей с использованием LSA типа 3.
  • External маршруты типа 1: маршруты к внешним сетям, полученные от ASBR. Метрика маршрутов такого типа складывается из суммы метрик установленной ASBR при анонсировании и метрики пути до ASBR.
  • External маршруты типа 2: аналогичен External маршрутам типа 1, с другим методом вычисления метрики. Метрика равна значению, установленному ASBR при анонсировании и не учитывает метрику пути до ASBR.
  • Значение метрики маршрутов: для двух маршрутов к одинаковой сети, полученными от источников одного типа, сравнивается значение метрики. В RIB будет добавлен маршрут с меньшим значением метрики.

Типы областей

Одним из способов уменьшения объёма служебных сообщений протокола OSPF является использование областей разного типа. Протокол предусматривает следующие типы областей:

  • нормальная (Normal);
  • тупиковая область (Stub);
  • полностью тупиковая область (Totally Stub);
  • частично тупиковая область (NSSA);
  • полночтью частично тупиковая область (Totally NSSA).

Основные свойства областей разного типа рассмотрим на примере следующей схему (рис. 9): маршрутизаторы R1, R2, R3 и R4 последовательно соединены между собой, образуя три области OSPF. Два маршрутизатора, R3 и R4, имеют внешние каналы связи. В каждом из последующих примером будем менять тип области 4, анализируя типы LSA, связанные с этой областью. В рассматриваемых примерах будут опущены подробности LSA не связанных с областью 4 и LSA типа 1 и 2, т.к. они распространяются в пределах областей любого типа.

Рисунок 9 - Схема сети для рассмотрения типов областей

Normal

Нормальные области не вносят изменений в логику распространения и обработки LSA, описанную выше (рис. 10а). Данный тип областей используется устройствами по умолчанию. Частным случаем нормальной области является является магистральная область.

Рисунок 10а - Распространение LSA в нормальной области

Stub

Для Stub-области характерны следующие особенности (рис. 10б):

  • Stub-область не может иметь внешних каналов связи. Как следствие, в Stub-области запрещено распространение LSA типов 5 и 4.
  • Маршрутная информация о сетях Stub-области распространяется в соседние области с использованием LSA типа 3.
  • LSA типа 3 о сетях в сторонних областях распространяются в Stub-области по аналогии с нормальными областями.
  • LSA типа 5 из сторонних областей при попадании в Stub-область преобразовывается в LSA типа 3 с информацией о маршруте по умолчанию (Default).

Рисунок 10б - Распространение LSA в Stub области

Totally Stub

Totally Stub область повторяет поведение Stub-области с одним исключением: LSA типов 3 и 5 из соседних областей заменяются на один LSA типа 3 с маршрутом по умолчанию (рис 10в).

Рисунок 10в - Распространение LSA в Totally Stub области

NSSA

NSSA область обладает характериситками Stub-области с одним исключением: NSSA область может иметь внешний канал связи (рис. 10г). Поскольку для распространения маршрутной информации о внешних каналах связи используются LSA типа 5, запрещённые в Stub-областях, то в NSSA для этого используется LSA типа 7. Этот тип LSA повторяет структуру LSA типа 5, но разрешён к распространению в NSSA областях. На стыке областей, ABR преобразовывает LSA типа 7 в LSA типа 5, устанавливая себя в качестве источника. Поскольку источником указывается ABR, выполняющий преобразование LSA, то дополнительный LSA типа 4 создавать не нужно.

Рисунок 10г - Распространение LSA в NSSA области

Totally NSSA

Тут есть нюанс: этого термина не существует в RFC, его придумала Cisco. Но настройки такого поведения стандартны и их позволяют достичь все производители оборудования.

Totally NSSA области схожи по поведению с NSSA областями за исключением одной особенности: в Totally NSSA область экспортируется только один LSA типа 3 с маршрутом по умолчанию.

Рисунок 10д - Распространение LSA в Totally NSSA области

Виртуальный канал связи

Одним из принципов протокола OSPF является возможность соединения двух немагистральных областей только через магистральную область. Несмотря на это, структура некоторых сетей не соответствует этому принципу, что является следствием их исторического развития. Приведение таких сетей в соответствие с требованиями OSPF может потребовать крупных затрат, поэтому протокол OSPF был расширен понятием виртуального канала связи (Virtual Link).

Виртуальный канал связи обладает следующими характеристиками (рис. 11):

  • Виртуальный канал связи является логическим соединением, настраиваемым на двух ABR, один из которых подключен к магистральной области. Маршрутизаторы R1 и R2 являются ABR, на которых создаётся виртуальный интерфейс, R2 подключен к магистральной области через интерфейс eth1.
  • Виртуальный канал связи является интерфейсом, с помощью которого маршрутизатор R2 подключен к области 4. Через виртуальный канал связи распространяются все типы LSA, как через обычный интерфейс.
  • Область, являющаяся общей для двух ABR, организующих виртуальный канал связи, называется транзитной. В рассматриваемом примере транзитной является область 7.
  • Транзитная область должна быть нормальной. Организация виртуального канала связи через Stub или NSSA области невозможна.

Рисунок 11 - Схема с виртуальным каналом связи

Особенности протокола OSPF

Особенности протокола OSPF можно сформулировать следующим образом:

  • Открытая реализация: OSPF является открытым протоколом, поэтому может быть использован на оборудовании разных производителей.
  • Простота настройки: в мелких сетях протокол может быть запущен с помощью двух команд.
  • Гибкость конфигурации: широкий инструментарий протокола позволяет реализовывать множество сетевых схем.
  • Масштабируемость, отказоустойчивость, балансировка, оперативность: по аналогии с ODR, OSPF обладает преимуществами протоколов динамической маршрутизации.
  • Высокий порог вхождения: понимание терминологии и логики работы OSPF требует больших временных затрат.

Практика OSPF

Практические примеры по настройки OSPF представлены на дочерней странице документа: Настройка протокола OSPF.

Протокол RIP






    RIP

        Описание алгоритма. AD и расчёт метрик.

        Пример настройки и анализ вывода команд.

        Область применения. Достоинства и недостатки.


+попробовать wildcard mask

Дополнительные материалы

Онлайн-курсы

  1. Предварительная настройка и установка устройств семейств InfiLINK 2x2 и InfiMAN 2x2.
  2. Коммутация в устройствах семейств InfiLINK 2x2 и InfiMAN 2x2.

Вебинары

  1. ВСТАВИТЬ БУДУЩИЙ ВЕБИНАР

Прочее

  1. Настройка сети через Web-интерфейс в устройствах семейств InfiLINK 2x2, InfiMAN 2x2.

  2. Команда ifconfig (настройка интерфейсов)
  3. Команда route (статические маршруты)
  4. Команда mint в версии MINT
  5. Команда mint в версии TDMA
  6. Команда ARDA
  7. Команда OSPF
  8. Команда arip
  9. Команда rip (модуль динамической маршрутизации)
  10. RFC 2328


Вопросики


  • No labels