Configuring BGP Graceful Shutdown



The BGP Graceful Shutdown functionality enables the network administrators to gracefully shutdown all BGP sessions per vrouter  between BGP peer(s). This feature does not  shutdown the sessions, but notifies the neighbor peers that a maintenance event is occurring and that the traffic should be re-routed to another peer to avoid traffic black-holing. The graceful, no traffic impact behaviour of the feature depends on the topology and BGP setup in a network.


When a BGP speaker is rebooted, upgraded, or shut down during a maintenance window, the admin re-sends all the BGP routes (route refresh) to the neighbor peers by attaching a  BGP GRACEFUL_SHUTDOWN community to each prefix. Upon receiving the prefixes, the BGP neighbors should dynamically change the local preference associated to these subnets to a very low value, typically, LP=0. By changing the local preference to 0, the BGP neighbors select another path (i.e. next-hop) to reach the prefixes carrying the GRACEFUL_SHUTDOWN community attribute. When the traffic is completely re-routed to alternate path, the BGP speaker can administratively shutdown all BGP sessions without experiencing traffic black-holing issue.


You must configure the vrouter and BGP neighbors prior to enabling the bgp-graceful-shutdown knob on the vrouter.


Note: This feature do not support a per-session graceful shutdown, but supports a per-vRouter graceful shutdown (all BGP sessions of a particular vRouter are affected).


To configure BGP graceful shutdown, use the following commands (this command enables you to modify several parameters of BGP and other protocols.):


CLI (network-admin@switch1) >  vrouter-modify name name-string bgp-graceful-shutdown


vrouter-create

Allows you to create a hardware vRouter and specify the parameters for the  vRouter.

name name-string 

Specify a name for the service configuration.

bgp-graceful-shutdown|no-bgp-graceful-shutdown

Specify to enable or disable BGP graceful shutdown (RFC8326).


Below is an example of a vRouter configuration enabling BGP graceful shutdown on vr2:


CLI (network-admin@switch1) >  vrouter-modify name vr2 router-type hardware bgp-as 65200 router-id 22.22.22.22 bgp-graceful-shutdown



To display the details, use the show command (Similar to other BGP knobs the new field is displayed only if the field is listed in the format statement or format all keyword  is used) :


CLI (network-admin@switch1) >  vrouter-show format name,scope,router-type,bgp-as,router-id,bgp-graceful-shutdown


name scope  router-type bgp-as router-id   bgp-graceful-shutdown

---- ------ ----------- ------ ----------- ---------------------

vr1  fabric  hardware    65100  11.11.11.11    off                  

vr2  fabric  hardware    65200  22.22.22.22    on                    

vr3  local   hardware    65300  33.33.33.33    off      



To disable BGP graceful shutdown knob,  the configuration, use the command:


CLI (network-admin@switch1) >  vrouter-modify name name-string no-bgp-graceful-shutdown