Unified Load Balancer Configuration and Administration Guide, Release 2026.02

PDF

Resilience and traffic convergence via BGP and BFD

Want to summarize with AI?

Log in

Overview

Explains how resilience and traffic convergence are achieved using BGP and BFD protocols, focusing on network stability and rapid rerouting during node failures.

The ULB employs BGP and BFD protocols to maintain network stability and enable quick traffic rerouting during node failures.


How the resilience and traffic convergence works


BGP integration

The ULB service integrates with routing servers using BGP, facilitating real-time route advertisement and traffic redistribution. This is implemented with Cilium support, requiring version 1.17 and above. Upon creating specific CRs, Cilium deploys BGP routers and manages BGP sessions.


BFD for rapid failure detection

BFD is used to detect path failures between routers swiftly, ensuring quick failover and minimal traffic disruption.


Limitations with BGP implementation

  • Updating configurations, like timers, causes BGP sessions to restart.

  • Due to Cilium's limitations, applications cannot segregate traffic and instead use BGP interfaces for all traffic.

  • Even though BGP server mode is configured, Cilium's issues prevent it from working as a server.


Configure the BGP


Define the BFD peer profile

BFD peer profile provides configuration for BFD functionalities such as timers for control packets, echo packets, and maximum retry for BFD messages.

The following steps describe how to define the BFD peer profile and the associated parameters on the ULB.

Procedure

1.

Configure the BFD peer profile in Global Configuration mode.

Example:

lbs(config)# bfd-peer-profile bfd-prof1
2.

Specify the timer in seconds for transmitting and receiving the BFD control packets.

The valid range of rx-timer for BFD control packets is 10 to 60000 milliseconds. Default value is 10 milliseconds.

The valid range of tx-timer for BFD control packets is 10 to 60000 milliseconds. Default value is 250 milliseconds.

Example:

lbs(config-bfd-peer-profile-bfd-prof1)# control-msg rx-timer 10 tx-timer 250
3.

Specify the timer in seconds for transmitting and receiving the BFD echo packets.

The valid range of rx-timer and tx-timer for echo packets is 10 to 60000 milliseconds. Default value is 90 milliseconds.

Example:

lbs(config-bfd-peer-profile-bfd-prof1)# echo-msg rx-timer 90 tx-timer 90
4.

Specify the max retry of BFD messages to mark the BFD session down.

The valid range of max retry count is 1 to 255. Default value is 3.

Example:

lbs(config-bfd-peer-profile-bfd-prof1)# max-retry 3
5.

Save and commit the configuration.

Example:

lbs(config-bfd-peer-profile-bfd-prof1)# end

This command lets you to either commit or ignore the configurations. Entering yes allows you to save or modify the configurations.


Set up the BGP peer profile

BGP Peer profile provides configuration options for BGP session related functionalities, such as connection retry timer, hold-timer, and keepalive-timer. This profile supports graceful restart, EBGP multihop, and advertise label features used for BGP advertisement resources. The profile configuration also includes support for enabling BFD functionality.

Use this procedure to define the BGP peer profile and the associated parameters on the ULB.

Procedure

1.

Configure the BGP peer profile in Global Configuration mode.

Example:

lbs(config)# bgp-peer-profile bgp-prof1
2.

Configure the BFD peer profile.

Example:

lbs(config)# bfd-peer-profile bfd-prof1
3.

Define the timers that are related to BGP sessions as needed.

Table 1. BGP Session Timer Parameters

CLI Command

Description

Range

Default Value

connection-retry-timer

Timer for connection to be retried on detecting peer down or restart of pod

1 to 300

12

graceful-restart restart-timer

Enables graceful restart functionality for BGP peers

1 to 4095

Disabled

hold-timer

Timer negotiated with BGP peer to hold the routes advertised on detecting peer down

3 to 300

3

keepalive-timer

Timer duration for sending keep alive messages to BGP peers

1 to 300

1

Note
Timers cannot be disabled; they can only be adjusted according to deployment needs. By default, graceful restart is disabled.
4.

Define the match label key/value configuration for BGP peer profiles. This label is used for BGP advertisement resources.

Example:

lbs(config-bgp-peer-profile-bgp-prof1)# advertise-label key advertise value bgp
5.

Configure EBGP multi hop count for BGP messages.

Example:

lbs(config-bgp-peer-profile-bgp-prof1)# ebgp-multihop 5
6.

Save and commit the configuration.


Configure the BGP router

The router supports configuration for virtual routers, BGP peering, and service IP advertisement. It also allows nodes to be configured as BGP routers.

Use this procedure to configure a router as a BGP router, including BGP peer profiles, node selectors, and service IPs.

Procedure

1.

Enter the global configuration mode.

Example:

[cluster1/data] lbs# config
2.

Configure the BGP router by specifying the ASN (Autonomous System Number) of BGP neighbor.

Example:

lbs(config)# router bgp 65000
3.

Configure the BGP peer profile by specifying the profile name.

Example:

lbs(config-router-bgp-65000)# bgp-peer-profile bgp-prof1
4.

Specify the node selector using key-value pairs.

Example:

lbs(config-bgp-peer-profile-bgp-prof1)# node-selector key feature value bgp
5.

Configure the service name and IP address.

Example:

lbs(config-bgp-peer-profile-bgp-prof1)# service name web-service ip 192.168.1.1
6.

Specify the peer name, AS number, and peer IP.

Example:

lbs(config-bgp-peer-profile-bgp-prof1)# peer-name peer_name
lbs(config-bgp-peer-profile-bgp-prof1)# peer-as AS peer-ip IP_address
7.

Save and commit the configuration.

Example:

lbs(config-bgp-peer-profile-bgp-prof1)# end

Use the following sample configuration to configure BGP and BFD settings.

config
        bfd-peer-profile bfd-prof1
        control-msg rx-timer 10 tx-timer 250
        echo-msg rx-timer 90 tx-timer 90
        max-retry 3
        exit
        bgp-peer-profile bgp-prof1
        connection-retry-timer 12 hold-timer 3 keepalive-timer 1 ebgp-multihop 255                                                                                        QAA
        bfd-peer-profile bfd-prof1
        exit
        router bgp 65000
        bgp-peer-profile bgp-prof1
        node-selector key feature value bgp
        service name pfcp ip 7.7.7.7
        service name s11 ip 8.8.8.8
        peer-name leaf1
        peer-as 63141 peer-ip 120.20.20.120
        exit
        peer-name leaf1-v6
        peer-as 63141 peer-ip 2006::98
        exit
        peer-name leaf2
        peer-as 63141 peer-ip 130.30.30.130
        exit
        peer-name leaf2-v6
        peer-as 63141 peer-ip 3006::98
        exit
        exit