BFD

Протокол BFD

Bidirectional Forwarding Detection (BFD) — это протокол, созданный для быстрого обнаружения разрыва соединений между маршрутизаторами. BFD позволяет быстрее обнаружить потерю связности в сравнении с обычными механизмами, которые используют протоколы маршрутизации. BFD, как и протоколы маршрутизации, использует обмен Hello-сообщениями, но с гораздо меньшими интервалами отправки, измеряющимися в десятках миллисекунд (в то время как для протоколов маршрутизации интервалы для отправки Hello-сообщений измеряются десятками секунд). Протокол BFD часто применяют совместно с функционалом LFA для быстрого переключения на резервный маршрут (подробнее об LFA см. раздел “Loop-Free Alternate (LFA) в OSPF”).

Таблица — Команды для настройки BFD

КомандаОписание
bfd disableКоманда вводится в контекстном конфигурационном режиме (config-if). В результате выполнения этой команды на интерфейсе выключаются все bfd-сессии (переводятся в состояние Admin-Down). Значение по умолчанию: enabled
bfd interval <25-999> minrx <25-999> multiplier <3-50>Команда вводится в контекстном конфигурационном режиме (config-if). В результате выполнения этой команды для всех bfd-сессий на интерфейсе будут установлены: интервал отправки bfd-control сообщений в миллисекундах, ожидаемый интервал приёма bfd-control сообщений в миллисекундах, количество пропущенных сообщений, после которого сессия считается разорванной. Значения по умолчанию: 250/250/3
bfd all-interfacesКоманда вводится в контекстном конфигурационном режиме (config-router). В результате выполнения этой команды будут установлены bfd-сессии со всеми OSPF-соседями в рамках соответствующего OSPF-процесса

Начиная с версии 3.2.6.1.16715 в протоколе BFD режим echo не поддерживается!

Команды просмотра для протокола BFD на EcoRouter приведены ниже.

Показать информацию о глобальных настройках BFD:

ecorouter#show bfd 
BFD ID: 00 Start Time:Tue Nov 21 08:45:34 2017 
BFD Admin State: UP 
Number of Sessions: 1 Slow Timer: 2000 Image type: MONOLITHIC 
Echo Mode: Disabled BFD Notifications disabled 
Next Session Discriminator: 2
  • Start Time — время старта процесса oamd;
  • BFD Admin State — административное состояние протокола на устройстве;
  • Number of Sessions — количество активных сессий;
  • Slow Timer — значение slow таймера;
  • Image type — тип обработки hello-пакетов (монолитный — производится одним процессом, распределённый — производится несколькими процессами);
  • Echo Mode — состояние echo-функции (включена/выключена);
  • BFD Notifications — состояние уведомлений (включена/выключена);
  • Next Session Discriminator — идентификатор следующей сессии, которая будет поднята.

Показать информацию о настройках BFD на всех интерфейсах, на которых включён этот протокол:

ecorouter#show bfd interface
Interface: loopback.0  ifindex: 8 state:  UP
Interface level configuration: NO ECHO, NO SLOW TMR
Timers in Milliseconds
Min Tx: 250  Min Rx: 250  Multiplier: 3
Interface:     te0  ifindex: 9 state:  UP
Interface level configuration: NO ECHO, NO SLOW TMR
Timers in Milliseconds
Min Tx: 250  Min Rx: 250  Multiplier: 3
  • Interface — имя интерфейса;
  • ifindex — системный номер интерфейса;
  • state — состояние интерфейса;
  • Interface level configuration — настройки BFD для интерфейса;
  • Min Tx — интервал отправки bfd-control сообщений;
  • Min Rx — ожидаемый интервал приёма bfd-control сообщений;
  • Multiplier — количество пропущенных сообщений, после которого сессия считается прерванной.

Показать информацию обо всех активных bfd-сессиях:

ecorouter#show bfd session
Sess-Idx  Remote-Disc  Lower-Layer  Sess-Type  Sess-State  UP-Time  Remote-Addr
1      1       IPv4     Single-Hop  Up      01:12:50  10.1.1.1/32
4      1       IPv4     Single-Hop  Up      00:00:01  20.1.1.1/32
Number of Sessions:   2
  • Sess-Idx — локальный id сессии;
  • Remote-Disc — id сессии на удалённом устройстве;
  • Lower-Layer — инкапсулирующий протокол;
  • Sess-Type — тип сессии (single/multi);
  • Sess-State — состояние сессии;
  • UP-Time — up-time сессии;
  • Remote-Addr — адрес интерфейса удалённого маршрутизатора, с которым установлена сессия;
  • Number of Sessions — количество активных сессий.

Показать детальную информацию обо всех активных bfd-сессиях. ecorouter:

#show bfd session detail
======================================================
Session Interface Index : 9     Session Index : 1
Lower Layer : IPv4              Version : 1
Session Type : Single Hop       Session State : Up
Local Discriminator : 1         Local Address : 10.1.1.2/32
Remote Discriminator : 1        Remote Address : 10.1.1.1/32
Local Port : 49152              Remote Port : 3784
Options :
Diagnostics : None
Timers in Milliseconds :
Min Tx: 250        Min Rx: 250  Multiplier: 3
Neg Tx: 250        Neg Rx: 2000 Neg detect mult: 3
Min echo Tx: 1000     Min echo Rx: 1000     Neg echo intrvl: 0
Storage type : 2
Sess down time : 00:00:00
Sess discontinue time : 00:00:00
Bfd GTSM Disabled
Bfd Authentication Disabled
Counters values:
Pkt In : 0000000000007f5f       Pkt Out : 0000000000007f5a
Echo Out : 0000000000000000     UP Count : 1 UPTIME : 01:58:53
Protocol Client Info:
OSPF-> Client ID: 4    Flags: 4
----------------------------------------------------------
Number of Sessions:   1
  • Session Interface Index — системный номер локального интерфейса;
  • Lower Layer — инкапсулирующий протокол;
  • Session Type — тип сессии (single/multi);
  • Local Discriminator — локальный id сессии;
  • Remote Discriminator — id сессии на удалённом устройстве;
  • Local Port — локальный UDP-порт;
  • Session Index — локальный id сессии;
  • Session State — состояние сессии;
  • Local Address — адрес интерфейса локального маршрутизатора, на котором установлена сессия;
  • Remote Address — адрес интерфейса удалённого маршрутизатора, с которым установлена сессия;
  • Remote Port — удалённый UDP-порт;
  • Min Tx/Neg Tx — локальный/удалённый интервал отправки bfd-control сообщений;
  • Min Rx/Neg Rx — локальный/удалённый ожидаемый интервал приёма bfd-control сообщений;
  • Multiplier/Neg detect multi — количество пропущенных сообщений, после которого сессия считается прерванной. Значения на локальном и удалённом роутерах;
  • Min echo Tx/Min echo Rx — локальный/удалённый интервал отправки echo-сообщений;
  • Sess down time — время прерывания сессии;
  • Sess discontinue time — время, на протяжении которого сессия была прервана;
  • Bfd GTSM — состояние функции GTSM;
  • Bfd Authentication — состоянии функции аутентификации;
  • Pkt In — количество пришедших BFD-пакетов;
  • Pkt Out — количество отправленных BFD-пакетов;
  • Echo Out — количество отправленных echo-пакетов;
  • UPTIME — up-time сессии;
  • Protocol Client Info — информация о протоколе, посредством которого установлена сессия;
  • Number of Sessions — количество активных сессий.

Показать информацию о сессии между конкретным локальным интерфейсом с указанием его ip-адреса и конкретным удалённым интерфейсом с указанием его ip-адреса:

ecorouter#show bfd session 10.1.1.2 10.1.1.1
Session Interface Index : 9        Session Index : 1
Lower Layer : IPv4            Session Type : Single Hop       
Session State : Up
Local Discriminator : 1          Remote Discriminator : 1
Local Address : 10.1.1.2/32        Remote Address : 10.1.1.1/32
Local Port : 49152            Remote Port : 3784
Timers in Milliseconds :
Min Tx: 250      Min Rx: 250     Multiplier: 3
UP Count : 1               UPTIME : 03:10:33
  • Session Interface Index — системный номер локального интерфейса;
  • Lower Layer — инкапсулирующий протокол;
  • Session State — состояние сессии;
  • Session Index — локальный id сессии;
  • Session Type — тип сессии (single/multi);
  • Local Discriminator — локальный id сессии;
  • Local Address — адрес интерфейса локального маршрутизатора, на котором установлена сессия;
  • Local Port — локальный UDP-порт;
  • Remote Discriminator — id сессии на удалённом устройстве;
  • Remote Address — адрес интерфейса удалённого маршрутизатора, с которым установлена сессия;
  • Remote Port — удалённый UDP-порт;
  • Min Tx — локальный интервал отправки bfd-control сообщений;
  • Min Rx — локальный ожидаемый интервал приёма bfd-control сообщений;
  • Multiplier — количество пропущенных сообщений, после которого сессия считается прерванной;
  • UPTIME — up-time сессии.