Skip to content

BGP Timer Policy

Location in GUI: Tenants » XXX » Policies » Protocol » BGP » BGP Timers

Diagram
NameTypeConstraintMandatoryDefault Value
bgp_timer_policiesList[bgp_timer_policies]No

bgp_timer_policies (apic.tenants.policies)

Section titled “bgp_timer_policies (apic.tenants.policies)”
NameTypeConstraintMandatoryDefault Value
nameStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$Yes
descriptionStringRegex: ^[a-zA-Z0-9\\!#$%()*,-./:;@ _{|}~?&+]{1,128}$No
keepalive_intervalIntegermin: 0, max: 3600No60
hold_intervalAnyInteger[min: 3, max: 3600] or IntegerNo180
stale_intervalAnyInteger[min: 1, max: 3600] or Choice[default]Nodefault
graceful_restart_helperBooleantrue, falseNotrue
maximum_as_limitIntegermin: 0, max: 2000No0

Example-1: The following example defines the BGP-TIMER1 BGP Timer Policy in the ABC tenant. In Cisco ACI, these policies are typically attached to a VRF or L3Out to govern external routing connectivity.

  • name: This is a unique identifier for the BGP timer policy within the tenant. A unique and descriptive name helps in identifying and managing different BGP timer policies across various tenants or L3Outs, improving network organization and troubleshooting.
  • description: A user-defined string for annotating the policy, providing context or notes for administrators. Including a meaningful description is a best practice for documentation and clarity, especially in complex environments.
  • keepalive_interval: This parameter specifies the interval, in seconds, at which BGP keepalive messages are sent to a neighbor. Keepalive messages maintain the BGP session and ensure the neighbor is still reachable. In this example, it’s set to 30 seconds. While a Cisco default is 60 seconds.
  • hold_interval: This parameter defines the maximum time, in seconds, that a BGP router will wait for a keepalive or update message from a neighbor before declaring the neighbor down and tearing down the BGP session. Here, it’s set to 300 seconds. This directly impacts BGP convergence speed; while a Cisco default is 180 seconds.
  • stale_interval: This timer, in seconds, determines the maximum time BGP will retain “stale” routes from a restarting BGP peer during a graceful restart event. This allows traffic forwarding to continue using the old routes while the peer recovers. It is configured as 200 seconds in this example. This parameter is crucial for maintaining forwarding continuity during peer restarts; the ACI default is typically 300 seconds.
  • graceful_restart_helper: This boolean parameter (true or false) dictates whether the local BGP router acts as a graceful restart helper for its BGP peers. When enabled, it helps maintain routing stability by not immediately removing routes from a peer that is undergoing a restart. The example sets this to false. Enabling this is a strong best practice for enhancing network resilience during peer reloads.
  • maximum_as_limit: This integer parameter sets a limit on the number of Autonomous Systems (ASes) allowed in the AS-Path attribute of a BGP route. Routes exceeding this limit are typically discarded, serving as a protective measure against routing loops or misconfigurations. The example sets this to 2. Setting this value greater than 0 is a recommended security and stability control, as it helps protect against routing loops or malicious activity.

Example-2: Full example

apic:
tenants:
- name: ABC
policies:
bgp_timer_policies:
- name: BGP-TIMER1
description: BGP_POLICY
keepalive_interval: 30
hold_interval: 300
stale_interval: 200
graceful_restart_helper: false
maximum_as_limit: 2