Skip to content

BFD

BFD (Bidirectional Forwarding Detection) provides sub-second failure detection for routing protocols and static routes on NX-OS devices. Global BFD settings configure the echo interface, hardware offload, slow timer, startup timer, and the global keepalive timers (transmit interval, minimum receive interval, detect multiplier, and echo receive interval) and the global multihop session timers under the bfd section. Interface-level BFD settings configure session parameters including transmit/receive intervals, detect multiplier, echo mode, authentication, and port-channel-specific options like per-link and track-member-link under each interface type’s bfd sub-section, including Ethernet and port-channel subinterfaces.

BFD (Bidirectional Forwarding Detection) provides sub-second failure detection for routing protocols and static routes on NX-OS devices. Global BFD settings configure the echo interface, hardware offload, slow timer, and startup timer under the bfd section. Interface-level BFD settings configure session parameters including transmit/receive intervals, detect multiplier, echo mode, authentication, and port-channel-specific options like per-link and track-member-link under each interface type’s bfd sub-section.

NameTypeConstraintMandatoryDefault Value
devicesListdevicesNo
device_groupsListdevice_groupsNo
globalClassglobalNo
templatesListtemplatesNo
interface_groupsListinterface_groupsNo

NameTypeConstraintMandatoryDefault Value
devicesListdevicesNo
device_groupsListdevice_groupsNo
globalClassglobalNo
templatesListtemplatesNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
interfacesClassinterfacesNo
bfdClassbfdNo

NameTypeConstraintMandatoryDefault Value
subinterfacesListsubinterfacesNo
bfdClassbfdNo

NameTypeConstraintMandatoryDefault Value
loopbacksListloopbacksNo
vlansListvlansNo
ethernetsListethernetsNo
port_channelsListport_channelsNo

ethernets (nxos.devices.configuration.interfaces)

Section titled “ethernets (nxos.devices.configuration.interfaces)”
NameTypeConstraintMandatoryDefault Value
subinterfacesListsubinterfacesNo
bfdClassbfdNo

ethernets (nxos.devices.configuration.interfaces)

Section titled “ethernets (nxos.devices.configuration.interfaces)”
NameTypeConstraintMandatoryDefault Value
bfdClassbfdNo

port_channels (nxos.devices.configuration.interfaces)

Section titled “port_channels (nxos.devices.configuration.interfaces)”
NameTypeConstraintMandatoryDefault Value
subinterfacesListsubinterfacesNo
bfdClassbfdNo

port_channels (nxos.devices.configuration.interfaces)

Section titled “port_channels (nxos.devices.configuration.interfaces)”
NameTypeConstraintMandatoryDefault Value
bfdClassbfdNo

loopbacks (nxos.devices.configuration.interfaces)

Section titled “loopbacks (nxos.devices.configuration.interfaces)”
NameTypeConstraintMandatoryDefault Value
bfdClassbfdNo

vlans (nxos.devices.configuration.interfaces)

Section titled “vlans (nxos.devices.configuration.interfaces)”
NameTypeConstraintMandatoryDefault Value
bfdClassbfdNo

subinterfaces (nxos.devices.configuration.interfaces.ethernets)

Section titled “subinterfaces (nxos.devices.configuration.interfaces.ethernets)”
NameTypeConstraintMandatoryDefault Value
bfdClassbfdNo

NameTypeConstraintMandatoryDefault Value
echo_interface_typeChoiceethernet, loopback, mgmt, port-channel, vlan, vniNo
echo_interface_idAnyString or Integer[min: 0]No
hardware_offloadBooleantrue, falseNo
slow_timerIntegermin: 1000, max: 30000No
startup_timerIntegermin: 0, max: 60No
intervalIntegermin: 10, max: 999No
min_rxIntegermin: 10, max: 999No
multiplierIntegermin: 1, max: 50No
echo_rx_intervalIntegermin: 0, max: 999No
multihop_intervalIntegermin: 250, max: 999No
multihop_min_rxIntegermin: 250, max: 999No
multihop_multiplierIntegermin: 1, max: 50No

NameTypeConstraintMandatoryDefault Value
echo_interface_typeChoiceethernet, loopback, mgmt, port-channel, vlan, vniNo
echo_interface_idAnyString or Integer[min: 0]No
hardware_offloadBooleantrue, falseNo
slow_timerIntegermin: 1000, max: 30000No
startup_timerIntegermin: 0, max: 60No

bfd (nxos.devices.configuration.interfaces.loopbacks)

Section titled “bfd (nxos.devices.configuration.interfaces.loopbacks)”
NameTypeConstraintMandatoryDefault Value
intervalIntegermin: 0, max: 999No
min_rxIntegermin: 0, max: 999No
multiplierIntegermin: 0, max: 50No
echoBooleantrue, falseNo
echo_rx_intervalIntegermin: 0, max: 999No
optimize_subinterfaceBooleantrue, falseNo
per_linkBooleantrue, falseNo
source_ipIPNo
vpc_watchBooleantrue, falseNo
track_member_linkBooleantrue, falseNo
authentication_typeChoicenone, keyed-sha1, meticulous-keyed-sha1No
authentication_key_idIntegermin: 1, max: 255No
authentication_keyStringNo
authentication_interopBooleantrue, falseNo

Example 1: Global BFD with echo interface and hardware offload

nxos:
devices:
- name: LEAF1
configuration:
feature:
bfd: true
bfd:
echo_interface_type: loopback
echo_interface_id: "0"
hardware_offload: true
slow_timer: 2000

Example 2: Global BFD keepalive timers

nxos:
devices:
- name: LEAF1
configuration:
feature:
bfd: true
bfd:
interval: 100
min_rx: 100
multiplier: 5
echo_rx_interval: 100
slow_timer: 2000
startup_timer: 10

Example 3: Global BFD multihop session timers

nxos:
devices:
- name: BORDER-LEAF1
configuration:
feature:
bfd: true
bfd:
multihop_interval: 300
multihop_min_rx: 300
multihop_multiplier: 3

Example 4: BFD timers on fabric uplinks with OSPF

nxos:
devices:
- name: LEAF1
configuration:
feature:
bfd: true
ospf: true
bfd:
echo_interface_type: loopback
echo_interface_id: "0"
routing:
ospf_processes:
- name: "1"
bfd: true
areas:
- id: 0.0.0.0
interfaces:
ethernets:
- id: 1/1
description: "FABRIC: SPINE1 Eth1/1"
mtu: 9216
ospf:
process: "1"
area: 0.0.0.0
network: point-to-point
bfd:
interval: 50
min_rx: 50
multiplier: 3
echo: false

Example 5: BFD with SHA-1 authentication on SVI interfaces

nxos:
devices:
- name: LEAF1
configuration:
feature:
bfd: true
interface_vlan: true
bfd:
echo_interface_type: loopback
echo_interface_id: "0"
interfaces:
vlans:
- id: 100
vrf: PROD
bfd:
interval: 100
min_rx: 100
multiplier: 5
authentication_type: keyed-sha1
authentication_key_id: 1
authentication_key: BFD-SECRET

Example 6: BFD per-link on port-channel with vPC watch

nxos:
devices:
- name: LEAF1
configuration:
feature:
bfd: true
interfaces:
port_channels:
- id: 1
description: "VPC: PEER-LINK"
bfd:
interval: 50
min_rx: 50
multiplier: 3
per_link: true
vpc_watch: true
track_member_link: true

Example 1: Global BFD with echo interface and hardware offload

nxos:
devices:
- name: LEAF1
configuration:
feature:
bfd: true
bfd:
echo_interface_type: loopback
echo_interface_id: "0"
hardware_offload: true
slow_timer: 2000

Example 2: BFD timers on fabric uplinks with OSPF

nxos:
devices:
- name: LEAF1
configuration:
feature:
bfd: true
ospf: true
bfd:
echo_interface_type: loopback
echo_interface_id: "0"
routing:
ospf_processes:
- name: "1"
bfd: true
interfaces:
ethernets:
- id: 1/1
description: "FABRIC: SPINE1 Eth1/1"
mtu: 9216
ospf:
process: "1"
area: 0.0.0.0
network: p2p
bfd:
interval: 50
min_rx: 50
multiplier: 3
echo: false

Example 3: BFD with SHA-1 authentication on SVI interfaces

nxos:
devices:
- name: LEAF1
configuration:
feature:
bfd: true
interface_vlan: true
bfd:
echo_interface_type: loopback
echo_interface_id: "0"
interfaces:
vlans:
- id: 100
vrf: PROD
bfd:
interval: 100
min_rx: 100
multiplier: 5
authentication_type: sha1
authentication_key_id: 1
authentication_key: BFD-SECRET

Example 4: BFD per-link on port-channel with vPC watch

nxos:
devices:
- name: LEAF1
configuration:
feature:
bfd: true
interfaces:
port_channels:
- id: 1
description: "VPC: PEER-LINK"
bfd:
interval: 50
min_rx: 50
multiplier: 3
per_link: true
vpc_watch: true
track_member_link: true