Dienstag, 31. März 2015

BFD und BGP. Cisco

Bidirectional Forwarding Detection (BFD) - протокол, позволяющий быстро обнаруживать проблемы связности маршрутизаторов на IP уровне и тем самым обеспечивающий быструю сходимость протоколов маршрутизации.
BFD - двусторонний протокол, оба маршрутизатора генерируют BFD пакеты, а также отвечают на BFD пакеты посланные соседом. Протокол BFD практически не влияет на производительность CPU, поэтому интервал между BFD пакетами может быть сокращен до 50 мс, что обеспечивает быструю сходимость.

BFD может работать в 2-х режимах:
1. BFD Async - в этом режиме маршрутизаторы обмениваются только control пакетами.
2. BFD Echo - в этом режиме маршрутизаторы обмениваются помимо control еще и echo пакетами. Echo пакеты отличаются от control тем, что имеют адрес назначения равный адресу источника. Попадая на соседнюю систему они проходят весь обычный forwarding path, таким образом обеспечивая более полное тестирование работоспособности системы. По умолчанию на Cisco маршрутизаторах BFD Echo mode включен (отключается командой no bfd echo на интерфейсе). При использовании echo mode необходимо указывать no ip redirects на интерфейсе во избежание перегрузки CPU. Частота control пакетов может быть в этом режиме снижена (команда bfd slow-timers в режиме глобальной конфигурации позволяет настраивать интервал генерации control пакетов).
Пример:
Маршрутизаторы, соединенные непосредственно друг с другом, быстро обнаруживают проблему. Падение интерфейса на одном конце мгновенно будет обнаружено соседом на противоположном, что приведет к оперативному удалению недействительного маршрута из таблицы маршрутизации. Однако, ситуация меняется, если между маршрутизаторами появляется коммутатор. При падении интерфейса между одним маршрутизатором и коммутатором, второй маршрутизатор не видит падения интерфейа первого маршрутизатора. Удаление недействительного маршрута полностью зависит от таймеров используемого протокола маршрутизации (до 3 минут у BGP).
Настройка производится на обоих маршрутизаторах:
interface FastEthernet0/1
bfd interval N1 min_rx N2 multiplier interval-multiplier
no ip redirects
N1 - интервал генерации control пакетов (в миллисекундах), от 50 до 999
N2 - минимальный интервал между входящими control пакетами, от 50 до 999
interval-multiplier - количество последовательно пакетов, которые BFD может пропустить прежде чем информировать Layer 3 о проблеме.

После чего привязываем используемый нами протокол маршрутизации (в данном случае BGP) к состоянию BFD сессии.
router bgp 200
eighbor 3.3.3.2 fall-over bfd
Также возможна привязка статического маршрута к BFD сессии.
В результате при обнаружении падения BFD сессии (несколько сотен миллисекунд), маршрутизатор разрывает BGP сессию и оперативно удаляет недействительные маршруты из таблицы маршрутизации.

Troubleshooting

show bfd neighborsshow
bfd neighbors details

Стандартная реализация ВFD в Cisco не позволяет поддерживать сессии с промежуточными IP узлами между соседями. Соответственно, не получится поднять BFD сессию для multihop eBGD или iBGP с использованием Loopback'ов. Однако с версии 15.1(3)S появилась фича multihop BFD, позволяющая обойти это ограничение.

http://ciao-cacao.blogspot.ru/2011/12/bgp-bfd.html

Keine Kommentare:

Kommentar veröffentlichen