На маршрутизаторах серии ME технология NSF реализована на основе механизма Graceful Restart (GR).

В данной статье будет рассматриваться сценарий настройки Graceful Restart в протоколах OSPF, IS-IS, BGP, LDP.

Graceful Restart в OSPF

GR в OSPF — это механизм, позволяющий маршрутизатору перезагрузить процесс OSPF без прекращения передачи трафика. При сбое маршрутизатор заранее отправляет соседям сигнал о перезагрузке — Grace-LSA. Соседи не удаляют данный узел из маршрутных таблиц и продолжают отправлять трафик, пока OSPF-процесс восстанавливается.

В роли рестартующего может быть только модульный маршрутизатор с резервированием плат управления.

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


R1 — ME5000M:


router ospfv2 0
  area 0.0.0.0
    interface loopback 2
      passive
    exit
    interface tengigabitethernet 0/1/4
    exit
    interface tengigabitethernet 0/1/5
    exit
  exit
  graceful-restart < --------------------- включение поддержки функционала GR
  router-id 10.100.30.50
exit


По умолчанию на всех OSPF-интерфейсах маршрутизаторов серии ME при включении graceful-restart активируется режим работы - Helper.

Так же есть возможность включить поддержку незапланированного рестарта:

graceful-restart unplanned  (например, замена платы управления без программного switchover’а)

Или задать другую длительность льготного периода (по умолчанию 120 секунд):

graceful-restart grace-period value


R2 — ME5100S:

router ospfv2 0
  area 0.0.0.0
    interface loopback 0
      passive
    exit
    interface tengigabitethernet 0/0/7
    exit
    interface tengigabitethernet 0/0/16
    exit
  exit
  graceful-restart
  router-id 10.100.30.20
exit


R3 - ME5200S:

router ospfv2 0
  area 0.0.0.0
    interface loopback 0
      passive
    exit
    interface tengigabitethernet 0/0/7
    exit
    interface tengigabitethernet 0/0/26
    exit
  exit
  graceful-restart
  router-id 10.100.30.30
exit

При необходимости можно отключить поддержку функционала OSPF Graceful Restart на хелпере в определенных сценариях:

R3:

router ospfv2 0
  area 0.0.0.0
    interface loopback 0
      passive
    exit
    interface tengigabitethernet 0/0/7
	  helper-mode-policy reload disable < -------------  при перезагрузке удаленного устройства
    exit
    interface tengigabitethernet 0/0/26
      helper-mode-policy unknown disable < ------------- для всех остальных случаев
    exit
  exit
  graceful-restart
  router-id 10.100.30.30
exit

То есть на интерфейсе te0/0/7 поддержка будет осуществляться только по причине плановой перезагрузки/обновлении ПО или по причине переключения плат.

Список возможных режимов хелпера в OSPF:

Graceful Restart IS-IS

В протоколе IS-IS Graceful Restart работает по умолчанию, маршрутизатор может быть и рестартером и хелпером.

R1:

router isis 0
  interface loopback 2
    address-family ipv4 unicast
    exit
    passive
  exit
  interface tengigabitethernet 0/1/4
    address-family ipv4 unicast
    exit
  exit
  interface tengigabitethernet 0/1/5
    address-family ipv4 unicast
    exit
  exit
  graceful-restart adjacency-wait 150 < -------------- таймер, в течение которого хелпер будет удерживать сессию (по умолчанию равен 10 секунд)
  net 20.0000.0000.0000.5555.00
exit

R2:

router isis 0
  interface loopback 0
    address-family ipv4 unicast
    exit
    passive
  exit
  interface tengigabitethernet 0/0/7
    address-family ipv4 unicast
    exit
  exit
  interface tengigabitethernet 0/0/16
    address-family ipv4 unicast
    exit
  exit
  graceful-restart help-peer disable < --------- отключает режим хелпера
  net 35.0000.0000.0000.6666.00
exit


R3:

router isis 0
  interface loopback 0
    address-family ipv4 unicast
    exit
    passive
  exit
  interface tengigabitethernet 0/0/10
    address-family ipv4 unicast
    exit
  exit
  interface tengigabitethernet 0/0/20
    address-family ipv4 unicast
    exit
  exit
  graceful-restart disable < ---------- отключение поддержки GR
  net 55.0000.0000.0000.1111.00
exit


Команда, которая создает в конфигурации правило, согласно которому при смене параметра graceful-restart adjacency-wait он будет применен мгновенно:

graceful-restart auto-reset

Командой graceful-restart recovery-time max (1-65535) можно задать в конфигурации максимальное значение таймера, по истечении которого произойдет перезапуск IS-IS процесса.

Graceful Restart в BGP


По умолчанию на маршрутизаторах серии ME при настройке BGP устройство является хелпером. Но если дополнить конфигурацию командой bgp graceful-restart enable, то маршрутизатор может работать в двух режимах: рестартер и хелпер.

Пример конфигурирования GR на R1 (рестартер):

router bgp 65001
  address-family vpnv4 unicast
  exit
  address-family ipv4 unicast
  exit
  bgp graceful-restart enable < ------- включение GR для работы в двух режимах
  bgp graceful-restart restart-time 250 < -------- задаем таймер ожидания восстановления, дефолтное значение 200 секунд
  bgp router-id 10.100.30.50
  neighbor 10.100.30.20
    address-family ipv4 unicast
    exit
    address-family vpnv4 unicast
    exit
    remote-as 4294967290
    update-source 10.100.30.50
  exit
  neighbor 10.100.30.40
    address-family ipv4 unicast
    exit
    address-family vpnv4 unicast
    exit
    remote-as 4294967290
    update-source 10.100.30.50
  exit
exit

Список таймеров, которые можно изменить при настройке GR в BGP:

R2 (хелпер):

router bgp 4294967290
  address-family vpnv4 unicast
  exit
  address-family ipv4 unicast
  exit
  bgp graceful-restart stale-path-time 300 < ----- таймер, в течение которого хелпер будет хранить «устаревшие» маршруты. Заданное значение должно быть больше restart-time.
  bgp router-id 10.100.30.20
  neighbor 10.100.30.30
    address-family ipv4 unicast
    exit
    address-family vpnv4 unicast
    exit
    remote-as 4294967290
    update-source 10.100.30.20
  exit
  neighbor 10.100.30.50
    address-family ipv4 unicast
    exit
    address-family vpnv4 unicast
    exit
    remote-as 65001
    update-source 10.100.30.20
  exit
exit

Graceful Restart LDP

Для активации Graceful Restart в протоколе LDP необходимо добавить команду graceful-restart enable. Для более специфичной настройки GR в LDP команд нет.

Возможно изменить таймеры:


Активация GR на R1:

mpls                                                                                                               
  forwarding                                                                                                       
    interface loopback 1                                                                                                                                                                                    
    interface tengigabitethernet 0/1/4                                                                             
    interface tengigabitethernet 0/1/5                                                                                                                                                        
  exit                                                                                                             
  ldp                                                                                                              
    discovery interface tengigabitethernet 0/1/4                                                                   
    exit                                                                                                           
    discovery interface tengigabitethernet 0/1/5                                                                   
    exit   
    graceful-restart enable < --------- включение механизма                                                                                       
  exit                                                                                                             
  router-id 10.100.30.50                                                                                           
exit