BFD
Техподдержка Фактор-ТСBFD (Bidirectional Forwarding Detection protocol) — протокол, созданный для быстрого обнаружения неисправностей линков. Два устройства согласовывают и устанавливают BFD сессию, отправляют друг другу hello-сообщения. Если hello-сообщения перестают поступать от соседа, BFD-сессия разрывается, и система оповещается о неполадках в коммуникациях. BFD может определить неисправность линка менее чем за 1 секунду. Когда имеет место неисправность, то BFD оповещает о ней протокол маршрутизации, для которого настроен, и после этого протокол маршрутизации может предпринять необходимое действие.
В приведенном примере применена типовая схема коммутации № 1
Чтобы активировать службу и войти в режим настроек BFD, нужно ввести команду конфигурации:
(config)# router bfd
(config-bfd)#
В режиме «config-bfd» вводятся общие настройки BFD для данного узла Dionis-NX.
Также существуют настройки BFD, относящиеся к конкретным протоколам маршрутизации.
Для работы BFD-маршрутизатора требуется указать IP адреса связных BFD-маршрутизаторов для приема и отправки сообщений протокола и активировать работу с узлом. Это можно сделать следующей командой:
NX-1(config-bfd)# peer 192.168.10.2
NX-1(config-bfd-peer-192.168.10.2)# no shutdown
Аналогичным образом необходимо настроить NX-2:
NX-2(config-bfd)# peer 192.168.10.1
NX-2(config-bfd-peer-192.168.10.1)# no shutdown
Чтобы убедиться, что пакеты протокола BFD отправляются между маршрутизаторами, необходимо проверить командой «tcpdump ethernet 3»:
NX-1# tcpdump ethernet 3
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ethernet3, link-type EN10MB (Ethernet), capture size 262144 bytes
15:02:05.708888 IP 192.168.10.1.49143 > 192.168.10.2.3784: BFDv1, Control, State Up, Flags: [none], length: 24
15:02:05.761046 IP 192.168.10.2.49143 > 192.168.10.1.3784: BFDv1, Control, State Up, Flags: [none], length: 24
15:02:05.942906 IP 192.168.10.1.49143 > 192.168.10.2.3784: BFDv1, Control, State Up, Flags: [none], length: 24
15:02:06.007078 IP 192.168.10.2.49143 > 192.168.10.1.3784: BFDv1, Control, State Up, Flags: [none], length: 24
15:02:06.167918 IP 192.168.10.1.49143 > 192.168.10.2.3784: BFDv1, Control, State Up, Flags: [none], length: 24
15:02:06.283145 IP 192.168.10.2.49143 > 192.168.10.1.3784: BFDv1, Control, State Up, Flags: [none], length:
Чтобы проверить статус соседнего маршрутизатора, необходимо ввести команду «show bfd peers»:
NX-1# show bfd peers
BFD Peers:
peer 192.168.10.2
ID: 2
Remote ID: 2
Status: up
Uptime: 6 minute(s), 2 second(s)
Diagnostics: ok
Remote diagnostics: ok
Local timers:
Receive interval: 300ms
Transmission interval: 300ms
Echo transmission interval: disabled
Remote timers:
Receive interval: 300ms
Transmission interval: 300ms
Echo transmission interval: 50ms
NX-2# show bfd peers
BFD Peers:
peer 192.168.10.1
ID: 2
Remote ID: 2
Status: up
Uptime: 6 minute(s), 7 second(s)
Diagnostics: ok
Remote diagnostics: ok
Local timers:
Receive interval: 300ms
Transmission interval: 300ms
Echo transmission interval: disabled
Remote timers:
Receive interval: 300ms
Transmission interval: 300ms
Echo transmission interval: 50ms
Если отключить ethernet порт на NX-2, и посмотреть статус соседнего маршрутизатора на NX-1, то покажет, что соседний порт в состоянии «down»:
NX-1# show bfd peers
BFD Peers:
peer 192.168.10.2
ID: 2
Remote ID: 0
Status: down
Downtime: 15 second(s)
Diagnostics: control detection time expired
Remote diagnostics: ok
Local timers:
Receive interval: 300ms
Transmission interval: 300ms
Echo transmission interval: disabled
Remote timers:
Receive interval: 300ms
Transmission interval: 300ms
Echo transmission interval: 50ms
Также потеря и восстановление соединения будет отображена в логах:
NX-1# show log router
Dec 28 15:10:53 NX-1 bfdd[4201]: state-change: [mhop:no peer:192.168.10.2] Up -> Down reason:DetectTime
Dec 28 15:12:00 NX-1 bfdd[4201]: state-change: [mhop:no peer:192.168.10.2] Init -> Up