Выбор пути в RSVP-TE
Одна из основных причин использования RSVP-TE вместо LDP заключается в том, что он предоставляет возможность выбора путей, не соответствующих IGP. Ключевым компонентом выбора пути в RSVP-TE является объект EXPLICIT_ROUTE (ERO), который передаётся в сообщении Path. ERO содержит список IP-адресов, которые определяют некоторые или все узлы, которые должен пройти LSP. Методы выбора пути делятся на три основные категории:
- Путь полностью определяется IGP без ограничений.
- Путь определяется IGP, но с учётом того, что он должен проходить через определённые узлы.
- Путь подчиняется ограничениям, связанным с управлением трафиком, таким как количество переходов, административные группы или требования к пропускной способности.
Выбор пути с помощью IGP
В простейшем случае LSP RSVP-TE следует по пути, выбранному IGP. В этом случае в сообщении Path отсутствует объект ERO. Головной маршрутизатор выбирает следующий нижележащий маршрутизатор на основе следующего перехода для FEC из таблицы маршрутизации и отправляет сообщение Path через интерфейс, подключённый к этому маршрутизатору. Следующий нижележащий узел повторяет процесс, и сообщение Path передаётся вниз по пути узел за узлом на конечный маршрутизатор. Обратите внимание, что путь сначала определяется в конструкции rsvp-path, а затем упоминается в конфигурации туннеля rsvp-trunk LSP с помощью ключевого слова primary. Тот факт, что путь пуст, указывает на отсутствие ограничений и определение пути по IGP.
Выбор пути со строгим и нестрогим заданием узлов
LSP может следовать пути, построенному IGP, но быть ограниченным необходимостью прохождения через определённые узлы. Эти узлы задаются как строгие (strict) или нестрогие (loose) и содержатся в ERO. Путь может содержать разнородный состав строгих и нестрогих переходов. Если переход задан строго, это означает, что сообщение Path должно быть немедленно переслано по указанному адресу. Если запись перехода нестрогая, сообщение Path направляется к указанному переходу с помощью IGP и может пройти через несколько промежуточных узлов.
Ingress маршрутизатор формирует ERO, содержащий полный предписанный маршрут LSP. Маршрутизатор изучает первый элемент в ERO, и если первый элемент совпадает с адресом данного маршрутизатора этот элемент удаляется из ERO, и маршрутизатор изучает следующий элемент, чтобы определить, куда отправить сообщение Path далее.
Если маршрутизатор получает Path, в котором первая запись в объекте ERO является строгой, он пытается перенаправить сообщение Path по адресу из записи, своему непосредственному соседу. Если соседа с таким адресом нет, маршрутизатор возвратит вышестоящему узлу ошибку PathErr. Если же первая запись нестрогая, то сообщение Path направляется на указанный адрес с помощью IGP и по пути может пройти через несколько промежуточных узлов.
Если сообщение Path не достигло конечной точки после прохождения всех заданных переходов, оно направляется на конечную точку с помощью IGP, как если бы это был нестрогий переход.
**Выбор пути с ограничениями управления трафиком
Помимо ограничений, накладываемых строгими и нестрогими переходами, путь может также подчиняться другим ограничениям, связанным с управлением трафиком. Эти ограничения — количество переходов, административные группы и требования к пропускной способности.
Для LSP с управлением трафиком головной маршрутизатор выполняет расчёт CSPF, чтобы найти путь, соответствующий ограничениям. Если такового нет, LSP остаётся в рабочем состоянии. Если найден путь от головного до конечного маршрутизатора, соответствующий всем ограничениям, этот путь помещается в ERO как список строгих переходов, и сообщение Path отправляется с этим ERO.
Алгоритм CSPF
Маршрутизация на основе ограничений с использованием OSPF и IS-IS подразумевает передачу дополнительной информации, собранной в базе данных управления трафиком (TED, traffic-engineering database). В отличие от обычной информации о состоянии каналов в базе данных о состоянии каналов (LSDB), информация в TED не используется для построения таблицы пересылки IP-адресов. Информация об управлении трафиком используется только при необходимости использования TE-LSP. В этом случае алгоритм поиска кратчайшего пути с ограничениями (CSPF) работает на TED, чтобы найти кратчайший маршрут к месту назначения, соответствующий заданным ограничениям.
Алгоритм CSPF очень похож на обычный алгоритм SPF (shortest path first), за исключением того, что при расчёте CSPF любые соединения в TED, не соответствующие заданным ограничениям, игнорируются. Можно считать, что они отбрасываются, хотя они по-прежнему хранятся в TED, просто не используются при расчёте маршрута на основе ограничений. Ограничения основаны на доступной незарезервированной полосе пропускания, административных группах, количестве переходов или требовании включить или обойти определенный узел или канал.
База данных управления трафиком
Протоколы OSPF и IS-IS были улучшены схожим образом для поддержки маршрутизации на основе ограничений. Усовершенствования OSPF в области управления трафиком описаны в RFC 3630, а IS-IS — в RFC 3784. Эти усовершенствования описывают дополнительную информацию о состоянии канала, передаваемую протоколами маршрутизации. Эта информация собирается в базе данных управления трафиком (TED). Каждый маршрутизатор, поддерживающий управление трафиком, поддерживает две базы данных.
В то время как база данных состояния канала (LSDB) содержит метрику канала, TED содержит дополнительную информацию, связанную с каналом. Как для OSPF, так и для IS-IS, важная информация об управлении трафиком передаётся в sub-TLV-записях в пакетах состояния соединения:
- Метрика управления трафиком — может совпадать с метрикой состояния соединения или отличаться от неё.
- Максимальная пропускная способность — реальная пропускная способность канала в байтах в секунду.
- Максимальная резервируемая пропускная способность — объём пропускной способности, который может быть зарезервирован для данного канала. Он может превышать максимальную пропускную способность.
- Незарезервированная пропускная способность — ещё не зарезервированная пропускная способность. Пропускная способность может быть зарезервирована с одним из восьми различных уровней приоритета. Объём незарезервированной пропускной способности определяется для каждого уровня приоритета. Начальным значением для всех восьми уровней приоритета является максимальная резервируемая пропускная способность.
- Административная группа — 32-битная маска, назначаемая администратором сети. Когда бит установлен в единицу, это указывает на членство в группе. Младший значащий бит называется группой 0, а старший значащий бит — группой 31. Канал может быть членом нескольких групп (установлено несколько битов). Административная группа также называется классом ресурсов или цветом.
IGP Shortcuts
MPLS — это технология туннелирования, которая может применяться и в других частях IP-сети, где туннелирование уместно. Одна из таких ситуаций — отправка обычного IP-трафика через туннель MPLS вместо использования стандартного механизма пересылки IP-трафика.
IGP Shortcuts в RSVP-TE — это функция интеграции, которая позволяет маршрутизаторам воспринимать настроенные туннели RSVP-TE (LSP) как виртуальные каналы связи в своей обычной таблице маршрутизации IGP. Без этого механизма LSP существует изолированно, и для передачи через него трафика необходимо явно указать это, например, с помощью статического маршрута. IGP Shortcut автоматизирует этот процесс. Когда туннель активируется с функцией IGP Shortcuts, ingress-маршрутизатор туннеля начинает анонсировать его в протокол IGP как дополнительное, прямое соединения с точкой назначения туннеля.
Ключевым элементом настройки является назначение туннелю метрики, понятной для IGP. Метрика может быть задана двумя основными способами: абсолютной (absolute) или относительной (relative). Абсолютная метрика назначает туннелю фиксированное значение (например, 10), которое напрямую сравнивается с метриками других путей. Относительная метрика корректирует стоимость физического пути до цели: например, значение -5 означает, что метрика туннеля будет на 5 единиц меньше, чем лучшая доступная IGP-метрика до точки назначения через обычные интерфейсы. Это позволяет гибко управлять предпочтениями, гарантируя, что туннель будет использоваться (или, наоборот, останется резервным), даже если физическая топология со временем изменится.
