Skip to content

bgp_afi_safi_defaults

Github Action edited this page Nov 23, 2024 · 4 revisions

RT-1.23: BGP AFI SAFI OC DEFAULTS

Summary

BGP AFI SAFI OC DEFAULTS TEST

Procedure

  • When operating in "openconfig mode", NOS (network operating system) defaults should match what OC defines as the defaults i.e,

  • For BGP, there are no defaults for AFI-SAFI at the neighbor and peer-group levels. However at the global level the default is "false"

  • For BGP neighbor level extended-next-hop encoding to be configured and validated too

  • This test currently only verifies the defaults for ipv4-unicast and ipv6-unicast families.
    However, this test can be extended further to cover for other AFI-SAFIs as well in future.

  • The test will check for default implementations under the neighbor and peer-group hierarchies and also test for inheritance rules as was specified in pull/774 and pull/815.

  • Topology:

    • ATE (Port1) <-EBGP-> (Port1) DUT (Port2) <-IBGP-> (Port2) ATE
      • Connect ATE Port1 to DUT port1 (EBGP peering)
      • Connect ATE Port2 to DUT port2 (IBGP peering)
  • [Test case-1.1] AFI-SAFI configurations at "neighbor level":

    • Push EBGP and IBGP OC configuration to the DUT

      • Configuration should include corresponding IPv4 and IPv6 neighbor configurations.
      • Ensure that only IPv4-Unicast enabled boolean is made "true" for IPv4 neighbor.
        "IPv6-unicast enabled" boolean is left to OC default for the IPv4 peer".
      • Ensure that only IPv6-Unicast enabled boolean is made "true" for IPv6 neighbor. "IPv4-unicast enabled" boolean is left to OC default for the IPv6 peer".
      • Ensure that there are no AFI-SAFI configurations at the global and peer-group levels.
      • On the ATE side ensure that IPv4-unicast and IPv6-unicast AFI-SAFI are enabled==true for IPv4 and IPv6 neighbors.
      • Ensure that there is extended-next-hop encoding feature is configured via OC path and the default value of this should be set to false
    • Verification:

      • For IPv4 neighbor, ensure that the IPv4 neighborship is up and IPv6-unicast capability is not negotiated.
      • For IPv6 neighbor ensure that the IPv6 neighborship is up and IPv4-unicast capability is not negotiated.
  • [Test case-1.2] IPv4-unicast and IPv6-Unicast AFI-SAFIs enabled at peer-group level:

    • Configuration at the neighbor level is same as in [Test case-1] except for IPv4-unicast and IPv6-unicast being enabled at the peer-group level

    • No configuration should be made at the global AFI-SAFI level

    • Verification:

      • For IPv4 neighbor, ensure that the IPv4 neighborship is up and both IPv4-unicast and IPv6-unicast capabilities are negotiated.
      • For IPv6 neighbor ensure that the IPv6 neighborship is up and both IPv4-unicast and IPv6-unicast capabilities are negotiated.
  • [Test case-1.3] IPv4-unicast and IPv6-Unicast AFI-SAFIs enabled at Global level:

    • Configuration at the neighbor level is same as in [Test case-1] except for IPv4-unicast and IPv6-unicast being enabled at the global level

    • No configuration should be made at the peer-group AFI-SAFI level

    • Verification:

      • For IPv4 neighbor, ensure that the IPv4 neighborship is up and both IPv4-unicast and IPv6-unicast capabilities are negotiated.
      • For IPv6 neighbor ensure that the IPv6 neighborship is up and both IPv4-unicast and IPv6-unicast capabilities are negotiated.
  • [Test case-2] IPv4-unicast and IPv6-Unicast AFI-SAFIs set to FALSE at neighbor level:

    • AFI-SAFI for IPv4-UNICAST is set to false for BGPv4 peers and AFI-SAFI for IPv6-UNICAST is set to false for BGPv6 peers.

    • Verification:

      • For IPv4 neighbor, ensure that the IPv4 neighborship is not ESTABLISHED and IPv4-unicast capabilities are set to FALSE.
      • For IPv6 neighbor ensure that the IPv6 neighborship is not ESTABLISHED and IPv6-unicast capabilities are set to FALSE.

OpenConfig Path and RPC Coverage

The below yaml defines the OC paths intended to be covered by this test. OC paths used for test setup are not listed here.

paths:
    ## Config Parameter coverage

    /network-instances/network-instance/protocols/protocol/bgp/global/config/as:
    /network-instances/network-instance/protocols/protocol/bgp/global/config/router-id:
    /network-instances/network-instance/protocols/protocol/bgp/neighbors/neighbor/config/auth-password:
    /network-instances/network-instance/protocols/protocol/bgp/neighbors/neighbor/config/neighbor-address:
    /network-instances/network-instance/protocols/protocol/bgp/neighbors/neighbor/config/peer-as:
    /network-instances/network-instance/protocols/protocol/bgp/neighbors/neighbor/neighbor-address:
    /network-instances/network-instance/protocols/protocol/bgp/neighbors/neighbor/afi-safis/afi-safi/config/enabled:
    /network-instances/network-instance/protocols/protocol/bgp/peer-groups/peer-group/config/auth-password:
    /network-instances/network-instance/protocols/protocol/bgp/peer-groups/peer-group/config/peer-as:
    /network-instances/network-instance/protocols/protocol/bgp/peer-groups/peer-group/afi-safis/afi-safi/config/enabled:
    /network-instances/network-instance/protocols/protocol/bgp/global/afi-safis/afi-safi/config/enabled:
    /network-instances/network-instance/protocols/protocol/bgp/global/afi-safis/afi-safi/ipv4-unicast/config/extended-next-hop-encoding:

    ## Telemetry Parameter coverage

    /network-instances/network-instance/protocols/protocol/bgp/neighbors/neighbor/state/session-state:
    /network-instances/network-instance/protocols/protocol/bgp/neighbors/neighbor/state/supported-capabilities: 
    /network-instances/network-instance/protocols/protocol/bgp/neighbors/neighbor/state/peer-type:
    /network-instances/network-instance/protocols/protocol/bgp/neighbors/neighbor/state/peer-as:
    /network-instances/network-instance/protocols/protocol/bgp/peer-groups/peer-group/state/peer-type:
    /network-instances/network-instance/protocols/protocol/bgp/peer-groups/peer-group/state/peer-as:
    /network-instances/network-instance/protocols/protocol/bgp/peer-groups/peer-group/state/local-as:
    /network-instances/network-instance/protocols/protocol/bgp/global/afi-safis/afi-safi/ipv4-unicast/state/extended-next-hop-encoding:

rpcs:
    gnmi:
        gNMI.Set:
        gNMI.Get:
        gNMI.Subscribe:

Minimum DUT Required

vRX - Virtual Router Device

Clone this wiki locally