Для повышения стабильности и уменьшения времени сходимости в MPLS сетях, используется end-to-end protection. Данная защита обеспечивается путем организации резервированного пути CR-LSP. Например, когда происходит сбой на основном CR-LSP, трафик переключается на заранее просчитанный CR-LSP путь. Для быстрого детектирования проблем связности маршрутизаторов на уровне IP, а также соседств RSVP TE, используется Bidirectional Forwarding Detection (BFD).
Рассмотрим сеть, изображенную на рисунке 1. На данном рисунке изображен путь построения основного и резервного LSP.
Рисунок 1. Схема сети: распределение основного и резервного LSP.
Для того чтобы настроить end-to-end protection, необходимо выполнить базовые конфигурации, такие как:
1. Настроить адресацию на интерфейсах.
2. Настроить протокол IGP.
3. Настроить базовые функции MPLS и включить MPLS TE, RSVP-TE.
Приведем основные настройки для работы end-to-end protection:
1. Настройка IGP, в качестве примера был выбран OSPF:
Конфигурация на R1:
router ospfv2 1
area 0.0.0.0
interface loopback 1
passive
exit
interface tengigabitethernet 0/0/2
bfd fast-detect
network point-to-point
te-support
exit
interface tengigabitethernet 0/0/3
bfd fast-detect
network point-to-point
te-support
exit
exit
router-id 1.1.1.1
te-router-id 1.1.1.1
exit
Конфигурация на R2:
router ospfv2 1
area 0.0.0.0
interface loopback 1
passive
exit
interface tengigabitethernet 0/0/2
bfd fast-detect
network point-to-point
te-support
exit
interface tengigabitethernet 0/0/11
bfd fast-detect
network point-to-point
te-support
exit
exit
router-id 2.2.2.2
te-router-id 2.2.2.2
exit
Конфигурация на R4:
router ospfv2 1
area 0.0.0.0
interface loopback 1
passive
exit
interface tengigabitethernet 0/0/3
bfd fast-detect
network point-to-point
te-support
exit
interface tengigabitethernet 0/0/16
bfd fast-detect
network point-to-point
te-support
exit
exit
router-id 4.4.4.4
te-router-id 4.4.4.4
exit
Конфигурация на R5:
router ospfv2 1
area 0.0.0.0
interface loopback 1
passive
exit
interface tengigabitethernet 0/0/3
bfd fast-detect
network point-to-point
te-support
exit
interface tengigabitethernet 0/0/4
bfd fast-detect
network point-to-point
te-support
exit
exit
router-id 5.5.5.5
te-router-id 5.5.5.5
exit
2. Настройка раздела MPLS, конфигурация RSVP-TE на транзитных маршрутизаторах R4 и R5:
Маршрутизатор R4:
mpls
forwarding
interface loopback 1
interface tengigabitethernet 0/0/3
interface tengigabitethernet 0/0/16
exit
router-id 4.4.4.4
rsvp
interface tengigabitethernet 0/0/3
bfd fast-detect
exit
interface tengigabitethernet 0/0/16
bfd fast-detect
exit
exit
exit
Маршрутизатор R5:
mpls
forwarding
interface loopback 1
interface tengigabitethernet 0/0/3
interface tengigabitethernet 0/0/4
exit
router-id 5.5.5.5
rsvp
interface tengigabitethernet 0/0/3
bfd fast-detect
exit
interface tengigabitethernet 0/0/4
bfd fast-detect
exit
exit
exit
3. Настройка раздела MPLS, конфигурация RSVP-TE и включение защиты end-to-end на маршрутизаторах R1 и R2:
Маршрутизатор R1:
mpls
forwarding
interface loopback 1
interface tengigabitethernet 0/0/2
interface tengigabitethernet 0/0/3
exit
router-id 1.1.1.1
rsvp
interface tengigabitethernet 0/0/2
bfd fast-detect
exit
interface tengigabitethernet 0/0/3
bfd fast-detect
exit
tunnel R1-to-R2
destination 2.2.2.2
end-to-end
### В данном разделе настраивается работа end-to-end protection.
backup-lsp-diversity maximal <=== Дает возможность строить основной и резервный LSP через один и тот же узел, линк.
protection-type 1-to-1 <=== Создает резервный LSP путь.
exit
forwarding-adjacency <=== Команда включает функционал форвардинга MPLS пакетов через TE туннель.
record-route
routing-adjacency <=== Дает возможность передавать через ТЕ туннель трафик с помощью протоколов маршрутизации.
source 1.1.1.1
tunnel-lsp backup
### В данном разделе задаются дополнительные параметры для резервного LSP.
end-to-end
backup
wait-for-main <=== Не строит резервный LSP, пока недоступен основной LSP.
exit
exit
retry-timer 150 <=== Данный интервал в миллисекундах задает время между падением LSP и первой попыткой построить новый LSP.
exit
tunnel-lsp main
retry-timer 150
exit
exit
exit
exit
Начиная с версии 3.9.25 изменился подход добавления L3VPN сервисов в туннельный интерфейс. Теперь требуется конфигурация: "tunnel-policy".
Подробнее в статье: "Функционал tunnel-policy для L3VPN" - ссылка.
Маршрутизатор R2:
mpls
forwarding
interface loopback 1
interface tengigabitethernet 0/0/2
interface tengigabitethernet 0/0/11
exit
router-id 2.2.2.2
rsvp
interface tengigabitethernet 0/0/2
bfd fast-detect
exit
interface tengigabitethernet 0/0/11
bfd fast-detect
exit
tunnel R2-to-R1
destination 1.1.1.1
end-to-end
protection-type 1-to-1
exit
forwarding-adjacency
record-route
routing-adjacency
source 2.2.2.2
tunnel-lsp back
end-to-end
backup
wait-for-main
exit
exit
retry-timer 150
exit
tunnel-lsp main
retry-timer 150
exit
exit
exit
exit
При настройке End-to-End protection c оборудованием не поддерживающим объекты PROTECTION, PRIMARY_PATH_ROUTE, ASSOCIATION - необходимо добавить команду "mpls rsvp non-rfc4872-compliant"
Данная команда отключит отправку объектов из RFC 4872 и позволит поднять туннели с End-to-End Protection
Проверка конфигурации:
Проверяем наличие основного и резервного LSP.
Маршрутизатор R1:
0/ME5100:R1# show mpls rsvp lsps detailed
Wed Jan 25 06:47:19 2023
Tunnel: none, id: 2
LSP name: none, signaled-name: R2-to-R1@main, id: 3, Source: 2.2.2.2, Destination: 1.1.1.1
State: up, Protection role: working
Direction: egress, Node protect: disabled, Bandwidth protection requirement: disabled
Carrying the normal traffic after protection switching: no
Protected by a fast reroute: none
Downstream repaired: yes
Path recording is desired
SE Style is desired
LSP rerouting is end-to-end-rerouting
OAM MEP entities are not desired
OAM MIP entities are not desired
Upstream information:
Signaling interface: Tengigabitethernet0/0/2
Neighbor: 10.0.0.2
Label: 3, type: mpls-label
Incoming ERO Outgoing ERO
---------------------------- ----------------------------
hop0 10.0.0.1/32
Incoming RRO Outgoing RRO
----------------- -----------------
hop0 10.0.0.1
hop1 Label 3
Tunnel: R1-to-R2, id: 2
LSP name: main, signaled-name: R1-to-R2@main, id: 3, Source: 1.1.1.1, Destination: 2.2.2.2
State: up, Status: standby, Protection role: working
Direction: ingress, Node protect: disabled, Bandwidth protection requirement: disabled
Carrying the normal traffic after protection switching: no
Protected by a fast reroute: none
Downstream repaired: yes
Path recording is desired
SE Style is desired
LSP rerouting is end-to-end-rerouting
OAM MEP entities are not desired
OAM MIP entities are not desired
Downstream information:
Next hop: 10.0.0.2
Signaling interface: Tengigabitethernet0/0/2
Neighbor: 10.0.0.2
Label: 19, type: mpls-label
Incoming ERO Outgoing ERO
---------------------------- ----------------------------
hop0 10.0.0.1/32 10.0.0.2/32
hop1 10.0.0.2/32 10.0.3.1/32
hop2 10.0.3.1/32 10.0.3.2/32
hop3 10.0.3.2/32
Incoming RRO Outgoing RRO
----------------- -----------------
hop0 10.0.0.2 10.0.0.2
hop1 Label 19 Label 19
hop2 10.0.3.2 10.0.3.2
hop3 Label 3 Label 3
Tunnel: R1-to-R2, id: 2
LSP name: backup, signaled-name: R1-to-R2@backup, id: 5, Source: 1.1.1.1, Destination: 2.2.2.2
State: up, Status: active, Protection role: protecting
Direction: ingress, Node protect: disabled, Bandwidth protection requirement: disabled
Carrying the normal traffic after protection switching: no
Protected by a fast reroute: none (protecting)
Downstream repaired: yes
Path recording is desired
SE Style is desired
LSP rerouting is end-to-end-rerouting
OAM MEP entities are not desired
OAM MIP entities are not desired
Downstream information:
Next hop: 172.1.1.1
Signaling interface: Tengigabitethernet0/0/3
Neighbor: 172.1.1.1
Label: 19, type: mpls-label
Incoming ERO Outgoing ERO
---------------------------- ----------------------------
hop0 172.1.1.2/32 172.1.1.1/32
hop1 172.1.1.1/32 172.1.2.1/32
hop2 172.1.2.1/32 172.1.2.2/32
hop3 172.1.2.2/32
Incoming RRO Outgoing RRO
----------------- -----------------
hop0 172.1.1.1 172.1.1.1
hop1 Label 19 Label 19
hop2 172.1.2.2 172.1.2.2
hop3 Label 3 Label 3
Tunnel: none, id: 2
LSP name: none, signaled-name: R2-to-R1@backup, id: 5, Source: 2.2.2.2, Destination: 1.1.1.1
State: up, Protection role: protecting
Direction: egress, Node protect: disabled, Bandwidth protection requirement: disabled
Carrying the normal traffic after protection switching: no
Protected by a fast reroute: none (protecting)
Downstream repaired: yes
Path recording is desired
SE Style is desired
LSP rerouting is end-to-end-rerouting
OAM MEP entities are not desired
OAM MIP entities are not desired
Upstream information:
Signaling interface: Tengigabitethernet0/0/3
Neighbor: 172.1.1.1
Label: 3, type: mpls-label
Incoming ERO Outgoing ERO
---------------------------- ----------------------------
hop0 172.1.1.2/32
Incoming RRO Outgoing RRO
----------------- -----------------
hop0 172.1.1.2
hop1 Label 3
В результате выполнения команды мы видим общую информацию об входящих и исходящих LSP (main и backup), а также видим информацию по LSP от маршрутизатора R2.
