Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
Комментарий: Миллер

...

По умолчанию,  сессия устанавливается в следующем режиме:

ПротоколРежим
iBGPmulti-hop
eBGPsingle-hop
eBGP multi-hopmulti-hop
OSPFsingle-hop
Static routesingle-hop


Для изменения  поведения необходимо в ручную переопределить сессию, указав необходимый режим. Рассмотрим  на примере : 

...

Блок кода
esr-200# sh bfd neighbors  10.100.0.2
Neighbor address:                   10.100.0.2
Local address:                      10.100.0.1
Interface:                          --
Remote discriminator:               3751534121
Local discriminator:                1670865501
State:                              Up
Session type:                       Control
Session mode:                       Multi-hop
Local diagnostic code:              No Diagnostic
Remote diagnostic code:             No Diagnostic
Minimal Tx Interval:                300 ms
Minimal Rx Interval:                300 ms
Multiplier:                         5
Actual Tx Interval:                 300 ms
Actual Detection Interval:          1500 ms
Number of transmitted packets:      11499
Number of received packets:         115311
Uptime:                             1d20h22m2m
Client:                             BGP 
Last received packet:
    Desired Min Tx Interval:        300 ms
    Required Min Rx Interval:       300 ms
    Multiplier:                     5

Настройка таймеров 

Таймеры,  вне зависимости от режима работы протокола (Single или Multi-hop mode), могут быть настроены в контексте глобальной конфигурации или на определенных интерфейсах.  Настройка на интерфейсах имеет наибольший приоритет.

Блок кода
ESR(config)# ip bfd min-tx-interval 1000
ESR(config)# ip bfd min-rx-interval 1000
ESR(config)# do commmit

ESR# sh ip bfd 
Minimum RX interval: 1000 ms
Minimum TX interval: 1000 ms
Idle TX interval:    1000 ms
Multiplier:          5 packets
Passive:             No

После того как BFD сессия  установлена, каждая сторона индивидуально вычисляет свои Tx Interval и Detection Interval. Tx Interval выбирается наибольшее значение из локального Tx Interval и удаленного RX интервал. Detection Interval вычисляется по следующей формуле: Detection Interval = remoteMultiplier * MAX( RxLocal и TxRemote), где remoteMultiplier - значение Multiplier удаленный стороны, minRxLocal - локальный Tx Interval, TxRemote - Tx Interval удаленной стороны.


Алгоритм настройки

Шаг

Описание

Команда

Ключи

1

Активировать BFD для протокола OSPF на интерфейсе

esr(config-if-gi)# ip ospf bfd-enable


2

Активировать BFD для протокола BGP neighbor на интерфейсе

esr(config-bgp-neighbor)# bfd-enable


3

Задать интервал, по истечении которого происходит отправка BFD-сообщения соседу. Глобально
(не обязательно).

esr(config)# ip bfd idle-tx-interval <TIMEOUT>

<TIMEOUT> – интервал, по истечении которого происходит отправка BFD-пакета, принимает значение в миллисекундах в диапазоне [200..65535] для ESR-1000/1200/1500/1511
/1700/3100 и [300..65535] для ESR-10/12V(F)/14VF/20/21/100/200

По умолчанию 1 секунда

4

Включить логирование изменений состояния BFD-протокола (не обязательно)

esr(config)# ip bfd log-adjacency-changes


5

Задать минимальный интервал, по истечении которого сосед должен сгенерировать BFD-сообщение.
Глобально
(не обязательно).

esr(config)# ip bfd min-rx-interval <TIMEOUT>

<TIMEOUT> – интервал, по истечении которого должна происходить отправка BFD-сообщения соседом, принимает значение в миллисекундах в диапазоне [200..65535] для ESR-1000/1200/1500/1511
/1700/3100 и [300..65535] для ESR-10/12V(F)/14VF/20/21/100/200

По умолчанию:

  • 300 миллисекунд на ESR-10/12V(F)/14VF/20/21/100/200
  • 200 миллисекунд на ESR-1000/1200/1500
    /1511/1700/3100

6

Задать минимальный интервал, по истечении которого происходит отправка BFD-сообщения соседу.
Глобально
(не обязательно).

esr(config)# ip bfd min-tx-interval <TIMEOUT>

<TIMEOUT> – интервал, по истечении которого должна происходить отправка BFD-сообщения соседом, принимает значение в миллисекундах в диапазоне [200..65535] для ESR-1000/1200/1500/1511
/1700/3100 и [300..65535] для ESR-10/12V(F)/14VF/20/21/100/200

По умолчанию:

  • 300 миллисекунд на ESR-10/12V(F)/14VF/20/21/100/200
  • 200 миллисекунд на ESR-1000/1200/1500
    /1511/1700/3100

7

Задать число пропущенных пакетов, после достижения которого BFD-сосед считается недоступным. Глобально.

esr(config)# ip bfd multiplier <COUNT>

<COUNT> – число пропущенных пакетов, после достижения которого сосед считается недоступным, принимает значение в диапазоне [1..100].

По умолчанию: 5

8

Запустить работу механизма BFD с определенным IP-адресом.

esr(config)# ip bfd neighbor <ADDR> [ { interface <IF> | tunnel <TUN> } ]
[local-address <ADDR> [multihop]] [vrf <VRF>]

<ADDR> – IP-адрес шлюза, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<IF> – интерфейс или группы интерфейсов;

<TUN> – тип и номер туннеля;

<VRF> – имя экземпляра VRF, задается строкой до 31 символа;

multihop – ключ для установки TTL=255, для работы механизма BFD через маршрутизируемую сеть.

9

Перевести BFD-сессию в пассивный режим, то есть BFD-сообщения не будут отправляться до тех пор, пока не будут получены сообщения от BFD-соседа. Глобально

(не обязательно).

esr(config)# ip bfd passive


10

Задать интервал, по истечении которого происходит отправка BFD-сообщения соседу.
На интерфейсе
(не обязательно).

esr(config-if-gi)# ip bfd idle-tx-interval <TIMEOUT>

<TIMEOUT> – интервал, по истечении которого происходит отправка BFD-пакета, принимает значение в миллисекундах в диапазоне [200..65535] для ESR-1000/1200/1500/1511
/1700/3100 и [300..65535] для ESR-10/12V(F)/14VF/20/21/100/200.

По умолчанию: 1 секунда

11

Задать минимальный интервал, по истечении которого сосед должен сгенерировать BFD-сообщение.
На интерфейсе
(не обязательно).

esr(config-if-gi)# ip bfd min-rx-interval <TIMEOUT>

<TIMEOUT> – интервал, по истечении которого должна происходить отправка BFD-сообщения соседом, принимает значение в миллисекундах в диапазоне [200..65535] для ESR-1000/1200/1500/1511
/1700/3100 и [300..65535] для ESR-10/12V(F)/14VF/20/21/100/200

По умолчанию:

  • 300 миллисекунд на ESR-10/12V(F)/14VF/20/21/100/200
  • 200 миллисекунд на ESR-1000/1200/1500
    /1511/1700/3100

12

Задать минимальный интервал, по истечении которого происходит отправка BFD-сообщения соседу.
На интерфейсе
(не обязательно).

esr(config-if-gi)# ip bfd min-tx-interval <TIMEOUT>

<TIMEOUT> – интервал, по истечении которого должна происходить отправка BFD-сообщения соседом, принимает значение в миллисекундах в диапазоне [200..65535] для ESR-1000/1200/1500/1511
/1700/3100 и [300..65535] для ESR-10/12V(F)/14VF/20/21/100/200

По умолчанию:

  • 300 миллисекунд на ESR-10/12V(F)/14VF/20/21/100/200
  • 200 миллисекунд на ESR-1000/1200/1500
    /1511/1700/3100

13

Задать число пропущенных пакетов, после достижения которого BFD-сосед считается недоступным.
На интерфейсе

(не обязательно).

esr(config-if-gi)# ip bfd multiplier <COUNT>

<COUNT> – число пропущенных пакетов, после достижения которого сосед считается недоступным, принимает значение в диапазоне [1..100].

По умолчанию: 5

14

Перевести BFD-сессию в пассивный режим, то есть BFD-сообщения не будут отправляться до тех пор, пока не будут получены сообщения от BFD-соседа. На интерфейсе
(не обязательно).

esr(config-if-gi)# ip bfd passive


...